/* ============ GrowAura — modern brand system ============ */
:root{
  --ivory:#FDF8F5;
  --cream:#F8EFE8;
  --white:#ffffff;
  --rose:#EDBCC8;
  --rose-deep:#CE8499;
  --rose-soft:#F9E2E8;
  --rose-wash:#FDF1F4;
  --peach:#FBE7DB;
  --peach-soft:#FDF1EA;
  --sage:#E9EFE7;
  --lilac:#EEE9F3;
  --gold:#C4A767;
  --gold-light:#E7D09A;
  --gold-deep:#A6824A;
  --ink:#3B332E;
  --ink-soft:#7C7068;
  --line:#F1E7DE;
  --shadow-sm:0 8px 24px -16px rgba(120,80,70,.45);
  --shadow:0 26px 60px -28px rgba(120,80,70,.40);
  --shadow-lg:0 40px 90px -40px rgba(120,80,70,.5);
  --radius:22px;
  --radius-sm:14px;
  --maxw:1180px;
  --serif:"Fraunces",Georgia,serif;
  --sans:"Manrope",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);color:var(--ink);background:var(--ivory);line-height:1.65;font-weight:400;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 28px}
.container.narrow{max-width:780px}

/* type */
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.06;letter-spacing:-.018em;color:var(--ink)}
h1{font-size:clamp(2.8rem,6.4vw,5rem);font-weight:340}
h2{font-size:clamp(2rem,3.8vw,3.1rem)}
h3{font-size:1.3rem}
em{font-style:italic;color:var(--rose-deep)}
.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.26em;font-size:.72rem;font-weight:700;color:var(--gold-deep);margin-bottom:20px;display:inline-block}
.eyebrow.center{display:block;text-align:center}
.eyebrow.light{color:var(--gold-light)}
.lede{font-size:1.14rem;color:var(--ink-soft);max-width:48ch;margin-top:24px}
.section-sub{color:var(--ink-soft);margin-top:14px;font-size:1.07rem}

