
/* ===== template-parts/nang-luc-san-xuat/section-banner/assets/styles.css ===== */
/* ============================================================== */
/* Section Banner — Năng lực sản xuất (Hero)                      */
/* Desktop: 1600×700px — full-bleed warehouse bg + dark overlay   */
/* Mobile:  375×427px  — text (white bg) top + image below        */
/* Figma desktop node: 2348:27849                                  */
/* Figma mobile  node: 2349:60830                                  */
/* ============================================================== */

/* ---- Section wrapper ---- */
.section-nlsx-banner {
  position: relative;
  width: 100%;
  height: 43.75rem; /* 700 / 16 */
  overflow: hidden;
}
@media (min-width: 1024px) {
  .section-nlsx-banner {
    height: calc(100vh - 7rem);
  }
  .section-nlsx-banner__content {
    padding-bottom: 5rem !important ;
  }
}

/* ---- Background image (full-bleed) ---- */
.section-nlsx-banner__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.section-nlsx-banner__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: fill;
  object-position: center;
}

/* ---- Dark overlay (desktop — two gradients layered) ---- */
/* Figma: gradient 1 opacity 0.7 — from bottom black → top transparent */
/* Figma: gradient 2 opacity 0.2 — from top transparent → bottom black */
.section-nlsx-banner__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0.3;
  pointer-events: none;
  background: linear-gradient(
      180deg,
      rgba(102, 102, 102, 0) 0%,
      rgba(0, 0, 0, 0.2) 100%
    ),
    linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 100%);
}

/* ---- 360 Badge — centered in section ---- */
/* Desktop: 123.5×123.5px at (738, 268) in the 1600×700 frame */
/* Badge center X = 738 + 61.75 = 799.75 ≈ 800 */
/* Centered horizontally, vertically ~268px from top */
.section-nlsx-banner__badge {
  position: absolute;
  top: 16.75rem; /* 268 / 16 */
  left: 50%;
  transform: translateX(-50%);
  width: 7.7188rem; /* 123.5 / 16 */
  height: 7.7188rem; /* 123.5 / 16 */
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

.section-nlsx-banner__badge svg {
  width: 100%;
  height: 100%;
}

/* ---- Content bar (bottom) ---- */
/* Desktop: absolute bottom, flex-row (left: breadcrumb+h1+desc | right: button) */
/* padding: top 40 right 100 bottom 40 left 100, align items-end, spacing 40 */
.section-nlsx-banner__content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  padding: 2.5rem 6.25rem; /* 40/16 top/bottom, 100/16 left/right */
  box-sizing: border-box;
  z-index: 3;
}

/* ---- Left block: breadcrumb + title + description ---- */
.section-nlsx-banner__left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1;
  min-width: 0;
}

/* ---- Breadcrumb ---- */
.section-nlsx-banner__breadcrumb {
  display: flex;
  align-items: center;
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem; /* 16 / 16 */
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.02rem; /* -0.32px / 16 */
  margin-bottom: 1.25rem; /* spacing 20 / 16 between breadcrumb and title block */
  text-decoration: none;
  white-space: nowrap;
}

.section-nlsx-banner__breadcrumb-home {
  color: #b8b8b8; /* Figma: rgba(184,184,184,1) */
  flex-shrink: 0;
}

.section-nlsx-banner__breadcrumb-sep {
  color: #ffffff;
  flex-shrink: 0;
  margin-left: 0.625rem; /* 10 / 16 gap */
}

/* ---- Title + description stacked ---- */
/* Figma: Frame 2147264491, spacing 12 between h1 and desc */
.section-nlsx-banner__text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}

/* ---- H1 ---- */
.section-nlsx-banner__title {
  font-family: "Lexend Deca", sans-serif;
  font-size: 3.0625rem; /* 49 / 16 */
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.0919rem; /* -1.47px / 16 */
  text-transform: uppercase;
  color: #ffffff;
  margin: 1.5rem 0 0.75rem 0; /* 24/16 gap từ breadcrumb; 12/16 giữa title và desc */
}

/* ---- Description ---- */
.section-nlsx-banner__desc {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem; /* 16 / 16 */
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: -0.02rem; /* -0.32px / 16 */
  color: #ffffff;
  margin: 0;
  max-width: 40.5rem; /* 648 / 16 — Figma desc width */
}

/* Desktop shows desktop desc, hides mobile desc */
.section-nlsx-banner__desc--mobile {
  display: none;
}

/* ---- CTA Button (right side on desktop) ---- */
/* Figma: 288×56px, no corner radius, orange #FA6900, padding 16 top/bottom, 64 left/right */
.section-nlsx-banner__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background-color: #fa6900;
  color: #ffffff;
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem; /* 16 / 16 */
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -0.01rem; /* -0.16px / 16 */
  text-transform: uppercase;
  text-decoration: none;
  padding: 1rem 4rem; /* 16/16 top/bottom, 64/16 left/right */
  min-width: 18rem; /* 288 / 16 */
  min-height: 3.5rem; /* 56 / 16 */
  border: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
  margin-left: 2.5rem; /* spacing 40 / 16 from left block */
  white-space: nowrap;
}

.section-nlsx-banner__cta:hover {
  background-color: #f15a29;
}

.section-nlsx-banner__cta:focus-visible {
  outline: 0.125rem solid #ffffff;
  outline-offset: 0.125rem;
}

.section-nlsx-banner__cta-icon {
  display: inline-flex;
  align-items: center;
  margin-left: 0.5rem; /* spacing 8 / 16 between text and icon */
}

/* ================================================================ */
/* Mobile overrides — only properties that differ from desktop       */
/* ================================================================ */
@media screen and (max-width: 639.98px) {
  /* Section: static flex-col, white bg top, image below */
  .section-nlsx-banner {
    position: relative;
    height: auto;
    overflow: visible;
    display: flex;
    flex-direction: column;
  }

  /* Background moves to order 2, becomes a positioned container for the image */
  .section-nlsx-banner__bg {
    position: relative;
    inset: auto;
    width: 100%;
    height: 10rem; /* 160 / 16 */
    flex-shrink: 0;
    order: 2;
  }

  /* Hide desktop overlay on mobile */
  .section-nlsx-banner__overlay {
    display: none;
  }

  /* Badge: in the image block on mobile (order 2) */
  /* Figma: 40×40px badge in image frame, relativeTransform (168, 60) */
  .section-nlsx-banner__badge {
    position: absolute;
    top: 3.75rem; /* 60 / 16 */
    left: 50%;
    transform: translateX(-50%);
    width: 2.5rem; /* 40 / 16 */
    height: 2.5rem; /* 40 / 16 */
    z-index: 2;
  }

  /* Content block: top (order 1), white bg, flex-col */
  .section-nlsx-banner__content {
    position: relative;
    bottom: auto;
    left: auto;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 2.5rem 1rem 1.25rem 1rem; /* top 40, right 16, bottom 20, left 16 — all /16 */
    background-color: #ffffff;
    order: 1;
    z-index: auto;
    width: 100%;
    box-sizing: border-box;
  }

  /* Left block: full width */
  .section-nlsx-banner__left {
    width: 100%;
    flex: none;
    margin-bottom: 1.25rem; /* spacing 20 / 16 between left (breadcrumb+title+desc) and button */
  }

  /* Breadcrumb on mobile: 14px, muted dark color, spacing 0 */
  .section-nlsx-banner__breadcrumb {
    font-size: 0.875rem; /* 14 / 16 */
    letter-spacing: 0; /* Figma mobile: letterSpacing 0 */
    line-height: 1.5;
    margin-bottom: 1.25rem; /* spacing 20 / 16 between breadcrumb and title/desc block */
    white-space: normal;
  }

  .section-nlsx-banner__breadcrumb-home {
    color: rgba(19, 19, 19, 0.6); /* Figma: opacity 0.6 on #131313 */
  }

  .section-nlsx-banner__breadcrumb-sep {
    color: #131313;
    margin-left: 0;
  }

  /* Title block: spacing 10 between title and desc */
  .section-nlsx-banner__text {
    width: 100%;
  }

  /* H1 mobile: 24px, 600, -0.48px ls */
  .section-nlsx-banner__title {
    font-size: 1.5rem; /* 24 / 16 */
    letter-spacing: -0.04rem; /* -0.48px / 16 */
    color: #131313;
    margin-bottom: 0.625rem; /* spacing 10 / 16 between title and desc */
    white-space: normal;
    margin-top: 1.25rem;
  }

  /* Description mobile: 14px, 300, ls -0.28px, dark color, mobile text different */
  .section-nlsx-banner__desc {
    font-size: 0.875rem; /* 14 / 16 */
    letter-spacing: -0.0175rem; /* -0.28px / 16 */
    color: #131313;
    max-width: 100%;
    text-align: justify;
  }

  /* Swap descriptions: hide desktop, show mobile */
  .section-nlsx-banner__desc--desktop {
    display: none;
  }

  .section-nlsx-banner__desc--mobile {
    display: block;
  }

  /* CTA button mobile: full-width, 343×42 (margin auto within 375-32=343 content area) */
  /* padding: 12/16=0.75rem top/bottom, 24/16=1.5rem left/right */
  .section-nlsx-banner__cta {
    width: 100%;
    min-width: 0;
    min-height: 2.625rem; /* 42 / 16 */
    margin-left: 0;
    padding: 0.75rem 1.5rem; /* 12/16 top/bottom, 24/16 left/right */
    font-size: 0.875rem; /* 14 / 16 */
    letter-spacing: -0.0088rem; /* -0.14px / 16 */
    line-height: 1.3;
    justify-content: center;
  }
}


/* ===== template-parts/nang-luc-san-xuat/section-infrastructure/assets/styles.css ===== */
/* ============================================================== */
/* Section Infrastructure — Hạ tầng sản xuất toàn quốc           */
/* Desktop: 1600×751px — image left + content right, orange strip */
/* Mobile:  375×833px  — text top + image + stats stacked         */
/* Figma desktop node: 2348:27874                                  */
/* Figma mobile  node: 2349:60852                                  */
/* ============================================================== */

/* ── Section wrapper ── */
.section-infrastructure {
    position: relative;
    width: 100%;
    height: 46.9375rem; /* 751 / 16 */
    overflow: hidden;
    background-color: #ffffff;
}

/* ── Orange decorative background stripe (bottom portion) ── */
.section-infrastructure__bg-stripe {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 19.7163rem; /* 315.46 / 16 */
    background-color: #fa6900;
    z-index: 0;
}

/* ── Inner container (content + image positioned inside) ── */
.section-infrastructure__inner {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
}

/* ── Factory image (left side on desktop) ── */
.section-infrastructure__image-wrap {
    position: absolute;
    left: 6.25rem; /* 100 / 16 */
    top: 6.5rem;   /* 104 / 16 */
    width: 35.625rem; /* 570 / 16 */
    height: 36.375rem; /* 582 / 16 */
    overflow: hidden;
}

