/**
 * FoodTek - CSS bo sung tu dot ra soat SEO 2026 (sheet DEV_5).
 * De rieng file nay, khong sua css/style.css (file bien dich tu SCSS).
 */

/* RS-06: vung cham toi thieu 44x44px tren dien thoai. */
.foodtek-tap-target,
.contact-message-form .btn,
.contact-message-form input[type="submit"],
.contact-message-form button[type="submit"] {
  min-height: 44px;
  padding-inline: 1rem;
}

/* KT-05 / RS-03: so dien thoai la vung cham that su. */
a[href^="tel:"] {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}

footer a[href^="tel:"],
.footer-custom a[href^="tel:"] {
  min-height: 44px;
}

/* RS-04: bang nhieu cot tu cuon ngang, body khong bao gio cuon ngang. */
.field--name-body .table-responsive,
.block-content .table-responsive {
  -webkit-overflow-scrolling: touch;
  margin-bottom: 1rem;
}

.field--name-body table,
.block-content table {
  min-width: 32rem;
}

/* RS-01 / RS-12: khong cho bat ky phan tu nao lam trang cuon ngang. */
html,
body {
  overflow-x: clip;
}


/* RS-05: tieu de dai (VIET HOA TOAN BO, 70+ ky tu) khong duoc chiem qua
   nhieu dong tren dien thoai. */
@media (max-width: 575.98px) {
  .page-title,
  h1.page-title,
  .featured-title,
  .news-card-wrap .card-title {
    font-size: clamp(1.15rem, 5.2vw, 1.6rem);
    line-height: 1.25;
    overflow-wrap: break-word;
  }
}

/* RS-08: menu con dang mo tren thiet bi cam ung. */
@media (hover: none) {
  .navbar-nav .dropdown.is-open > .dropdown-menu {
    display: block;
  }
}

/* KT-30: trang 404 / 403. */
/* Trang 404/403: can trai cho thang hang voi tieu de trang (H1) o tren. */
.foodtek-error-page {
  max-width: 46rem;
  margin: 0;
  padding: 0.5rem 0 3.5rem;
}

.foodtek-error-page h2 {
  color: #106a36;
}

.foodtek-error-page ul {
  padding-left: 1.1rem;
}

.foodtek-error-page li {
  margin-bottom: 0.4rem;
}

/* RS-10 / RS-12: header tren laptop (992-1399px). Container Bootstrap chi con
   960px / 1140px nen 6 muc menu (padding 20px moi ben) + nut "Dang Ky Dai Ly"
   khong du cho, chu bi be thanh 2-3 dong. Tu 1400px tro len giu nguyen. */
@media (min-width: 992px) {
  .navbar-nav .nav-link,
  .header-actions .btn {
    white-space: nowrap;
  }
}

@media (min-width: 992px) and (max-width: 1399.98px) {
  .navbar-nav .nav-link {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  header .main-menu-area {
    margin-right: 0.5rem !important;
  }

  #mainNav .d-none.d-lg-block {
    margin: 0 10px !important;
  }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  header .site-logo img {
    max-width: 120px;
    height: auto;
  }

  .navbar-nav .nav-link {
    font-size: 15px;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .header-actions .btn {
    font-size: 15px;
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }
}

/* KT-09: breadcrumb nam trong container, khong dinh sat mep trai. */
.region--breadcrumb .breadcrumb {
  margin: 0;
  padding: 0.75rem 0 0;
  font-size: 0.9rem;
}

.region--breadcrumb .breadcrumb a {
  color: #106a36 !important;
}

.region--breadcrumb .breadcrumb-item.active {
  color: #6b7280;
}

.region--breadcrumb .breadcrumb a {
  text-decoration: none;
}

.region--breadcrumb .breadcrumb a:hover {
  text-decoration: underline;
}

/* Form dai ly: o "Ho va ten" bi mot quy tac co san day xuong 4px, lech hang
   voi o "So dien thoai". */
#contact-message-store-register-form input.form-control {
  margin: 0 !important;
}

/* Phan trang (/tin-tuc): mau cua theme thay cho xanh duong mac dinh cua
   Bootstrap; o bam >= 44px (RS-06). */
.foodtek-pager {
  --bs-pagination-color: #106a36;
  --bs-pagination-hover-color: #0c5028;
  --bs-pagination-hover-bg: #e8f3ec;
  --bs-pagination-hover-border-color: #cfe3d6;
  --bs-pagination-focus-color: #0c5028;
  --bs-pagination-focus-bg: #e8f3ec;
  --bs-pagination-focus-box-shadow: 0 0 0 0.2rem rgba(16, 106, 54, 0.25);
  --bs-pagination-active-bg: #106a36;
  --bs-pagination-active-border-color: #106a36;
  flex-wrap: wrap;
  gap: 6px;
}

.foodtek-pager .page-link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  margin-left: 0 !important;
  border-radius: 8px !important;
  font-weight: 600;
}

/* Logo footer: the img co width="149" height="51" + max-height:48px noi dong
   -> bi ep meo. Giu ti le goc. */
.footer-custom img[src$="logo.svg"] {
  width: auto;
}

/* Trang 404: link theo mau theme. */
.foodtek-error-page a {
  color: #106a36;
}

