:root {
      --mint: #A9BAC8;
      --mint-light: #E7EBEE;
      --mint-dark: #738A9C;
      --coral: #D69A32;
      --coral-dark: #B97C1C;
      --coral-for-text: #9A6414;
      --white: #FFFCF7;
      --text: #17243A;
      --text-mid: #4E5B6C;
      --text-light: #788392;
      --card-bg: #ECEFF1;
      --product-img-bg: #ECEFF1;
      --btn-gray: #E7EBEE;
      --border: rgba(23, 36, 58, 0.14);
      --shadow-light: rgba(23, 36, 58, 0.06);
      --shadow-md: rgba(23, 36, 58, 0.12);
      --radius: 12px;
      --radius-lg: 22px;
      --radius-full: 999px;
      --gold: #D69A32;
      --gold-light: #F5E6C6;
      --forest: #17243A;
      --off-white: #F5F1E9;
    }

    html { background: #F5F1E9; }
    body {
      background: #F5F1E9;
      color: #202124;
      font-family: "Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif;
      letter-spacing: -0.005em;
    }
    h1, h2, h3, h4, h5,
    .navbar-logo, .btn, .pricing-price, .pricing-name, .footer-brand-logo,
    .section-title, .step-num, .step-title, .hero-v2-title {
      font-family: "Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    }
    h1, h2, h3, .section-title { text-wrap: balance; }
    p { text-wrap: pretty; }
    a:focus-visible, button:focus-visible {
      outline: 3px solid rgba(214, 154, 50, 0.5);
      outline-offset: 4px;
    }
    .container { max-width: 1240px; padding-inline: clamp(20px, 4vw, 44px); }

    /* Navigation */
    .navbar {
      background: rgba(245, 241, 233, 0.94);
      border-bottom: 1px solid rgba(23, 36, 58, 0.12);
      box-shadow: none;
      backdrop-filter: blur(16px) saturate(120%);
    }
    .navbar-inner { max-width: 1320px; padding: 16px 32px; }
    .navbar-logo {
      color: #17243A;
      text-transform: none;
      letter-spacing: -0.02em;
      font-size: 0.98rem;
      font-weight: 750;
    }
    .navbar-logo img {
      width: 38px; height: 38px;
      border: 2px solid #F5F1E9;
      box-shadow: 0 0 0 1px rgba(23,36,58,.18);
    }
    @media (min-width: 1100px) {
      .navbar-nav { gap: 8px; }
      .navbar-nav a {
        color: #4E5B6C;
        font-size: 0.79rem;
        letter-spacing: .055em;
        border-radius: 8px;
        padding: 9px 11px;
      }
      .navbar-nav a:hover, .navbar-nav a.active {
        color: #17243A;
        background: rgba(169,186,200,.24);
      }
    }
    .btn {
      min-height: 48px;
      border-radius: 10px;
      letter-spacing: .035em;
      box-shadow: none;
      transition: transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
    }
    .btn-primary { background: #D69A32; color: #17243A; border-color: #D69A32; }
    .btn-primary:hover {
      background: #C78A28;
      border-color: #C78A28;
      color: #17243A;
      transform: translateY(-2px);
      box-shadow: 0 12px 26px rgba(154,100,20,.18);
    }
    .btn:active { transform: translateY(0) scale(.985); }
    .navbar-actions .btn { min-height: 42px; padding-inline: 22px; border-radius: 9px; }
    .hamburger span { background: #17243A; }
    .mobile-menu { background: #F5F1E9; }
    .mobile-menu a { color: #17243A; border-color: rgba(23,36,58,.13); border-radius: 6px; }

    /* Hero: exact source roles and split structure */
    .hero-v2 {
      min-height: 780px;
      background: #F5F1E9;
      isolation: isolate;
    }
    .hero-v2-bg {
      background:
        radial-gradient(circle at 76% 32%, rgba(169,186,200,.42) 0 18%, transparent 42%),
        #F5F1E9;
    }
    .hero-v2-bg::before,
    .hero-v2-bg::after {
      content: "";
      position: absolute;
      pointer-events: none;
      border: 1px solid rgba(23,36,58,.09);
      border-radius: 50%;
    }
    .hero-v2-bg::before { width: 440px; height: 440px; right: -130px; top: 115px; }
    .hero-v2-bg::after { width: 230px; height: 230px; right: 38%; bottom: -130px; background: rgba(214,154,50,.08); }
    .hero-v2-bg-img { display: none; }
    .hero-v2-inner {
      grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
      gap: clamp(56px, 7vw, 104px);
      min-height: 780px;
      padding-top: 112px;
      padding-bottom: 78px;
    }
    .hero-v2-copy { padding-right: 0; }
    .hero-v2-title {
      color: #17243A;
      font-size: clamp(3.25rem, 5.35vw, 5.35rem);
      line-height: .98;
      letter-spacing: -.06em;
      font-weight: 780;
      margin-bottom: 30px;
      max-width: 670px;
    }
    .hero-v2-sub {
      color: #334155;
      font-size: clamp(1rem, 1.4vw, 1.18rem);
      line-height: 1.68;
      max-width: 570px;
      margin-bottom: 34px;
    }
    .hero-v2-sub strong { color: #9A6414; font-weight: 700; }
    .hero-v2-actions { gap: 12px; margin-bottom: 20px; }
    .hero-v2-cta-primary, .hero-v2-cta-secondary {
      min-height: 54px;
      padding: 15px 28px;
      border-radius: 10px;
      font-size: .84rem;
      letter-spacing: .06em;
    }
    .hero-v2-cta-primary { color: #17243A; background: #D69A32; border-color: #D69A32; }
    .hero-v2-cta-secondary { color: #17243A; border-color: rgba(23,36,58,.48); background: rgba(245,241,233,.58); }
    .hero-v2-cta-secondary:hover { background: #17243A; border-color: #17243A; color: #FFFCF7; }
    .hero-v2-trust { color: #647184; font-size: .78rem; letter-spacing: .035em; }
    .hero-v2-visual {
      justify-content: flex-end;
      padding: 22px 0 22px 28px;
    }
    .hero-v2-visual::before {
      content: "";
      position: absolute;
      inset: 0 0 0 8%;
      background: #A9BAC8;
      border-radius: 44% 16px 44% 16px;
      transform: rotate(-2deg);
      z-index: -1;
    }
    .hero-v2-product-img {
      width: min(100%, 540px) !important;
      height: 560px !important;
      max-height: none !important;
      border-radius: 18px 18px 118px 18px !important;
      object-fit: cover !important;
      object-position: center top !important;
      box-shadow: 0 28px 70px rgba(23,36,58,.22) !important;
      border: 1px solid rgba(255,255,255,.55);
    }
    .hero-v2-badge {
      bottom: -2px;
      right: -18px;
      max-width: 250px;
      padding: 17px 19px;
      background: #FFFCF7;
      border: 1px solid rgba(23,36,58,.17);
      border-left: 5px solid #D69A32;
      border-radius: 4px 16px 16px 4px;
      box-shadow: 0 22px 50px rgba(23,36,58,.2);
    }
    .badge-check, .badge-top { color: #9A6414; }
    .badge-title { color: #17243A; }
    .badge-bottom { color: #647184; }
    .hero-v2-scroll { display: none; }

    /* Trust bar: strong, editorial divider directly after hero */
    .trust-bar { background: #17243A; padding: 25px 0; }
    .trust-bar-inner { gap: 18px 42px; }
    .trust-item { color: #F5F1E9; font-size: .73rem; letter-spacing: .07em; }
    .trust-item svg { color: #D69A32; }

    /* Global section rhythm */
    body > section:not(.hero-v2) { padding-top: 104px !important; padding-bottom: 112px !important; }
    body > section:nth-of-type(2),
    body > section:nth-of-type(5),
    body > section:nth-of-type(8),
    body > section:nth-of-type(10) { background: #E7EBEE !important; }
    body > section:nth-of-type(3),
    body > section:nth-of-type(6),
    body > section:nth-of-type(9) { background: #F5F1E9 !important; }
    body > section:nth-of-type(4),
    body > section:nth-of-type(7) { background: #FFFCF7 !important; }
    body > section:nth-of-type(11) { background: #A9BAC8 !important; }
    .section-header { margin-bottom: 56px; }
    .section-header .divider {
      width: 54px;
      height: 6px;
      border-radius: 0;
      background: #D69A32;
      margin-bottom: 24px;
    }
    .section-title {
      color: #17243A;
      font-size: clamp(2.3rem, 4vw, 4.25rem);
      line-height: 1.02;
      letter-spacing: -.045em;
      text-transform: none;
      font-weight: 780;
      margin-bottom: 18px;
    }
    .section-subtitle { color: #556276; font-size: 1.04rem; line-height: 1.7; max-width: 680px; }

    /* Result carousel: image-led, not a generic white card */
    #testimonials-carousel { background: #E7EBEE !important; border-bottom: 0 !important; }
    .tc-wrapper {
      max-width: 1020px;
      margin-inline: auto;
      border-radius: 18px 18px 92px 18px;
      background: #17243A;
      box-shadow: 0 26px 70px rgba(23,36,58,.16);
      overflow: hidden;
    }
    .tc-slide { background: #17243A; }
    .tc-images { background: #17243A; }
    .tc-img-box { border-color: rgba(245,241,233,.2); }
    .tc-info { color: #F5F1E9; padding-inline: 26px; }
    .tc-name, .tc-result { color: #F5F1E9; }
    .tc-verified, .tc-result strong, .tc-stars { color: #D69A32; }
    .tc-btn { background: #D69A32; color: #17243A; }
    .tc-btn:hover { background: #C78A28; }
    .tc-dot { background: rgba(23,36,58,.22); }
    .tc-dot.active { background: #D69A32; }
    .testimonial-eyebrow {
      display: inline-flex;
      align-items: center;
      min-height: 28px;
      margin-bottom: 22px;
      padding: 6px 12px;
      border-radius: 4px;
      background: #F5E6C6;
      color: #17243A;
      font-size: .72rem;
      font-weight: 800;
      letter-spacing: .09em;
    }
    #testimonials-carousel .section-header { margin-bottom: 36px; text-align: left; }
    #testimonials-carousel .section-header .divider { display: none; }
    #testimonials-carousel .section-title {
      max-width: 860px;
      margin: 0 0 20px;
      color: #17243A;
      font-size: clamp(2rem, 2.64vw, 2.4rem);
      font-weight: 500;
      line-height: 1.08;
      letter-spacing: -.035em;
      text-align: left;
    }
    #testimonials-carousel .section-subtitle {
      max-width: 680px;
      margin: 0;
      color: #4E5B6C;
      font-size: 1rem;
      line-height: 1.58;
      text-align: left;
    }
    .testimonial-story-summary {
      display: grid;
      align-content: start;
      margin: 0 0 40px;
      padding: 0;
      border-top: 1px solid rgba(23,36,58,.2);
      list-style: none;
    }
    .testimonial-story-summary li {
      display: grid;
      grid-template-columns: 28px minmax(0, 1fr);
      gap: 18px;
      align-items: center;
      min-height: 76px;
      padding: 16px 0;
      border-bottom: 1px solid rgba(23,36,58,.2);
      color: #17243A;
      font-size: 1rem;
      font-weight: 500;
      line-height: 1.45;
    }
    .testimonial-proof-icon {
      width: 28px;
      height: 28px;
      color: #17243A;
      flex: 0 0 auto;
    }
    @media (min-width: 900px) {
      #testimonials-carousel > .container {
        display: grid;
        max-width: 1360px;
        grid-template-columns: minmax(0, 1.55fr) minmax(320px, .8fr);
        grid-template-areas: "intro proof" "carousel carousel" "disclaimer disclaimer";
        column-gap: clamp(36px, 4vw, 64px);
        row-gap: 44px;
        align-items: start;
      }
      #testimonials-carousel > .container > .section-header { grid-area: intro; margin: 0; }
      #testimonials-carousel > .container > .testimonial-story-summary { grid-area: proof; margin: 0; }
      #testimonials-carousel > .container > .tc-wrapper { grid-area: carousel; width: 100%; max-width: 920px; margin-inline: auto; }
      #testimonials-carousel > .container > p:last-child { grid-area: disclaimer; max-width: 920px !important; margin: -20px auto 0 !important; }
    }

    /* Guidance and science modules */
    .nutritionist-grid { gap: clamp(40px, 7vw, 96px) !important; }
    .vip-card {
      background: #17243A !important;
      color: #F5F1E9;
      border-radius: 20px 20px 84px 20px !important;
      padding: 42px 38px !important;
      box-shadow: 0 28px 70px rgba(23,36,58,.16);
    }
    .vip-card > div, .vip-card strong, .vip-card span { color: inherit; }
    .vip-card > div:first-child { background: rgba(169,186,200,.18) !important; }
    .vip-card .btn { color: #17243A; }
    .how-section { background: #E7EBEE !important; }
    .steps-grid { gap: 14px; }
    .step-card {
      background: transparent;
      border-top: 1px solid rgba(23,36,58,.28);
      border-radius: 0;
      padding: 30px 18px 28px;
      text-align: left;
      box-shadow: none;
    }
    .step-card:hover { transform: none; border-color: #D69A32; }
    .step-num {
      width: 46px; height: 46px;
      border-radius: 8px;
      background: #17243A;
      color: #F5F1E9;
      margin-bottom: 26px;
    }
    .step-title { color: #17243A; letter-spacing: -.01em; text-transform: none; font-size: 1.2rem; }
    .step-desc { color: #4E5B6C; font-size: .9rem; }
    .step-card div[style*="background:var(--white)"] { background: rgba(255,252,247,.66) !important; border-radius: 8px !important; }

    /* Science-number cards retain their grid, with a calmer editorial treatment */
    body > section:nth-of-type(4) .section-header + div > div {
      background: #E7EBEE !important;
      border-radius: 10px 10px 34px 10px !important;
      border: 1px solid rgba(23,36,58,.08);
    }
    body > section:nth-of-type(4) div[style*="background:var(--text)"] {
      background: #17243A !important;
      border-radius: 8px !important;
      color: #F5F1E9 !important;
    }

    /* Results promise and clinical guidance: broad color fields */
    body > section:nth-of-type(6) > .container,
    body > section:nth-of-type(7) > .container {
      position: relative;
    }
    body > section:nth-of-type(6) .section-title,
    body > section:nth-of-type(11) .section-title { max-width: 820px; margin-inline: auto; }

    /* Pricing remains exactly where it was */
    .pricing-section { background: #E7EBEE !important; }
    .pricing-grid { gap: 18px; align-items: stretch; }
    .pricing-card {
      background: #FFFCF7;
      border: 1px solid rgba(23,36,58,.13);
      border-radius: 14px;
      padding: 42px 30px 30px;
      box-shadow: none;
      display: flex;
      flex-direction: column;
    }
    .pricing-card:hover { transform: translateY(-4px); box-shadow: 0 18px 45px rgba(23,36,58,.1); }
    .pricing-card.featured {
      background: #17243A;
      color: #F5F1E9;
      border-color: #17243A;
      border-radius: 14px 14px 64px 14px;
      transform: none;
      box-shadow: 0 24px 56px rgba(23,36,58,.18);
    }
    .pricing-card.featured:hover { transform: translateY(-4px); }
    .pricing-card.featured .pricing-name,
    .pricing-card.featured .pricing-price,
    .pricing-card.featured .pricing-price span,
    .pricing-card.featured .pricing-tagline,
    .pricing-card.featured .pricing-per,
    .pricing-card.featured .pricing-features li,
    .pricing-card.featured p { color: #F5F1E9 !important; border-color: rgba(245,241,233,.16); }
    .pricing-card.featured .pricing-features li svg { color: #D69A32; }
    .pricing-card.featured .btn { color: #17243A; }
    .pricing-card#pricing-plan-120d { border: 1px solid rgba(23,36,58,.13) !important; }
    .pricing-badge,
    #pricing-plan-120d > div[style*="position:absolute"] {
      background: #D69A32 !important;
      color: #17243A !important;
      border-radius: 6px !important;
    }
    .pricing-name { color: #17243A; text-transform: none; letter-spacing: -.02em; font-size: 1.2rem; }
    #pricing-plan-120d .pricing-name { color: #17243A !important; }
    .pricing-price { color: #17243A; font-variant-numeric: tabular-nums; letter-spacing: -.04em; }
    .pricing-features { flex: 1; }
    .pricing-features li svg { color: #9A6414; }

    /* Testimonials and FAQ */
    .testimonial-card {
      background: transparent;
      border: 0;
      border-top: 1px solid rgba(23,36,58,.26);
      border-radius: 0;
      padding: 30px 6px;
      box-shadow: none;
    }
    .testimonial-stars { color: #D69A32; }
    .testimonial-avatar { background: #17243A; color: #F5F1E9; border-radius: 8px; }
    .faq-list { max-width: 880px; gap: 0; border-top: 1px solid rgba(23,36,58,.2); }
    .faq-item {
      background: transparent;
      border: 0;
      border-bottom: 1px solid rgba(23,36,58,.2);
      border-radius: 0;
    }
    .faq-item:hover { border-color: rgba(23,36,58,.45); }
    .faq-question { color: #17243A; padding: 24px 2px; font-size: 1rem; }
    .faq-question:hover { color: #9A6414; }
    .faq-icon { background: #17243A; color: #F5F1E9; border-radius: 6px; }
    .faq-item.open .faq-icon { background: #D69A32; color: #17243A; }
    .faq-answer-inner { padding: 0 54px 26px 2px; color: #4E5B6C; }

    /* Closing trust band and footer */
    body > section:nth-of-type(11) .divider { background: #17243A !important; }
    body > section:nth-of-type(11) .btn { margin-top: 20px !important; }
    .footer { background: #17243A; color: #F5F1E9; padding-top: 72px; }
    .footer-social a { border-radius: 8px; }
    .footer-social a:hover { background: #D69A32; color: #17243A; }
    .footer-links a:hover { color: #D69A32; }

    /* Mobile-first reflow while preserving content order */
    @media (max-width: 1099px) {
      .navbar-inner { padding: 12px 20px; }
      .navbar-logo span { display: inline; max-width: 220px; line-height: 1.12; }
      .navbar-actions .btn { display: none; }
    }
    @media (max-width: 768px) {
      .container { padding-inline: 20px; }
      .navbar-logo { font-size: .78rem; max-width: calc(100vw - 76px); }
      .navbar-logo img { width: 34px; height: 34px; flex: 0 0 auto; }
      .mobile-menu { padding: 78px 20px 32px; }

      .hero-v2 { min-height: auto; }
      .hero-v2-inner {
        grid-template-columns: 1fr;
        gap: 34px;
        min-height: auto;
        padding-top: 104px;
        padding-bottom: 60px;
      }
      .hero-v2-copy { order: 1; text-align: left; }
      .hero-v2-title {
        font-size: clamp(2.55rem, 12vw, 3.45rem);
        line-height: .98;
        letter-spacing: -.055em;
        margin-bottom: 22px;
      }
      .hero-v2-sub { font-size: .99rem; line-height: 1.63; margin-bottom: 26px; }
      .hero-v2-sub br { display: none; }
      .hero-v2-actions { justify-content: flex-start; gap: 10px; }
      .hero-v2-actions .btn { width: 100%; min-height: 50px; }
      .hero-v2-trust { text-align: left; line-height: 1.5; }
      .hero-v2-visual { order: 2; padding: 18px 0 32px 10px; margin: 0; }
      .hero-v2-visual::before { inset: 0 12px 14px 0; border-radius: 38% 12px 38% 12px; }
      .hero-v2-product-img {
        width: calc(100% - 18px) !important;
        max-width: none !important;
        height: 420px !important;
        margin: 0 0 0 auto !important;
        border-radius: 12px 12px 72px 12px !important;
      }
      .hero-v2-badge {
        right: 0;
        bottom: 6px;
        width: min(230px, 72vw);
        max-width: none;
        padding: 13px 14px;
        text-align: left;
      }
      .trust-bar { padding: 20px 0; }
      .trust-bar-inner {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 14px 12px;
        padding-inline: 20px;
      }
      .trust-item { align-items: flex-start; font-size: .64rem; line-height: 1.45; }

      body > section:not(.hero-v2) { padding-top: 76px !important; padding-bottom: 82px !important; }
      .section-header { text-align: left; margin-bottom: 38px; }
      .section-header .divider { margin-left: 0; margin-right: 0; width: 42px; height: 5px; }
      .section-title { font-size: clamp(2.05rem, 10vw, 2.9rem); line-height: 1.02; }
      .section-subtitle { margin-left: 0; margin-right: 0; font-size: .96rem; }

      .tc-wrapper { border-radius: 12px 12px 54px 12px; }
      .tc-slide { padding: 14px 14px 30px; }
      .tc-images { gap: 8px; }
      .tc-info { padding-inline: 8px; }
      .tc-btn { width: 40px; height: 40px; }

      .nutritionist-grid {
        grid-template-columns: 1fr !important;
        gap: 34px !important;
      }
      .nutritionist-grid > div:first-child { padding: 0 !important; }
      .vip-card { padding: 34px 24px 46px !important; border-radius: 14px 14px 54px 14px !important; }
      body > section:nth-of-type(4) .section-header + div {
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
      }
      body > section:nth-of-type(4) .section-header + div > div { padding: 19px 10px !important; }
      body > section:nth-of-type(4) div[style*="font-size:2.2rem"] { font-size: 1.7rem !important; }
      body > section:nth-of-type(4) div[style*="display:inline-block"] {
        width: 100%; padding: 14px 16px !important; font-size: .9rem !important;
      }

      .steps-grid { grid-template-columns: 1fr; }
      .step-card { padding: 26px 2px 28px; }
      .step-num { margin-bottom: 20px; }

      .pricing-grid { grid-template-columns: 1fr !important; gap: 26px; }
      .pricing-card, .pricing-card.featured { border-radius: 12px; padding: 40px 24px 28px; }
      .pricing-card.featured { border-radius: 12px 12px 54px 12px; }
      .pricing-card .btn { min-height: 50px; white-space: normal; text-align: center; }

      .testimonials-grid { grid-template-columns: 1fr; }
      .testimonials-section .container > div[style*="grid-template-columns:1fr 1fr"] { gap: 8px !important; }
      .testimonials-section img[style*="height:240px"] { height: 190px !important; }
      .faq-question { min-height: 64px; padding: 20px 2px; gap: 16px; text-align: left; }
      .faq-answer-inner { padding: 0 4px 24px 2px; }
      .footer-grid { grid-template-columns: 1fr; gap: 36px; }
    }
    @media (max-width: 380px) {
      .navbar-logo span { max-width: 200px; }
      .hero-v2-title { font-size: 2.45rem; }
      .hero-v2-product-img { height: 390px !important; }
      .trust-bar-inner { grid-template-columns: 1fr; }
    }
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
    }

    /* Desktop-only team scene; the existing mobile hero remains intact. */
    @media (min-width: 768px) {
      .hero-v2--team-scene {
        min-height: 780px;
        background-image: url("../images/generated/hero/medical-weight-loss-hero-desktop-v1.webp") !important;
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
      }
      .hero-v2--team-scene .hero-v2-bg,
      .hero-v2--team-scene .hero-v2-visual {
        display: none !important;
      }
      .hero-v2--team-scene .hero-v2-inner {
        grid-template-columns: minmax(0, 48%) minmax(0, 1fr);
        min-height: 780px;
      }
      .hero-v2--team-scene .hero-v2-copy {
        grid-column: 1;
        width: 100%;
        max-width: 620px;
      }
    }

    /* === REVIEW REVISION: contrast, carousel, mechanisms, FAQ === */

    /* Plan C / VIP: every text tier stays legible on the navy surface. */
    .vip-card {
      color: #FFFCF7 !important;
      border: 1px solid rgba(255, 252, 247, .2);
    }
    .vip-card > div:first-child {
      background: rgba(245, 230, 198, .14) !important;
      border: 1px solid rgba(245, 230, 198, .34);
    }
    .vip-card > div:first-child,
    .vip-card > div:first-child * {
      color: #F5E6C6 !important;
    }
    .vip-card > div:not(:first-child),
    .vip-card > div:not(:first-child) span,
    .vip-card p {
      color: #E7EBEE !important;
    }
    .vip-card > div:nth-child(2),
    .vip-card > div:nth-child(4) span:first-child {
      color: #FFFCF7 !important;
    }
    .vip-card strong { color: #E4B65D !important; }
    .vip-card .btn,
    .vip-card .btn * {
      background: #D69A32 !important;
      border-color: #D69A32 !important;
      color: #17243A !important;
      font-weight: 800;
    }

    /* Verified label: readable at a glance against the dark carousel. */
    .tc-verified {
      background: #F5E6C6 !important;
      color: #17243A !important;
      border: 1px solid rgba(214, 154, 50, .7);
      border-radius: 6px;
      min-height: 26px;
      padding: 4px 10px;
      font-size: .75rem;
      line-height: 1.2;
      font-weight: 800;
      letter-spacing: .02em;
    }
    .tc-slide-track {
      transition: transform .65s cubic-bezier(.22, .61, .36, 1) !important;
    }

    /* How it works: one coherent, scan-friendly four-step system. */
    #how { background: #E7EBEE !important; }
    #how .steps-grid {
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 16px;
      align-items: stretch;
    }
    #how .step-card {
      min-width: 0;
      height: 100%;
      display: flex;
      flex-direction: column;
      align-items: stretch;
      text-align: left;
      background: #FFFCF7;
      border: 1px solid rgba(23, 36, 58, .14);
      border-radius: 14px 14px 42px 14px;
      padding: 32px 24px 24px;
      overflow: hidden;
      box-shadow: none;
    }
    #how .step-card::before {
      content: "";
      position: absolute;
      inset: 0 auto 0 0;
      width: 5px;
      background: #D69A32;
    }
    #how .step-card:hover {
      transform: translateY(-3px);
      border-color: rgba(23, 36, 58, .28);
    }
    #how .step-num {
      width: 68px;
      height: 72px;
      margin: -32px 0 26px -24px;
      border-radius: 0 0 18px 0;
      background: #17243A;
      color: #FFFCF7;
      font-size: 2rem;
      font-weight: 800;
      flex: 0 0 auto;
    }
    #how .step-card > div:nth-child(2) {
      display: flex !important;
      align-items: flex-start !important;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 8px !important;
      margin-bottom: 14px !important;
    }
    #how .step-title {
      color: #17243A;
      font-size: 1.28rem;
      line-height: 1.15;
      letter-spacing: -.025em;
    }
    #how .step-card > div:nth-child(2) span {
      background: #E7EBEE !important;
      color: #17243A !important;
      border: 1px solid rgba(23, 36, 58, .12);
      border-radius: 6px !important;
      padding: 4px 8px !important;
      font-size: .65rem !important;
      line-height: 1.2;
      letter-spacing: .025em;
    }
    #how .step-card > h4 {
      color: #17243A !important;
      font-size: .98rem !important;
      line-height: 1.35;
      min-height: 2.7em;
      margin-bottom: 12px !important;
    }
    #how .step-desc {
      color: #4E5B6C;
      font-size: .88rem;
      line-height: 1.65;
      margin-bottom: 18px;
    }
    #how .step-card > div:last-child {
      margin: auto -8px 0 !important;
      padding: 13px 14px !important;
      background: #F5F1E9 !important;
      border-top: 1px solid rgba(23, 36, 58, .1);
      border-radius: 6px 6px 20px 6px !important;
    }
    #how .step-card > div:last-child p {
      color: #6A7482 !important;
      line-height: 1.5 !important;
    }

    /* FAQ: one consistent full-width accordion surface. */
    .faq-list {
      width: 100%;
      max-width: 880px;
      gap: 12px;
      border-top: 0;
    }
    .faq-item {
      width: 100%;
      box-sizing: border-box;
      overflow: hidden;
      background: #FFFCF7;
      border: 1px solid rgba(23, 36, 58, .16);
      border-left: 4px solid transparent;
      border-radius: 10px;
    }
    .faq-item:hover {
      background: #F9F4E9;
      border-color: rgba(23, 36, 58, .22);
      border-left-color: #D69A32;
    }
    .faq-item.open {
      background: #FFFCF7;
      border-color: rgba(23, 36, 58, .22);
      border-left-color: #D69A32;
    }
    .faq-question {
      width: 100%;
      min-height: 68px;
      box-sizing: border-box;
      padding: 20px 22px;
      background: transparent;
      color: #17243A;
      text-align: left;
    }
    .faq-icon {
      flex: 0 0 30px;
      width: 30px;
      height: 30px;
      background: #17243A;
      color: #FFFCF7;
      border-radius: 6px;
    }
    .faq-item.open .faq-icon {
      background: #D69A32;
      color: #17243A;
    }
    .faq-answer { width: 100%; }
    .faq-answer-inner { padding: 0 68px 24px 22px; }

    @media (max-width: 900px) {
      #how .steps-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }
    @media (max-width: 600px) {
      #how .steps-grid { grid-template-columns: 1fr; gap: 14px; }
      #how .step-card { padding: 30px 22px 22px; border-radius: 12px 12px 34px 12px; }
      #how .step-num { margin: -30px 0 24px -22px; }
      #how .step-card > h4 { min-height: 0; }
      .faq-question { min-height: 64px; padding: 18px 16px; }
      .faq-answer-inner { padding: 0 16px 22px 16px; }
    }
