
/* ===== template-parts/homepage/section-hero/assets/styles.css ===== */
/* ============================================================ */
/* Section Hero — Desktop base                                   */
/* ============================================================ */

.section-hero {
  position: relative;
  width: 100%;
  height: 42.375rem; /* 678px / 16 */
  overflow: hidden;
}
@media (min-width: 1024px) {
  .section-hero {
    height: calc(100vh - 7rem);
  }
  .section-hero__content {
    top: unset;
    bottom: 5rem;
  }
}

/* Video background — fills section, cropped via object-fit */
.section-hero__bg-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  z-index: 0;
}

/* Gradient overlay — bottom-to-top dark, sits above video */
.section-hero__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    180deg,
    rgba(3, 13, 39, 0.07) 0%,
    rgba(4, 18, 50, 0.7) 100%
  );
  pointer-events: none;
  z-index: 1;
}

/* Content wrapper — positioned bottom-left area, inner 1400px */
.section-hero__content {
  position: absolute;
  top: 34.0625rem; /* 545px / 16 */
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  width: 87.5rem; /* 1400px / 16 — inner content width */
  max-width: calc(100% - 12.5rem); /* 100% - 2×100px padding */
}

/* H1 Title */
.section-hero__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: #ffffff;
  max-width: 41.9375rem; /* 671px / 16 — Figma node 2348:24192 */
  flex-shrink: 0;
  margin: 0;
}

/* Spacer between title and subtitle */
.section-hero__title-subtitle-gap {
  flex: 1;
  min-width: 19rem; /* 304px / 16 */
}

/* Subtitle */
.section-hero__subtitle {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem; /* 16px / 16 */
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.02rem; /* -0.32px / 16 */
  color: rgba(255, 255, 255, 0.8);
  width: 26.75rem; /* 428px / 16 */
  flex-shrink: 0;
  margin: 0;
}

/* ============================================================ */
/* Mobile overrides — only properties that differ from desktop   */
/* @media screen and (max-width: 639.98px)                       */
/* ============================================================ */

@media screen and (max-width: 639.98px) {
  .section-hero {
    height: 31.25rem; /* 500px / 16 */
    background-color: #ffffff;
  }

  /* Hide gradient overlay on mobile */
  .section-hero__overlay {
    display: none;
  }

  /* Mobile video — repositioned/cropped to bottom portion */
  .section-hero__bg-video {
    top: 14.875rem; /* 206px / 16 */
    left: -2.1875rem; /* -35px / 16 */
    width: 27.8125rem; /* 445px / 16 */
    height: auto; /* 294px / 16 */
    object-fit: cover;
    object-position: center center;
  }

  /* Content wrapper — stacked at top, anchored at x:14px from Figma */
  .section-hero__content {
    position: absolute;
    top: 2.25rem; /* 36px / 16 */
    left: 0.875rem; /* 14px / 16 — Figma x:14 of text container 2348:24965 */
    transform: none; /* reset desktop translateX(-50%) */
    flex-direction: column;
    align-items: flex-start;
    width: 21.9375rem; /* 351px / 16 — Figma width of text container */
    max-width: none; /* reset desktop max-width: calc(100% - 12.5rem) */
    padding-left: 0;
    padding-right: 0;
    z-index: 2;
  }

  /* Gap spacer hidden on mobile */
  .section-hero__title-subtitle-gap {
    display: none;
  }

  /* H1 Title */
  .section-hero__title {
    font-size: 1.5rem; /* 24px / 16 */
    letter-spacing: -0.03rem; /* -0.48px / 16 */
    color: #131313;
    width: 100%;
    max-width: none; /* reset desktop max-width on mobile */
  }

  /* Subtitle — appears below title, 10px gap */
  .section-hero__subtitle {
    font-size: 0.875rem; /* 14px / 16 */
    letter-spacing: -0.0175rem; /* -0.28px / 16 */
    color: rgba(19, 19, 19, 0.8);
    text-align: justify;
    width: 100%;
    margin-top: 0.625rem; /* 10px / 16 */
  }
}


/* ===== template-parts/homepage/section-about/assets/styles.css ===== */
/* =============================================================
   Section About — Desktop base
   ============================================================= */

.section-about {
  background-color: #ffffff;
  width: 100%;
  padding: 6.25rem;
}

.section-about__container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 87.5rem;
  margin-inline: auto;
}

/* ── Top row (label+number / description+button) ── */

.section-about__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 4.5rem;
}

/* Left column */
.section-about__left {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-self: stretch;
  width: 18.8125rem;
  flex-shrink: 0;
}

/* Label row: orange dot + text */
.section-about__label {
  display: flex;
  align-items: center;
}

.section-about__label-dot {
  display: block;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background-color: #fa6900;
  flex-shrink: 0;
  margin-right: 0.75rem;
}

.section-about__label-text {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0;
  color: #131313;
  text-transform: uppercase;
  white-space: nowrap;
}

/* Year block */
.section-about__year-block {
  position: relative;
  width: 100%;
  height: 14.5rem;
  flex-shrink: 0;
}

.section-about__year-number {
  font-family: "Lexend Deca", sans-serif;
  font-size: 10rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -0.6rem;
  color: #131313;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  white-space: nowrap;
}

.section-about__year-plus {
  font-family: "Lexend Deca", sans-serif;
  font-size: 5.3125rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: -0.053125rem;
  color: #fa6900;
  position: absolute;
  left: 10.8125rem;
  top: 4.375rem;
  transform: translateY(-50%);
  white-space: nowrap;
}

.section-about__year-unit {
  font-family: "Lexend Deca", sans-serif;
  font-size: 3.75rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -0.075rem;
  color: #131313;
  position: absolute;
  left: 11rem;
  top: 9.8125rem;
  transform: translateY(-50%);
  white-space: nowrap;
}

.section-about__year-desc {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.02rem;
  color: #131313;
  position: absolute;
  left: 0;
  bottom: 0;
  white-space: nowrap;
}

/* Right column */
.section-about__right {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  flex-shrink: 0;
}

.section-about__description {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: -0.045rem;
  color: #131313;
  text-align: justify;
  width: 43.8125rem;
  margin-bottom: 2.5rem;
}

/* CTA button */
.section-about__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #fa6900;
  padding: 1rem 4rem;
  text-decoration: none;
  transition: background-color 400ms cubic-bezier(0.47, 0, 0.01, 1.01),
    opacity 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

.section-about__btn-text {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -0.01rem;
  color: #ffffff;
  text-transform: uppercase;
  white-space: nowrap;
}

.section-about__btn-icon {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  margin-left: 0.5rem;
}

@media (min-width: 1024px) {
  .section-about__btn:hover {
    background-color: #ff7b1c;
  }
}

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

/* ── Bottom row (video + stats) ── */

.section-about__bottom {
  position: relative;
  width: 100%;
  height: 19.8125rem;
  flex-shrink: 0;
}

/* Video thumbnail */
.section-about__video-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 35.5rem;
  height: 19.7863rem;
  overflow: hidden;
  cursor: pointer;
  flex-shrink: 0;
}

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

.section-about__video-overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(0.177rem);
}

.section-about__video-play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 3.0959rem;
  height: 3.0959rem;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(4.4228rem);
  border: 1px solid #fdfdfd;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  flex-shrink: 0;
  transition: background-color 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

.section-about__video-play-icon {
  width: 1.1517rem;
  height: 1.2617rem;
}

@media (min-width: 1024px) {
  .section-about__video-wrap:hover .section-about__video-play {
    background-color: rgba(255, 255, 255, 0.4);
  }
}

/* Stats area */
.section-about__stats {
  position: absolute;
  left: 43.5625rem;
  top: 3.3125rem;
  width: 43.9375rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.section-about__stat {
  position: relative;
  width: 11.3125rem;
  height: 8.625rem;
  flex-shrink: 0;
}

/* Stat separator */
.section-about__stat + .section-about__stat {
  margin-left: 0;
}

/* Stat text wrapper — desktop: transparent container (children are absolute-positioned) */
.section-about__stat-text {
  display: contents;
}

/* Icon */
.section-about__stat-icon-wrap {
  position: absolute;
  left: 0.125rem;
  top: 0;
  width: 4.5rem;
  height: 3.5rem;
  overflow: hidden;
  flex-shrink: 0;
}

.section-about__stat-icon {
  display: block;
  width: 3rem;
  height: 100%;
  object-fit: contain;
}

/* Number row */
.section-about__stat-number-row {
  position: absolute;
  left: 0;
  top: 3.8125rem;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
}

.section-about__stat-number {
  font-family: "Lexend Deca", sans-serif;
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem;
  color: #131313;
  text-transform: uppercase;
  white-space: nowrap;
  position: relative;
}

.section-about__stat-box {
  width: fit-content;
  position: relative;
}

.section-about__stat-plus {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: -0.015rem;
  color: #fa6900;
  white-space: nowrap;
  position: absolute;
  top: -1rem;
  right: -0.8rem;
}

.section-about__stat-unit {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.02rem;
  color: #131313;
  white-space: nowrap;
  align-self: center;
  margin-left: 0.25rem;
  height: 2.75rem;
  display: flex;
  align-items: end;
  margin-top: -0.5rem;
}

/* Label */
.section-about__stat-label {
  position: absolute;
  left: 0.1875rem;
  top: 7.9063rem;
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.02rem;
  color: #131313;
  white-space: nowrap;
  transform: translateY(-50%);
}

/* =============================================================
   Mobile overrides — @media screen and (max-width: 639.98px)
   ============================================================= */

@media screen and (max-width: 639.98px) {
  .section-about {
    padding: 2.5rem 1rem 3rem;
  }

  .section-about__container {
    width: 100%;
    flex-direction: column;
  }

  /* Top block stacked */
  .section-about__top {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    margin-bottom: 1.875rem;
  }

  /* Left column: full width, auto height */
  .section-about__left {
    width: 100%;
    height: auto;
    margin-bottom: 1.25rem;
  }

  .section-about__label-dot {
    width: 0.625rem;
    height: 0.625rem;
    margin-right: 0.5rem;
  }

  .section-about__label-text {
    font-size: 0.75rem;
    line-height: 1.3;
  }

  /* Year block mobile */
  .section-about__year-block {
    height: 11.25rem;
    margin-top: 0rem;
  }

  .section-about__year-number {
    font-size: 7.5rem;
    letter-spacing: -0.45rem;
    left: -0.4375rem;
  }

  .section-about__year-plus {
    font-size: 2.5rem;
    letter-spacing: -0.025rem;
    left: 8rem;
    top: 2.5625rem;
  }

  .section-about__year-unit {
    font-size: 2.5rem;
    letter-spacing: -0.05rem;
    left: 7.9375rem;
    top: 7.5rem;
  }

  .section-about__year-desc {
    font-size: 0.875rem;
    bottom: 0.25rem;
    left: 0.1875rem;
    letter-spacing: 0;
  }

  /* Right column: full width */
  .section-about__right {
    width: 100%;
  }

  .section-about__description {
    font-size: 1.125rem;
    font-weight: 500;
    letter-spacing: -0.03375rem;
    width: 100%;
    margin-bottom: 1.75rem;
    opacity: 0.85;
  }

  .section-about__btn {
    width: 100%;
    padding: 0.75rem 1.5rem;
  }

  .section-about__btn-text {
    font-size: 0.875rem;
    line-height: 1.3;
    letter-spacing: -0.00875rem;
  }

  /* Bottom block mobile: no absolute positioning, flex column */
  .section-about__bottom {
    position: static;
    height: auto;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }

  /* Hide video thumbnail on mobile (not in mobile Figma design) */
  .section-about__video-wrap {
    display: none;
  }

  /* Stats: stacked vertically */
  .section-about__stats {
    position: static;
    left: auto;
    top: auto;
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
  }

  .section-about__stat {
    position: static;
    width: 100%;
    height: 5.94rem;
    display: flex;
    align-items: center;
  }

  .section-about__stat + .section-about__stat {
    margin-left: 0;
    margin-top: 1.25rem;
  }

  /* Icon on mobile: larger, in square container */
  .section-about__stat-icon-wrap {
    position: static;
    width: 5.4375rem;
    height: 5.4375rem;
    flex-shrink: 0;
    margin-right: 0.875rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .section-about__stat-icon {
    width: 4.375rem;
    height: auto;
    max-height: 4.375rem;
  }

  /* Number+label area */
  .section-about__stat-number-row {
    position: static;
    display: flex;
    align-items: baseline;
    margin-bottom: 0.125rem;
  }

  .section-about__stat-number {
    font-size: 2rem;
    font-weight: 500;
    letter-spacing: 0;
  }

  .section-about__stat-plus {
    font-size: 1rem;
    align-self: flex-start;
    margin-top: 0.3rem;
  }

  .section-about__stat-unit {
    font-size: 0.875rem;
    letter-spacing: -0.0175rem;
    height: auto;
    margin-left: 0.375rem;
    margin-top: 0;
  }

  .section-about__stat-label {
    position: static;
    transform: none;
    font-size: 0.875rem;
    letter-spacing: -0.0175rem;
    white-space: normal;
    margin-top: 0.125rem;
  }

  /* Stat text wrapper */
  .section-about__stat-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
}


/* ===== template-parts/homepage/section-features/assets/styles.css ===== */
/* ============================================================== */
/* Section Features — Desktop base                                 */
/* Figma node: 2348:24337 (1600×346)                               */
/* ============================================================== */

.section-features {
  background-color: #fa6900;
  width: 100%;
  position: relative;
}

.section-features__container {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding-top: 4rem; /* 64px / 16 */
  padding-bottom: 4rem; /* 64px / 16 */
  padding-left: 6.25rem; /* 100px / 16 */
  padding-right: 6.25rem; /* 100px / 16 */
}

/* Feature item */
.section-features__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex: 1 0 0;
  min-width: 0;
}

/* Margin pattern — no gap */
.section-features__item + .section-features__item {
  margin-left: 5rem; /* 80px / 16 */
}

/* Icon wrapper */
.section-features__icon {
  display: block;
  width: 5.625rem; /* 90px / 16 */
  height: 5.625rem; /* 90px / 16 */
  flex-shrink: 0;
  object-fit: contain;
}

/* Text block (title + description) */
.section-features__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: 100%;
  margin-top: 0.875rem; /* 14px / 16 — gap between icon and text */
}