/* Tieu de bai viet dai (VIET HOA, 70+ ky tu): muc cuoi breadcrumb tu rut gon. */
.region--breadcrumb .breadcrumb {
  flex-wrap: nowrap;
}

.region--breadcrumb .breadcrumb-item {
  flex-shrink: 0;
  white-space: nowrap;
}

.region--breadcrumb .breadcrumb-item.active {
  flex-shrink: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Quy tac "body.path-product .field--name-body" (vien tren + dem 14px cho mo ta
   san pham) dinh ca vao nut "Dang Ky Dai Ly" tren header: tren trang san pham
   nut bi ke vien va tut xuong 14px so voi cac trang khac. */
body.path-product header .field--name-body {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
  font-size: inherit;
  line-height: inherit;
}

body.path-product header .field--name-body p {
  margin-bottom: 1rem;
}

/* Landing B2B va FAQ: page type mac dinh cua Drupal render body rat phang,
   trong khi CSS cu con ep toan bo doan van thanh mau xanh. Chi ap dung cho
   6 node B2B/FAQ duoc danh dau boi foodtek_m_preprocess_html(). */
body.foodtek-b2b-page main {
  background:
    radial-gradient(circle at 85% 3%, rgba(16, 110, 56, 0.08), transparent 40rem),
    radial-gradient(circle at 15% 15%, rgba(22, 122, 66, 0.05), transparent 35rem),
    linear-gradient(180deg, #f7faf7 0%, #ffffff 45rem);
  padding: clamp(1.5rem, 3.5vw, 3rem) 1rem clamp(3rem, 6vw, 5rem);
}

body.foodtek-b2b-page #block-foodtek-page-title,
body.foodtek-b2b-page article.node--type-page.node--view-mode-full {
  max-width: 1140px;
  margin-right: auto;
  margin-left: auto;
}

/* Hero Header Banner */
body.foodtek-b2b-page #block-foodtek-page-title {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  position: relative;
  overflow: hidden;
  margin-bottom: 2.25rem;
  padding: clamp(2.5rem, 5vw, 3.75rem) clamp(1.75rem, 4.5vw, 3.5rem);
  border-radius: 1.75rem;
  background: linear-gradient(135deg, #072e18 0%, #0d4e2a 50%, #157942 100%);
  box-shadow: 0 20px 45px rgba(7, 46, 24, 0.22);
  border: 1px solid rgba(255, 255, 255, 0.15);
}

body.foodtek-b2b-page #block-foodtek-page-title::before {
  content: "🌿 CHÍNH SÁCH ĐỐI TÁC B2B & KHÁCH HÀNG";
  display: inline-flex !important;
  align-items: center;
  width: auto !important;
  font-size: 0.8rem;
  font-weight: 750;
  letter-spacing: 0.12em;
  color: #e2f4ea;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(8px);
  padding: 0.45rem 1.15rem;
  border-radius: 50px;
  margin-bottom: 1.25rem !important;
  border: 1px solid rgba(255, 255, 255, 0.25);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Tinh chinh badge rieng cho trang FAQ */
body.foodtek-faq-page #block-foodtek-page-title::before {
  content: "💡 TRUNG TÂM HỎI ĐÁP & HỖ TRỢ KHÁCH HÀNG";
}

/* Tinh chinh badge rieng cho trang Gioi thieu */
body.path-ve-foodtek #block-foodtek-page-title::before,
body.page-node-52 #block-foodtek-page-title::before {
  content: "🏢 GIỚI THIỆU BẾP TRUNG TÂM FOODTEK";
}

body.foodtek-b2b-page #block-foodtek-page-title::after {
  position: absolute;
  top: -6rem;
  right: -4rem;
  width: 22rem;
  height: 22rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.16) 0%, transparent 70%);
  content: "";
  pointer-events: none;
}

body.foodtek-b2b-page #block-foodtek-page-title h1 {
  margin: 0 !important;
  padding: 0;
  display: block !important;
  width: 100% !important;
}

body.foodtek-b2b-page #block-foodtek-page-title span {
  display: block !important;
  position: relative;
  z-index: 1;
  max-width: 36ch;
  padding: 0;
  color: #ffffff !important;
  font-size: clamp(2rem, 3.8vw, 2.85rem);
  font-weight: 800;
  line-height: 1.25;
  letter-spacing: -0.025em;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

body.foodtek-b2b-page article.node--type-page.node--view-mode-full {
  padding: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

/* Highlights Bar */
.b2b-highlights-bar {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
  margin-bottom: 2.5rem;
}

.b2b-highlight-item {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.2rem 1.35rem;
  background: #ffffff;
  border: 1px solid #e3ebe1;
  border-radius: 1.25rem;
  box-shadow: 0 6px 18px rgba(11, 61, 34, 0.04);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.b2b-highlight-item:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 26px rgba(11, 61, 34, 0.08);
  border-color: #8ed0a8;
}

.b2b-highlight-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 1rem;
  background: linear-gradient(135deg, #e6f6ee, #d1edd9);
  font-size: 1.5rem;
  flex-shrink: 0;
  box-shadow: inset 0 0 0 1px rgba(16, 110, 56, 0.15);
}

.b2b-highlight-info strong {
  display: block;
  color: #0b3d22;
  font-size: 1.025rem;
  font-weight: 750;
  line-height: 1.3;
}

.b2b-highlight-info span {
  display: block;
  color: #64748b;
  font-size: 0.875rem;
  margin-top: 0.2rem;
}

/* Grid Section & Cards */
.b2b-grid-section {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  margin-bottom: 3.5rem;
}

.b2b-card {
  display: flex;
  flex-direction: column;
  padding: 1.85rem 2rem;
  background: #ffffff;
  border: 1px solid #e3ebe1;
  border-radius: 1.35rem;
  box-shadow: 0 6px 20px rgba(13, 70, 37, 0.04);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  position: relative;
}

.b2b-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px rgba(13, 70, 37, 0.09);
  border-color: #92d5ac;
}