.section-infrastructure__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* ── Right content block ── */
.section-infrastructure__content {
    position: absolute;
    top: 9.875rem;  /* 158 / 16 */
    left: 46.5625rem; /* 745 / 16 */
    width: 47.1875rem; /* 755 / 16 */
    height: 37.0625rem; /* 593 / 16 */
    display: flex;
    flex-direction: column;
    padding-top: 3.0625rem;  /* 49 / 16 */
    padding-bottom: 5.4375rem; /* 87 / 16 */
    box-sizing: border-box;
}

/* ── Text block: title + description ── */
.section-infrastructure__text-block {
    display: flex;
    flex-direction: column;
}

.section-infrastructure__title {
    font-family: "Lexend Deca", sans-serif;
    font-size: 2.5rem;           /* 40 / 16 */
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -0.05rem;    /* -0.8px / 16 */
    text-transform: uppercase;
    color: #131313;              /* r=0.075 → #131313 */
    margin: 0 0 1.25rem 0;       /* 20px gap below title (itemSpacing=20) */
}

.section-infrastructure__desc {
    font-family: "Lexend Deca", sans-serif;
    font-size: 1.125rem;         /* 18 / 16 */
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0;           /* Figma ls=0 */
    color: #131313;
    width: 100%;
    margin: 0;
    max-width: 41.9375rem;
}

/* ── Stats row ── */
.section-infrastructure__stats {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    margin-top: 7.0625rem; /* gap between text block and stats: (3464-3198-153)=113px / 16 */
}

.section-infrastructure__stat-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 13.0986rem; /* 209.56 / 16 — Figma stat1 width */
}

.section-infrastructure__stat-item + .section-infrastructure__stat-item {
    margin-left: 4rem; /* itemSpacing 60 / 16 */
}

/* ── Stat icon ── */
.section-infrastructure__stat-icon {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: auto; /* co theo bề ngang icon — icon chỉ cố định chiều cao */
    height: 4.375rem; /* 70 / 16 */
    margin-bottom: 0.625rem; /* itemSpacing 10 / 16 */
}

/* svg = icon mặc định của theme, img = icon KH upload qua ACF.
   Chỉ CỐ ĐỊNH CHIỀU CAO, bề ngang tự co theo tỉ lệ thật của từng icon
   → icon ngang/dọc khác nhau đều hiện đúng dáng, không bị bóp méo.
   flex-shrink: 0 để icon rộng không bị flex bóp lại. */
.section-infrastructure__stat-icon svg,
.section-infrastructure__stat-icon img {
    display: block;
    width: auto;
    height: 4.11356rem;
    flex-shrink: 0;
}

/* ── Stat number + label ── */
.section-infrastructure__stat-text {
    display: flex;
    flex-direction: column;
}

.section-infrastructure__stat-number {
    font-family: "Lexend Deca", sans-serif;
    font-size: 3.0625rem;         /* 40 / 16 */
    font-weight: 600;
    line-height: 130%;
    letter-spacing: -0.09188rem;   /* -0.8px / 16 */
    color: #FBFBFB;             /* Figma #fbfbfb (off-white on orange bg) */
    margin: 0 0 0.125rem 0;     /* itemSpacing 2px / 16 */
}

.section-infrastructure__stat-label {
    font-family: "Lexend Deca", sans-serif;
    font-size: 1rem;            /* 16 / 16 */
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: -0.02rem;   /* -0.32px / 16 */
    color: #ffffff;
}

/* ── Animation initial states (GSAP will animate from these) ── */
.section-infrastructure__stat-number[data-target] {
    opacity: 1;
}

/* ================================================================ */
/* Mobile overrides — only properties that differ from desktop       */
/* ================================================================ */
@media screen and (max-width: 639.98px) {
    /* Section: auto height, flex column */
    .section-infrastructure {
        height: auto;
        overflow: visible;
        display: flex;
        flex-direction: column;
        padding-top: 2.5rem;    /* 40 / 16 */
        padding-bottom: 3rem;   /* 48 / 16 */
    }

    .section-infrastructure__bg-stripe {
        position: absolute;
        top: auto;
        bottom: 0rem;
        height: 29.6875rem;
    }

    /* Inner: static, flex column */
    .section-infrastructure__inner {
        position: relative;
        height: auto;
        display: flex;
        flex-direction: column;
    }

    /* Content block: first visually (text), also contains stats at end */
    .section-infrastructure__content {
        position: relative;
        top: auto;
        left: auto;
        width: 100%;
        height: auto;
        padding-top: 0;
        padding-bottom: 0;
        order: 1;
    }

    /* Title + desc block: padded 16px sides */
    .section-infrastructure__text-block {
        padding-left: 1rem;   /* 16 / 16 */
        padding-right: 1rem;  /* 16 / 16 */
    }

    .section-infrastructure__title {
        font-size: 1.25rem;         /* 20 / 16 */
        line-height: 1.6;
        letter-spacing: -0.0375rem; /* -0.6px / 16 */
        color: #131313;
        margin-bottom: 0.5rem;      /* gap 8 / 16 */
    }

    .section-infrastructure__desc {
        font-size: 0.875rem;        /* 14 / 16 */
        letter-spacing: -0.0175rem; /* -0.28px / 16 */
        width: 100%;
        text-align: justify;
    }

     .section-infrastructure__image-wrap {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        top: 10.76rem;
        width: 21.4375rem;
        height: 21.875rem;
        order: 2;
    }

    /* Stats: last in visual order, on orange bg */
    .section-infrastructure__stats {
        flex-direction: column;
        align-items: flex-start;
        margin-top: 0;
        padding-left: 1rem;    /* 16 / 16 */
        padding-right: 1rem;   /* 16 / 16 */
        order: 3;
        margin-top: 24.82rem;
    }

    .section-infrastructure__stat-item {
        flex-direction: row;
        align-items: center;
        width: 100%;
    }

    .section-infrastructure__stat-item + .section-infrastructure__stat-item {
        margin-left: 0;
        margin-top: 1.25rem;
        align-items: flex-start;
    }

    /* Icon: left side, stat is horizontal row on mobile */
    .section-infrastructure__stat-icon {
        width: auto; /* co theo bề ngang icon */
        height: 2.91388rem;
        margin-bottom: 0;
        margin-right: 1.61rem;
        flex-shrink: 0;
    }

    .section-infrastructure__stat-icon svg,
    .section-infrastructure__stat-icon img {
        width: auto; /* chỉ cố định chiều cao, ngang tự co theo tỉ lệ */
        height: 100%;
    }

    /* Stat text: right side */
    .section-infrastructure__stat-text {
        flex: 1;
    }

    /* Mobile number: 24px */
    .section-infrastructure__stat-number {
        font-size: 1.5rem;          /* 24 / 16 */
        line-height: 1.3;
        letter-spacing: -0.03rem;   /* -0.48px / 16 */
        margin-bottom: 0.125rem;    /* 2px / 16 */
    }

    /* Mobile label: 14px, no letter-spacing */
    .section-infrastructure__stat-label {
        font-size: 0.875rem;        /* 14 / 16 */
        letter-spacing: 0;
    }
    .section-infrastructure__stat-label br {
        display: none;
    }
}

/* ── prefers-reduced-motion ── */
@media (prefers-reduced-motion: reduce) {
    .section-infrastructure *,
    .section-infrastructure *::before,
    .section-infrastructure *::after {
        animation: none !important;
        transition: none !important;
    }
    .section-infrastructure .section-infrastructure__stat-number {
        opacity: 1;
    }
}


/* ===== template-parts/nang-luc-san-xuat/section-map/assets/styles.css ===== */
/* ============================================================== */
/* Section Map — Hạ tầng sản xuất toàn quốc                      */
/* Desktop: 1600×1016px — 2-col: map 618×652px left + card 667×584px right */
/* Mobile:  375×1000px  — stacked: heading → map → card           */
/* Figma desktop node: 2348:27921                                  */
/* Figma mobile  node: 2349:60900                                  */
/* ============================================================== */

/* ─── Section wrapper ──────────────────────────────────────────── */

.section-map {
   background-color: #ffffff;
   width: 100%;
   padding-top: 6.25rem; /* 100 / 16 */
   padding-bottom: 6.25rem; /* 100 / 16 */
   box-sizing: border-box;
}

.section-map__inner {
   /* max-width: 87.5rem; */ /* 1400 / 16 */
   margin-left: auto;
   margin-right: auto;
   padding-left: 6.25rem; /* 100 / 16 */
   padding-right: 6.25rem; /* 100 / 16 */
   display: flex;
   flex-direction: column;
   align-items: center;
   box-sizing: border-box;
}

/* ─── Section heading block ─────────────────────────────────────── */

.section-map__heading {
   display: flex;
   flex-direction: column;
   align-items: center;
   text-align: center;
   margin-bottom: 3rem; /* 48 / 16 */
   max-width: 100%;
}

.section-map__title {
   font-family: "Lexend Deca", sans-serif;
   font-size: 2.5rem; /* 40 / 16 */
   font-weight: 600;
   line-height: 1.3;
   letter-spacing: -0.05rem; /* -0.80px / 16 */
   color: #131313;
   text-transform: uppercase;
   margin: 0 0 1rem 0;
}

.section-map__desc {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1rem; /* 16 / 16 */
   font-weight: 300;
   line-height: 1.5;
   letter-spacing: -0.02rem;
   color: #000000;
   margin: 0;
   max-width: 35.75rem;
}

/* ─── Main body (2-col flex row) ────────────────────────────────── */

.section-map__body {
   display: flex;
   flex-direction: row;
   align-items: center;
   justify-content: space-between;
   width: 100%;
   padding-left: 3.75rem;
}

/* ─── LEFT: map column ──────────────────────────────────────────── */

.section-map__map-col {
   flex-shrink: 0;
   width: 38.625rem; /* 618 / 16 */
   height: 40.75rem; /* 652 / 16 */
   position: relative;
}

.section-map__map-wrap {
   position: relative;
   width: 100%;
   height: 100%;
   background-color: #ffffff;
}

.section-map__map-wrap svg {
   width: 100%;
   height: 100%;
}


.section-map__svg {
   display: block;
   width: 100%;
   height: 100%;
}

/* ─── Province paths ─────────────────────────────────────────── */

.section-map__province {
   fill: #feefea;
   stroke: #44413f;
   transition: fill 0.3s ease;
   cursor: default;
}

.section-map__province.is-highlighted {
   fill: #fa6900;
}

.section-map__island {
   fill: #feefea;
   stroke: #44413f;
}

/* ─── Map markers (pins) ─────────────────────────────────────── */

.section-map__pin {
   cursor: pointer;
}

/* Ripple circles — default visible for active pin */
.section-map__ripple {
   transition:
      fill 0.3s ease,
      opacity 0.3s ease;
}

.section-map__pin--inactive .section-map__ripple {
   opacity: 0;
}

.section-map__pin:not(.section-map__pin--inactive) .section-map__ripple--outer {
   fill: rgba(250, 105, 0, 0.08);
   animation: mapPulse 2s ease-in-out infinite;
}

.section-map__pin:not(.section-map__pin--inactive) .section-map__ripple--mid {
   fill: rgba(250, 105, 0, 0.15);
   animation: mapPulse 2s ease-in-out infinite 0.3s;
}