/* Title */
.section-features__title {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1.25rem; /* 20px / 16 */
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.01875rem; /* -0.3px / 16 */
  text-transform: uppercase;
  color: #ffffff;
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
}

/* Description */
.section-features__desc {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem; /* 16px / 16 */
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.02rem; /* -0.32px / 16 */
  color: rgba(255, 255, 255, 0.8);
  text-align: center;
  margin-top: 1rem; /* 16px / 16 — gap between title and desc */
  margin-bottom: 0;
}

/* ============================================================== */
/* Mobile overrides — only properties that differ from desktop    */
/* Figma node: 2348:25033 (375×750)                               */
/* ============================================================== */
@media screen and (max-width: 639.98px) {
  .section-features__container {
    flex-direction: column;
    align-items: flex-start;
    padding-top: 2rem; /* 32px / 16 */
    padding-bottom: 2rem; /* 32px / 16 */
    padding-left: 1.5rem; /* 24px / 16 */
    padding-right: 1.5rem; /* 24px / 16 */
  }
  .section-features__item {
    align-items: start;
  }
  /* Reset horizontal margin, add vertical margin between stacked items */
  .section-features__item + .section-features__item {
    margin-left: 0;
    margin-top: 2.5rem; /* 40px / 16 */
  }

  /* Mobile icon: 72×72 */
  .section-features__icon {
    width: 4.5rem; /* 72px / 16 */
    height: 4.5rem; /* 72px / 16 */
  }

  /* Text block: left-aligned, full-width on mobile */
  .section-features__text {
    align-items: flex-start;
    text-align: left;
    margin-top: 0.875rem; /* 14px / 16 — same as desktop, no change needed but explicit */
  }

  /* Title: 16px, line-height 1.4, no letter-spacing on mobile */
  .section-features__title {
    font-size: 1rem; /* 16px / 16 */
    line-height: 1.4;
    letter-spacing: 0;
    text-align: left;
  }

  /* Description: 14px, no letter-spacing, justify on mobile */
  .section-features__desc {
    font-size: 0.875rem; /* 14px / 16 */
    letter-spacing: 0;
    text-align: justify;
    margin-top: 0.625rem; /* 10px / 16 — gap between title and desc on mobile */
  }
}


/* ===== template-parts/homepage/section-investor/assets/styles.css ===== */
/* ============================================================== */
/* Section Investor — Desktop base                                 */
/* Figma Desktop: 2348:24456 (1600×1015)                           */
/* rem = figma_px / 16, 4 decimal places                          */
/* ============================================================== */

.section-investor {
  background-color: #f6f7f9;
  width: 100%;
  position: relative;
}

.section-investor__card-inner--bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}

.section-investor__container {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 6.25rem;
  /* 100px / 16 */
  padding-bottom: 6.25rem;
  /* 100px / 16 */
  padding-left: 6.25rem;
  /* 100px / 16 */
  padding-right: 6.25rem;
  /* 100px / 16 */
}

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

/* ------- Body: 2-col layout ------- */
.section-investor__body {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  width: 100%;
}

/* LEFT column holds card + stats */
.section-investor__left {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  width: 31.25rem;
  /* 500px / 16 */
}

/* margin-left on chart panel — no gap */
.section-investor__chart-panel {
  margin-left: 1.25rem;
  flex: 1 0 0;
  min-width: 0;
  position: relative;
  padding: 1.25rem;
  background: #fff;
  border-radius: 1rem;
}

/* ------- Dark blue card ------- */
.section-investor__card {
  background-color: #0e2f7c;
  border-radius: 1rem;
  /* 16px / 16 */
  overflow: hidden;
  position: relative;
}

.section-investor__card-inner {
  display: flex;
  flex-direction: column;
  padding-top: 1.5rem;
  /* 24px / 16 */
  padding-bottom: 0.5rem;
  padding-left: 1.5rem;
  /* 24px / 16 */
  padding-right: 1.5rem;
  /* 24px / 16 */
  position: relative;
  z-index: 1;
}

/* Card subtitle */
.section-investor__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;
  /* -0.3px / 16 */
  text-transform: uppercase;
  color: #ffffff;
  margin-top: 0;
  margin-bottom: 2rem;
  /* 32px / 16 */
}

/* ------- Checklist ------- */
.section-investor__checklist {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  margin-bottom: 2.5rem;
  /* 40px / 16 */
}

.section-investor__checklist-col {
  display: flex;
  flex-direction: column;
  flex: 1 0 0;
  min-width: 0;
}

.section-investor__checklist-col+.section-investor__checklist-col {
  margin-left: 2.5rem;
  /* 40px / 16 */
}

.section-investor__check-item {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.section-investor__check-item+.section-investor__check-item {
  margin-top: 1rem;
  /* 16px / 16 */
}

.section-investor__check-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
}

.section-investor__check-icon img {
  width: 0.8rem;
  height: auto;
}

.section-investor__check-text {
  font-family: "Lexend Deca", sans-serif;
  font-size: 0.875rem;
  /* 14px / 16 */
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.01313rem;
  /* -0.21px / 16 */
  color: #ffffff;
  margin-left: 0.5rem;
  /* 8px / 16 */
}

/* ------- Reports list ------- */
.section-investor__reports {
  display: flex;
  flex-direction: column;
}

.section-investor__report-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding-top: 0.875rem;
  /* 14px / 16 */
  padding-bottom: 0.875rem;
  /* 14px / 16 */
}

/* First row: no top padding */
.section-investor__reports .section-investor__report-row:first-child {
  padding-top: 0;
}

.section-investor__report-divider {
  border: none;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  margin: 0;
}

.section-investor__report-icon {
  flex-shrink: 0;
  width: 1.75rem;
  /* 28px / 16 */
  height: 1.75rem;
  /* 28px / 16 */
  display: block;
}

.section-investor__report-title {
  font-family: "Lexend Deca", sans-serif;
  font-size: 0.75rem;
  /* 12px / 16 */
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.0113rem;
  /* -0.18px / 16 */
  color: #ffffff;
  flex: 1 0 0;
  min-width: 0;
  margin-left: 0.625rem;
  /* 10px / 16 */
}

.section-investor__report-link {
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-shrink: 0;
  text-decoration: none;
}

.section-investor__report-link span {
  font-family: "Lexend Deca", sans-serif;
  font-size: 0.75rem;
  /* 12px / 16 */
  font-weight: 300;
  line-height: 1.5;
  color: #ffffff;
  text-decoration: underline;
  text-decoration-style: solid;
  text-underline-position: from-font;
}

.section-investor__report-dl-icon {
  width: 1rem;
  /* 16px / 16 */
  height: 1rem;
  /* 16px / 16 */
  display: block;
  margin-left: 0.25rem;
  /* 4px / 16 */
}

/* ------- Stats bar (orange) ------- */
.section-investor__stats {
  background-color: #fa6900;
  border-radius: 1rem;
  /* 16px / 16 */
  overflow: hidden;
  display: flex;
  flex-direction: row;
  align-items: center;
  padding-top: 1.5rem;
  /* 24px / 16 */
  padding-bottom: 1rem;
  padding-left: 1.5rem;
  /* 24px / 16 */
  padding-right: 1.5rem;
  /* 24px / 16 */
  margin-top: 1.25rem;
  /* 20px / 16 */
}

.section-investor__stat {
  display: flex;
  flex-direction: column;
  flex: 1 0 0;
  min-width: 0;
}

.section-investor__stat+.section-investor__stat {
  margin-left: 2.5rem;
  /* 40px / 16 */
}

.section-investor__stat-label {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem;
  /* 16px / 16 */
  font-weight: 400;
  line-height: 1.3;
  color: rgba(255, 255, 255, 0.8);
  margin-top: 0;
  margin-bottom: 0.5rem;
  /* 8px / 16 */
}

.section-investor__stat-values {
  display: flex;
  flex-direction: column;
}