.b2b-card--full {
  grid-column: span 2;
  background: linear-gradient(135deg, #f7faf7 0%, #ffffff 100%);
  border-left: 4px solid #106e38;
}

.b2b-card-badge {
  display: inline-block;
  align-self: flex-start;
  padding: 0.3rem 0.75rem;
  border-radius: 50px;
  background: #e6f5ec;
  color: #0f6434;
  font-size: 0.75rem;
  font-weight: 750;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-bottom: 0.85rem;
  border: 1px solid rgba(16, 110, 56, 0.12);
}

.b2b-card h2 {
  color: #0a381e;
  font-size: 1.25rem;
  font-weight: 750;
  line-height: 1.45;
  margin: 0 0 0.85rem;
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
}

.b2b-card h2::before {
  display: none !important;
}

.b2b-card p {
  color: #475569 !important;
  font-size: 1.025rem;
  line-height: 1.7;
  margin: 0;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

.b2b-card p a {
  color: #106e38 !important;
  font-weight: 700;
  text-decoration: underline !important;
  text-underline-offset: 3px;
  transition: all 0.2s ease;
}

.b2b-card p a:hover {
  color: #1ea257 !important;
  text-decoration-thickness: 2px;
}

/* Process Section */
.b2b-process-section {
  margin-bottom: 3.5rem;
  padding: 2.5rem 2.25rem;
  background: #ffffff;
  border: 1px solid #e3ebe1;
  border-radius: 1.5rem;
  box-shadow: 0 8px 24px rgba(13, 70, 37, 0.04);
}

.b2b-section-header {
  margin-bottom: 2rem;
  text-align: center;
}

.b2b-section-header h2 {
  color: #09371d;
  font-size: clamp(1.4rem, 2.5vw, 1.85rem);
  font-weight: 800;
  margin: 0.5rem 0 0;
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
}

.b2b-section-header h2::before {
  display: none !important;
}

.b2b-stepper {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
  position: relative;
}

.b2b-step {
  display: flex;
  flex-direction: column;
  padding: 1.5rem 1.25rem;
  background: #f8faf8;
  border: 1px solid #edf3ec;
  border-radius: 1.25rem;
  position: relative;
  transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.b2b-step:hover {
  transform: translateY(-4px);
  background: #f1f8f3;
  box-shadow: 0 10px 24px rgba(16, 110, 56, 0.08);
  border-color: #a0d8b4;
}

.b2b-step-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  background: linear-gradient(135deg, #106e38, #1ca053);
  color: #ffffff;
  font-size: 1.05rem;
  font-weight: 800;
  margin-bottom: 1rem;
  box-shadow: 0 4px 10px rgba(16, 110, 56, 0.28);
}

.b2b-step-body h4 {
  color: #0d4625;
  font-size: 1.05rem;
  font-weight: 750;
  margin: 0 0 0.4rem;
}

.b2b-step-body p {
  color: #64748b;
  font-size: 0.925rem;
  line-height: 1.55;
  margin: 0;
}

/* Contact CTA Box */
.b2b-contact-box {
  padding: clamp(2.5rem, 5vw, 3.5rem) clamp(1.75rem, 4vw, 3rem);
  border-radius: 1.75rem;
  background: linear-gradient(135deg, #072e18 0%, #0d4e2a 55%, #157942 100%);
  color: #ffffff;
  text-align: center;
  box-shadow: 0 18px 42px rgba(7, 46, 24, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.14);
}

.b2b-contact-badge {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 750;
  letter-spacing: 0.12em;
  color: #e2f4ea;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(8px);
  padding: 0.35rem 0.9rem;
  border-radius: 50px;
  margin-bottom: 1.15rem;
  border: 1px solid rgba(255, 255, 255, 0.22);
}

.b2b-contact-box h3 {
  color: #ffffff;
  font-size: clamp(1.4rem, 2.5vw, 1.85rem);
  font-weight: 800;
  margin: 0 0 0.75rem;
}

.b2b-contact-box p {
  color: #d1ead9 !important;
  font-size: 1.05rem;
  max-width: 44rem;
  margin: 0 auto 2rem;
  line-height: 1.65;
}

.b2b-contact-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}

.b2b-action-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0.85rem 1.65rem;
  border-radius: 50px;
  font-size: 0.975rem;
  font-weight: 750;
  text-decoration: none !important;
  transition: all 0.25s ease;
}

.b2b-action-btn--fb {
  background: #ffffff;
  color: #09371d !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
}

.b2b-action-btn--fb:hover {
  background: #f0fdf4;
  color: #106e38 !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}

.b2b-action-btn--mail {
  background: rgba(255, 255, 255, 0.16);
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.25);
  backdrop-filter: blur(8px);
}

.b2b-action-btn--mail:hover {
  background: rgba(255, 255, 255, 0.28);
  transform: translateY(-2px);
  color: #ffffff !important;
}

.b2b-action-btn--phone {
  background: linear-gradient(135deg, #eab308, #ca8a04);
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(202, 138, 4, 0.35);
}

.b2b-action-btn--phone:hover {
  background: linear-gradient(135deg, #facc15, #d97706);
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(202, 138, 4, 0.45);
}

/* Fallback for other standard B2B pages */
body.foodtek-b2b-page article.node--type-page .field--name-body > h2 {
  margin: 1.5rem 0 0;
  padding: 1.35rem 1.75rem 0.65rem;
  border: 1px solid #e3ebe1;
  border-bottom: none;
  border-radius: 1.25rem 1.25rem 0 0;
  background: #ffffff;
  color: #0d4625;
  font-size: clamp(1.15rem, 2vw, 1.35rem);
  font-weight: 750;
  line-height: 1.4;
  display: flex;
  align-items: flex-start;
  gap: 0.85rem;
  box-shadow: 0 6px 18px rgba(13, 70, 37, 0.04);
}

body.foodtek-b2b-page article.node--type-page .field--name-body > h2:first-child {
  margin-top: 0;
}

body.foodtek-b2b-page article.node--type-page .field--name-body > h2::before {
  content: "Q";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 0.6rem;
  background: #e6f4ec;
  color: #106e38;
  font-size: 0.9rem;
  font-weight: 800;
  flex-shrink: 0;
  margin-top: 0.1rem;
  box-shadow: inset 0 0 0 1px rgba(16, 110, 56, 0.12);
}

body.foodtek-b2b-page article.node--type-page .field--name-body > h2 + p,
body.foodtek-b2b-page article.node--type-page .field--name-body > h2 + ol,
body.foodtek-b2b-page article.node--type-page .field--name-body > h2 + ul {
  margin: 0;
  padding: 0.35rem 1.75rem 1.5rem calc(1.75rem + 2rem + 0.85rem);
  border: 1px solid #e3ebe1;
  border-top: none;
  border-radius: 0 0 1.25rem 1.25rem;
  background: #ffffff;
  color: #4b5563 !important;
  font-size: 1.05rem;
  line-height: 1.75;
  box-shadow: 0 6px 18px rgba(13, 70, 37, 0.04);
}

body.foodtek-b2b-page article.node--type-page .field--name-body > ol {
  list-style: none;
  counter-reset: b2b-step;
  padding-left: 0 !important;
  display: grid;
  gap: 0.65rem;
  margin-top: 0.5rem !important;
}

body.foodtek-b2b-page article.node--type-page .field--name-body > ol li {
  counter-increment: b2b-step;
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 0.65rem 1rem;
  background: #f8faf8;
  border-radius: 0.75rem;
  border: 1px solid #edf2ed;
  font-weight: 500;
  color: #1a3826;
  margin-top: 0 !important;
  transition: background 0.2s ease, transform 0.2s ease;
}

body.foodtek-b2b-page article.node--type-page .field--name-body > ol li:hover {
  background: #eef7f1;
  transform: translateX(4px);
}

body.foodtek-b2b-page article.node--type-page .field--name-body > ol li::before {
  content: counter(b2b-step);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 50%;
  background: linear-gradient(135deg, #106e38, #1b8748);
  color: #ffffff;
  font-size: 0.825rem;
  font-weight: 750;
  flex-shrink: 0;
  box-shadow: 0 2px 6px rgba(16, 110, 56, 0.25);
}

body.foodtek-b2b-page article.node--type-page .field--name-body a {
  color: #106e38;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

/* Responsive Breakpoints */
@media (max-width: 1024px) {
  .b2b-highlights-bar {
    grid-template-columns: repeat(2, 1fr);
  }
  .b2b-stepper {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .b2b-highlights-bar {
    grid-template-columns: 1fr;
  }
  .b2b-grid-section {
    grid-template-columns: 1fr;
  }
  .b2b-card--full {
    grid-column: span 1;
  }
  .b2b-stepper {
    grid-template-columns: 1fr;
  }
  .b2b-contact-actions {
    flex-direction: column;
    width: 100%;
  }
  .b2b-action-btn {
    width: 100%;
    justify-content: center;
  }
}

/* FAQ dung disclosure native: de bam, co dau hieu mo/dong ro rang. */
body.foodtek-faq-page article.node--type-page .field--name-body h2 {
  margin-bottom: 1.25rem;
}

body.foodtek-faq-page article.node--type-page .field--name-body details {
  margin: 0.75rem 0;
  overflow: hidden;
  border: 1px solid #dce7da;
  border-radius: 0.9rem;
  background: #fff;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}

body.foodtek-faq-page article.node--type-page .field--name-body details[open] {
  border-color: #8cb89a;
  box-shadow: 0 0.75rem 1.75rem rgba(13, 77, 44, 0.09);
}

body.foodtek-faq-page article.node--type-page .field--name-body summary {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.05rem 1.25rem;
  cursor: pointer;
  color: #124d2c;
  font-weight: 750;
  line-height: 1.45;
  list-style: none;
}

body.foodtek-faq-page article.node--type-page .field--name-body summary::-webkit-details-marker {
  display: none;
}

body.foodtek-faq-page article.node--type-page .field--name-body summary::before {
  display: grid;
  flex: 0 0 1.75rem;
  width: 1.75rem;
  height: 1.75rem;
  place-items: center;
  border-radius: 50%;
  background: #e8f2e8;
  color: #0d6436;
  content: "+";
  font-size: 1.25rem;
  font-weight: 500;
}

body.foodtek-faq-page article.node--type-page .field--name-body details[open] summary::before {
  content: "–";
}

body.foodtek-faq-page article.node--type-page .field--name-body details p {
  margin: 0;
  padding: 0 1.25rem 1.2rem 4rem;
}

body.foodtek-b2b-page article.node--type-page .field--name-body summary:focus-visible,
body.foodtek-b2b-page article.node--type-page .field--name-body a:focus-visible {
  outline: 3px solid #dba53b;
  outline-offset: 3px;
}

@media (max-width: 575.98px) {
  body.foodtek-b2b-page main {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
  }

  body.foodtek-b2b-page #block-foodtek-page-title,
  body.foodtek-b2b-page article.node--type-page {
    border-radius: 1rem;
  }

  body.foodtek-b2b-page article.node--type-page {
    padding: 1rem;
  }

  body.foodtek-b2b-page article.node--type-page .field--name-body h2,
  body.foodtek-b2b-page article.node--type-page .field--name-body h2 + p,
  body.foodtek-b2b-page article.node--type-page .field--name-body h2 + ol,
  body.foodtek-b2b-page article.node--type-page .field--name-body h2 + ul {
    padding-right: 1rem;
    padding-left: 1rem;
  }

  body.foodtek-faq-page article.node--type-page .field--name-body summary {
    padding: 1rem;
  }

  body.foodtek-faq-page article.node--type-page .field--name-body details p {
    padding: 0 1rem 1rem;
  }
}

/* =====================================================================
   DESIGN_2 - chu va bo cuc chu (sheet DESIGN_2_Font_Mau_Ty_le)
   ===================================================================== */

/* DS-10: tieng Viet co dau chong hai tang (e-mu-nga, o-hoi, u-nga) nen can
   giãn dong cao hon chuan tieng Anh. Body 1.7, tieu de 1.3. */
body {
  line-height: 1.7;
}

h1, h2, h3, h4, h5, h6,
.page-title,
.card-title,
.featured-title {
  line-height: 1.3;
}

/* DS-11: Safari tren iPhone tu phong to trang khi cham vao o nhap co chu
   nho hon 16px. Giu 16px tren dien thoai / tablet. */
@media (max-width: 991.98px) {
  input.form-control,
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="search"],
  input[type="number"],
  select,
  select.form-select,
  textarea,
  textarea.form-control {
    font-size: 16px !important;
  }
}

/* DS-12: thang co chu. H1 32px tren dien thoai, 40px tren desktop
   (dang dung 48px o ca hai). */
h1,
h1.display-5,
.page-title.display-5 {
  font-size: clamp(2rem, 4.5vw, 2.5rem) !important;
}

/* Than bai viet: 16px tren dien thoai, 18px tu 992px tro len. */
@media (min-width: 992px) {
  .field--name-body > p,
  .field--name-body > ul,
  .field--name-body > ol {
    font-size: 1.125rem;
  }
}

/* DS-13: do dai dong 60-75 ky tu. Don vi "ch" tinh theo be rong chu so 0,
   ma chu tieng Viet hep hon, nen 75ch thuc te ra ~90 ky tu -> dung 60ch. */
.field--name-body > p,
.field--name-body > ul,
.field--name-body > ol,
.field--name-body > blockquote {
  max-width: 60ch;
}

/* Anh minh hoa trong than bai: bam theo dung do rong cot chu o tren, neu khong
   anh 1200px keo het be ngang container trong khi doan van chi rong 60ch. */
.field--name-body > figure.figure {
  display: block;
  max-width: 60ch;
}

.field--name-body > figure.figure > img {
  width: 100%;
  height: auto;
}

.field--name-body > figure.figure > figcaption {
  font-size: 0.9375rem;
  color: #5b6b63;
}

/* Informational pages: one continuous reading column, not mismatched cards.
   Scoped so product descriptions and the home page keep their own layouts. */
body.foodtek-b2b-page #block-foodtek-page-title {
  border-radius: 1rem;
  box-shadow: none;
  padding: clamp(1.75rem, 4vw, 3rem);
  margin-bottom: 2.5rem;
}

body.foodtek-b2b-page #block-foodtek-page-title::before {
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  padding: 0;
  letter-spacing: 0.08em;
  font-size: 0.75rem;
}

body.foodtek-about-page #block-foodtek-page-title::before {
  content: "BẾP TRUNG TÂM FOODTEK";
}

body.foodtek-policy-page #block-foodtek-page-title::before {
  content: "THÔNG TIN & CHÍNH SÁCH";
}

body.foodtek-b2b-page article.node--type-page .field--name-body > h2 {
  display: block;
  margin: 2rem 0 0.75rem;
  padding: 1.5rem 0 0;
  border: 0;
  border-top: 1px solid #dce7df;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  font-size: clamp(1.25rem, 2vw, 1.5rem);
}

body.foodtek-b2b-page article.node--type-page .field--name-body > h2:first-child {
  padding-top: 0;
  border-top: 0;
}

body.foodtek-b2b-page article.node--type-page .field--name-body > h2::before {
  content: none;
}

body.foodtek-b2b-page article.node--type-page .field--name-body > p,
body.foodtek-b2b-page article.node--type-page .field--name-body > ul,
body.foodtek-b2b-page article.node--type-page .field--name-body > ol,
body.foodtek-b2b-page article.node--type-page .field--name-body > blockquote,
body.foodtek-b2b-page article.node--type-page .field--name-body > figure.figure {
  max-width: none;
}

body.foodtek-b2b-page article.node--type-page .field--name-body > h2 + p,
body.foodtek-b2b-page article.node--type-page .field--name-body > h2 + ul,
body.foodtek-b2b-page article.node--type-page .field--name-body > h2 + ol {
  padding: 0;
  margin: 0 0 1.25rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #43554a !important;
  font-size: 1.0625rem;
  line-height: 1.85;
}

body.foodtek-b2b-page article.node--type-page .field--name-body > h2 + ul {
  padding-left: 1.5rem;
}

body.foodtek-policy-page #block-foodtek-page-title,
body.foodtek-policy-page article.node--type-page.node--view-mode-full {
  max-width: 900px;
}

body.foodtek-policy-page article.node--type-page.node--view-mode-full {
  padding: clamp(1.25rem, 3vw, 2.5rem);
  border: 1px solid #dce7df;
  border-radius: 0.75rem;
  background: #fff;
}

/* The original about content stays editable; its first paragraph and genuine
   kitchen photo share an editorial introduction on wide screens. */
body.foodtek-about-page article.node--type-page .field--name-body:has(> h2:first-child + p + figure) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  column-gap: clamp(2rem, 5vw, 4rem);
  align-items: start;
}

body.foodtek-about-page article.node--type-page .field--name-body > * {
  grid-column: 1 / -1;
  min-width: 0;
}

body.foodtek-about-page article.node--type-page .field--name-body > h2:first-child {
  grid-column: 1;
  grid-row: 1;
  align-self: end;
  margin: 1rem 0;
  font-size: clamp(1.65rem, 3vw, 2rem);
}

body.foodtek-about-page article.node--type-page .field--name-body > h2:first-child + p {
  grid-column: 1;
  grid-row: 2;
  font-size: 1.125rem;
}

body.foodtek-about-page article.node--type-page .field--name-body > h2:first-child + p + figure {
  grid-column: 2;
  grid-row: 1 / 3;
  margin: 0 0 1rem;
}

body.foodtek-about-page article.node--type-page .field--name-body > figure.figure img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 0.75rem;
}

body.foodtek-about-page article.node--type-page .field--name-body > figure.figure figcaption {
  margin-top: 0.75rem;
  font-size: 0.8125rem;
  line-height: 1.6;
}

@media (max-width: 767.98px) {
  body.foodtek-about-page article.node--type-page .field--name-body:has(> h2:first-child + p + figure) {
    display: block;
  }

  body.foodtek-b2b-page article.node--type-page .field--name-body > h2 {
    padding: 1.25rem 0 0;
  }

  body.foodtek-b2b-page article.node--type-page .field--name-body > h2 + p {
    padding: 0;
  }
}

/* DS-11 (tiep): 2 form lien he dung selector ID nen phai viet dung muc do uu
   tien do, neu khong Safari iOS van tu phong to khi cham vao o nhap. */
@media (max-width: 991.98px) {
  #contact-message-store-register-form input.form-control,
  #contact-message-store-register-form select.form-select,
  #contact-message-store-register-form textarea.form-control,
  #contact-message-lien-he-form input.form-control,
  #contact-message-lien-he-form input[type="text"],
  #contact-message-lien-he-form input[type="email"],
  #contact-message-lien-he-form textarea.form-control,
  #block-foodtek-content input.form-control,
  #block-foodtek-content input.form-search,
  .header-actions .search-block-form .form-control {
    font-size: 16px !important;
  }
}

/* DS-14: chu trang dat trong khoi co anh nen. Class .bg-image con duoc dung
   cho hero trang chu (chu mau toi tren anh sang) nen phai gioi han dung khoi
   "Tro thanh dai ly" bang :has(). Khong dung :has -> khong co lop phu. ("Tro thanh dai ly cung FoodTek").
   Anh nen sang nen chu trang khong dat 4.5:1. Phu mot lop toi mo phia sau chu,
   khong dong vao anh goc. */
.bg-image:has(#contact-message-store-register-form) {
  position: relative;
  isolation: isolate;
}

.bg-image:has(#contact-message-store-register-form)::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(90deg, rgba(6, 40, 21, 0.82) 0%, rgba(6, 40, 21, 0.74) 50%, rgba(6, 40, 21, 0.3) 78%, rgba(6, 40, 21, 0.05) 100%);
  pointer-events: none;
}

.bg-image:has(#contact-message-store-register-form) > * {
  position: relative;
  z-index: 1;
}

/* Bo mo chu phu: chu mo tren nen anh lam giam them tuong phan. */
.bg-image:has(#contact-message-store-register-form) .text-white,
.bg-image:has(#contact-message-store-register-form) p {
  opacity: 1;
}

/* DS-14 (tiep): chu nhan mau xanh dam #106e38 ghi cung trong noi dung nay
   nam tren lop phu toi -> doi sang xanh sang de van doc duoc. */
.bg-image:has(#contact-message-store-register-form) [style*="#106e38"],
.bg-image:has(#contact-message-store-register-form) [style*="#106A38"] {
  color: #7ad39f !important;
}

/* AE-07: bang thong so tren trang san pham. */
.foodtek-specs {
  max-width: 1140px;
  margin: 0 auto 2.5rem;
  padding: 0 12px;
}

.foodtek-specs__title {
  margin-bottom: 1rem;
  color: #106a36;
  font-size: 1.5rem;
  font-weight: 700;
}

.foodtek-specs__table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
}

.foodtek-specs__table th,
.foodtek-specs__table td {
  padding: 12px 16px;
  border-bottom: 1px solid #e5e7eb;
  font-size: 0.95rem;
  text-align: left;
  vertical-align: top;
}

.foodtek-specs__table th {
  width: 30%;
  min-width: 140px;
  color: #1f2937;
  font-weight: 600;
  background: #f8faf9;
}

.foodtek-specs__note {
  margin-top: 0.75rem;
  color: #6b7280;
  font-size: 0.9rem;
}

.foodtek-specs__note a {
  color: #106a36;
}

/* RS-10 / RS-12 (cap nhat): menu chinh da tang tu 6 len 8 muc (them "Dai ly"
   va "Hoi dap"), nut "Dang Ky Dai Ly" bi day ra ngoai man hinh o 1300-1500px.
   Vi body dat overflow-x: clip nen nut bi CAT MAT chu khong hien thanh thanh
   cuon -> phai siet khoang cach theo tung moc. */
@media (min-width: 992px) and (max-width: 1199.98px) {
  /* 8 muc menu + logo + nut CTA khong vua khung 960px -> siet manh hon,
     va thu nho ca nut CTA (truoc day nut bi day han ra ngoai man hinh). */
  .navbar-nav .nav-link {
    padding-left: 4px !important;
    padding-right: 4px !important;
    font-size: 13px;
  }

  header .site-logo img {
    max-width: 92px;
  }

  header .main-menu-area {
    margin-right: 0 !important;
  }

  #mainNav .d-none.d-lg-block {
    margin: 0 6px !important;
  }

  .header-actions .btn {
    padding-left: 10px !important;
    padding-right: 10px !important;
    font-size: 13px;
  }
}

@media (min-width: 1200px) and (max-width: 1399.98px) {
  .navbar-nav .nav-link {
    padding-left: 9px !important;
    padding-right: 9px !important;
    font-size: 15px;
  }

  header .site-logo img {
    max-width: 130px;
  }
}

@media (min-width: 1400px) {
  /* 8 muc menu voi dem 20px moi ben rong hon ca khung container (1320px) ->
     hang menu bi day xuong dong thu hai. Giu dem 14px de ca menu va nut CTA
     nam gon tren MOT dong o moi do rong tu 1400px tro len. */
  .navbar-nav .nav-link {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}

/* Nut CTA khong duoc tran ra ngoai man hinh o bat ky do rong nao.
   Khi khong con cho (vi du nguoi dung chinh co chu trinh duyet len 200% -
   RS-15), header XUONG DONG thay vi tran: body dat overflow-x: clip nen phan
   tran se bi cat mat, nguoi dung khong bam duoc. */
@media (min-width: 992px) {
  header .container {
    flex-wrap: wrap;
    row-gap: 8px;
  }

  #mainNav {
    min-width: 0;
  }

  #mainNav > .d-flex {
    flex-wrap: wrap;
    justify-content: flex-end;
    row-gap: 8px;
  }

  .navbar-nav {
    flex-wrap: wrap;
  }

  .header-actions {
    flex-shrink: 0;
  }
}