.section-map__pin:not(.section-map__pin--inactive) .section-map__ripple--inner {
   fill: rgba(250, 105, 0, 0.25);
   animation: mapPulse 2s ease-in-out infinite 0.6s;
}

/* Pulse keyframes — scale circles outward */
@keyframes mapPulse {
   0% {
      transform-origin: center;
      transform: scale(1);
      opacity: 1;
   }
   50% {
      transform: scale(1.15);
      opacity: 0.6;
   }
   100% {
      transform: scale(1);
      opacity: 1;
   }
}

/* ─── Map tab pills (overlaid ON the map, absolute) ─────────────── */

.section-map__map-tabs {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   pointer-events: none;
   z-index: 3;
}

.section-map__map-tab {
   position: absolute;
   font-family: "Lexend Deca", sans-serif;
   font-size: 0.875rem; /* 14 / 16 */
   font-weight: 400;
   line-height: 1.2;
   letter-spacing: -0.00875rem;
   border: none;
   border-radius: 0.25rem; /* 4 / 16 — Figma rounded-[4px] */
   cursor: pointer;
   padding: 0.5rem 1rem;
   white-space: nowrap;
   pointer-events: auto;
   transition:
      background-color 0.3s ease,
      color 0.3s ease;
}

.section-map__map-tab:focus-visible {
   outline: 0.125rem solid #fa6900;
   outline-offset: 0.125rem;
}

/* North pill — Figma (281,74) */
.section-map__map-tab--north {
   top: 4.625rem;
   left: 17.5625rem;
   background-color: #f2f3f5;
   color: #000000;
}

/* South pill — Figma (40,412) */
.section-map__map-tab--south {
   top: 25.75rem;
   left: 2.5rem;
   background-color: #f2f3f5;
   color: #000000;
}

/* Active state */
.section-map__map-tab.is-active {
   background-color: #fa6900;
   color: #ffffff;
}

/* ─── Location info box (overlaid inside map) ───────────────────── */

.section-map__location-box {
   position: absolute;
   top: 2.375rem;
   left: 10.125rem;
   width: 25.75rem;
   height: 11.1875rem;
   background-color: #f6f4f2;
   display: flex;
   flex-direction: row;
   align-items: flex-start;
   padding: 0;
   box-sizing: border-box;
   pointer-events: none;
   z-index: 1;
}

.section-map__location-icon {
   flex-shrink: 0;
   width: 2.5rem;
   height: 2.5rem;
   margin-top: 3.3125rem;
   margin-left: -0.3125rem;
}

.section-map__locations {
   display: flex;
   flex-direction: column;
   margin-left: 0.6875rem;
   margin-top: 0;
   padding-top: 0;
   flex: 1;
}

.section-map__location-item {
   display: flex;
   flex-direction: column;
   padding-top: 0;
   padding-bottom: 0;
}

.section-map__location-item + .section-map__location-item {
   margin-top: 2.8125rem;
}

.section-map__location-type {
   font-family: "Averta Std CY", sans-serif;
   font-size: 0.8044rem;
   font-weight: 700;
   line-height: 1.6;
   letter-spacing: 0;
   color: rgba(0, 0, 0, 0.5);
   display: block;
   text-transform: uppercase;
}

.section-map__location-addr {
   font-family: "Averta Std CY", sans-serif;
   font-size: 1.0722rem;
   font-weight: 400;
   line-height: 1.5;
   letter-spacing: -0.0107rem;
   color: #1d262d;
   display: block;
}

/* ─── RIGHT: factory card column ────────────────────────────────── */

.section-map__card-col {
   flex-shrink: 0;
   width: 41.6875rem; /* 667 / 16 */
   display: flex;
   flex-direction: column;
   background-color: #ffffff;
   box-shadow: 0 0.25rem 2.3688rem rgba(0, 0, 0, 0.07);
}

/* Accessible tabs hidden on desktop */
.section-map__tabs {
   display: none;
}

/* ─── Factory panel ─────────────────────────────────────────────── */

.section-map__panel {
   display: none;
   flex-direction: column;
   width: 100%;
}

.section-map__panel.is-active {
   display: flex;
}

/* ─── Panel image (Swiper container) ───────────────────────────── */

.section-map__panel-image-wrap {
   position: relative;
   width: 100%;
   height: 20.3125rem; /* 325 / 16 */
   overflow: hidden;
   flex-shrink: 0;
}

.section-map__swiper {
   width: 100%;
   height: 100%;
}

.section-map__swiper .swiper-slide {
   width: 41.71681rem;
   height: 20.30069rem;
}

.section-map__panel-img {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center;
}

/* ─── Stepper bars (Swiper pagination) ─────────────────────────── */

.section-map__stepper {
   position: absolute;
   bottom: 1.0625rem;
   left: 50%;
   transform: translateX(-50%);
   display: flex;
   flex-direction: row;
   align-items: center;
   pointer-events: none;
   z-index: 2;
}

.section-map__stepper-bar {
   display: block;
   height: 0.1875rem; /* 3 / 16 */
   border-radius: 0.09375rem;
   flex-shrink: 0;
   cursor: pointer;
   pointer-events: auto;
   transition:
      width 0.3s ease,
      background-color 0.3s ease;
}

.section-map__stepper-bar.is-active {
   width: 6.25rem; /* 100 / 16 */
   background-color: #ffffff;
}

.section-map__stepper-bar + .section-map__stepper-bar {
   margin-left: 0.375rem; /* 6 / 16 */
}

.section-map__stepper-bar:not(.is-active) {
   width: 2.5rem; /* 40 / 16 */
   background-color: rgba(0, 0, 0, 0.6);
}

/* ─── Nav arrows (prev / next) ──────────────────────────────────── */

.section-map__nav {
   position: absolute;
   top: 50%;
   left: 0;
   width: 100%;
   transform: translateY(-50%);
   display: flex;
   flex-direction: row;
   justify-content: space-between;
   align-items: center;
   padding-inline: 1rem;
   pointer-events: none;
   box-sizing: border-box;
   z-index: 2;
}

.section-map__nav-btn {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 2.75rem;
   height: 2.75rem;
   background-color: #f2f3f5;
   color: rgba(6, 21, 56, 0.6);
   border: none;
   cursor: pointer;
   padding: 0.6875rem;
   pointer-events: auto;
   transition:
      background-color 0.3s ease,
      color 0.3s ease,
      opacity 0.3s ease;
   box-sizing: border-box;
   flex-shrink: 0;
}

/* Hover / active → orange bg, icon trắng (SVG dùng currentColor) */
.section-map__nav-btn:hover,
.section-map__nav-btn:active {
   background-color: #fa6900;
   color: #ffffff;
}

/* Slide đầu/cuối → nút điều hướng bị disable → mờ, không bấm được */
.section-map__nav-btn.swiper-button-disabled {
   opacity: 0.4;
   cursor: default;
   pointer-events: none;
}

.section-map__nav-btn:focus-visible {
   outline: 0.125rem solid #fa6900;
   outline-offset: 0.125rem;
}

/* ─── Panel body ──────────────────────────────────────────────── */

.section-map__panel-body {
   display: flex;
   flex-direction: column;
   padding-top: 0;
   padding-right: 1.5rem;
   padding-bottom: 1.25rem;
   padding-left: 1.5rem;
   box-sizing: border-box;
   width: 100%;
}

.section-map__panel-text {
   display: flex;
   flex-direction: column;
   padding-top: 1.25rem;
   margin-bottom: 1.25rem;
}

.section-map__panel-heading {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1.5625rem; /* 25 / 16 */
   font-weight: 600;
   line-height: 1.3;
   letter-spacing: 0;
   color: #000000;
   text-transform: uppercase;
   margin: 0 0 0.5rem 0;
}

.section-map__panel-desc {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1rem;
   font-weight: 300;
   line-height: 1.5;
   letter-spacing: -0.02rem;
   color: #000000;
   margin: 0;
}

.section-map__panel-divider {
   border: none;
   border-top: 1px solid rgba(0, 0, 0, 0.08);
   margin-top: 0;
   margin-bottom: 1.25rem;
   width: 100%;
   box-sizing: border-box;
}

/* ─── Specs grid (dl) — 2×2 on desktop ─────────────────────────── */

.section-map__specs {
   display: grid;
   grid-template-columns: 1fr 1fr;
   margin: 0;
   padding: 0;
   list-style: none;
}

.section-map__spec-item {
   display: flex;
   flex-direction: row;
   align-items: center;
   margin: 0;
   padding: 0;
}

.section-map__spec-item:nth-child(3),
.section-map__spec-item:nth-child(4) {
   margin-top: 0.9438rem;
}

.section-map__spec-label {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1rem;
   font-weight: 300;
   line-height: 1.5;
   letter-spacing: -0.02rem;
   color: #000000;
   margin: 0;
   padding: 0;
}

.section-map__spec-value {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1rem;
   font-weight: 400;
   line-height: 1.5;
   letter-spacing: -0.02rem;
   color: #000000;
   margin: 0 0 0 0.4719rem;
   padding: 0;
}

/* Thiết lập tâm cho các vòng tròn để tỏa ra từ chính giữa */
.pulse-circle {
    /* Đặt tâm xoay/nở ra là chính giữa của từng vòng tròn */
    transform-origin: center;
    transform-box: fill-box; 
    
    /* Animation tỏa ra */
    animation: svg-pulse 3s ease-out infinite;
}

@keyframes svg-pulse {
    0% {
        transform: scale(0.5); /* Bắt đầu nhỏ */
        opacity: 0.8;
    }
    100% {
        transform: scale(1.5); /* Nở to ra gấp 1.5 lần */
        opacity: 0;           /* Và mờ dần đi */
    }
}

/* Delay cho từng vòng để tạo hiệu ứng sóng đuổi nhau */
.pulse-1 { animation-delay: 0s; }
.pulse-2 { animation-delay: 0.6s; }
.pulse-3 { animation-delay: 1.2s; }