/* svg icons (Lucide) */
.ico{width:26px;height:26px;stroke:var(--gold-deep);fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--sans);font-weight:600;font-size:.92rem;letter-spacing:.01em;padding:15px 30px;border-radius:100px;cursor:pointer;border:1.5px solid transparent;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease}
.btn-lg{padding:18px 38px;font-size:1rem}
.btn-gold{background:linear-gradient(135deg,var(--gold-light),var(--gold) 58%,var(--gold-deep));color:#fff;box-shadow:0 14px 30px -12px rgba(150,118,55,.6)}
.btn-gold:hover{transform:translateY(-3px);box-shadow:0 22px 40px -14px rgba(150,118,55,.7)}
.btn-dark{background:var(--ink);color:var(--ivory)}
.btn-dark:hover{transform:translateY(-3px);background:#3a312c}
.btn-outline{border-color:var(--gold);color:var(--gold-deep);background:transparent}
.btn-outline:hover{background:var(--gold);color:#fff;transform:translateY(-3px)}
.btn-ghost{border-color:var(--line);color:var(--ink);background:rgba(255,255,255,.6);backdrop-filter:blur(6px)}
.btn-ghost:hover{border-color:var(--rose);color:var(--rose-deep)}
.btn-ghost-light{border-color:rgba(255,255,255,.5);color:#fff}
.btn-ghost-light:hover{background:rgba(255,255,255,.12)}

/* announce */
.announce{background:linear-gradient(90deg,var(--rose-soft),var(--peach) 55%,var(--lilac));color:var(--ink);text-align:center;font-size:.76rem;letter-spacing:.05em;padding:11px 16px}

/* header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(253,248,245,.86);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);max-width:none!important;width:100%!important;margin-left:0!important;margin-right:0!important}
.site-header .nav-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;max-width:100%!important;width:100%;padding:12px clamp(20px,4vw,46px)}
.nav-toggle{justify-self:start;display:flex;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px 6px}
.nav-toggle span{width:24px;height:2px;background:var(--ink);border-radius:2px;transition:transform .3s ease,opacity .3s ease}
.site-header.open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.site-header.open .nav-toggle span:nth-child(2){opacity:0}
.site-header.open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.brand{justify-self:center;display:flex;align-items:center}
.brand-logo{height:74px;width:auto;object-fit:contain;transition:transform .4s ease}
.brand:hover .brand-logo{transform:scale(1.04)}
.cart-link{justify-self:end;display:flex;align-items:center;color:var(--ink);padding:6px;transition:color .2s}
.cart-link svg{width:24px;height:24px}
.cart-link:hover{color:var(--gold-deep)}
.mobile-menu{display:none;flex-direction:column;gap:0;width:100%;box-sizing:border-box;padding:14px clamp(20px,4vw,46px) 28px;background:var(--ivory);border-top:1px solid var(--line);box-shadow:var(--shadow-sm)}
.site-header.open .mobile-menu{display:flex;animation:menuDrop .35s cubic-bezier(.16,1,.3,1)}
@keyframes menuDrop{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
.mobile-menu a{padding:16px 4px;border-bottom:1px solid var(--line);color:var(--ink);font-family:var(--serif);font-size:1.35rem;letter-spacing:-.01em;transition:color .25s ease,padding-left .25s ease}
.mobile-menu a,.mobile-menu a:link,.mobile-menu a:visited,.mobile-menu a:active,.mobile-menu a:focus,.mobile-menu a:focus-visible{color:var(--ink)!important;background:transparent!important;-webkit-tap-highlight-color:transparent;outline:none}
@media(hover:hover){.mobile-menu a:hover{color:var(--gold-deep)!important;padding-left:14px}}
.mobile-menu .btn{margin-top:20px;border-bottom:none;font-family:var(--sans);font-size:.95rem;justify-content:center}

/* hero */
.hero{position:relative;min-height:88vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--cream)}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 50%}
.hero-scrim{position:absolute;inset:0;background:
  linear-gradient(to top, rgba(252,247,243,.99) 3%, rgba(252,247,243,.86) 17%, rgba(252,247,243,.34) 38%, rgba(252,247,243,0) 58%),
  radial-gradient(130% 60% at 50% 100%, rgba(176,136,63,.10), transparent 60%)}
.hero-content{position:relative;z-index:2;width:100%;max-width:780px;text-align:center;padding-top:48px;padding-bottom:8.5vh}
.hero-content h1{margin:8px auto 0}
.hero-content .hero-rating{margin:0 auto}
.hero-tag{margin:18px auto 0;color:var(--ink-soft);font-size:1.12rem;max-width:46ch}
.hero-content .btn{margin-top:30px}

/* supporting band (moved-down text) */
.hero-sub{background:var(--ivory);border-bottom:1px solid var(--line);padding:34px 0}
.hero-sub-grid{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 40px}
.hero-sub .lede{margin:0;font-size:1.04rem;max-width:40ch;flex:1 1 320px}
.hero-sub .hero-trust{margin:0}
.hero-sub .btn{flex:none}
.hero-rating{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.7);border:1px solid var(--line);padding:7px 16px;border-radius:100px;font-size:.82rem;color:var(--ink-soft);backdrop-filter:blur(6px)}
.hero-rating .stars{display:inline-flex;gap:2px}
.hero-rating .stars svg{width:14px;height:14px;fill:var(--gold)}
.hero-actions{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}
.hero-actions.center{justify-content:center}
.hero-trust{list-style:none;display:flex;gap:14px 28px;margin-top:30px;flex-wrap:wrap}
.hero-trust li{position:relative;padding-left:24px;font-size:.88rem;color:var(--ink-soft)}
.hero-trust li::before{content:"";position:absolute;left:0;top:.35em;width:15px;height:15px;border-radius:50%;background:var(--rose-wash);border:1px solid var(--rose-soft)}
.hero-trust li::after{content:"";position:absolute;left:5px;top:.62em;width:5px;height:2.5px;border-left:1.5px solid var(--gold-deep);border-bottom:1.5px solid var(--gold-deep);transform:rotate(-45deg)}
.hero-media{position:relative;display:flex;justify-content:center;align-items:center;min-height:560px}
.hero-halo{position:absolute;width:108%;height:96%;border-radius:50%;background:radial-gradient(circle,var(--rose-soft) 0%,var(--rose-wash) 52%,transparent 70%);filter:blur(10px)}
.hero-product{position:relative;width:auto;height:auto;max-width:min(88%,400px);max-height:580px;border-radius:18px;box-shadow:0 34px 64px -26px rgba(120,80,70,.5)}
.hero-chip{position:absolute;background:rgba(255,255,255,.85);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:16px;padding:12px 16px;box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:11px}
.hero-chip .ico{width:22px;height:22px;stroke:var(--rose-deep)}
.hero-chip strong{display:block;font-size:.84rem;font-weight:700;color:var(--ink)}
.hero-chip span{font-size:.72rem;color:var(--ink-soft)}
.hero-chip.c1{top:14%;left:-2%}
.hero-chip.c2{bottom:13%;right:-2%}

/* trust strip */
.trust-strip{padding:34px 24px}
.trust-grid{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;
  padding:40px 40px;border-radius:28px;
  background:linear-gradient(120deg,var(--rose-soft),var(--peach) 52%,var(--lilac));
  box-shadow:0 24px 60px -34px rgba(150,110,120,.45)}
.trust-item{display:flex;align-items:center;gap:14px;justify-content:center}
.trust-item .ico{stroke:var(--gold-deep);width:32px;height:32px}
.trust-item strong{display:block;font-size:.95rem;font-weight:600;color:var(--ink)}
.trust-item span{font-size:.79rem;color:var(--ink-soft)}

/* sections */
.section{padding:96px 0}
.section.soft{background:linear-gradient(180deg,var(--ivory),var(--cream))}
.section-head{max-width:660px;margin:0 auto 58px;text-align:center}

/* benefits */
.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.benefit{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:36px 30px 38px;transition:transform .35s ease,box-shadow .35s ease}
.benefit:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.benefit .ico{width:58px;height:58px;padding:15px;border-radius:50%;background:var(--rose-wash);stroke:var(--rose-deep);margin-bottom:22px}
.benefit h3{margin-bottom:11px}
.benefit p{color:var(--ink-soft);font-size:.96rem}

/* band */
.band{position:relative;min-height:480px;display:flex;align-items:center}
.band-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.band-overlay{position:relative;max-width:var(--maxw);margin:0 auto;padding:64px 28px;width:100%;color:#fff}
.band-overlay::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(40,33,29,.66),rgba(40,33,29,.12) 72%);z-index:-1}
.band-title{color:#fff;max-width:13ch;margin-top:6px}
.band-overlay p{max-width:44ch;margin-top:20px;color:#EFE2D7}

/* pillars */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.pillar{background:var(--white);border-radius:var(--radius);padding:38px 32px;box-shadow:var(--shadow-sm);transition:transform .35s ease,box-shadow .35s ease}
.pillar:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.p-mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:#fff;font-family:var(--serif);font-style:italic;font-size:1.1rem;margin-bottom:20px}
.pillar h3{margin-bottom:12px}
.pillar p{color:var(--ink-soft);font-size:.96rem}

/* ingredients */
.ingredients-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}
.ingredients-media{position:relative}
.ingredients-media img{border-radius:var(--radius);box-shadow:var(--shadow);width:100%;object-fit:cover;aspect-ratio:3/4}
.ingredients-media::after{content:"";position:absolute;right:-16px;bottom:-16px;width:70%;height:70%;border:1px solid var(--gold-light);border-radius:var(--radius);z-index:-1}
.ing-list{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:0 44px}
.ing{padding:17px 0;border-bottom:1px solid var(--line)}
.ing dt{font-family:var(--serif);font-size:1.1rem;color:var(--ink)}
.ing dd{color:var(--ink-soft);font-size:.88rem;margin-top:4px}

/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.step{position:relative;text-align:center;padding:42px 28px 36px;background:var(--white);border-radius:var(--radius);border:1px solid var(--line)}
.step::before{content:attr(data-no);position:absolute;top:-26px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:#fff;font-family:var(--serif);font-style:italic;font-size:1.25rem;box-shadow:var(--shadow-sm)}
.step h3{margin:10px 0 10px}
.step p{color:var(--ink-soft);font-size:.95rem}

/* timeline */
.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.tl{padding:34px 32px;background:var(--white);border-radius:var(--radius);border-top:3px solid var(--gold);box-shadow:var(--shadow-sm)}
.tl-tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-deep);background:var(--rose-wash);padding:6px 14px;border-radius:100px;margin-bottom:16px}
.tl h3{margin-bottom:9px}
.tl p{color:var(--ink-soft);font-size:.94rem}
.results-note{text-align:center;margin-top:32px;font-size:.85rem;color:var(--ink-soft);font-style:italic}