/* DS-17 / ND-28: tieu de H1 khong viet hoa toan bo (kho doc, giam ti le bam
   tu ket qua tim kiem). Noi dung co the con class .text-uppercase ghi cung. */
main h1.text-uppercase,
main .page-title.text-uppercase,
.field--name-body h1.text-uppercase {
  text-transform: none !important;
}

/* AI-08: khoi lien ket noi bo cuoi bai viet. */
.foodtek-related {
  max-width: 1140px;
  margin: 2rem auto 2.5rem;
  padding: 1.25rem 1.5rem;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #f8faf9;
}

.foodtek-related h2 {
  margin-bottom: 0.75rem;
  color: #106a36;
  font-size: 1.25rem;
  font-weight: 700;
}

/* Drupal gan them class .list-group cua Bootstrap (xep doc) -> phai ghi de. */
.foodtek-related__products {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.foodtek-related__products li {
  margin: 0;
  border: 0;
  background: transparent;
}

.foodtek-related__products a {
  display: inline-block;
  padding: 6px 14px;
  border: 1px solid #cfe3d6;
  border-radius: 999px;
  background: #fff;
  color: #106a36;
  font-size: 0.9rem;
  text-decoration: none;
}

.foodtek-related__products a:hover {
  background: #106a36;
  color: #fff;
}

.foodtek-related__b2b {
  margin: 1rem 0 0;
  font-size: 0.95rem;
}

.foodtek-related__b2b a {
  color: #106a36;
}

/* Loi lech 1px o dung moc 992px: CSS cua theme dung "max-width: 992px" cho
   giao dien dien thoai, trong khi Bootstrap mo menu ngang tu "min-width: 992px".
   O dung 992px ca hai cung ap dung -> menu bi an ma nut hamburger cung bi an,
   header chi con logo, khong the dieu huong. Tra lai menu ngang o dung moc nay. */
@media (min-width: 992px) and (max-width: 992.98px) {
  #mainNav {
    position: static;
    width: auto;
    max-height: none;
    padding: 0;
    overflow: visible;
    border-top: 0;
    background: transparent;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
  }

  #mainNav > .d-flex {
    flex-direction: row !important;
    align-items: center !important;
    width: auto;
  }

  .main-menu-area {
    width: auto;
    margin-bottom: 0;
  }

  .main-menu-area a {
    display: inline-block;
    width: auto;
    padding: 8px 4px;
    border-bottom: 0;
  }

  .header-actions {
    width: auto;
    padding: 0;
    margin-top: 0;
    background: transparent;
  }

  .navbar-nav .dropdown-menu {
    position: absolute;
    width: auto;
    padding: 10px 0;
    background-color: #fff;
  }
}