.section-map__pin--inactive .pulse-circle {
    display: none;
}
/* ================================================================ */
/* Mobile overrides                                                  */
/* ================================================================ */
@media screen and (max-width: 639.98px) {
   .section-map {
      padding-top: 3rem;
      padding-bottom: initial;
      position: relative;
        z-index: 2;
   }
   #section-map__card-col {
        scroll-margin-top: 5rem;
    }
   
   .section-map__swiper .swiper-slide {
       height: 11.4375rem;
   }
   
   .section-map__nav {
       padding-inline: 0.5625rem;
   }

   /* Mobile: tap không đổi cam — giữ nền + icon màu mặc định */
   .section-map__nav-btn:hover,
   .section-map__nav-btn:active {
       background-color: #f2f3f5;
       color: rgba(6, 21, 56, 0.6);
   }

   .section-map__inner {
      padding-left: 0;
      padding-right: 0;
      max-width: 100%;
      align-items: flex-start;
   }

   .section-map__heading {
      align-items: center;
      text-align: center;
      padding-left: 1rem;
      padding-right: 1rem;
      margin-bottom: 1.5rem;
   }

   .section-map__title {
      font-size: 1.25rem;
      line-height: 1.6;
      letter-spacing: -0.0375rem;
      margin-bottom: 0.5rem;
   }

   .section-map__desc {
      font-size: 0.875rem;
      letter-spacing: -0.0175rem;
      color: #131313;
      max-width: 100%;
   }

   .section-map__body {
      flex-direction: column;
      align-items: stretch;
      width: 100%;
      padding-left: initial;
   }

   .section-map__map-col {
      width: 100%;
      height: 23.9375rem;
      order: 1;
   }

   .section-map__map-tab--north {
      top: 3rem;
      left: 8.125rem;
      font-size: 0.875rem;
   }

   .section-map__map-tab--south {
      top: 15.5rem;
      left: 0.6875rem;
   }

   .section-map__location-box {
      display: none;
   }

   /* Location box hidden on mobile — no child overrides needed */

   .section-map__card-col {
      width: 100%;
      order: 2;
      box-shadow: none;
      padding-left: 1rem;
      padding-right: 1rem;
      box-sizing: border-box;
   }

   .section-map__tabs {
      display: none;
      flex-direction: row;
      align-items: center;
      width: 100%;
      margin-bottom: 0;
      overflow-x: auto;
   }

   .section-map__tab {
      font-family: "Lexend Deca", sans-serif;
      font-size: 0.875rem;
      font-weight: 400;
      line-height: 1.2;
      letter-spacing: -0.00875rem;
      color: #000000;
      background-color: #f2f3f5;
      border: none;
      border-radius: 0.25rem;
      cursor: pointer;
      padding: 0.5rem 1rem;
      white-space: nowrap;
      flex-shrink: 0;
      transition:
         background-color 0.3s ease,
         color 0.3s ease;
   }

   .section-map__tab.is-active {
      background-color: #fa6900;
      color: #ffffff;
   }

   .section-map__tab:focus-visible {
      outline: 0.125rem solid #fa6900;
      outline-offset: 0.125rem;
   }

   .section-map__panel-image-wrap {
      height: 11.4375rem;
   }

   /* Reorder: heading → image → desc → specs on mobile
       Use display:contents on body+text to flatten flex children */
   .section-map__panel.is-active {
      display: flex;
      flex-direction: column;
      box-shadow: 0 4px 36px 0 rgba(0, 0, 0, 0.07);
   }

   .section-map__panel-body {
      display: contents;
   }

   .section-map__panel-text {
      display: contents;
   }

   .section-map__panel-heading {
      font-size: 1rem;
      line-height: 1.4;
      color: #131313;
      padding-left: 0.875rem;
      padding-right: 0.875rem;
      padding-top: 1rem;
      margin-bottom: 0.37rem;
   }

   .section-map__panel-image-wrap {
      order: 0;
   }

   .section-map__panel-desc {
      order: 1;
      font-size: 0.875rem;
      letter-spacing: -0.0175rem;
      color: #131313;
      padding-left: 0.875rem;
      padding-right: 0.875rem;
      /* padding-top: 0.75rem; */
      margin-bottom: 0.75rem;
      overflow: hidden;
      text-overflow: ellipsis;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 3;
   }

   .section-map__panel-divider {
      order: 2;
      margin-left: 0.875rem;
      margin-right: 0.875rem;
      margin-bottom: 0.75rem;
      max-width: 19.6875rem;
   }

   .section-map__specs {
      order: 3;
      padding-left: 0.875rem;
      padding-right: 0.875rem;
      padding-bottom: 1.25rem;
   }

   .section-map__specs {
      grid-template-columns: 1fr;
   }

   .section-map__spec-item + .section-map__spec-item {
      margin-top: 0.5rem;
   }

   .section-map__spec-item:nth-child(3),
   .section-map__spec-item:nth-child(4) {
      margin-top: 0.5rem;
   }

   .section-map__spec-label,
   .section-map__spec-value {
      font-size: 0.875rem;
      letter-spacing: -0.0175rem;
      color: #131313;
   }
}


/* ===== template-parts/nang-luc-san-xuat/section-production-line/assets/styles.css ===== */
/* ============================================================== */
/* Section Production Line — Dây chuyền sản xuất hiện đại        */
/* Desktop: 1600×698px — h2 header + step tabs + detail panel    */
/* Mobile:  375×792px  — header + horizontal-scroll tabs + stack  */
/* Figma desktop node: 2348:27926                                  */
/* Figma mobile  node: 2349:61015                                  */
/* ============================================================== */

/* --- Section wrapper --- */
.section-production-line {
   width: 100%;
   background-color: #ffffff;
   overflow: hidden;
   /* padding-top: 5rem; */
   padding-bottom: 0;
}

.section-production-line__inner {
   width: 100%;
}

/* ---- Header area (title + desc) ---- */

.section-production-line__header {
   display: flex;
   flex-direction: column;
   align-items: center;
   padding-left: 6.25rem; /* 100 / 16 */
   padding-right: 6.25rem;
   margin-bottom: 3rem; /* 48px / 16 */
}

.section-production-line__title {
   font-family: "Lexend Deca", sans-serif;
   font-size: 2.5rem; /* 40 / 16 */
   font-weight: 600;
   line-height: 1.3;
   letter-spacing: -0.05rem; /* -0.8px / 16 */
   text-transform: uppercase;
   color: #131313;
   text-align: center;
   margin: 0 0 1rem 0; /* 16px gap */
}

.section-production-line__desc {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1rem; /* 16 / 16 */
   font-weight: 300;
   line-height: 1.5;
   letter-spacing: -0.02rem; /* -0.32px / 16 */
   color: #131313;
   text-align: center;
   max-width: 35.375rem; /* 566 / 16 */
   margin: 0;
}

/* ---- Tabs wrap ---- */

.section-production-line__tabs-wrap {
   position: relative;
   padding-left: 6.25rem; /* 100 / 16 */
   padding-right: 6.25rem;
}

/* ---- Tabs row — overflow hidden, JS scrolls via arrows ---- */

.section-production-line__tabs {
   display: flex;
   align-items: stretch;
   width: 100%;
   /*border-bottom: 1px solid rgba(19, 19, 19, 0.4);*/
   overflow-x: hidden;
   overflow-y: clip;
   scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
}

/* ---- Individual tab — fixed 33.333% width (3 visible at a time) ---- */

.section-production-line__tab {
   flex: 0 0 33.3333%;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   padding: 0.75rem 4.375rem 1.5rem 4.375rem;
   background: transparent;
   border: none;
   border-bottom: 1px solid rgba(19, 19, 19, 0.4);
   cursor: pointer;
   text-align: center;
   /*margin-bottom: -0.0625rem;*/
   transition: border-color 0.2s ease;
   box-sizing: border-box;
   position: relative;
}

.section-production-line__tab:focus-visible {
   outline: 1px solid #fa6900;
   outline-offset: -1px;
}

/* Active tab — orange bottom border */
.section-production-line__tab--active::before {
    content: "";
    position: absolute;
    bottom: -0.0625rem;
    inset-inline: 0;
    height: 0.3125rem;
    width: 100%;
    z-index: 9;
    background: #fa6900;
}

.section-production-line__tab-title {
   display: block;
   font-family: "Lexend Deca", sans-serif;
   font-size: 1.25rem; /* 20 / 16 */
   font-weight: 600;
   line-height: 1.3;
   letter-spacing: -0.0188rem; /* -0.3px / 16 */
   text-transform: uppercase;
   color: #131313;
   margin-bottom: 0.875rem; /* 14px / 16 */
}

.section-production-line__tab--active .section-production-line__tab-title {
   color: #fa6900;
}

.section-production-line__tab-desc {
   display: block;
   font-family: "Lexend Deca", sans-serif;
   font-size: 0.875rem; /* 14 / 16 */
   font-weight: 400;
   line-height: 1.5;
   letter-spacing: -0.0131rem; /* -0.21px / 16 */
   color: rgba(19, 19, 19, 0.8);
}

/* ---- Arrow buttons — positioned at edges of tabs-wrap ---- */

.section-production-line__arrow {
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   width: 2.75rem; /* 44 / 16 */
   height: 2.75rem;
   display: flex;
   align-items: center;
   justify-content: center;
   background-color: #f2f3f5;
   border: none;
   cursor: pointer;
   color: rgba(19, 19, 19, 0.6);
   z-index: 2;
   padding: 0;
   transition:
      opacity 0.2s ease,
      background-color 0.2s ease;
}

.section-production-line__arrow:focus-visible {
   outline: 1px solid #fa6900;
   outline-offset: 0.125rem;
}

.section-production-line__arrow:hover {
   background-color: #e8e9ec;
}

.section-production-line__arrow--prev {
   left: 3.5rem; /* 56 / 16 — inside the section padding, per Figma node x=56 */
}

.section-production-line__arrow--next {
   right: 3.5rem;
}

/* ---- Detail panel ---- */
/* Figma: 1600×386, pad ~100px each side, gray (688) + gap 21 + video (688) */

.section-production-line__panel {
   display: none;
}

.section-production-line__panel--active {
   display: flex;
   align-items: stretch;
   width: 100%;
   height: 24.125rem; /* 386 / 16 — Figma panel height */
   padding-left: 6.3125rem; /* 101 / 16 — Figma x-offset */
   padding-right: 6.3125rem;
   box-sizing: border-box;
   margin-top: 1.875rem; /* 30 / 16 — Figma gap between tabs frame and panel */
}

/* ---- Left: detail text block (gray bg) ---- */
/* Figma: 688×386, padding 56/60/51/60 */

.section-production-line__detail-text {
   width: 43rem; /* 688 / 16 */
   flex-shrink: 0;
   background-color: #f2f3f5;
   padding: 4.3rem 3.1875rem 3.75rem 3.5rem;
   box-sizing: border-box;
   display: flex;
   flex-direction: column;
   justify-content: flex-start;
}

/* Scrollable content — không vượt quá height video */
.section-production-line__detail-inner {
   display: flex;
   flex-direction: column;
   overflow-y: auto;
   max-height: 100%; /* constrained by parent's height minus padding */
   scrollbar-width: thin;
   scrollbar-color: rgba(19, 19, 19, 0.2) transparent;
}

.section-production-line__detail-inner::-webkit-scrollbar {
   width: 0.25rem; /* 4px */
}

.section-production-line__detail-inner::-webkit-scrollbar-track {
   background: transparent;
}

.section-production-line__detail-inner::-webkit-scrollbar-thumb {
   background-color: rgba(19, 19, 19, 0.2);
   border-radius: 0.125rem;
}

/* Eyebrow row: dot + text */
.section-production-line__eyebrow-row {
   display: flex;
   align-items: center;
   margin-bottom: 3.75rem; /* 60px / 16 */
   flex-shrink: 0;
}

.section-production-line__eyebrow-dot {
   display: inline-block;
   width: 0.625rem; /* 10 / 16 */
   height: 0.625rem;
   border-radius: 50%;
   background-color: #131313;
   flex-shrink: 0;
   margin-right: 0.5rem; /* 8px */
}