/* buy / bundles */
.buy-section{background:
  radial-gradient(100% 70% at 50% 0%, var(--rose-wash), transparent 58%),var(--ivory)}
.bundles{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch}
.bundle{position:relative;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:32px 28px 34px;text-align:center;display:flex;flex-direction:column;align-items:center;transition:transform .35s ease,box-shadow .35s ease}
.bundle:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.bundle img{height:190px;object-fit:contain;margin-bottom:20px;mix-blend-mode:multiply}
.bundle.featured{border:2px solid var(--gold);box-shadow:var(--shadow);transform:scale(1.04)}
.bundle.featured:hover{transform:scale(1.04) translateY(-6px)}
.b-flag{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,var(--gold-light),var(--gold-deep));color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:7px 18px;border-radius:100px;box-shadow:var(--shadow-sm)}
.bundle h3{margin-bottom:4px}
.b-sub{color:var(--ink-soft);font-size:.87rem;margin-bottom:16px}
.b-price{margin-bottom:6px}
.b-price .now{font-family:var(--serif);font-size:1.75rem;color:var(--ink)}
.b-price .was{color:var(--ink-soft);text-decoration:line-through;font-size:.94rem;margin-left:6px}
.b-save{color:var(--rose-deep);font-size:.81rem;font-weight:600;margin-bottom:20px}
.bundle .btn{margin-top:auto;width:100%}
.bundle:not(.featured) .b-price{margin-bottom:20px}
.cod-row{display:flex;flex-wrap:wrap;gap:12px 30px;justify-content:center;margin-top:44px;font-size:.88rem;color:var(--ink-soft)}
.cod-row span{display:inline-flex;align-items:center;gap:8px}
.cod-row span::before{content:"";width:16px;height:16px;border-radius:50%;background:var(--rose-wash);border:1px solid var(--rose-soft);flex:none}