/* Form Lien He: bo cuc luoi voi cac truong moi */
#block-foodtek-content #contact-message-lien-he-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px 30px;
  width: 100%;
}

#block-foodtek-content #contact-message-lien-he-form .layout--onecol,
#block-foodtek-content #contact-message-lien-he-form .layout__region {
  display: contents;
}

#block-foodtek-content #contact-message-lien-he-form .form-item-name {
  grid-column: 1/2;
  grid-row: 1;
  margin-bottom: 0 !important;
}

#block-foodtek-content #contact-message-lien-he-form .form-item-mail {
  grid-column: 2/3;
  grid-row: 1;
  margin-bottom: 0 !important;
}

#block-foodtek-content #contact-message-lien-he-form #edit-field-phone-wrapper {
  grid-column: 1/2;
  grid-row: 2;
  margin-bottom: 0 !important;
}

#block-foodtek-content #contact-message-lien-he-form #edit-field-business-area-wrapper {
  grid-column: 2/3;
  grid-row: 2;
  margin-bottom: 0 !important;
}

#block-foodtek-content #contact-message-lien-he-form #edit-field-business-model-wrapper {
  grid-column: 1/-1;
  grid-row: 3;
  margin-bottom: 0 !important;
}

#block-foodtek-content #contact-message-lien-he-form #edit-subject-wrapper {
  display: none;
}