.section-production-line__eyebrow {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1.25rem; /* 20 / 16 */
   font-weight: 400;
   line-height: 1.5;
   letter-spacing: 0;
   text-transform: uppercase;
   color: #131313;
}

/* Text block: title + description */
.section-production-line__detail-body {
   display: flex;
   flex-direction: column;
}

.section-production-line__panel-title {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1.9375rem; /* 31 / 16 */
   font-weight: 600;
   line-height: 1.3;
   letter-spacing: -0.0388rem; /* -0.62px / 16 */
   text-transform: uppercase;
   color: #131313;
   margin: 0 0 1.25rem 0; /* 20px / 16 */
}

.section-production-line__panel-desc {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1rem; /* 16 / 16 */
   font-weight: 300;
   line-height: 1.5;
   letter-spacing: -0.02rem; /* -0.32px / 16 */
   color: #131313;
   text-align: justify;
   margin: 0;
}

/* ---- Right: YouTube video embed ---- */
/* Figma: 688×386, dark overlay + play button */

.section-production-line__detail-video {
   width: 43rem; /* 688 / 16 */
   flex-shrink: 0;
   position: relative;
   overflow: hidden;
   margin-left: 1.3125rem; /* 21px / 16 — Figma gap between text & video */
}

.section-production-line__video-poster {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center;
}

.section-production-line__video-overlay {
   position: absolute;
   inset: 0;
   background-color: rgba(0, 0, 0, 0.3);
   pointer-events: none;
}

/* YouTube iframe (injected by JS on play) */
.section-production-line__video-iframe {
   position: absolute;
   inset: 0;
   width: 100%;
   height: 100%;
   border: none;
}

/* Play button — centered on video */
.section-production-line__play-btn {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   width: 4rem; /* 64 / 16 */
   height: 4rem;
   border-radius: 50%;
   background-color: rgba(255, 255, 255, 0.4);
   border: none;
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: center;
   backdrop-filter: blur(0.6207rem); /* 9.931px / 16 */
   -webkit-backdrop-filter: blur(0.6207rem);
   padding: 0;
   z-index: 2;
   transition: background-color 0.2s ease;
}

.section-production-line__play-btn:focus-visible {
   outline: 1px solid #ffffff;
   outline-offset: 0.1875rem;
}

.section-production-line__play-btn:hover {
   background-color: rgba(255, 255, 255, 0.55);
}

.section-production-line__play-circle {
   display: flex;
   align-items: center;
   justify-content: center;
}

/* ============================================================== */
/* Mobile overrides                                                */
/* ============================================================== */
@media screen and (max-width: 639.98px) {
   .section-production-line {
      padding-top: 3rem; /* 48 / 16 */
      padding-bottom: 3rem;
   }

   /* Header — reduce padding */
   .section-production-line__header {
      padding-left: 1rem; /* 16 / 16 */
      padding-right: 1rem;
      margin-bottom: 1.5rem; /* 24 / 16 */
   }

   .section-production-line__title {
      font-size: 1.25rem; /* 20 / 16 */
      line-height: 1.6;
      letter-spacing: -0.0375rem; /* -0.6px / 16 */
      margin-bottom: 0.5rem;
   }

   .section-production-line__desc {
      font-size: 0.875rem; /* 14 / 16 */
      letter-spacing: -0.0175rem; /* -0.28px / 16 — body lead mobile */
      max-width: none;
   }

   /* Tabs wrap — mobile padding, overflow hidden */
   .section-production-line__tabs-wrap {
      padding-left: 1rem;
      padding-right: 0;
      overflow: hidden;
   }

   /* Tabs — horizontal scrollable */
   .section-production-line__tabs {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      flex-wrap: nowrap;
      scrollbar-width: none;
   }

   .section-production-line__tabs::-webkit-scrollbar {
      display: none;
   }

   /* Tab — fixed width on mobile (Figma: ~215.67) */
   .section-production-line__tab {
      flex: 0 0 13.4792rem; /* 215.667 / 16 */
      width: 13.47919rem;
      padding-top: 0.75rem;
      padding-bottom: 0.875rem; /* 14 / 16 */
      padding-left: 0.75rem;
      padding-right: 0.75rem;
      align-items: flex-start;
      /* text-align: left; */
      justify-content: start;
   }

   .section-production-line__tab--active {
      /*border-bottom: 0.1875rem solid #fa6900;*/
      margin-bottom: -0.1875rem;
   }

   .section-production-line__tab-title {
      font-size: 1rem; /* 16 / 16 */
      line-height: 1.4;
      letter-spacing: 0;
      margin-bottom: 0.5rem;
      white-space: nowrap;
      text-align: center;
      display: flex;
      width: 100%;
      justify-content: center;
   }

   .section-production-line__tab-desc {
      letter-spacing: 0;
      text-align: center;
   }

   /* Hide arrows on mobile (touch scroll instead) */
   .section-production-line__arrow {
      display: none;
   }

   /* Detail panel — stacked column, full width */
   /* Figma mobile: section gap 24px between tabs and panel */
   .section-production-line__panel--active {
      flex-direction: column-reverse;
      height: auto;
      padding-left: 1rem; /* 16 / 16 */
      padding-right: 1rem;
      margin-top: 1.5rem; /* 24 / 16 — Figma mobile gap between tabs and detail section */
   }

   /* Detail text — Figma: 343×224, pad: 14/16/14/16 — below video on mobile */
   .section-production-line__detail-text {
      width: 100%;
      padding-top: 1rem; /* 16 / 16 */
      padding-bottom: 1rem;
      padding-left: 0.875rem; /* 14 / 16 */
      padding-right: 0.875rem;
      order: 2;
      margin-bottom: 0.63rem;
   }

   .section-production-line__detail-inner {
      max-height: none; /* no scroll constraint on mobile — content stacks */
      overflow-y: visible;
   }

   .section-production-line__eyebrow-row {
      margin-bottom: 1rem; /* 16 / 16 */
   }

   .section-production-line__eyebrow-dot {
      width: 0.625rem;
      height: 0.625rem;
   }
   .section-production-line__eyebrow {
      font-size: 0.75rem; /* 12 / 16 */
      font-weight: 600;
      line-height: 1.3;
   }

   .section-production-line__panel-title {
      font-size: 1rem; /* 16 / 16 */
      line-height: 1.4;
      letter-spacing: 0;
      margin-bottom: 0.75rem; /* 12px */
   }

   .section-production-line__panel-desc {
      font-size: 0.875rem; /* 14 / 16 */
      letter-spacing: -0.0175rem; /* -0.28px / 16 */
      font-weight: 300;
      text-align: left;
   }

   /* Video — Figma mobile: 343×192 — on TOP (order 1), text below (order 2) */
   .section-production-line__detail-video {
      width: 100%;
      height: 12rem; /* 192 / 16 */
      order: 1;
      margin-top: 0;
      margin-left: 0;
   }

   /* Play button smaller on mobile — Figma: 48×48 */
   .section-production-line__play-btn {
      width: 3rem; /* 48 / 16 */
      height: 3rem;
   }
}


/* ===== template-parts/nang-luc-san-xuat/section-production-system/assets/styles.css ===== */
/* ============================================================== */
/* Section Production — Desktop Base                               */
/* ============================================================== */

.section-production {
   position: relative;
   width: 100%;
   padding-top: 6.25rem;
   padding-bottom: 0;
   overflow: hidden;
   background-color: #F8F8F8;
}

/* Orange background strip — positioned behind lower card area */
.section-production__bg-strip {
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   height: 22.625rem; /* 362px / 16 */
   background-color: #fa6900;
   z-index: 0;
}

.section-production__container {
   position: relative;
   z-index: 1;
   padding-left: 6.25rem; /* 100px / 16 */
   padding-right: 6.25rem; /* 100px / 16 */
}

/* Heading block */
.section-production__heading-block {
   text-align: center;
   max-width: 48rem;
   margin: 0 auto 0.75rem;
}

.section-production__title {
   font-family: "Lexend Deca", sans-serif;
   font-size: 2.5rem; /* 40px / 16 */
   font-weight: 600;
   line-height: 1.3;
   letter-spacing: -0.05rem;
   text-transform: uppercase;
   color: #131313;
   max-width: 40rem;
   margin: 0 auto 1rem;
}

/* Title color accent: last word or line */
.section-production__title-accent {
   color: #fa6900;
}

.section-production__subtitle {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1rem;
   font-weight: 300;
   line-height: 1.5;
   letter-spacing: 0;
   letter-spacing: -0.02rem;
   color: #131313;
   max-width: 40.125rem;
   margin: 0 auto 2.5rem auto;
}
/* Cards area + Swiper wrapper */
.section-production__swiper {
   width: 100%;
   overflow: hidden;
}

.section-production__swiper-wrapper {
   display: flex;
   align-items: flex-start;
}

/* Each slide — Swiper tự set width theo slidesPerView + spaceBetween.
   KHÔNG set width cứng ở đây (gây xung đột làm Swiper không nhận overflow). */
.section-production__slide {
   flex-shrink: 0;
   height: auto;
}

/* Card */
.section-production__card {
   display: flex;
   flex-direction: column;
   align-items: center;
   text-align: center;
   overflow: hidden;
}

/* Card image */
.section-production__card-img-wrap {
   width: 100%;
   height: 17.375rem; /* 278px / 16 */
   overflow: hidden;
   flex-shrink: 0;
}

.section-production__card-img-wrap img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   display: block;
}

/* Card body — on top of orange bg */
.section-production__card-body {
   padding: 0 3.5625rem;
   margin-top: 1.12rem;
   width: 100%;
   background-color: transparent;
}

.section-production__card-title {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1.25rem; /* 20px / 16 */
   font-weight: 600;
   line-height: 1.3;
   letter-spacing: -0.01875rem;
   text-transform: uppercase;
   color: #ffffff;
   margin: 0 0 0.75rem 0; /* 12px / 16 */
}

.section-production__card-desc {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1rem; /* 16px / 16 */
   font-weight: 400;
   line-height: 1.5;
   letter-spacing: -0.02rem; /* -2px / 16 */
   color: #FFF;
   margin: 0;
}

.section-production__nav {
   display: flex;
   align-items: center;
   justify-content: space-between;
   padding-bottom: 2.5rem;
}
.section-production__nav-left {
   display: flex;
   align-items: center;
}

/* Progress bars (Swiper pagination bullets render vào đây) */
.section-production__bars {
   display: flex;
   align-items: center;
}

.section-production__bar {
   display: block;
   width: 2.5rem; /* 40px inactive */
   height: 0.1875rem; /* 3px */
   background-color: rgba(255, 255, 255, 0.4);
   border: none;
   padding: 0;
   border-radius: 0.0938rem;
   cursor: pointer;
   transition:
      width 400ms cubic-bezier(0.47, 0, 0.01, 1.01),
      background-color 400ms ease;
}

.section-production__bar + .section-production__bar {
   margin-left: 0.375rem; /* 6px / 16 */
}