/* reviews */
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.review{background:var(--white);border-radius:var(--radius);padding:32px 30px;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.review .stars{display:flex;gap:3px;margin-bottom:16px}
.review .stars svg{width:16px;height:16px;fill:var(--gold)}
.review blockquote{font-family:var(--serif);font-size:1.13rem;line-height:1.5;color:var(--ink)}
.review figcaption{margin-top:18px;font-size:.83rem;color:var(--ink-soft);font-weight:600}

/* faq */
.faq{display:flex;flex-direction:column;gap:12px}
.faq details{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);padding:4px 26px;transition:box-shadow .25s,border-color .25s}
.faq details[open]{box-shadow:var(--shadow-sm);border-color:var(--rose-soft)}
.faq summary{list-style:none;cursor:pointer;padding:22px 0;font-family:var(--serif);font-size:1.15rem;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";width:11px;height:11px;flex:none;border-right:1.5px solid var(--gold);border-bottom:1.5px solid var(--gold);transform:rotate(45deg);transition:transform .25s;margin-right:4px}
.faq details[open] summary::after{transform:rotate(-135deg)}
.faq details p{padding:0 0 24px;color:var(--ink-soft);max-width:64ch}

/* botanical divider */
.divider{display:flex;justify-content:center;padding:8px 0}
.divider svg{width:150px;height:auto;stroke:var(--gold-light);fill:none;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}

/* final cta */
.final-cta{position:relative;padding:104px 0;text-align:center;color:var(--ink);background:linear-gradient(135deg,var(--rose-soft),var(--peach) 50%,var(--lilac))}
.final-cta h2{color:var(--ink);margin:8px auto 18px;max-width:18ch}
.final-cta p{max-width:46ch;margin:0 auto;color:var(--ink-soft)}
.final-cta .hero-actions{margin-top:36px}

/* footer */
.site-footer{background:var(--ink);color:#E5D8CA;padding:68px 0 26px}
.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:40px;padding-bottom:46px;border-bottom:1px solid rgba(255,255,255,.1)}
.f-logo{width:84px;margin-bottom:18px}
.f-brand p{font-size:.9rem;max-width:34ch;color:#CFC1B2;line-height:1.7}
.f-col h4{font-family:var(--sans);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-light);margin-bottom:18px}
.f-col a{display:block;padding:6px 0;font-size:.92rem;color:#E4D7C9;transition:color .2s}
.f-col a:hover{color:#fff}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-top:22px;font-size:.79rem;color:#B4A597}

/* sticky buy */
.sticky-buy{position:fixed;bottom:0;left:0;right:0;z-index:60;display:none;align-items:center;justify-content:space-between;gap:14px;background:rgba(252,247,243,.92);backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:12px 20px}
.sb-info strong{display:block;font-size:.92rem}
.sb-info span{font-size:.8rem;color:var(--ink-soft)}
.sticky-buy .btn{padding:13px 26px}

/* ===== motion ===== */
/* scroll reveal */
.js .reveal,.js .reveal-l,.js .reveal-r{opacity:0;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.js .reveal{transform:translateY(30px)}
.js .reveal-l{transform:translateX(-44px)}
.js .reveal-r{transform:translateX(44px)}
.js .reveal.in,.js .reveal-l.in,.js .reveal-r.in{opacity:1;transform:none}

/* header condenses on scroll */
.site-header{transition:box-shadow .3s ease,background .3s ease}
.site-header.scrolled{box-shadow:0 6px 24px -16px rgba(120,80,70,.4);background:rgba(252,247,243,.94)}

/* continuous ambient motion */
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes floatChip{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes haloPulse{0%,100%{transform:scale(1);opacity:.85}50%{transform:scale(1.06);opacity:1}}
@keyframes ringSpin{to{transform:rotate(360deg)}}
@keyframes ctaShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.hero-product{animation:float 6.5s ease-in-out infinite}
.hero-halo{animation:haloPulse 7s ease-in-out infinite}
.hero-ring{animation:ringSpin 40s linear infinite}
.hero-chip.c1{animation:floatChip 5s ease-in-out infinite}
.hero-chip.c2{animation:floatChip 5.6s ease-in-out infinite .5s}

/* image hover zoom */
.ingredients-media,.band{overflow:hidden}
.ingredients-media img{transition:transform .9s cubic-bezier(.16,1,.3,1)}
.ingredients-media:hover img{transform:scale(1.05)}
.band-img{transition:transform 1.1s cubic-bezier(.16,1,.3,1)}
.band:hover .band-img{transform:scale(1.04)}

@media (prefers-reduced-motion: reduce){
  .js .reveal,.js .reveal-l,.js .reveal-r{opacity:1;transform:none;transition:none}
  .hero-product,.hero-halo,.hero-ring,.hero-chip,.final-cta{animation:none}
  html{scroll-behavior:auto}
}

/* responsive */
@media(max-width:960px){
  /* directional reveals go vertical when stacked (avoids horizontal overflow) */
  .js .reveal-l,.js .reveal-r{transform:translateY(28px)}
  .nav-links,.nav-cta{display:none}
  .nav-toggle{display:flex}
  .site-header.open .mobile-menu{display:flex}
  .hero{min-height:80vh}
  .hero-content{padding-bottom:7vh}
  .hero-sub-grid{flex-direction:column;text-align:center;gap:18px}
  .hero-sub .lede{max-width:48ch;flex:none}
  .hero-sub .hero-trust{justify-content:center}
  .benefit-grid,.pillars,.steps,.timeline,.reviews,.bundles{grid-template-columns:1fr 1fr}
  .steps{row-gap:50px}
  .ingredients-layout{grid-template-columns:1fr;gap:40px}
  .trust-grid{grid-template-columns:1fr 1fr;gap:24px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
  .hero-chip.c1{left:0}
  .hero-chip.c2{right:0}
}
@media(max-width:600px){
  .container{padding:0 20px}
  h1{font-size:clamp(2.3rem,10vw,2.9rem)}
  h2{font-size:clamp(1.7rem,6.4vw,2.1rem)}
  .lede{font-size:1.04rem;margin-top:18px}
  .section-sub{font-size:1rem}
  /* tighter vertical rhythm so the page reads shorter */
  .section{padding:52px 0}
  .section-head{margin-bottom:34px}
  .announce{font-size:.72rem;letter-spacing:.02em;padding:10px 14px;line-height:1.45}
  /* hero overlay compact */
  .hero{min-height:86vh}
  .hero-content{padding-top:30px;padding-bottom:6vh}
  .hero-tag{font-size:1rem;margin-top:14px}
  .hero-content .btn{width:100%;margin-top:24px}
  .hero-rating{font-size:.74rem;padding:6px 13px;flex-wrap:wrap;justify-content:center;max-width:100%}
  .hero-trust{gap:8px 18px;justify-content:center}
  /* benefits stay 2-up to cut page length */
  .benefit-grid{grid-template-columns:1fr 1fr;gap:14px}
  .benefit{padding:24px 18px 26px}
  .benefit .ico{width:46px;height:46px;padding:12px;margin-bottom:14px}
  .benefit h3{font-size:1.08rem;margin-bottom:7px}
  .benefit p{font-size:.86rem}
  /* single-column blocks */
  .pillars,.steps,.timeline,.reviews,.bundles,.ing-list{grid-template-columns:1fr}
  .pillars{gap:16px}.timeline{gap:16px}.reviews{gap:16px}.bundles{gap:18px}
  .pillar{padding:28px 26px}
  .tl{padding:26px 26px}
  /* reviews become a swipeable carousel (contained so it never widens the page) */
  #reviews{overflow-x:hidden}
  .reviews{display:flex;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .reviews::-webkit-scrollbar{display:none}
  .review{flex:0 0 86%;min-width:0;scroll-snap-align:center;padding:26px 24px}
  .steps{row-gap:42px}
  .step{padding:36px 22px 26px}
  .ingredients-media::after{display:none}
  .ing-list{grid-template-columns:1fr 1fr;gap:0 18px;margin-top:18px}
  .ing{padding:13px 0}
  .ing dt{font-size:1rem}
  .ing dd{font-size:.82rem}
  /* shorter lifestyle band */
  .band{min-height:320px}
  .band-overlay{padding:44px 20px}
  /* trust 2x2 compact */
  .trust-grid{gap:18px}
  .trust-item{justify-content:flex-start}
  /* bundles compact */
  .bundle{padding:24px 22px}
  .bundle img{height:140px;margin-bottom:14px}
  .bundle.featured{transform:none}
  .bundle.featured:hover{transform:translateY(-6px)}
  .b-flag{top:-12px}
  .cod-row{gap:10px 22px;margin-top:30px;font-size:.84rem}
  /* faq */
  .faq summary{font-size:1.04rem;padding:18px 0}
  .faq details{padding:2px 20px}
  /* footer */
  .footer-grid{grid-template-columns:1fr 1fr;gap:28px;padding-bottom:36px}
  .f-brand{grid-column:1 / -1}
  .footer-bottom{justify-content:center;text-align:center}
  .site-footer{padding-bottom:96px}
  .final-cta{padding:72px 0}
  .sticky-buy{display:flex}
  body{padding-bottom:64px}
}
@media(max-width:380px){
  .benefit-grid{grid-template-columns:1fr}
}