#block-foodtek-content #contact-message-lien-he-form #edit-message-wrapper {
  grid-column: 1/-1;
  grid-row: 4;
  margin-bottom: 0 !important;
}

#block-foodtek-content #contact-message-lien-he-form .form-actions {
  grid-column: 1/-1;
  grid-row: 5;
  margin-top: 10px;
  width: 100%;
}

@media (max-width: 768px) {
  #block-foodtek-content #contact-message-lien-he-form {
    grid-template-columns: 1fr;
    gap: 15px;
  }
  #block-foodtek-content #contact-message-lien-he-form .form-item-name,
  #block-foodtek-content #contact-message-lien-he-form .form-item-mail,
  #block-foodtek-content #contact-message-lien-he-form #edit-field-phone-wrapper,
  #block-foodtek-content #contact-message-lien-he-form #edit-field-business-area-wrapper,
  #block-foodtek-content #contact-message-lien-he-form #edit-field-business-model-wrapper,
  #block-foodtek-content #contact-message-lien-he-form #edit-subject-wrapper,
  #block-foodtek-content #contact-message-lien-he-form #edit-message-wrapper {
    grid-column: 1/-1;
    grid-row: auto;
  }
}

/* Trang danh muc san pham (/san-pham-khac, /pizza-y, /hips-binh-thien-ha) da co tieu de trong view-header */
body.foodtek-category-page #block-foodtek-page-title {
  display: none !important;
}