.section-production__bar.is-active {
   width: 6.25rem; /* 100px active */
   background-color: #ffffff;
}

.section-production__nav-counter {
   font-family: "Lexend Deca", sans-serif;
   font-size: 0.875rem; /* 14px / 16 */
   font-weight: 500;
   line-height: 1.2;
   letter-spacing: -0.0625rem;
   color: #ffffff;
   margin-left: 0.75rem; /* gap 12px so với bars */
   white-space: nowrap;
}

/* Right cluster: prev/next (2 nút trong w-96px → gap 8px) */
.section-production__nav-right {
   display: flex;
   align-items: center;
   flex-shrink: 0;
}

.section-production__nav-btn {
   width: 2.75rem; /* 44px / 16 — Figma Icon button */
   height: 2.75rem;
   background-color: #ffffff;
   border: none;
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: center;
   flex-shrink: 0;
   color: #131313; /* màu mũi tên (currentColor) */
   transition:
      background-color 300ms ease,
      color 300ms ease;
}

.section-production__nav-btn:focus-visible {
   outline: 0.125rem solid #131313;
   outline-offset: 0.125rem;
}

.section-production__nav-btn svg {
   width: 1.375rem; /* 22px / 16 */
   height: 1.375rem;
   display: block;
   flex-shrink: 0;
}

.section-production__nav-next {
   margin-left: 0.5rem; /* 8px / 16 — khoảng cách 2 nút trong cụm 96px */
}

/* Disabled state khi tới đầu/cuối (Swiper thêm class) */
.section-production__nav-btn.swiper-button-disabled {
   opacity: 0.4;
   cursor: default;
}

/* Hover on nav buttons — desktop only */
@media (min-width: 1024px) {
   .section-production__nav-btn {
        transition: background-color 0.3s ease, border-color 0.3s ease;
    }
    
    .section-production__nav-btn svg path {
        transition: fill 0.3s ease, stroke 0.3s ease;
    }
    
    .section-production__nav-btn:not(.swiper-button-disabled):hover {
        background-color: transparent;
        color: #ffffff;
    }
    
    .section-production__nav-btn:not(.swiper-button-disabled):hover svg path {
        stroke: #ffffff;
    }
}

/* ============================================================== */
/* Mobile overrides — only properties that differ from desktop    */
/* ============================================================== */
@media screen and (max-width: 639.98px) {
   .section-production__card-body {
      padding: initial;
   }
   .section-production__heading-block {
      margin-bottom: 1.75rem;
   }
   .section-production {
      padding-top: 0; /* 60px / 16 */
      background: initial;
   }

   .section-production__bg-strip {
      height: 22.625rem;
   }

   .section-production__container {
      padding-left: 1rem; /* 16px / 16 */
      padding-right: 1rem; /* 16px / 16 */
   }

   .section-production__title {
      font-size: 1.25rem;
      line-height: 1.6;
      max-width: 19.6875rem;
      margin-bottom: 0.62rem;
   }

   .section-production__subtitle {
      font-size: 0.875rem; /* 14px / 16 */
      margin-bottom: 2.5rem; /* 40px / 16 */
      max-width: 19.6875rem;
      margin: 0 auto;
      letter-spacing: initial;
      color: #131313;
      font-weight: 400;
   }

   .section-production__card-img-wrap {
      height: 13.224rem;
   }

   .section-production__card-title {
      font-size: 1rem; /* 16px / 16 */
      line-height: 1.4;
      letter-spacing: 0;
      margin-bottom: 0.375rem;
   }

   .section-production__card-desc {
      font-size: 0.875rem; /* 14px / 16 */
      letter-spacing: 0;
   }

   .section-production__nav {
      padding-top: 1.5rem;
      padding-bottom: 3.03rem;
      flex-direction: column;
   }

   .section-production__nav-left {
    flex-direction: column;
   }

   .section-production__nav-left {
    margin-bottom: 1.5rem;
   }

   .section-production__bars {
    margin-bottom: 0.5rem;
   }
 
   .section-production__nav-counter {
      margin-left: 0; /* không còn bars phía trước */
   }

   /* Nút nhỏ hơn trên mobile (40px) */
   .section-production__nav-btn {
      width: 2.5rem; /* 40px / 16 */
      height: 2.5rem;
   }

   .section-production__nav-btn svg {
      width: 1.25rem; /* 20px / 16 */
      height: 1.25rem;
   }
}


/* ===== template-parts/nang-luc-san-xuat/section-why-choose/assets/styles.css ===== */
/* ============================================================== */
/* Section Why Choose — Desktop Base (1600px)                      */
/* ============================================================== */

/*
 * Layout: left content panel (814px incl. padding) + right image (786px).
 * Section total 1600px wide, height 748px.
 * Content: padding-left 100px, padding-right 100px → inner 614px.
 * Image flush to right edge, gradient overlay + nav at bottom.
 * Nav (bars + counter + arrows) positioned ON the image, not in content.
 * Values from Figma: rem = figma_px / 16 (4 decimal places).
 */

.section-why-choose {
   position: relative;
   width: 100%;
   background-color: #f8f8f8; /* Figma: Neutral/Xám 04 */
   overflow: hidden;
}

/* Flex row: left content | right image — fixed height per Figma, capped at 100vh */
.section-why-choose__inner {
   display: flex;
   flex-direction: row;
   align-items: stretch;
   width: 100%;
   height: 46.75rem; /* 748px / 16 — Figma section height */
   max-height: 100vh; /* giới hạn height không quá viewport */
}

/* ── LEFT: content panel ── */
/* Figma: w=814, h=521, px=100, top offset=102 */
.section-why-choose__content {
   display: flex;
   flex-direction: column;
   flex: 0 0 50.875rem; /* 814px / 16 */
   width: 50.875rem;
   box-sizing: border-box;
   padding-top: 6.375rem; /* 102px / 16 — vertical offset from top */
   padding-left: 6.25rem; /* 100px / 16 */
   padding-right: 6.25rem; /* 100px / 16 */
   padding-bottom: 3.75rem; /* 60px / 16 */
   overflow: hidden; /* contain content within fixed height */
}

/* H2 title */
.section-why-choose__title {
   font-family: "Lexend Deca", sans-serif;
   font-size: 2.5rem; /* 40px / 16 */
   font-weight: 600;
   line-height: 1.3;
   letter-spacing: -0.05rem; /* -0.8px / 16 */
   text-transform: uppercase;
   color: #131313;
   margin: 0 0 4.31rem 0;
}

/* ── TAB LABELS ROW ── */
.section-why-choose__tabs {
   display: flex;
   flex-direction: row;
   align-items: stretch;
   width: 100%; /* fill content area */
   border-bottom: 1px solid #e7e7e7;
   margin-bottom: 3rem; /* 48px / 16 — spacing from tabs to content */
   position: relative;
}

/* Individual tab button */
.section-why-choose__tab-btn {
   position: relative;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   flex: 1 1 0;
   padding-top: 0.75rem; /* 12px / 16 */
   padding-bottom: 1rem; /* 16px / 16 */
   padding-left: 1rem; /* 16px / 16 */
   padding-right: 1rem; /* 16px / 16 */
   background: none;
   border: none;
   border-bottom: none;
   cursor: pointer;
   outline: none;
   transition: color 200ms ease;
}

.section-why-choose__tab-btn:focus-visible {
   outline: 0.125rem solid #fa6900;
   outline-offset: -0.125rem;
}

/* Tab label text — Figma: 16px Medium (500) uppercase */
.section-why-choose__tab-label {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1rem; /* 16px / 16 — Figma PC/16/16-M-UPP */
   font-weight: 500;
   line-height: 1.5;
   letter-spacing: 0;
   text-transform: uppercase;
   color: #131313;
   display: block;
   transition: color 200ms ease;
   white-space: nowrap;
}

.section-why-choose__tab-btn.is-active .section-why-choose__tab-label,
.section-why-choose__tab-btn:hover .section-why-choose__tab-label {
   color: #fa6900;
}

/* Active underline indicator — absolute, 3px orange bar at bottom */
.section-why-choose__tab-indicator {
   display: block;
   position: absolute;
   bottom: -1px; /* sits on top of the border */
   left: 0;
   right: 0;
   height: 0.1875rem; /* 3px / 16 */
   background-color: transparent;
   transition: background-color 200ms ease;
}

.section-why-choose__tab-btn.is-active .section-why-choose__tab-indicator {
   background-color: #fa6900;
}

/* ── CONTENT SWIPER (slides: h3 + desc + buttons) ── */
.section-why-choose__swiper {
   width: 100%;
   overflow: hidden;
   flex: 1 1 auto;
}

.section-why-choose__swiper-wrapper {
   display: flex;
   align-items: flex-start;
}

.section-why-choose__slide {
   flex-shrink: 0;
   width: 100%;
   box-sizing: border-box;
}

/* Slide H3 — Figma: 31px SemiBold */
.section-why-choose__slide-title {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1.9375rem; /* 31px / 16 */
   font-weight: 600;
   line-height: 1.3;
   letter-spacing: -0.0387rem; /* -0.62px / 16 */
   text-transform: uppercase;
   color: #131313;
   margin: 0 0 1rem 0; /* 16px / 16 spacing to desc */
}

/* Slide description — Figma: 16px Light */
.section-why-choose__slide-desc {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1rem; /* 16px / 16 — Figma PC/Body/16/16-L-150 */
   font-weight: 300;
   line-height: 1.5;
   letter-spacing: -0.02rem; /* -0.32px / 16 */
   color: #131313;
   margin: 0 0 3rem 0;
}

/* ── BUTTONS ── */
.section-why-choose__slide-buttons {
   display: flex;
   flex-direction: row;
   align-items: center;
}

.section-why-choose__btn {
   display: inline-flex;
   align-items: center;
   font-family: "Lexend Deca", sans-serif;
   font-size: 1rem; /* 16px / 16 */
   font-weight: 500;
   line-height: 1.5;
   letter-spacing: -0.01rem; /* -0.16px / 16 */
   text-transform: uppercase;
   text-decoration: none;
   cursor: pointer;
   transition:
      background-color 250ms ease,
      color 250ms ease,
      border-color 250ms ease;
}

.section-why-choose__btn span {
   display: block;
}

.section-why-choose__btn svg {
   flex-shrink: 0;
   margin-left: 0.5rem; /* 8px / 16 */
   display: block;
}

/* Outlined button — "Liên hệ": border 1px orange, orange text, transparent bg */
.section-why-choose__btn--outline {
   padding-top: 1rem; /* 16px / 16 */
   padding-bottom: 1rem;
   padding-left: 4rem; /* 64px / 16 */
   padding-right: 4rem; /* 64px / 16 */
   border: 1px solid #fa6900;
   color: #fa6900;
   background-color: transparent;
}

.section-why-choose__btn--outline:hover {
   background-color: #fa6900;
   color: #ffffff;
}

.section-why-choose__btn--outline:focus-visible {
   outline: 0.125rem solid #fa6900;
   outline-offset: 0.125rem;
}