.section-investor__stat-number {
  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: #ffffff;
  margin-top: 0;
  margin-bottom: 0.25rem;
  /* 4px / 16 */
}

.section-investor__stat-unit {
  font-family: "Lexend Deca", sans-serif;
  font-size: 0.875rem;
  /* 14px / 16 */
  font-weight: 400;
  line-height: 1.3;
  color: rgba(255, 255, 255, 0.8);
  margin-top: 0;
  margin-bottom: 0;
}

/* ------- Chart panel (right) ------- */
/* position absolute bottom → widget luôn ở đáy panel dù cao bao nhiêu */
.section-investor__chart-embed {
  position: absolute;
  top: 1.25rem;
  bottom: 1.25rem;
  left: 1.25rem;
  right: 1.25rem;
  overflow: hidden;
}


/* ------- CTA button ------- */
.section-investor__cta {
  margin-top: 3rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.section-investor__btn {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  border: 1px solid #fa6900;
  padding-top: 1rem;
  /* 16px / 16 */
  padding-bottom: 1rem;
  /* 16px / 16 */
  padding-left: 4rem;
  /* 64px / 16 */
  padding-right: 4rem;
  /* 64px / 16 */
  text-decoration: none;
  transition: all 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

.section-investor__btn span,
.section-investor__btn {
  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;
  color: #fa6900;
}

.section-investor__btn-arrow {
  flex-shrink: 0;
  width: 1rem;
  /* 16px / 16 */
  height: 1rem;
  /* 16px / 16 */
  margin-left: 0.5rem;
  /* 8px / 16 */
  display: block;
}

@media (min-width: 1024px) {
  .section-investor__btn:hover {
    background-color: #fa6900;
    color: #ffffff;
  }

  .section-investor__btn:hover .section-investor__btn-arrow path {
    stroke: #ffffff;
  }
}

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

/* ============================================================== */
/* Mobile overrides — only properties that differ from desktop     */
/* Breakpoint: max-width 639.98px                                  */
/* ============================================================== */
@media screen and (max-width: 639.98px) {
  .section-investor__container {
    padding-top: 3rem;
    /* 48px / 16 */
    padding-bottom: 3rem;
    /* 48px / 16 */
    padding-left: 1rem;
    /* 16px / 16 */
    padding-right: 1rem;
    /* 16px / 16 */
  }

  .section-investor__heading {
    font-size: 1.5rem;
    /* 24px / 16 */
    letter-spacing: -0.03rem;
    /* -0.48px / 16 */
    margin-bottom: 1.75rem;
    /* 28px / 16 */
  }

  /* Stack body: left then right */
  .section-investor__body {
    flex-direction: column;
    width: 100%;
  }

  .section-investor__left {
    width: 100%;
  }

  /* Chart panel loses margin-left, gets margin-top */
  .section-investor__chart-panel {
    margin-left: 0;
    margin-top: 0.5rem;
    /* 8px / 16 */
    width: 100%;
  }

  /* card: smaller radius + padding */
  .section-investor__card {
    border-radius: 0.625rem;
    /* 10px / 16 */
  }

  .section-investor__card-inner {
    padding-top: 1.125rem;
    /* 18px / 16 */
    padding-bottom: 0;
    /* 18px / 16 */
    padding-left: 1.125rem;
    /* 18px / 16 */
    padding-right: 1.125rem;
    /* 18px / 16 */
  }

  .section-investor__card-title {
    font-size: 1rem;
    /* 16px / 16 */
    letter-spacing: -0.015rem;
    /* -0.24px / 16 */
    margin-bottom: 1rem;
    /* 16px / 16 */
  }

  .section-investor__chart-panel {
    padding: 0.75rem 0.45rem;
    flex: unset;
    min-height: 14.9375rem;
  }

  /* Checklist: keep 2 cols but tighter spacing */
  .section-investor__checklist {
    margin-bottom: 2rem;
    /* 32px / 16 — Figma M gap between checklist and reports */
  }

  .section-investor__checklist-col {
    flex: unset;
    flex-shrink: 0;
  }

  .section-investor__checklist-col+.section-investor__checklist-col {
    margin-left: 1.875rem;
  }

  .section-investor__check-item+.section-investor__check-item {
    margin-top: 0.75rem;
    /* 12px / 16 */
  }

  .section-investor__check-icon {
    width: 1.25rem;
    /* 20px / 16 */
    height: 1.25rem;
    /* 20px / 16 */
  }

  .section-investor__check-text {
    font-size: 0.75rem;
    /* 12px / 16 */
  }

  /* Stats bar: smaller radius + padding */
  .section-investor__stats {
    border-radius: 0.625rem;
    /* 10px / 16 */
    padding-top: 1rem;
    /* 16px / 16 */
    padding-bottom: 1rem;
    /* 16px / 16 */
    padding-left: 1rem;
    /* 16px / 16 */
    padding-right: 1rem;
    /* 16px / 16 */
    margin-top: 0.5rem;
    /* 8px / 16 */
  }

  .section-investor__stat+.section-investor__stat {
    margin-left: 1.25rem;
    /* 20px / 16 */
  }

  .section-investor__stat-label {
    font-size: 0.75rem;
    /* 12px / 16 */
  }

  .section-investor__stat-number {
    font-size: 1.875rem;
    /* 30px / 16 */
    font-weight: 500;
    letter-spacing: 0;
  }

  .section-investor__stat-unit {
    font-size: 0.75rem;
    /* 12px / 16 */
  }

  /* Chart embed: fill mobile panel edge-to-edge (trừ padding) */
  .section-investor__chart-embed {
    position: static;
    bottom: 0.75rem;
    left: 0.45rem;
    right: 0.45rem;
    border-radius: 0.625rem;
    /* 10px / 16 */
  }

  .section-investor__chart-embed iframe {
    width: 100% !important;
  }

  .section-investor__cta {
    margin-top: 1.875rem;
    width: 100%;
  }

  /* CTA button full-width on mobile */
  .section-investor__btn {
    width: 100%;
    padding-left: 1.5rem;
    /* 24px / 16 */
    padding-right: 1.5rem;
    /* 24px / 16 */
    padding-top: 0.75rem;
    /* 12px / 16 */
    padding-bottom: 0.75rem;
    /* 12px / 16 */
    justify-content: center;
  }

  .section-investor__btn,
  .section-investor__btn span {
    font-size: 0.875rem;
    /* 14px / 16 */
    line-height: 1.3;
    letter-spacing: -0.00875rem;
    /* -0.14px / 16 */
  }
}

/* ===== template-parts/homepage/section-capacity/assets/styles.css ===== */
/* ==========================================================================
   Section Capacity — Desktop base (1600px design / rem divisor 16)
   ========================================================================== */

/* ── Outer section ── */
.section-capacity {
  position: relative;
  width: 100%;
  background-color: #ffffff;
  overflow: hidden;
  /* Total visible height on desktop: heading (~100px) + gap + card (785px) + bottom padding */
  padding-bottom: 5.125rem;
}

/* Gray patterned background — fills from ~710px down within section */

/* ── Inner container ── */
.section-capacity__container {
  position: relative;
  z-index: 1;
  max-width: 100rem; /* 1600px — full-width wrapper */
  margin-inline: auto;
  /* flow-root → establish a BFC so the card's margin-top creates space
       INSIDE the container instead of collapsing through it (which dragged
       the container's top down and made the absolute heading overlap the card). */
  display: flow-root;
}

/* ── Section heading (top-left, above card) ── */
/* Figma: heading at left=100px, top=100px within the 1600px frame */
.section-capacity__heading {
  position: absolute;
  left: 6.25rem; /* 100px */
  top: 6.25rem; /* 100px from section top */
  font-family: "Lexend Deca", sans-serif;
  font-size: 2.5rem; /* 40px */
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem; /* -0.8px (tracking, not -2px) */
  color: #131313;
  text-transform: uppercase;
  white-space: nowrap;
  margin: 0;
  z-index: 2;
}

/* ── White card ── */
/* Figma: card top=214.56px from section top, centered, 1400×785px */
.section-capacity__card {
  position: relative;
  background-color: #ffffff;
  box-shadow: 0 0.25rem 0.625rem rgba(0, 0, 0, 0.12);
  width: 87.5rem; /* 1400px */
  height: 49.0625rem; /* 785px */
  margin-inline: auto;
  margin-top: 13.41rem; /* 214.56px from section top */
  margin-bottom: 0;
}

/* ── Left column (description + stats) ── */
/* Description width = 520px; stats row = 552px — use 552px for left column */
.section-capacity__left {
  position: absolute;
  left: 5rem; /* 80px */
  top: 3.43rem; /* 54.88px */
  width: 34.5rem; /* 552px — accommodates stats 2×240+72 */
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

/* ── Description paragraph ── */
.section-capacity__desc {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem; /* 16px */
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.02rem; /* -0.32px */
  color: #131313;
  text-align: justify;
  margin: 0;
  width: 32.5rem; /* 520px — Figma description width */
  max-width: 100%;
}

/* ── Stats grid 2×2 (inside .section-capacity__left) ── */
/* In Figma, stats start at top=215px within card and left=80px.
   Left col is at top=54.88px, so stats offset inside left col = 215-55 = 160px */
.section-capacity__stats {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: 3rem; /* 160.12px / 16 — gap from desc top to stats */
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 34.5rem; /* 2 × 240px + 72px gap = 552px */
}

.section-capacity__stat {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  width: 15rem; /* 240px */
  height: 10.5625rem; /* 169px */
  position: relative;
}

/* Column gap between stat items (2nd and 4th item get left margin) */
.section-capacity__stat:nth-child(2),
.section-capacity__stat:nth-child(4) {
  margin-left: 4.5rem; /* 72px */
}

/* Row gap (3rd + 4th items get top margin) */
.section-capacity__stat:nth-child(3),
.section-capacity__stat:nth-child(4) {
  margin-top: 2.75rem; /* 36px */
}

/* ── Stat icon ── */
.section-capacity__stat-icon {
  width: 3.5rem; /* 56px default (stats 1 & 2) */
  height: 3.5rem;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

/* Stat 3 (people icon): Figma 48×52.28px */
.section-capacity__stat:nth-child(3) .section-capacity__stat-icon {
  width: 3rem; /* 48px */
  height: 3.2673rem; /* 52.2773px */
}

/* Stat 4 (map-pin icon): Figma 52×52px */
.section-capacity__stat:nth-child(4) .section-capacity__stat-icon {
  width: 3.25rem; /* 52px */
  height: 3.25rem; /* 52px */
}

.section-capacity__stat-icon-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* ── Stat body (number + label) ── */
.section-capacity__stat-body {
  margin-top: 0.8125rem; /* 13px — gap between icon bottom and number */
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.section-capacity__stat-row {
  display: flex;
  align-items: flex-end;
  position: relative;
}

.section-capacity__stat-number {
  font-family: "Lexend Deca", sans-serif;
  font-size: 3.0625rem; /* 49px */
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.0919rem; /* -1.47px */
  color: #131313;
  text-transform: uppercase;
}

.section-capacity__stat-suffix {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1.5rem; /* 24px */
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: -0.015rem; /* -0.24px */
  color: #fa6900;
  margin-left: 0.125rem;
  align-self: flex-start;
  margin-top: -0.5rem;
}

.section-capacity__stat-unit {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.02rem;
  color: #131313;
  margin-left: -0.57rem;
  align-self: flex-end;
  padding-bottom: 0.625rem;
}

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

/* ── Right column (slider) ── */
.section-capacity__right {
  position: absolute;
  left: 41.75rem; /* 668px */
  top: 10.9375rem; /* 175.04px */
  width: 40.75rem; /* 652px */
  display: flex;
  flex-direction: column;
}

/* ── Swiper wrapper ── */
.section-capacity__swiper {
  width: 40.75rem; /* 652px */
  overflow: hidden;
}

.section-capacity__slide-img-wrap {
  width: 40.75rem; /* 652px */
  height: 28.625rem; /* 458px */
  overflow: hidden;
}

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

/* ── Pagination bar ── */
.section-capacity__pagination-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-top: 0.875rem; /* 14px */
}

.section-capacity__pagination-left {
  display: flex;
  align-items: center;
}

/* Progress bar: segmented bars (100px active + 3×40px inactive, gap 6px between) */
.section-capacity__progress-track {
  display: flex;
  align-items: center;
  height: 0.1875rem; /* 3px */
}

.section-capacity__progress-track .swiper-pagination-bullet {
  display: block;
  height: 0.1875rem; /* 3px */
  background-color: rgba(19, 19, 19, 0.4);
  flex-shrink: 0;
  border-radius: 0;
  width: 2.5rem;
  transition: all ease 0.3s;
  margin: 0 0.375rem 0 0 !important;
}
.section-capacity__progress-track .swiper-pagination-bullet:last-child {
  margin-right: 0 !important;
}

.section-capacity__progress-track
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 6.25rem; /* 100px — active segment */
  background-color: #fa6900;
}

.section-capacity__progress-track
  .section-capacity__progress-seg:not(:first-child) {
  width: 2.5rem; /* 40px — inactive segments */
  margin-left: 0.375rem; /* 6px gap */
}

/* JS updates: swap colors when active index changes */
.section-capacity__progress-fill {
  /* Legacy placeholder — not used with segmented approach */
  display: none;
}

.section-capacity__counter {
  font-family: "Lexend Deca", sans-serif;
  font-size: 0.875rem; /* 14px */
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.00875rem; /* -0.14px */
  color: #131313;
  margin-left: 0.75rem; /* 12px */
  white-space: nowrap;
}

.section-capacity__nav {
  display: flex;
  align-items: center;
}

.section-capacity__nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem; /* 44px */
  height: 2.75rem; /* 44px */
  background-color: #f2f3f5;
  border: none;
  cursor: pointer;
  position: relative;
  transition: background-color 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
  flex-shrink: 0;
}

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

/* Orange left accent on nav buttons */
.section-capacity__nav-btn::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 0; /* border-exception — 1px accent line */
  height: 100%;
  background-color: #fa6900;
}

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

.section-capacity__nav-btn.swiper-button-disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

@media (min-width: 1024px) {
  .section-capacity__nav-btn:hover {
    background-color: #fa6900;
  }
  .section-capacity__nav-btn:hover .section-capacity__nav-icon {
    filter: brightness(0) invert(1);
  }
}

.section-capacity__nav-icon {
  display: block;
  width: 1.375rem;
  height: auto;
  transition: filter 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

/* Both nav buttons use ic-arrow-left.svg (dark, points right); flip prev to point left */
.section-capacity__nav-btn--prev .section-capacity__nav-icon {
  transform: scaleX(-1);
}

/* ── CTA Button (top-right of card on desktop) ── */
/* Figma: left=1056px from card left, card=1400px. Button right-anchored. */
.section-capacity__btn {
  position: absolute;
  left: 66rem; /* 1056px from card left = 1056/16 = 66rem */
  top: 3.4375rem; /* 55px */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 4rem; /* 16px 64px */
  border: 1px solid #fa6900;
  background-color: transparent;
  text-decoration: none;
  transition: background-color 400ms cubic-bezier(0.47, 0, 0.01, 1.01),
    color 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

.section-capacity__btn-text {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem; /* 16px */
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -0.01rem; /* -0.16px */
  color: #fa6900;
  text-transform: uppercase;
  white-space: nowrap;
  transition: color 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

.section-capacity__btn-icon {
  display: block;
  width: 1rem; /* 16px */
  height: 1rem; /* 16px */
  margin-left: 0.5rem;
  flex-shrink: 0;
  filter: brightness(0) saturate(100%) invert(55%) sepia(63%) saturate(4232%)
    hue-rotate(358deg) brightness(96%) contrast(104%);
  transition: filter 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

@media (min-width: 1024px) {
  .section-capacity__btn:hover {
    background-color: #fa6900;
  }
  .section-capacity__btn:hover .section-capacity__btn-text {
    color: #ffffff;
  }
  .section-capacity__btn:hover .section-capacity__btn-icon {
    filter: brightness(0) invert(1);
  }
}

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

/* ── VINATECH watermark (desktop only) ── */
/* Figma: -translate-y-1/2 top=677.04px — the element is centered at that point */
.section-capacity__watermark {
  position: absolute;
  left: 4.4375rem; /* 71px */
  top: 42.315rem; /* 677.04px */
  transform: translateY(-50%);
  font-family: "Lexend Deca", sans-serif;
  font-size: 6.25rem; /* 100px */
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.0625rem; /* -1px */
  color: #0e265e;
  opacity: 0.025;
  text-align: justify;
  white-space: nowrap;
  pointer-events: none;
  user-select: none;
  margin: 0;
}

/* ==============================================================
   Mobile overrides — only properties that differ from desktop
   ============================================================== */
@media screen and (max-width: 639.98px) {
  .section-capacity {
    padding-top: 0;
    background-color: #ffffff;
    padding-bottom: 0;
  }

  .section-capacity__container {
    padding: 2.5rem 0; /* 40px 16px */
    max-width: 100%;
  }
  .section-capacity__stat-icon-img {
    width: 3.35631rem;
    height: 3.35631rem;
  }
  /* Heading becomes block flow (not absolute) on mobile */
  .section-capacity__heading {
    position: static;
    font-size: 1.5rem; /* 24px */
    letter-spacing: -0.03rem; /* -0.48px */
    margin-bottom: 0.625rem;
    padding: 0 1rem;
  }
  .section-capacity__counter {
    margin-left: 0;
  }

  /* Card becomes flat (no shadow/fixed height) on mobile */
  .section-capacity__card {
    position: static;
    width: 100%;
    height: auto;
    box-shadow: none;
    margin: 0;
    display: flex;
    flex-direction: column;
  }

  /* Left column (desc + stats) — first in mobile stack */
  .section-capacity__left {
    position: static;
    width: 100%;
    order: 1;
    max-width: none;
    padding: 0 1rem;
  }

  /* Description */
  .section-capacity__desc {
    font-size: 0.875rem; /* 14px */
    letter-spacing: 0;
    margin-bottom: 0;
    width: 100%;
    max-width: none;
  }

  /* Stats grid — inside .section-capacity__left, no order needed */
  .section-capacity__stats {
    position: static;
    width: 100%;
    flex-wrap: wrap;
    height: 16.88rem;
    margin-top: 1.25rem; /* 24px */
    justify-content: space-between;
  }

  .section-capacity__stat {
    width: 50%;
    height: 7.69rem;
  }

  /* Remove desktop left margins — space-between handles column spacing */
  .section-capacity__stat:nth-child(2),
  .section-capacity__stat:nth-child(4) {
    margin-left: 0;
  }

  /* Override nth-child top margins for mobile */
  .section-capacity__stat:nth-child(3),
  .section-capacity__stat:nth-child(4) {
    margin-top: 1.5rem;
  }

  /* Icon sizes on mobile */
  .section-capacity__stat-icon {
    width: 4rem !important; /* 64px */
    height: 4rem !important; /* 64px */
    padding: 0.3rem;
  }

  .section-capacity__stat-body {
    margin-top: 0.3rem;
  }

  .section-capacity__stat-number {
    font-size: 1.5rem; /* 24px */
    letter-spacing: -0.03rem; /* -0.48px */
  }

  .section-capacity__stat-suffix {
    font-size: 0.875rem; /* 14px */
    letter-spacing: -0.00875rem;
    margin-top: -0.625rem;
    margin-left: 0.4rem;
  }

  .section-capacity__stat-unit {
    margin-left: -0.5rem;
    margin-bottom: 0.4rem;
    font-size: 0.75rem; /* 12px */
    letter-spacing: -0.01125rem; /* -0.18px */
    padding-bottom: 0.125rem;
  }

  .section-capacity__stat-label {
    font-size: 0.75rem; /* 12px */
    letter-spacing: -0.01125rem; /* -0.18px */
  }
  .section-capacity__progress-track {
    display: none;
  }
  .section-capacity__pagination-bar {
    margin-top: 0.7rem;
    padding: 0 1rem;
  }
  .section-capacity__nav-btn {
    width: 2.55rem;
    height: 2.55rem;
  }
  /* Right column (slider) — second in mobile stack */
  .section-capacity__right {
    position: static;
    width: 100%;
    left: auto;
    top: auto;
    order: 2;
    margin-top: 1.75rem;
  }

  .section-capacity__swiper {
    width: 100%;
    padding: 0 1rem;
  }

  .section-capacity__slide-img-wrap {
    width: 100%;
    height: 0;
    padding-top: 70.245%; /* 241/343 ≈ 70.24% — mobile image ratio */
    position: relative;
  }

  .section-capacity__slide-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  /* CTA button: last in mobile stack (below slider) */
  .section-capacity__btn {
    position: static;
    order: 3;
    width: calc(100% - 2rem);
    margin: 0 1rem;
    margin-top: 1.75rem; /* 28px */
    padding: 0.75rem 1.5rem; /* 12px 24px */
    justify-content: center;
    left: auto;
    top: auto;
  }

  .section-capacity__btn-text {
    font-size: 0.875rem; /* 14px */
    line-height: 1.3;
    letter-spacing: -0.00875rem;
  }

  /* Hide watermark on mobile */
  .section-capacity__watermark {
    display: none;
  }

  /* Progress segments — tighter on mobile: active 60px, inactive 24px */
  .section-capacity__progress-track
    .section-capacity__progress-seg:first-child {
    width: 3.75rem; /* 60px */
  }
  .section-capacity__progress-track
    .section-capacity__progress-seg:not(:first-child) {
    width: 1.5rem; /* 24px */
    margin-left: 0.25rem; /* 4px */
  }
}


/* ===== template-parts/homepage/section-projects/assets/styles.css ===== */
/* =============================================================
   Section: Projects (Dự án trọng điểm)
   Desktop base — all values from Figma 2348:24620 @ 1600px
   Mobile overrides at bottom — @media (max-width: 639.98px)
   ============================================================= */

/* ── Section wrapper ──────────────────────────────────────────── */
.section-projects {
  width: 100%;
  /* 80px / 16 */
  padding-bottom: 3.64rem;
}

.bg-project {
  position: absolute;
  top: -23.13rem;
  left: 0;
  width: 100%;
  height: 73.6875rem;
}

/* ── Inner container ─────────────────────────────────────────── */
.section-projects__container {
  position: relative;
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 6.25rem;
  padding-right: 6.25rem;
  z-index: 2;
}

/* ── Header row: heading + tabs ──────────────────────────────── */
.section-projects__header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  margin-bottom: 2.5rem;
  /* 40px / 16 */
  height: 4.5rem;
}

/* ── Section heading ─────────────────────────────────────────── */
.section-projects__heading {
  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 (tracking, not -2px) */
  color: #131313;
  text-transform: uppercase;
  margin: 0;
}

/* ── Tab list ────────────────────────────────────────────────── */
.section-projects__tabs {
  display: flex;
  align-items: center;
  padding-bottom: 0.875rem;
}

/* ── Tab button ──────────────────────────────────────────────── */
.section-projects__tab {
  height: 3.625rem;
  justify-content: center;
  align-items: center;
  width: 15.625rem;
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem;
  /* 16px / 16 */
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.02rem;
  color: rgba(19, 19, 19, 0.8);
  background: none;
  cursor: pointer;
  transition: all ease 0.3s;
  white-space: nowrap;
  position: relative;
}

.section-projects__tab::before {
  content: "";
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  bottom: 0;
  background: rgba(19, 19, 19, 0.8);
  opacity: 0.7;
  transition: all ease 0.3s;
}

.section-projects__tab.is-active {
  font-weight: 500;
  color: #131313;
  letter-spacing: 0;
}

.section-projects__tab.is-active::before {
  height: 4px;
  background: #131313;
  opacity: 1;
}

/* ── Tab panel ───────────────────────────────────────────────── */
.section-projects__panel {
  display: block;
}

/* ── Swiper container ────────────────────────────────────────── */
.section-projects__swiper {
  width: 100%;
  overflow: hidden;
}

/* ── Slide — CSS fallback width for hidden-tab case ─────────── */
.section-projects__swiper .swiper-slide {
  width: calc((100% - 1.5rem) / 3);
  /* 3 slides, 2 × 12px spacing */
  flex-shrink: 0;
  height: auto;
}

/* ── Project card ────────────────────────────────────────────── */
.section-projects__card {
  position: relative;
  background-color: #ffffff;
  border: 1px solid #e7e7e7;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: border-color 300ms ease;
  color: inherit;
  text-decoration: none;
  height: 100%;
}

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

/* ── Hover: orange corner triangle (top-right) ───────────────── */
@media (min-width: 1024px) {
  .section-projects__card::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    transform: translate(2rem, -2rem);
    border-style: solid;
    border-width: 0 3rem 3rem 0;
    /* 48px / 16 */
    border-color: transparent #fa6900 transparent transparent;
    transition: transform 300ms ease;
    z-index: 2;
  }

  .section-projects__card:hover::after {
    transform: translate(0, 0);
  }

  .section-projects__card:hover .section-projects__img {
    transform: scale(1.2);
  }

  .section-projects__card:hover .section-projects__link {
    color: #fa6900;
  }
}

/* ── Card inner (text content) ───────────────────────────────── */
.section-projects__card-inner {
  padding: 1rem 1.25rem 0 1.25rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}

/* ── Project number (orange, large) ─────────────────────────── */
.section-projects__number {
  color: var(--Title-Orange, #fa6900);

  /* PC/Heading/H1 */
  font-family: "Lexend Deca";
  font-size: 3.0625rem;
  font-style: normal;
  font-weight: 600;
  line-height: 130%;
  /* 3.98125rem */
  letter-spacing: -0.09188rem;
  text-transform: uppercase;
  margin-bottom: 0.875rem;
  /* 14px / 16 */
}

/* ── Divider line ─────────────────────────────────────────────── */
.section-projects__divider {
  width: 100%;
  height: 1px;
  background-color: #e7e7e7;
  margin-bottom: 0.875rem;
  margin-top: auto;
}

/* ── Card title ──────────────────────────────────────────────── */
.section-projects__card-title {
  color: var(--Body-Black-100, #131313);
  font-family: "Lexend Deca";
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 600;
  line-height: 130%;
  letter-spacing: -0.01875rem;
  text-transform: uppercase;
  margin: 0 0 0.75rem;
}

/* ── Details grid ────────────────────────────────────────────── */
.section-projects__details {
  margin: 0 0 0.875rem;
  padding: 0;
  column-gap: 1.5rem;
  row-gap: 0.75rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.section-projects__detail-row {
  display: flex;
  align-items: flex-start;
  /* padding-top: 0.625rem; 
  padding-bottom: 0.625rem; */
}

.section-projects__detail-row:first-child {
  border-top: 1px solid #e7e7e7;
}

.section-projects__detail-item {
  flex: 1;
  display: flex;
  /* align-items: center; */

  min-width: 0;
}

.section-projects__detail-label {
  margin-right: 0.375rem;
  color: var(--Body-Black-100, #131313);

  /* PC/Body/16/16-R-150 */
  font-family: "Lexend Deca";
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 1.5rem */
  letter-spacing: -0.02rem;
  display: block;
  white-space: nowrap;
}

.section-projects__detail-value {
  color: var(--Body-Black-60, rgba(19, 19, 19, 0.6));

  /* PC/Body/16/16-R-150 */
  font-family: "Lexend Deca";
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 1.5rem */
  letter-spacing: -0.02rem;
  display: block;
  margin: 0;
  min-width: 0;

  /* white-space: nowrap; */
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ── "Chi tiết dự án →" link ─────────────────────────────────── */
.section-projects__link {
  color: var(--Body-Black-100, #131313);

  /* PC/Body/16/16-R-150 */
  font-family: "Lexend Deca";
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  /* 1.5rem */
  letter-spacing: -0.02rem;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  transition: color 300ms ease;
  margin-bottom: 1.1rem;
}

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

/* ── Card image wrapper ──────────────────────────────────────── */
.section-projects__img-wrap {
  width: 100%;
  height: 16.3rem;
  /* padding-top: 63.6364%; */
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
  margin-top: auto;
}

.section-projects__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: all ease 0.3s;
}

/* ── Pagination row ──────────────────────────────────────────── */
.section-projects__pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 1.875rem;
  /* 30px / 16 */
  width: 100%;
}

.section-projects__pagination-left {
  display: flex;
  align-items: center;
}

/* Progress bar: orange active bar + grey dots (matches categories) */
.section-projects__progress-bar {
  display: flex;
  align-items: center;
  margin-right: 0.75rem;
  display: none;
  /* 12px / 16 */
}

.section-projects__progress-active,
.section-projects__progress-bar
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 6.25rem;
  /* 100px / 16 */
  height: 0.1875rem;
  /* 3px / 16 */
  background-color: #fa6900;
  flex-shrink: 0;
  margin-right: 0.375rem;
  /* 6px / 16 */
}

.section-projects__progress-dot,
.section-projects__progress-bar .swiper-pagination-bullet {
  width: 2.5rem;
  /* 40px / 16 */
  height: 0.1875rem;
  /* 3px / 16 */
  background-color: rgba(19, 19, 19, 0.4);
  flex-shrink: 0;
  margin-right: 0.375rem;
  /* 6px / 16 */
  border-radius: 0;
  transition: all ease 0.3s;
}

.section-projects__progress-dot:last-child {
  margin-right: 0;
}

.section-projects__progress-dot.is-passed {
  background-color: rgba(250, 105, 0, 0.3);
}

/* ── Counter ─────────────────────────────────────────────────── */
.section-projects__counter {
  font-family: "Lexend Deca", sans-serif;
  font-size: 0.875rem;
  /* 14px / 16 */
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.00875rem;
  /* -0.14px */
  color: #131313;
  white-space: nowrap;
}

/* ── Nav buttons ─────────────────────────────────────────────── */
.section-projects__nav {
  display: flex;
  align-items: center;
  width: 6rem;
  /* 96px / 16 */
  justify-content: space-between;
}

.section-projects__nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  /* 44px / 16 */
  height: 2.75rem;
  background-color: #fff;
  border: none;
  cursor: pointer;
  padding: 0;
  flex-shrink: 0;
  transition: background-color 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

.section-projects__nav-btn img {
  width: 1.375rem;
  /* 22px / 16 */
  height: 1.375rem;
  display: block;
}

.projects-panel__wrapper {
  width: 100%;
  height: 40rem;
  position: relative;
}

.section-projects__panel {
  position: absolute;
  width: 100%;
  opacity: 0;
  transition: all ease 0.5s;
  /* transform: translateY(2rem); */
}

.section-projects__panel.is-active {
  opacity: 1;
  transform: translateY(0);
  z-index: 10;
}

/* Both buttons share the right-pointing dark arrow; flip prev to point left */
.section-projects__nav-btn--prev img {
  transform: scaleX(-1);
}

@media (min-width: 1024px) {
  .section-projects__nav-btn:hover {
    background-color: #fa6900;
  }

  .section-projects__nav-btn:hover img {
    filter: brightness(0) invert(1);
  }
}

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

.section-projects__nav-btn.swiper-button-disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

/* =============================================================
   Mobile overrides — only deltas from desktop
   @media screen and (max-width: 639.98px)
   ============================================================= */
@media screen and (max-width: 639.98px) {
  .section-projects__swiper {
    padding: 0 1rem;
  }

  .section-projects {
    overflow: hidden;
    padding-top: 2.5rem;
    /* 48px / 16 */
    padding-bottom: 2.5rem;
  }

  .bg-project {
    top: -2.5rem;
    left: -17rem;
    width: 52rem;
    height: 92.41306rem;
  }

  .projects-panel__wrapper {
    height: 31.31rem;
  }

  .section-projects__container {
    padding-left: 0;
    /* 16px / 16 */
    padding-right: 0;
    max-width: 100%;
  }

  .section-projects__nav {
    width: 5.37rem;
  }

  /* Stack header vertically */
  .section-projects__header {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 1.5rem;
    height: auto;
    padding: 0 1rem;
  }

  .section-projects__heading {
    font-size: 1.5rem;
    /* 24px / 16 */
    letter-spacing: -0.03rem;
    /* -0.48px */
    margin-bottom: 0.75rem;
    width: 100%;
    text-align: center;
  }

  /* Tabs wrap & shrink */
  .section-projects__tabs {
    width: 100%;
    padding-bottom: 0.5rem;
    overflow-x: auto;
  }

  .section-projects__tab {
    white-space: nowrap;
    height: 2.625rem;
    flex-shrink: 0;
    width: 10.72rem;
    font-size: 0.75rem;
    font-style: normal;
    font-weight: 500;
    line-height: 120%;
    /* 0.9rem */
    letter-spacing: -0.0075rem;
  }

  /* 1 slide per view on mobile */
  .section-projects__swiper .swiper-slide {
    width: 100%;
  }

  .section-projects__details {
    grid-template-columns: repeat(2, fit-content(100%));
    justify-content: space-between;
  }

  /* Card adjustments */
  .section-projects__card-inner {
    padding: 0.75rem;
    /* 20px / 16 */
    padding-bottom: 0.2rem;
  }

  .section-projects__link {
    font-size: 0.75rem;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    /* 1.125rem */
    letter-spacing: -0.01125rem;
    margin-bottom: 0.875rem;
  }

  .section-projects__img-wrap {
    height: 12.2rem;
  }

  .section-projects__detail-label {
    font-size: 0.75rem;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    /* 1.125rem */
    letter-spacing: -0.01125rem;
  }

  .section-projects__detail-value {
    font-size: 0.75rem;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    /* 1.125rem */
    letter-spacing: -0.01125rem;
  }

  .section-projects__number {
    font-size: 2rem;
    font-style: normal;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: -0.04rem;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
  }

  .section-projects__card-title {
    font-size: 1rem;
    font-style: normal;
    font-weight: 600;
    line-height: 134%;
    text-transform: uppercase;
    letter-spacing: 0;
  }

  .section-projects__divider {
    margin-bottom: 0.96rem;
  }

  /* Pagination — hide progress bar, keep counter + arrows (matches categories) */
  .section-projects__pagination {
    margin-top: 1.25rem;
    padding: 0 1rem;
  }

  .section-projects__progress-bar {
    display: none;
  }

  .section-projects__pagination-left {
    margin-right: 0;
  }

  .section-projects__counter {
    letter-spacing: 0;
    line-height: 1.5;
  }

  .section-projects__nav-btn {
    width: 2.5rem;
    /* 40px / 16 */
    height: 2.5rem;
  }
}


/* ===== template-parts/compound/section-news/assets/styles.css ===== */
/* =============================================================
   section-news — Desktop base
   Figma: node 2348:24622 (1600×930)
   rem divisor = 16 (fluid 1vw system)
   ============================================================= */

.section-news {
  background-color: #ffffff;
  padding-top: 6.25rem; /* 100px */
  padding-bottom: 6.25rem; /* 100px */
  padding-left: 6.25rem; /* 100px — page-level 100px padding */
  padding-right: 6.25rem; /* 100px */
}

.section-news__container {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.section-news__heading--wrapper {
  display: flex;
  justify-content: center;
  align-items: end;
  width: 100%;
  margin-bottom: 2.5rem;
}
.section-news__subtitle {
  flex: 1;
  text-align: right;
  color: var(--Body-Black-100, #131313);

  /* PC/Body/16/16-R-150 */
  font-family: "Lexend Deca";
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 150%; /* 1.5rem */
  letter-spacing: -0.02rem;
}
/* Heading */
.section-news__heading {
  font-family: "Lexend Deca", sans-serif;
  font-size: 2.5rem; /* 40px */
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem; /* -0.8px (tracking, not -2px) */
  text-transform: uppercase;
  color: #131313;
  text-align: center;
  /* 40px gap between heading and grid */
  flex-shrink: 0;
  /* width: 100%; */
}

/* ---- Main grid ---- */
.section-news__grid {
  display: flex;
  align-items: flex-start;
  width: 100%;
}

/* Left column */
.section-news__left {
  flex: 1 0 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-self: stretch;
}

/* ---- Pages (desktop pagination: prev/next swaps a page of 4 posts) ---- */
.section-news__pages {
  position: relative;
  width: 100%;
}

/* .section-news__page[hidden] {
  display: none;
} */
.section-news__page {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: all ease 0.5s;
}
.section-news__page.is-active {
  opacity: 1;
  z-index: 3;
}
.section-news__cards {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  width: 100%;
}

.section-news__cards > * + * {
  margin-top: 1.25rem; /* 20px gap between large card and small row */
}

/* ---- Large card ---- */
.section-news__card-large {
  display: flex;
  height: 16.625rem;
  align-items: center;
  background-color: #f8f8f8;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  color: inherit;
  flex-shrink: 0;
  transition: all 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

/* Orange corner triangle — hidden by default */
.section-news__card-large::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 3.1875rem 3.1875rem 0;
  border-color: transparent #fa6900 transparent transparent;
  transform: translate(2rem, -2rem);
  transition: transform 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
  z-index: 2;
  pointer-events: none;
}

.section-news__card-large-img {
  flex-shrink: 0;
  width: 28.3125rem; /* 453px */
  height: 16.625rem; /* 266px */
  overflow: hidden;
  position: relative;
}

.section-news__card-large-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: all ease 0.3s;
}

.section-news__card-large-body {
  flex: 1 0 0;
  min-width: 0;
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;

  padding-right: 1.5rem; /* 24px */
  padding-top: 3rem; /* 24px */
  padding-bottom: 1.4rem;
  padding-left: 1.5rem; /* 24px — spacing from image (replaces forbidden gap) */
}

.section-news__card-large-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  color: #131313;
}

.section-news__card-large-title {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1.25rem; /* 20px */
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.01875rem; /* -0.2px (tracking, not -1.5px) */
  text-transform: uppercase;
  color: #131313;
  margin-bottom: 0.75rem; /* 12px gap between title and excerpt */
  flex-shrink: 0;
}

.section-news__card-large-excerpt {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem; /* 16px */
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: -0.02rem; /* -0.16px (tracking, not -2px) */
  color: #131313;
  text-align: justify;
  width: 100%;
  margin: 0;
}

/* ---- Small cards row ---- */
.section-news__small-row {
  display: flex;
  align-items: flex-start;
  width: 100%;
  flex-shrink: 0;
}

.section-news__card-small + .section-news__card-small {
  margin-left: 1.25rem; /* 20px gap between small cards */
}

/* ---- Small card ---- */
.section-news__card-small {
  flex: 1 0 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: all 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

/* Orange corner triangle */
.section-news__card-small::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0px 2.6875rem 2.6875rem 0;
  border-color: transparent #fa6900 transparent transparent;
  transform: translate(2rem, -2rem);
  transition: transform 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
  z-index: 2;
  pointer-events: none;
}

.section-news__card-small-img {
  width: 100%;
  height: 9.5732rem; /* 153.171px */
  overflow: hidden;
  position: relative;
  flex-shrink: 0;
}

.section-news__card-small-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: all ease 0.3s;
}

.section-news__card-small-body {
  background-color: #f8f8f8;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding-top: 0.75rem; /* 12px */
  padding-bottom: 0.875rem; /* 14px */
  padding-left: 0.75rem; /* 12px */
  padding-right: 0.75rem; /* 12px */
  width: 100%;
  box-sizing: border-box;
  flex-shrink: 0;
}

.section-news__card-small-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  margin-bottom: 1rem; /* 16px gap between meta and link */
}

.section-news__card-small-meta > * + * {
  margin-top: 0.5rem; /* 8px gap date → title */
}

.section-news__card-date {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.section-news__card-date-icon {
  width: 1.25rem; /* 20px */
  height: 1.25rem;
  flex-shrink: 0;
}

.section-news__card-date-text {
  font-family: "Lexend Deca", sans-serif;
  font-size: 0.875rem; /* 14px */
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: -0.00875rem; /* -0.14px (tracking, not -1.5px) */
  color: #131313;
  margin-left: 0.25rem; /* 4px */
  white-space: nowrap;
}

.section-news__card-small-title {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem; /* 16px */
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.01rem; /* -0.16px → Figma tracking-[-0.16px]: -0.16/16 = -0.01rem */
  color: #131313;
  margin: 0;
  margin-top: 0.5rem;
  width: 100%;
}

/* ---- Shared card link ---- */
.section-news__card-link {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  text-decoration: none;
  color: #131313;
}

.section-news__card-link-text {
  font-family: "Lexend Deca", sans-serif;
  font-size: 1rem; /* 16px */
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.02rem; /* -0.32px → Figma tracking-[-0.32px]: -0.32/16 = -0.02rem */
  color: #131313;
  white-space: nowrap;
  transition: all ease 0.3s;
}

.section-news__card-link-icon {
  width: 1rem; /* 16px */
  height: 1rem;
  flex-shrink: 0;
  margin-left: 0.25rem; /* 4px — small card gap; large card uses 0.5rem below */
  transition: filter 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

/* Large card link has 8px gap */
.section-news__card-large .section-news__card-link-icon {
  margin-left: 0.5rem; /* 8px */
}

/* ---- Hover states ---- */
@media (min-width: 1024px) {
  .section-news__card-large:hover::before,
  .section-news__card-small:hover::before {
    transform: translate(0, 0);
  }
  .section-news__card-large:hover .section-news__card-large-photo,
  .section-news__card-small:hover .section-news__card-small-photo {
    transform: scale(1.2);
  }

  .section-news__card-large:hover .section-news__card-link-text,
  .section-news__card-small:hover .section-news__card-link-text {
    color: #fa6900;
  }

  .section-news__card-large:hover .section-news__card-link-icon,
  .section-news__card-small:hover .section-news__card-link-icon {
    filter: brightness(0) saturate(100%) invert(55%) sepia(63%) saturate(4232%)
      hue-rotate(358deg) brightness(96%) contrast(104%);
  }

  .section-news__arrow:hover {
    background-color: #fa6900;
  }

  .section-news__arrow:hover img {
    filter: brightness(0) invert(1);
  }
}

.section-news__card-large:focus-visible,
.section-news__card-small:focus-visible,
.section-news__btn-all:focus-visible,
.section-news__arrow:focus-visible {
  outline: 2px solid #fa6900;
  outline-offset: 2px;
}

/* ---- Bottom row ---- */
.section-news__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
  width: 100%;
  margin-top: auto; /* push to bottom of flex column in .section-news__left */
}

/* "Xem tất cả" button */
.section-news__btn-all {
  display: inline-flex;
  align-items: center;
  border: 1px solid #fa6900;
  padding-top: 0.75rem; /* 12px */
  padding-bottom: 0.75rem;
  padding-left: 1.5rem; /* 24px */
  padding-right: 1.5rem;
  text-decoration: none;
  color: #fa6900;
  transition: background-color 400ms cubic-bezier(0.47, 0, 0.01, 1.01),
    color 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
  flex-shrink: 0;
}

@media (min-width: 1024px) {
  .section-news__btn-all:hover {
    background-color: #fa6900;
    color: #ffffff;
  }
  .section-news__btn-all:hover .section-news__btn-all-icon {
    filter: brightness(0) invert(1);
  }
}

.section-news__btn-all-text {
  font-family: "Lexend Deca", sans-serif;
  font-size: 0.875rem; /* 14px */
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.00875rem; /* -0.14px (tracking, not -1px) */
  text-transform: uppercase;
  white-space: nowrap;
}

.section-news__btn-all-icon {
  width: 1rem; /* 16px */
  height: 1rem;
  margin-left: 0.5rem; /* 8px */
  flex-shrink: 0;
  /* ic-arrow-right.svg is white; recolor to orange to match the outline button's text/border */
  filter: brightness(0) saturate(100%) invert(55%) sepia(63%) saturate(4232%)
    hue-rotate(358deg) brightness(96%) contrast(104%);
  transition: filter 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

/* ---- Pagination ---- */
.section-news__pagination {
  display: flex;
  align-items: center;
  justify-content: end;
  width: 26.75rem; /* 428px */
  flex-shrink: 0;
}

.section-news__pagination-left {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  margin-right: 2rem;
}

.section-news__progress-bars {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.section-news__bar {
  height: 0.1875rem; /* 3px */
  background-color: rgba(19, 19, 19, 0.4);
  flex-shrink: 0;
  width: 2.5rem; /* 40px */
  transition: all ease 0.3s;
}

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

.section-news__bar--active {
  background-color: #fa6900;
  width: 6.25rem; /* 100px */
}

.section-news__counter {
  font-family: "Lexend Deca", sans-serif;
  font-size: 0.875rem; /* 14px */
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.00875rem; /* -0.14px (tracking, not -1px) */
  color: #131313;
  white-space: nowrap;
  margin-left: 0.75rem; /* 12px gap from progress bars */
}

.section-news__arrows {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 6rem; /* 96px */
  flex-shrink: 0;
}

.section-news__arrow {
  width: 2.75rem; /* 44px */
  height: 2.75rem;
  background-color: #f2f3f5;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  flex-shrink: 0;
  transition: background-color 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}
.section-news__arrow.swiper-button-disabled {
  opacity: 0.5;
}

.section-news__arrow img {
  width: 1.375rem; /* 22px */
  height: 1.375rem;
  display: block;
  transition: filter 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

/* Prev arrow: mirror the right arrow */
.section-news__arrow--prev img {
  transform: scaleX(-1);
}

/* ---- Right sidebar ---- */
.section-news__sidebar {
  width: 23.9375rem; /* 383px */
  height: 39.875rem; /* 638px */
  flex-shrink: 0;
  overflow: hidden;
  position: relative;
  margin-left: 1.5rem; /* 24px gap */
}

.section-news__sidebar-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ---- Mobile slider: hidden on desktop ---- */
.section-news__mobile-slider {
  display: none;
}

/* Mobile counter in bottom nav */
.section-news__counter--mobile {
  margin-left: 0;
}

/* Disabled arrow state — toggled via JS classList (no inline styles) */
.section-news__arrow.is-disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

/* ==============================================================
   Mobile overrides — only properties that differ from desktop
   ============================================================== */
@media screen and (max-width: 639.98px) {
  .section-news__subtitle {
    display: none;
  }
  .section-news {
    padding-top: 2.5rem; /* 40px */
    padding-bottom: 3rem; /* 48px */
    padding-left: 0; /* 16px */
    padding-right: 0; /* 16px */
  }

  .section-news__heading {
    font-size: 1.5rem; /* 24px */
    letter-spacing: -0.03rem; /* -0.48px */
  }
  .section-news__heading--wrapper {
    margin-bottom: 1.5rem; /* 24px */
  }
  /* Hide desktop grid on mobile */
  .section-news__grid {
    display: none;
  }

  /* Show mobile slider on mobile */
  .section-news__mobile-slider {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    flex-shrink: 0;
  }

  .section-news__swiper {
    width: 100%;
    overflow: hidden;
    padding: 0 1rem;
  }

  /* Mobile card fills slider */
  .section-news__card-small--mobile {
    width: 100%;
  }

  .section-news__card-small--mobile .section-news__card-small-img {
    height: 9.5732rem; /* 153.171px — same as desktop small card */
  }

  /* Mobile card body: gap 14px */
  .section-news__card-small--mobile .section-news__card-small-body {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }

  .section-news__card-small--mobile .section-news__card-small-meta > * + * {
    margin-top: 0.5rem;
  }

  .section-news__card-small--mobile .section-news__card-small-meta {
    margin-bottom: 0.875rem; /* 14px */
  }

  /* Mobile date icon: 16px */
  .section-news__card-small--mobile .section-news__card-date-icon {
    width: 1rem;
    height: 1rem;
  }

  /* Mobile date text: 12px / 300 */
  .section-news__card-small--mobile .section-news__card-date-text {
    font-size: 0.75rem; /* 12px */
    letter-spacing: -0.01125rem; /* -0.18px */
  }

  /* Mobile card title: 14px / 600 */
  .section-news__card-small--mobile .section-news__card-small-title {
    font-size: 0.875rem; /* 14px */
    letter-spacing: -0.00875rem; /* -0.14px */
  }

  /* Mobile card link: 14px / 500 / lh 1.5 */
  .section-news__card-small--mobile .section-news__card-link-text {
    font-size: 0.875rem; /* 14px */
    line-height: 1.5;
    letter-spacing: 0;
  }

  .section-news__card-small--mobile .section-news__card-link-icon {
    width: 0.875rem; /* 14px */
    height: 0.875rem;
  }

  /* Mobile counter: Figma MB/14/14-M-150 uses line-height 1.5 vs desktop 1.2 */
  .section-news__counter {
    line-height: 1.5;
  }

  /* Mobile bottom nav */
  .section-news__mobile-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-top: 1rem; /* 16px gap after slider */
    flex-shrink: 0;
    padding: 0 1rem;
  }

  /* Mobile arrows */
  .section-news__arrows--mobile {
    display: flex;
    align-items: center;
    width: auto;
  }

  .section-news__arrows--mobile .section-news__arrow + .section-news__arrow {
    margin-left: 0.375rem; /* 6px */
  }

  /* Mobile arrow buttons: 40×40px with 1px left orange border */
  .section-news__arrows--mobile .section-news__arrow {
    width: 2.5rem; /* 40px */
    height: 2.5rem;
    background-color: #f2f3f5;
    position: relative;
  }
  .section-news__arrow--prev-m img {
    transform: scaleX(-1);
  }
  .section-news__arrows--mobile .section-news__arrow img {
    width: 1.25rem; /* 20px */
    height: 1.25rem;
  }

  /* Mobile "Xem tất cả" button: full width, margin-top 32px */
  .section-news__btn-all--mobile {
    display: flex;
    width: calc(100% - 2rem);
    justify-content: center;

    margin: 0 1rem;
    margin-top: 2rem;
    box-sizing: border-box;
  }
}


/* ===== template-parts/compound/section-products/assets/styles.css ===== */
/* =============================================================
   Section: Categories (Lĩnh Vực Hoạt Động)
   Desktop base: 1600px layout
   ============================================================= */

/* ── Section wrapper ───────────────────────────────────────── */
.section-categories {
  position: relative;
  width: 100%;
  overflow: hidden;
  background-color: #ffffff;
  padding-top: 6.25rem; /* 100px */
  padding-bottom: 6.25rem; /* 100px */
}

/* ── Patterned glass texture background (URL injected via PHP inline style) */
.section-categories__bg-texture {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  pointer-events: none;
  z-index: 0;
}

/* ── Inner container ───────────────────────────────────────── */
/* max-width 1600px + padding 100px mỗi bên → content box = 1400px
   (đúng vùng nội dung Figma). 4 card × 335 + 3 gap × 20 = 1400px. */
.section-categories__container {
  position: relative;
  z-index: 1;
  max-width: 100rem; /* 1600px */
  margin-inline: auto;
  padding-inline: 6.25rem; /* 100px mỗi bên → content 1400px, card 335px */
}

/* ── Heading ───────────────────────────────────────────────── */
.section-categories__heading {
  font-family: "Lexend Deca", sans-serif;
  font-size: 2.5rem; /* 40px */
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.05rem; /* -0.8px */
  text-transform: uppercase;
  color: #131313;
  text-align: center;
  margin: 0 0 3rem 0; /* 48px gap to slider */
}

/* ── Slider wrapper ────────────────────────────────────────── */
.section-categories__slider-wrap {
  display: flex;
  flex-direction: column;
  /* padding: 0 1rem; */
}

/* ── Swiper overrides ──────────────────────────────────────── */
.section-categories__swiper {
  width: 100%;
  overflow: hidden;
}

.section-categories__swiper .swiper-wrapper {
  align-items: stretch;
}

/* ── Card (swiper-slide) ───────────────────────────────────── */
.section-categories__swiper .swiper-slide {
  /* width: auto !important; */
  display: flex;
}

.section-categories__card:not(:last-child) {
  margin-right: 1.25rem;
}

.section-categories__card {
  /* max-width: 20.9375rem; */

  flex: 1;
  display: block;
  position: relative;
  width: 100%;
  height: 28.75rem; /* 460px */
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: all ease 0.5s;
}

/* ── Card image wrapper ────────────────────────────────────── */
.section-categories__card-image-wrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.section-categories__card-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

/* ── Image overlay (hover tint) ────────────────────────────── */
.section-categories__card-overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(14, 38, 94, 0.25);
  opacity: 0;
  transition: opacity 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
  pointer-events: none;
}

/* ── Card footer (title bar) ───────────────────────────────── */
.section-categories__card-footer {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #f2f3f5;
  padding: 1rem; /* 16px */
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: all 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

/* ── Title row ─────────────────────────────────────────────── */
.section-categories__card-title-row {
  display: flex;
  align-items: center;
  /* justify-content: space-between; */
  width: 100%;
}

.section-categories__card-title {
  /* flex: 1 0 0; */
  min-width: 0;
  font-family: "Lexend Deca", sans-serif;
  font-size: 1.125rem; /* 18px */
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #131313;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-top: 0.25rem;
}

/* ── Chevron box ───────────────────────────────────────────── */
.section-categories__card-chevron {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.25rem; /* 20px */
  height: 1.25rem; /* 20px */
  margin-left: auto; /* 24px */
  transition: background-color 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

.section-categories__card-chevron img {
  width: 1.25rem;
  height: 1.25rem;
  display: block;
  transition: filter 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}

/* ── Description (hidden by default, shown on hover) ──────── */
.section-categories__card-description {
  font-family: "Lexend Deca", sans-serif;
  font-size: 0.875rem; /* 14px */
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.013125rem; /* -0.21px */
  color: rgba(6, 21, 56, 0.6);
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: ease all 0.5s;
}
.section-categories__swiper .swiper-slide {
  transition: all ease 0.3s;
}
.section-categories__card-hot {
  margin-right: 1.5rem;
  display: flex;
  padding: 0.1875rem 0.625rem;
  justify-content: center;
  align-items: center;
  color: #fff;
  border-radius: 0.125rem;
  background: #ae2c2c;

  /* MB/14/14-M-150 */
  font-family: "Lexend Deca";
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 500;
  line-height: 150%; /* 1.3125rem */
  margin-left: 0.5rem;
}
.section-categories__card-title.is-no-hot {
  margin-right: 1.5rem;
}

/* ── Hover state (desktop only) ────────────────────────────── */
@media (min-width: 1024px) {
  .section-categories__swiper .swiper-slide:hover {
    width: 31.25rem !important;
  }
  .section-categories__swiper .is-active-range:hover ~ .is-active-range,
  .section-categories__swiper .is-active-range:has(~ .is-active-range:hover) {
    width: 17.5rem !important;
  }

  .section-categories__card:hover .section-categories__card-overlay {
    opacity: 1;
  }

  /* .section-categories__card:hover .section-categories__card-chevron {
    background-color: #fa6900;
  } */

  /* .section-categories__card:hover .section-categories__card-chevron img {
    filter: brightness(0) invert(1);
  } */

  .section-categories__card:hover .section-categories__card-description {
    max-height: 7.5rem;
    opacity: 1;
    margin-top: 0.625rem; /* 10px */
    transition-delay: 0.5s;
  }

  .section-categories__card:focus-visible .section-categories__card-overlay {
    opacity: 1;
  }

  .section-categories__card:focus-visible .section-categories__card-chevron {
    background-color: #fa6900;
  }

  /* .section-categories__card:focus-visible
    .section-categories__card-chevron
    img {
    filter: brightness(0) invert(1);
  } */

  .section-categories__card:focus-visible
    .section-categories__card-description {
    max-height: 7.5rem;
    opacity: 1;
  }
}

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

/* ── Pagination row ────────────────────────────────────────── */
.section-categories__pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 1.875rem; /* 30px */
  width: 100%;
}

.section-categories__pagination-left {
  display: flex;
  align-items: center;
}

/* ── Progress bar ──────────────────────────────────────────── */
.section-categories__progress-bar {
  display: flex;
  align-items: center;
  /* width: 16rem !important; */
  margin-right: 0.75rem; /* 12px */
}

.section-categories__progress-bar
  .swiper-pagination-bullet.swiper-pagination-bullet-active,
.section-categories__progress-active {
  width: 6.25rem; /* 100px */
  height: 0.1875rem; /* 3px */
  background-color: #fa6900;
  flex-shrink: 0;
  margin-right: 0.375rem; /* 6px */
}

.section-categories__progress-bar .swiper-pagination-bullet,
.section-categories__progress-dot {
  border-radius: 0;
  width: 2.5rem; /* 40px */
  height: 0.1875rem; /* 3px */
  background-color: rgba(19, 19, 19);
  flex-shrink: 0;
  margin-left: 0 !important;
  margin-right: 0.375rem !important; /* 6px */
  transition: ease all 0.3s;
}

.section-categories__progress-dot:last-child {
  margin-right: 0;
}

/* ── Counter ───────────────────────────────────────────────── */
.section-categories__counter {
  font-family: "Lexend Deca", sans-serif;
  font-size: 0.875rem; /* 14px */
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.00875rem; /* -0.14px */
  color: #131313;
  white-space: nowrap;
}

/* ── Nav arrows ────────────────────────────────────────────── */
.section-categories__nav {
  display: flex;
  align-items: center;
  width: 6rem; /* 96px */
  justify-content: space-between;
}

.section-categories__nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem; /* 44px */
  height: 2.75rem; /* 44px */
  background-color: #f2f3f5;
  border: none;
  cursor: pointer;
  padding: 0;
  flex-shrink: 0;
  transition: background-color 400ms cubic-bezier(0.47, 0, 0.01, 1.01);
}
.section-categories__nav-btn.swiper-button-disabled {
  opacity: 0.5;
}

.section-categories__nav-btn img {
  width: 1.375rem; /* 22px */
  height: 1.375rem; /* 22px */
  display: block;
}

@media (min-width: 1024px) {
  .section-categories__nav-btn:not(.swiper-button-disabled):hover {
    background-color: #fa6900;
  }
  .section-categories__nav-btn:not(.swiper-button-disabled):hover img {
    filter: brightness(0) invert(1);
  }
}

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

.section-categories__nav-btn--prev img {
  transform: scaleX(-1);
}

/* =============================================================
   Mobile overrides — only deltas vs desktop
   @media screen and (max-width: 639.98px)
   ============================================================= */
@media screen and (max-width: 639.98px) {
  .section-categories__swiper {
    padding: 0 1rem;
  }
  /* Section: reduced padding */
  .section-categories {
    padding-top: 3rem; /* 48px */
    padding-bottom: 3rem; /* 48px */
  }

  /* Container: full bleed with 16px sides */
  .section-categories__container {
    max-width: 100%;
    padding-inline: 0; /* 16px */
  }
  .section-categories__card-title-row {
    margin-bottom: 0.625rem;
  }
  /* Heading: smaller */
  .section-categories__heading {
    font-size: 1.5rem; /* 24px */
    letter-spacing: -0.03rem; /* -0.48px */
    margin-bottom: 1.75rem; /* 28px */
    text-align: center;
  }

  /* Card: allow expansion when description is always visible on mobile */
  .section-categories__card {
    min-height: 28.75rem; /* 460px floor — grows to fit visible description */
    max-width: unset;
  }

  /* Card footer: slightly less padding on mobile */
  .section-categories__card-footer {
    padding: 0.875rem; /* 14px */
  }
  .section-categories__nav {
    width: 5.37rem;
  }
  /* Title: smaller on mobile */
  .section-categories__card-title {
    font-size: 1rem; /* 16px */
    letter-spacing: 0;
  }

  /* Description: always visible on mobile */
  .section-categories__card-description {
    text-align: justify;
    max-height: 12.5rem; /* allow full text */
    opacity: 1;
    overflow: visible;
    width: 19.69rem;
  }

  /* Pagination row */
  .section-categories__pagination {
    margin-top: 1.25rem; /* 20px */
    padding: 0 1rem;
  }

  /* Counter: no letter-spacing on mobile */
  .section-categories__counter {
    letter-spacing: 0;
    line-height: 1.5;
  }

  /* Nav arrows: slightly smaller on mobile */
  .section-categories__nav-btn {
    width: 2.5rem; /* 40px */
    height: 2.5rem; /* 40px */
  }

  /* Progress bar: hidden on mobile (design shows counter + arrows only) */
  .section-categories__progress-bar {
    display: none;
  }

  .section-categories__pagination-left {
    margin-right: 0;
  }
}


/* ===== template-parts/homepage/section-cta/assets/styles.css ===== */
/* ============================================================== */
/* Section CTA — Desktop base                                      */
/* Figma node: 2348:24638 (1600×746)                               */
/* ============================================================== */

.section-cta {
  background-color: #f2f3f5;
  width: 100%;
  position: relative;
}

/* Inner wrapper — full bleed, no max-width cap: map bleeds to edge */
.section-cta__inner {
  position: relative;
  min-height: 46.625rem; /* 746px / 16 */
}

/* ---------------------------------------------------------------- */
/* Left content column                                               */
/* Desktop: left 72px, top 174.31px, width 658px                    */
/* ---------------------------------------------------------------- */
.section-cta__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: absolute;
  left: 4.5rem; /* 72px / 16 */
  top: 10.8944rem; /* 174.31px / 16 */
  width: 41.125rem; /* 658px / 16 */
}

/* ---------------------------------------------------------------- */
/* H2 Heading                                                        */
/* Desktop: 40px / 600 / lh 1.3 / ls -0.8px / uppercase / #131313  */
/* ---------------------------------------------------------------- */
.section-cta__heading {
  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-top: 0;
  margin-bottom: 0;
}

/* ---------------------------------------------------------------- */
/* CTA Button                                                        */
/* Desktop: bg #FA6900, px 64px, py 16px, text 16px/500, uppercase  */
/* Display inline-flex, gap 8px (via margin on icon)                */
/* ---------------------------------------------------------------- */
.section-cta__button {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  background-color: #fa6900;
  padding-top: 1rem; /* 16px / 16 */
  padding-bottom: 1rem; /* 16px / 16 */
  padding-left: 4rem; /* 64px / 16 */
  padding-right: 4rem; /* 64px / 16 */
  text-decoration: none;
  margin-top: 4rem; /* 64px / 16 — gap between heading and button */
  flex-shrink: 0;
  transition: all ease 0.3s;
}

.section-cta__button:hover {
  background-color: #ff7b1c;
}

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

.section-cta__button-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 ≈ -1/16 */
  text-transform: uppercase;
  color: #ffffff;
  white-space: nowrap;
}

.section-cta__button-icon {
  display: block;
  width: 1rem; /* 16px / 16 */
  height: 1rem; /* 16px / 16 */
  flex-shrink: 0;
  margin-left: 0.5rem; /* 8px / 16 — gap between text and icon */
}

/* ---------------------------------------------------------------- */
/* Right map column                                                  */
/* Desktop: left 659px, top 63.55px, width 869px, height 571.627px  */
/* ---------------------------------------------------------------- */
.section-cta__map {
  position: absolute;
  left: 41.1875rem; /* 659px / 16 */
  top: 3.9719rem; /* 63.55px / 16 */
  width: 54.3125rem; /* 869px / 16 */
  height: 35.7267rem; /* 571.627px / 16 */
  flex-shrink: 0;
}

.section-cta__map-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* ============================================================== */
/* Mobile overrides — only properties that differ from desktop    */
/* Figma node: 2348:25300 (375×554)                               */
/* Mobile order: heading → map → button (stacked)                 */
/* ============================================================== */
@media screen and (max-width: 639.98px) {
  .section-cta__inner {
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    position: relative;
    min-height: unset;
    padding-top: 2.5rem; /* 40px / 16 */
    padding-bottom: 6.375rem;
    padding-left: 1rem; /* 16px / 16 */
    padding-right: 1rem; /* 16px / 16 */
  }

  /* Reset absolute positioning — stack in flow */
  .section-cta__content {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
    align-items: center;
    order: 1;
  }

  /* Heading: 24px, center, letter-spacing -0.48px */
  .section-cta__heading {
    font-size: 1.5rem; /* 24px / 16 */
    letter-spacing: -0.03rem; /* -0.48px / 16 */
    text-align: center;
  }

  /* Button: full-width, px 24px, py 12px, font-size 14px */
  .section-cta__button {
    width: 100%;
    justify-content: center;
    padding-top: 0.75rem; /* 12px / 16 */
    padding-bottom: 0.75rem; /* 12px / 16 */
    padding-left: 1.5rem; /* 24px / 16 */
    padding-right: 1.5rem; /* 24px / 16 */
    margin-top: 0;
    order: 3;
    position: absolute;
    top: 25.6rem;
  }

  .section-cta__button-text {
    font-size: 0.875rem; /* 14px / 16 */
    line-height: 1.3;
    letter-spacing: -0.0088rem; /* -0.14px / 16 — Figma M token Buttons/14-M */
  }

  /* Map: full-width, fixed height from mobile Figma */
  .section-cta__map {
    position: relative;
    left: auto;
    top: auto;
    width: calc(100% + 2rem); /* bleed to edges, compensate parent padding */
    margin-left: -1rem;
    margin-right: -1rem;
    height: 15.4172rem; /* 246.675px / 16 */
    order: 2;
    margin-top: 2.25rem; /* 36px / 16 — gap heading→map */
    margin-bottom: 2.25rem; /* 36px / 16 — gap map→button */
  }

  .section-cta__map-img {
    object-fit: cover;
  }
}


/* ===== template-parts/homepage/assets/styles.css ===== */
/**
 * Homepage — page-level style aggregator.
 * Imports each section's scoped stylesheet in visual (top-to-bottom) order.
 */




/* @import url("https://vinatech.okhub-tech.com/wp-content/themes/okhub-theme/template-parts/homepage/section-categories/assets/styles.css"); */



/* @import url("https://vinatech.okhub-tech.com/wp-content/themes/okhub-theme/template-parts/homepage/section-news/assets/styles.css"); */