/* Banner hero: giu dong thong tin san xuat bep luon tren 1 dong tren desktop, khong bi rot chu 'nghiep' */
.banner-block .col-lg-7 p {
  max-width: 620px !important;
}

/* Trang khuyen mai (/khuyen-mai): da co tieu de trong layout block, an page-title bi lech o goc */
body.path-khuyen-mai #block-foodtek-page-title,
body.page-node-7 #block-foodtek-page-title {
  display: none !important;
}

/* Hop lead intro cho trang FAQ */
.b2b-intro-lead-box {
  background: #ffffff;
  border: 1px solid #e3ebe1;
  border-radius: 1.25rem;
  padding: 1.5rem 2rem;
  box-shadow: 0 4px 16px rgba(11, 61, 34, 0.04);
}
.b2b-intro-lead-box p {
  color: #334155;
  font-size: 1.05rem;
  line-height: 1.7;
  margin: 0;
}

/* Badge size cho the san pham */
.item-product-size {
  display: flex;
  justify-content: center;
  margin: 0.5rem 0 0.75rem;
}
.item-product-size .badge {
  display: inline-flex;
  align-items: center;
  background: #e8f5e9 !important;
  color: #0e6034 !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  padding: 0.35rem 0.85rem !important;
  border-radius: 50px !important;
  border: 1px solid #b7dfc6 !important;
  letter-spacing: 0.03em;
  box-shadow: 0 1px 3px rgba(14, 96, 52, 0.08);
}