/* Text link button — hidden on desktop per Figma (only 1 button) */
.section-why-choose__btn--text {
   display: none;
}

/* ── RIGHT: image area ── */
/* Figma: 786×748, flush right, gradient overlay + nav at bottom */
.section-why-choose__image-wrap {
   position: relative;
   flex: 1 1 auto;
   overflow: hidden;
   max-height: 100vh; /* giới hạn height không quá viewport */
}

.section-why-choose__img {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center center;
}

/* ── Gradient overlay — Figma: 288px gradient from transparent to #FA6900 ── */
/* Visible on BOTH desktop and mobile */
.section-why-choose__img-gradient {
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   height: 18.0375rem; /* 288.6px / 16 — Figma desktop gradient height */
   background: linear-gradient(to bottom, rgba(241, 90, 41, 0) 0%, rgba(250, 105, 0, 1) 100%);
   z-index: 1;
   pointer-events: none;
}

/* ── NAVIGATION: bars + counter + arrows — positioned on image bottom ── */
/* Figma: p=40px, positioned at bottom of image area */
.section-why-choose__nav {
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   display: flex;
   flex-direction: row;
   align-items: center;
   justify-content: space-between;
   padding: 2.5rem; /* 40px / 16 — Figma padding */
   z-index: 2;
}

.section-why-choose__nav-left {
   display: flex;
   flex-direction: row;
   align-items: center;
   /*justify-content: space-between;*/
   width: 100%;
   margin-bottom: 0.5rem;
}

/* Progress bars — Figma: flex gap-[6px] */
.section-why-choose__img-bars {
   display: flex;
   flex-direction: row;
   align-items: center;
}

.section-why-choose__img-bar {
   display: block;
   height: 0.1875rem; /* 3px / 16 */
   background-color: rgba(255, 255, 255, 0.4);
   border: none;
   padding: 0;
   cursor: pointer;
   border-radius: 0.0938rem;
   transition:
      width 400ms cubic-bezier(0.47, 0, 0.01, 1.01),
      background-color 400ms ease;
   width: 2.5rem; /* 40px / 16 — inactive width */
}

.section-why-choose__img-bar + .section-why-choose__img-bar {
   margin-left: 0.375rem; /* 6px / 16 */
}

.section-why-choose__img-bar.is-active {
   background-color: #ffffff;
   width: 6.25rem !important; /* 100px / 16 — active bar wide */
}

/* Counter — Figma: 14px Medium white */
.section-why-choose__counter {
   font-family: "Lexend Deca", sans-serif;
   font-size: 0.875rem; /* 14px / 16 */
   font-weight: 500;
   line-height: 1.2;
   letter-spacing: -0.0088rem; /* -0.14px / 16 */
   color: #ffffff;
   white-space: nowrap;
   margin-left: 0.75rem; /* 12px / 16 — Figma gap between bars and counter */
}

/* Prev/next arrow buttons — Figma: white bg, 44×44 */
.section-why-choose__nav-arrows {
   display: flex;
   flex-direction: row;
   align-items: center;
}

.section-why-choose__nav-btn {
   width: 2.75rem; /* 44px / 16 */
   height: 2.75rem;
   background-color: #ffffff; /* Figma: white bg */
   border: none;
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: center;
   flex-shrink: 0;
   color: #131313;
   transition:
      background-color 250ms ease,
      color 250ms ease;
}

.section-why-choose__nav-btn:focus-visible {
   outline: 0.125rem solid #fa6900;
   outline-offset: 0.125rem;
}

.section-why-choose__nav-btn svg {
   display: block;
   flex-shrink: 0;
}

.section-why-choose__nav-next {
   margin-left: 0.5rem; /* 8px / 16 */
}

.section-why-choose__nav-btn.swiper-button-disabled {
   opacity: 0.4;
   cursor: default;
}

/*.section-why-choose__nav-btn:not(.swiper-button-disabled):hover {*/
/*   background-color: #131313;*/
/*   color: #ffffff;*/
/*}*/

@media (min-width: 1024px) {
   .section-why-choose__nav-btn {
        transition: background-color 0.3s ease, border-color 0.3s ease;
    }
    
    .section-why-choose__nav-btn svg path {
        transition: fill 0.3s ease, stroke 0.3s ease;
    }
    
    .section-why-choose__nav-btn:not(.swiper-button-disabled):hover {
        background-color: transparent;
        color: #ffffff;
    }
    
    .section-why-choose__nav-btn:not(.swiper-button-disabled):hover svg path {
        stroke: #ffffff;
    }
}

/* ============================================================== */
/* Mobile overrides — max-width: 639.98px                         */
/* Figma mobile order: Title → Tabs → Image → Content (h3+desc)  */
/* Use display:contents to break content panel, reorder children  */
/* ============================================================== */
@media screen and (max-width: 639.98px) {
   /* Stack layout: column, no fixed height */
   .section-why-choose__inner {
      flex-direction: column;
      height: auto;
      max-height: none;
   }
   
   .section-why-choose {
       background: #FFF;
   }

   /* Break content panel — children become flex items of __inner */
   .section-why-choose__content {
      display: contents;
   }

   /* Order: title(1) → tabs(2) → image(3) → swiper(4) */
   .section-why-choose__title {
      order: 1;
      padding-inline: 0.75rem;
      padding-top: 3rem; /* 24px / 16 */
      font-size: 1.25rem; /* 20px / 16 */
      line-height: 1.6;
      letter-spacing: -0.0375rem; /* -0.60px / 16 */
      margin-bottom: 0.75rem; /* 12px / 16 */
   }

   .section-why-choose__tabs {
      order: 2;
      width: calc(100% - 2rem);
      margin: 0 auto;
      /*padding-left: 1rem;*/
      /*padding-right: 1rem;*/
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      margin-bottom: 1.5rem;
      scrollbar-width: none;
      box-sizing: border-box;
   }

   .section-why-choose__tabs::-webkit-scrollbar {
      display: none;
   }

   .section-why-choose__image-wrap {
      order: 3;
      flex: 0 0 auto;
      width: 100%;
      height: 13.5rem; /* 216px / 16 */
      min-height: 13.5rem;
      max-height: none;
   }

   .section-why-choose__img {
      height: 13.5rem; /* 216px / 16 */
   }

   .section-why-choose__swiper {
      order: 4;
      padding-left: 1rem;
      /* padding-right: 1rem; */
      padding-top: 0;
      padding-bottom: 2.5rem; /* 40px / 16 */
   }

   /* Tab buttons */
   .section-why-choose__tab-btn {
      flex: 0 0 auto;
      padding-top: 0.75rem; /* 12px / 16 */
      padding-bottom: 1rem; /* 16px / 16 */
      padding-left: 0;
      padding-right: 0;
   }

   /* Mobile tab spacing: Figma itemSpacing 15px */
   .section-why-choose__tab-btn + .section-why-choose__tab-btn {
      margin-left: 0.9375rem; /* 15px / 16 */
   }

   .section-why-choose__tab-label {
      font-size: 0.75rem; /* 14px / 16 */
      line-height: 1.5;
      letter-spacing: -0.0112rem; /* -0.18px / 16 */
      white-space: nowrap;
   }

   /* Gradient overlay — mobile: 104px height */
   .section-why-choose__img-gradient {
      height: 6.5rem; /* 104px / 16 */
   }

   /* Nav — mobile: smaller padding, no arrows */
   .section-why-choose__nav {
      padding-top: 0.75rem; /* 12px / 16 */
      padding-bottom: 0.75rem;
      padding-left: 1rem; /* 16px / 16 */
      padding-right: 1rem;
   }

   /* Hide arrows on mobile — swipe instead */
   .section-why-choose__nav-arrows {
      display: none;
   }

   /* Slide H3 — mobile */
   .section-why-choose__slide-title {
      font-size: 1rem; /* 16px / 16 */
      line-height: 1.4;
      letter-spacing: 0;
      margin-top: 1.5rem; /* 24px / 16 — space above h3 on mobile */
      margin-bottom: 0.625rem; /* 10px / 16 */
   }

   /* Slide desc — mobile */
   .section-why-choose__slide-desc {
      font-size: 0.875rem; /* 14px / 16 */
      font-weight: 400;
      line-height: 1.5;
      letter-spacing: 0.02rem;
      margin-bottom: 1.5rem; /* 24px / 16 */
   }

   .section-why-choose__slide {
      padding-right: 1rem;
   }

   /* Buttons: mobile only shows primary button */
   .section-why-choose__btn--outline {
      padding-top: 0.75rem; /* 12px / 16 */
      padding-bottom: 0.75rem;
      padding-left: 1.5rem; /* 24px / 16 */
      padding-right: 1.5rem;
      font-size: 0.875rem; /* 14px / 16 */
      line-height: 1.3;
      letter-spacing: -0.0088rem; /* -0.14px / 16 */
   }
}


/* ===== template-parts/nang-luc-san-xuat/section-cta-contact/assets/styles.css ===== */
/* ============================================================== */
/* Section CTA Contact — Năng lực sản xuất                        */
/* Desktop: 1600×567px — dark industrial bg + orange accent       */
/*   Left: h2 title (white) + desc + 2 side-by-side buttons       */
/*   Right: orange trapezoid, worker portrait, side image          */
/* Mobile: 375×604px — white content top + stacked buttons        */
/*   Below: orange bg with worker image overlapping                */
/* ============================================================== */

/* ---- Section wrapper ---- */

.section-cta-contact {
   position: relative;
   width: 100%;
   min-height: 41.4375rem;
   overflow: visible;
   box-sizing: border-box;
}

/* ================================================================ */
/* Background layer — orange fill + bg image + accent shapes        */
/* ================================================================ */

.section-cta-contact__bg {
   position: absolute;
   /* top: 9.56rem; */
   left: 0;
   width: 100%;
   bottom: 0;
   height: 100%;
   max-height: 31.55456rem;
   pointer-events: none;
   /*overflow: hidden;*/
}

/* Solid orange fill — covers full bg area */
.section-cta-contact__bg-orange {
   position: absolute;
   inset: 0;
   background-color: #fa6900;
   z-index: 0;
}

/* Dark industrial bg image — trapezoid left portion */
/* Figma vertices: (0,0) → (1175.58,0) → (734.58,504.87) → (0,504.87) */
/* clip-path %: right-top = 1175.58/1600 = 73.47%, right-bottom = 734.58/1600 = 45.91% */
.section-cta-contact__bg-image-wrap {
   position: absolute;
   top: 0;
   left: 0;
   width: 73.4738%; /* 1175.58 / 1600 */
   height: 100%;
   clip-path: polygon(0 0, 100% 0, 62.52% 100%, 0 100%);
   /* 62.52% = 734.58 / 1175.58 = right-bottom x relative to wrap width */
   overflow: hidden;
}

.section-cta-contact__bg-img {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center;
}

/* White-to-transparent gradient accent shape (right side) */
/* Figma node rotated 180deg — a parallelogram covering right ~50% */
/* Shape covers approx x=276.64 to x=1075.74, gives a diagonal fade */
.section-cta-contact__accent-shape {
   position: absolute;
   top: 0;
   right: 0;
   width: 49.9438%; /* 799.1 / 1600 */
   height: 100%;
   clip-path: polygon(27.53% 0, 100% 0, 100% 100%, 0 100%);
   /* 27.53% = 440 / (799.1) — the diagonal cut */
   background: linear-gradient(to bottom left, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0) 100%);
   opacity: 1;
   pointer-events: none;
}

/* Side industrial image — right edge parallelogram */
/* Figma: x=1105.42, width=494.58, shape: (441,0)→(494.58,0)→(494.58,504.87)→(0,504.87) */
/* clip-path: bottom-left corner diagonal cut from x=0 at bottom to x=441 at top */
.section-cta-contact__side-image-wrap {
   position: absolute;
   top: 0;
   right: 0;
   width: 30.9113%; /* 494.58 / 1600 */
   height: 100%;
   clip-path: polygon(89.16% 0, 100% 0, 100% 100%, 0 100%);
   /* 89.16% = 441 / 494.58 */
   overflow: hidden;
   z-index: 3;
}

.section-cta-contact__side-img {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center;
}

/* ================================================================ */
/* Worker portrait image — positioned absolute, overflows top       */
/* Figma: x=798.39, y=-47.22 (relative to section), 614.05×614.05  */
/* ================================================================ */

.section-cta-contact__worker {
   position: absolute;
   left: 49.8994rem; /* 798.39px / 16 */
   bottom: 0;
   width: 38.3781rem; /* 614.05px / 16 */
   height: 38.3781rem; /* 614.05px / 16 */
   pointer-events: none;
   z-index: 2;
}

.section-cta-contact__worker-img {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: center top;
}

/* ================================================================ */
/* Content — heading + description + action buttons                  */
/* Figma: content frame at y=152.40, width=804, padding-left=100    */
/* ================================================================ */

.section-cta-contact__content {
   position: absolute;
   top: 15.21rem;
   left: 0;
   width: 50.25rem; /* 804px / 16 */
   padding-left: 6.25rem; /* 100px / 16 */
   padding-right: 0;
   box-sizing: border-box;
   z-index: 3;
}

/* ---- Heading ---- */

.section-cta-contact__title {
   font-family: "Lexend Deca", sans-serif;
   font-size: 3.0625rem; /* 49px / 16 */
   font-weight: 600;
   line-height: 1.3;
   letter-spacing: -0.0919rem; /* -1.47px / 16 */
   text-transform: uppercase;
   color: #ffffff;
   margin: 0 0 1.3625rem 0; /* 17px / 16 — Figma itemSpacing within Content frame */
   text-shadow: 0 0.25rem 1.8688rem rgba(0, 0, 0, 0.25); /* Figma: y=4, blur=29.9, color rgba(0,0,0,0.25) */
}

/* ---- Description ---- */

.section-cta-contact__desc {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1.125rem; /* 18px / 16 */
   font-weight: 400;
   line-height: 1.5;
   letter-spacing: 0;
   color: #ffffff;
   margin: 0 0 2rem 0;
}

/* ---- Actions (buttons row) ---- */

.section-cta-contact__actions {
   display: flex;
   flex-direction: row;
   align-items: center;
   /* Figma: actions at y=268 inside content frame. Already vertically positioned by cumulative heights */
   /* Spacing between desc and actions calculated via margins above */
   /* Actual gap from content top to actions: 268/16 = 16.75rem */
   /* Heading 192/16=12rem + gap 17/16=1.0625rem + desc 27/16=1.6875rem + gap 17/16=1.0625rem ≈ 15.8125rem */
   /* Extra: 16.75 - 15.8125 = 0.9375rem additional margin */
   margin-top: 0.9375rem; /* 15px fine-tune to reach 268px total from content top */
}

.section-cta-contact__btn {
   display: inline-flex;
   flex-direction: row;
   align-items: center;
   justify-content: center;
   width: 17.40625rem; /* 278.5px / 16 */
   height: 3.5rem; /* 56px / 16 */
   text-decoration: none;
   cursor: pointer;
   box-sizing: border-box;
   transition:
      background-color 400ms cubic-bezier(0.47, 0, 0.01, 1.01),
      color 400ms cubic-bezier(0.47, 0, 0.01, 1.01),
      border-color 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

.section-cta-contact__btn + .section-cta-contact__btn {
   margin-left: 1rem; /* 16px / 16 — Figma itemSpacing in Actions frame */
}

/* Primary button — orange bg, white text */
.section-cta-contact__btn--primary {
   background-color: #fa6900;
   border: none;
}

.section-cta-contact__btn--primary .section-cta-contact__btn-text {
   color: #ffffff;
}

.section-cta-contact__btn--primary .section-cta-contact__btn-icon {
   color: #ffffff;
}
.section-cta-contact__btn--primary:focus-visible {
   outline: 2px solid #ffffff;
   outline-offset: 2px;
}

/* Outline button — white bg, dark text (desktop) */
.section-cta-contact__btn--outline {
   background-color: #ffffff;
   /*border: 1px solid #131313;*/
}

.section-cta-contact__btn--outline .section-cta-contact__btn-text {
   color: #131313;
   transition: all 0.1s ease-out;
}

.section-cta-contact__btn--outline svg {
   color: #131313;
   transition: all 0.1s ease-out;
}

@media (min-width: 640px) {
   .section-cta-contact__btn--outline:hover {
      /*background-color: #f2f3f5;*/
      background-color: #ced0d3;
   }
   
   .section-cta-contact__btn--primary:hover {
      background-color: #ff7b1c;
   }
   
   .section-cta-contact__btn--primary:hover .section-cta-contact__btn-text {
      transform: scale(1.01);
   }
   
   .section-cta-contact__btn--outline:hover .section-cta-contact__btn-text {
      transform: scale(1.01);
   }
   
}

.section-cta-contact__btn--outline:focus-visible {
   outline: 2px solid #fa6900;
   outline-offset: 2px;
}

/* ---- Button text + icon ---- */

.section-cta-contact__btn-text {
   font-family: "Lexend Deca", sans-serif;
   font-size: 1rem; /* 16px / 16 */
   font-weight: 500;
   line-height: 1.5;
   letter-spacing: -0.01rem; /* -0.16px / 16 */
   text-transform: uppercase;
   white-space: nowrap;
   margin-right: 0.5rem;
}

.section-cta-contact__btn-icon {
   width: 1rem; /* 16px / 16 */
   height: 1rem; /* 16px / 16 */
   flex-shrink: 0;
   margin-left: 0.5rem; /* 8px / 16 — Figma itemSpacing within button */
   display: block;
}

/* ============================================================== */
/* Mobile Overrides — max-width: 639.98px                         */
/* ============================================================== */

@media screen and (max-width: 639.98px) {
   /* Section: auto height, white bg for top content area */
   .section-cta-contact {
      height: auto;
      overflow: hidden;
      background-color: #ffffff;
      min-height: 38.75rem;
   }

   /* ---- Background layer — only shows in bottom portion ---- */

   .section-cta-contact__bg {
      top: initial;
      bottom: 0;
      height: 18.365rem;
      overflow: visible;
   }

   .section-cta-contact__left {
      height: 18.36506rem;
      width: auto;
      position: absolute;
      left: 0;
      top: 0;
   }

   .section-cta-contact__right {
      height: 18.36506rem;
      width: auto;
      position: absolute;
      right: 0;
      bottom: 0;
      z-index: 3;
   }

   /* BG image wrap: mobile uses same proportional trapezoid but smaller */
   /* Figma mobile: 684.2×293.84, section width=375 */
   /* clip path stays same conceptually: left trapezoid */
   .section-cta-contact__bg-image-wrap {
      width: 100%;
      clip-path: polygon(0 0, 100% 0, 62.52% 100%, 0 100%);
   }

   /* Accent shape hidden on mobile — not visible in design */
   .section-cta-contact__accent-shape {
      display: none;
   }

   /* Side image hidden on mobile */
   .section-cta-contact__side-image-wrap {
      display: none;
   }

   /* ---- Worker image — repositioned for mobile ---- */
   /* Figma mobile: x=68.68, y=246.52 from section top, size=357.38×357.38 */

   .section-cta-contact__worker {
      left: 4.2925rem;
      bottom: 0;
      top: initial;
      width: 22.3363rem;
      height: 22.3363rem;
      z-index: 2;
   }

   /* ---- Content — reflow to top, full width, white bg ---- */
   /* Mobile content frame: 375×258px at y=0, padding L/R=16 */

   .section-cta-contact__content {
      position: relative;
      top: auto;
      left: auto;
      width: 100%;
      padding-left: 1rem; /* 16px / 16 */
      padding-right: 1rem; /* 16px / 16 */
      padding-top: 1rem; /* 24px / 16 — Figma M: whitespace above heading */
      padding-bottom: 0;
      background-color: #ffffff;
      z-index: 3;
   }

   /* Heading — dark text on mobile */
   .section-cta-contact__title {
      font-size: 1.25rem; /* 20px / 16 */
      line-height: 1.6;
      letter-spacing: -0.0375rem; /* -0.6px / 16 */
      color: #131313;
      margin-bottom: 0.75rem; /* 12px / 16 — itemSpacing mobile */
      text-shadow: none;
      max-width: 17.9375rem;
   }

   .section-cta-contact__desc {
      font-size: 0.875rem; /* 14px / 16 */
      line-height: 1.5;
      letter-spacing: 0;
      color: #131313;
      margin-bottom: 0.75rem; /* 12px / 16 */
   }

   .section-cta-contact__actions {
      flex-direction: column;
      align-items: stretch;
      margin-top: 0;
   }

   .section-cta-contact__btn {
      width: 100%;
      height: 2.625rem;
      padding-left: 1.5rem;
      padding-right: 1.5rem;
      padding-top: 0.75rem;
      padding-bottom: 0.75rem;
      justify-content: center;
   }

   .section-cta-contact__btn + .section-cta-contact__btn {
      margin-left: 0;
      margin-top: 0.75rem;
   }
   
   .section-cta-contact__btn--outline svg path {
      stroke: #FA6900;
   }

   .section-cta-contact__btn--outline {
      background-color: transparent;
      border: 1px solid #fa6900;
   }

   .section-cta-contact__btn--outline .section-cta-contact__btn-text {
      color: #fa6900;
   }

   .section-cta-contact__btn--outline .section-cta-contact__btn-icon {
      color: #fa6900;
   }

   /* Button text — smaller on mobile */
   .section-cta-contact__btn-text {
      font-size: 0.875rem; /* 14px / 16 */
      line-height: 1.3;
      letter-spacing: -0.00875rem; /* -0.14px / 16 */
   }
}


/* ===== template-parts/nang-luc-san-xuat/assets/styles.css ===== */
/* Năng lực sản xuất page — section CSS imports (order theo PLAN.md) */









.only-pc {
   display: initial;
}

.only-mb {
   display: none;
}

@media (max-width: 640px) {
      .only-mb {
            display: initial !important;
      }
      .only-pc {
            display: none !important;
      }
}

