:root{
  color-scheme:light;
  --ink:#102f20;
  --ink-soft:#31503f;
  --forest:#153b27;
  --forest-deep:#0a2519;
  --lime:#c8f45d;
  --lime-hover:#b8eb45;
  --paper:#f7f8f3;
  --cream:#f0f1e9;
  --sage:#e8f1e0;
  --white:#fff;
  --line:rgba(16,47,32,.16);
  --muted:#567060;
  --focus:#0673bd;
  --radius:26px;
  --container:1230px;
  --ease:cubic-bezier(.2,.85,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:95px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.65 "Manrope","Segoe UI",system-ui,sans-serif;min-width:0}
img{display:block;max-width:100%}
button,input,select{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:none}
::selection{background:var(--lime);color:var(--ink)}
:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.container{width:min(calc(100% - 56px),var(--container));margin-inline:auto}
.skip-link{position:fixed;z-index:600;top:-100px;left:12px;background:var(--lime);color:var(--ink);padding:12px 18px;border-radius:8px}
.skip-link:focus{top:12px}
section[id]{scroll-margin-top:90px}
.section-pad{padding-block:clamp(72px,9vw,128px)}
.section-kicker{margin:0 0 28px;font-size:11px;line-height:1.4;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.display-title{font-size:clamp(38px,4.35vw,66px);font-weight:800;line-height:1.09;letter-spacing:-.052em;text-wrap:balance;margin:0}
.ink-green{color:#508f48}
.fineprint{font-size:11px;line-height:1.6}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:52px}
.section-heading .display-title{max-width:780px}
.section-heading__lead{max-width:320px;margin:0 0 6px;font-size:15px;color:var(--muted);line-height:1.75}

/* HEADER */
.header{z-index:120;position:sticky;top:0;background:rgba(247,248,243,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.header__inner{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:28px}
.wordmark{display:inline-flex;align-items:center;white-space:nowrap;font-size:23px;line-height:1;font-weight:800;letter-spacing:-.09em}
.wordmark__icon{font-size:26px;margin-right:9px;line-height:1;color:#559b49;letter-spacing:0}
.wordmark__dot{color:#80ad3c}
.nav{display:flex;align-items:center;gap:32px}
.nav a{font-size:13px;line-height:1.4;font-weight:700;color:var(--ink-soft);position:relative;padding-block:9px}
.nav a::after{content:"";position:absolute;bottom:4px;left:0;right:100%;height:1px;background:var(--forest);transition:right .2s ease}
.nav a:hover::after{right:0}
.header__actions{display:flex;align-items:center;gap:14px}
.header__buy{display:flex;gap:30px;align-items:center;justify-content:space-between;background:var(--ink);color:var(--white);padding:12px 18px;border-radius:999px;font-size:13px;font-weight:800;min-width:124px;transition:background .2s,transform .2s}
.header__buy:hover{background:#2a6543;transform:translateY(-2px)}
.menu-toggle{display:none;width:44px;height:44px;align-items:center;justify-content:center;flex-direction:column;gap:5px;border:1px solid var(--line);background:transparent;border-radius:50%;padding:10px}
.menu-toggle span{display:block;width:19px;height:2px;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s}
.header.is-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.header.is-open .menu-toggle span:nth-child(2){opacity:0}
.header.is-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* HERO */
.hero{background:var(--paper);position:relative;overflow-x:clip}
.hero__layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(28px,5vw,75px);padding-top:clamp(64px,7vw,102px);padding-bottom:clamp(70px,7vw,110px);min-height:690px}
.hero__copy{position:relative;z-index:2}
.eyebrow{display:inline-flex;align-items:center;gap:10px;border:1px solid #cbd8bc;border-radius:999px;padding:9px 17px;color:#43653b;background:#eef5e7;font-size:10px;font-weight:800;letter-spacing:.12em;line-height:1.45}
.eyebrow__pulse{width:7px;height:7px;border-radius:50%;background:#64a550;box-shadow:0 0 0 4px #d5e9c9}
.hero h1{max-width:760px;margin:35px 0 23px;font-weight:800;font-size:clamp(48px,5.55vw,81px);line-height:1.075;letter-spacing:-.067em;text-wrap:balance}
.hero h1 em{font-style:normal;color:#5a9e44}
.hero__lead{max-width:575px;font-size:16px;line-height:1.86;color:#405749;margin:0}
.hero__buttons{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:35px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:57px;padding:15px 24px;border:1px solid transparent;border-radius:100px;font-size:13px;font-weight:800;line-height:1.35;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}
.button:hover{transform:translateY(-3px)}
.button span{font-size:20px;font-weight:500;line-height:1}
.button--dark{background:var(--ink);color:var(--white);box-shadow:0 12px 28px rgba(16,47,32,.15)}
.button--dark:hover{background:#245840;box-shadow:0 14px 30px rgba(16,47,32,.22)}
.button--lime{background:var(--lime);color:var(--ink)}
.button--lime:hover{background:var(--lime-hover)}
.button--full{width:100%}
.text-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:13px;font-weight:800;border-bottom:1px solid currentColor;transition:gap .2s}
.text-link:hover{gap:18px}
.text-link span{font-size:18px}
.hero__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid #d5ddcd;margin-top:54px;max-width:510px}
.hero__facts div{display:flex;flex-direction:column;padding:24px 14px 0 0}
.hero__facts div+div{padding-left:22px;border-left:1px solid #d5ddcd}
.hero__facts strong{font-size:clamp(24px,2.7vw,36px);line-height:1.25;font-weight:800;letter-spacing:-.05em}
.hero__facts span{font-size:11px;line-height:1.5;color:#49654e;font-weight:600}
.hero__small{max-width:500px;color:#4d6652;margin-top:18px}
.hero__visual{position:relative;display:grid;place-items:center;min-height:620px;isolation:isolate}
.hero__visual::before{content:"";position:absolute;z-index:-2;inset:5% 2% 0 5%;background:radial-gradient(circle at 72% 23%,#d4f5a0,transparent 48%),#dff0d0;border-radius:53% 47% 37% 63% / 52% 48% 52% 48%;transform:rotate(-6deg)}
.hero__art-ring{position:absolute;inset:12% 7% 6% 1%;border:1px solid rgba(16,47,32,.20);border-radius:55% 45% 50% 50%;transform:rotate(7deg);z-index:-1}
.hero__picture-frame{width:min(76%,435px);border-radius:26px;overflow:hidden;transform:rotate(4deg);border:8px solid var(--white);background:var(--white);box-shadow:0 24px 65px rgba(14,63,36,.18);transition:transform .4s var(--ease)}
.hero__picture-frame:hover{transform:rotate(1deg) translateY(-6px)}
.hero__picture-frame img{aspect-ratio:3/4;width:100%;height:auto;object-fit:cover}
.hero__visual-label{position:absolute;top:1%;right:-1%;font-size:11px;font-weight:800;letter-spacing:.13em;transform:rotate(6deg);white-space:nowrap}
.small-circle{display:inline-block;width:12px;height:12px;border:2px solid var(--ink);border-radius:50%;margin-right:7px;vertical-align:-1px}
.hero__floating{position:absolute;bottom:7%;left:-3%;display:flex;flex-direction:column;padding:20px 25px;border-radius:22px;background:var(--white);box-shadow:0 12px 35px rgba(10,37,25,.12);transform:rotate(-6deg)}
.hero__floating strong{font-size:36px;letter-spacing:-.06em;line-height:1.1}
.hero__floating span{font-size:11px;color:var(--muted);font-weight:700;margin-top:2px}
.hero__ribbon{background:var(--lime);overflow:hidden;color:var(--ink);border-block:1px solid rgba(16,47,32,.15)}
.hero__ribbon-track{padding-block:18px;text-align:center;min-width:1080px;white-space:nowrap;letter-spacing:.2em;font-size:13px;font-weight:800;word-spacing:8px}

/* INTRO */
.intro{background:#fff}
.intro__layout{display:grid;grid-template-columns:.36fr 1fr;gap:50px}
.intro__layout .section-kicker{margin-top:14px;color:#39643e}
.intro__text{max-width:660px;font-size:17px;line-height:1.9;color:#52695b;margin:32px 0 0}

/* FORMULA */
.formula{background:var(--forest-deep);color:var(--white);overflow-x:clip}
.section-heading--light .section-heading__lead{color:#b6cabc}
.section-heading--light .display-title span{color:var(--lime)}
.formula .section-kicker{color:var(--lime)}
.formula__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.formula-card{min-height:390px;padding:32px;display:flex;flex-direction:column;border-radius:22px;color:var(--ink);position:relative;overflow:hidden}
.formula-card--lime{background:var(--lime)}
.formula-card--cream{background:#e9eddf}
.formula-card--white{background:#fff}
.formula-card__number{font-size:11px;line-height:1.5;font-weight:800;letter-spacing:.14em}
.formula-card__glyph{font-size:105px;line-height:1;margin-top:auto;margin-bottom:12px;letter-spacing:-.1em;color:#4e8a41;opacity:.68;font-weight:400}
.formula-card__glyph--round{font-family:Georgia,serif;font-size:130px}
.formula-card h3{margin:0 0 10px;font-size:25px;font-weight:800;letter-spacing:-.04em;line-height:1.25}
.formula-card p{font-size:13px;line-height:1.7;max-width:280px;margin:0;color:#3a5a46}
.formula__note{display:flex;gap:14px;align-items:start;margin-top:32px;max-width:790px;color:#bfcec2}
.formula__note-icon{display:grid;place-items:center;width:27px;height:27px;border:1px solid #738f6e;flex:none;border-radius:50%;font-weight:800;color:var(--lime)}
.formula__note p{margin:0;font-size:13px;line-height:1.8}

/* CALCULATOR */
.dosage{background:var(--sage);overflow-x:clip}
.dosage__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.94fr);gap:clamp(36px,7vw,120px);align-items:center}
.dosage__copy>p:not(.section-kicker){font-size:16px;color:#46644e;max-width:510px;line-height:1.9;margin:28px 0}
.dosage__micro{display:flex;gap:10px;align-items:center;font-size:12px;font-weight:800;letter-spacing:.04em}
.dosage__drop{display:grid;place-items:center;font-size:11px;width:30px;height:30px;border-radius:50%;background:#c6e9b5;color:#518e48}
.dosage__image{display:block;width:230px;height:auto;max-width:48%;aspect-ratio:3/4;object-fit:contain;margin-top:35px;border-radius:18px;box-shadow:0 15px 40px rgba(16,47,32,.13);transform:rotate(-4deg)}
.calculator{background:#fff;border:1px solid #dce6d6;padding:clamp(22px,3.5vw,38px);border-radius:27px;box-shadow:0 25px 65px rgba(36,87,48,.09)}
.calculator__top{display:flex;justify-content:space-between;gap:10px;font-size:10px;font-weight:800;letter-spacing:.12em;color:#4b6d53;border-bottom:1px solid var(--line);padding-bottom:20px}
.calculator h3{font-size:22px;line-height:1.4;font-weight:800;letter-spacing:-.04em;margin:27px 0 17px}
.dose-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.dose-option{display:flex;flex-direction:column;align-items:flex-start;gap:8px;background:#f4f7f0;border:2px solid transparent;border-radius:13px;padding:16px 13px;text-align:left;min-width:0;transition:border-color .2s,background .2s}
.dose-option:hover{border-color:#afd397}
.dose-option.is-active{background:#ebf9cf;border-color:#3f853a}
.dose-option span{font-size:12px;line-height:1.25;font-weight:600;color:#536b58}
.dose-option strong{font-size:19px;line-height:1.25;font-weight:800;white-space:nowrap}
.calculator__result{background:var(--forest);border-radius:20px;padding:28px 28px 20px;color:white;margin-top:22px}
.calculator__result-head{font-size:10px;letter-spacing:.13em;font-weight:800;color:#b4d4b6}
.calculator__value{display:flex;align-items:baseline;gap:14px;margin-top:12px;flex-wrap:wrap}
.calculator__value span:first-child{font-size:clamp(78px,10vw,112px);font-weight:800;line-height:1;letter-spacing:-.09em;color:var(--lime);font-variant-numeric:tabular-nums}
.calculator__value span:last-child{font-size:17px;font-weight:800}
.calculator__bar{background:rgba(255,255,255,.15);height:7px;border-radius:99px;overflow:hidden;margin:25px 0 22px}
.calculator__bar span{display:block;height:100%;border-radius:99px;background:var(--lime);transition:width .4s var(--ease)}
.calculator__result-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 0;border-top:1px solid rgba(255,255,255,.15);font-size:12px;color:#c3d5c9}
.calculator__result-row strong{font-size:15px;color:#fff;font-variant-numeric:tabular-nums}
.calculator__footnote{font-size:11px;line-height:1.7;color:#506a55;margin:18px 0 20px}

/* GALLERY */
.gallery{background:#fff}
.gallery__grid{display:grid;grid-template-columns:1.24fr 1fr 1fr;gap:17px}
.gallery__item{display:block;position:relative;min-width:0;background:#edf2e6;border:1px solid #dae5d3;border-radius:23px;padding:12px;transition:transform .2s var(--ease),box-shadow .2s var(--ease);overflow:hidden}
.gallery__item:hover{transform:translateY(-6px);box-shadow:0 15px 35px rgba(10,37,25,.14)}
.gallery__item img{width:100%;height:450px;object-fit:contain;border-radius:16px}
.gallery__expand{position:absolute;top:24px;right:24px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--ink);font-size:22px;box-shadow:0 5px 20px rgba(0,0,0,.1)}
.lightbox{position:fixed;inset:0;margin:auto;max-height:calc(100dvh - 32px);max-width:min(90vw,650px);padding:18px;border:none;border-radius:24px;background:white;box-shadow:0 25px 90px rgba(0,0,0,.35)}
.lightbox::backdrop{background:rgba(5,18,10,.85);backdrop-filter:blur(5px)}
.lightbox img{max-height:calc(100dvh - 70px);max-width:100%;object-fit:contain;border-radius:14px}
.lightbox__close{position:absolute;top:28px;right:28px;width:43px;height:43px;display:grid;place-items:center;border:none;border-radius:50%;background:var(--ink);color:#fff;font-size:28px;line-height:1}

/* CARE */
.care{background:#f0f1e9}
.care__grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1fr);gap:clamp(40px,9vw,130px);align-items:start}
.care__grid>div:first-child>p:not(.section-kicker){max-width:470px;color:var(--muted);font-size:16px;line-height:1.85;margin:24px 0}
.care__panel{background:white;border-radius:23px;padding:clamp(24px,3vw,42px);border:1px solid #dbe2d6}
.care__label{font-size:11px;font-weight:800;letter-spacing:.15em;padding-bottom:18px;border-bottom:1px solid var(--line);color:#476b4f}
.care__rule{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}
.care__rule:last-child{border-bottom:0;padding-bottom:0}
.care__rule-icon{display:grid;place-items:center;border-radius:50%;background:#eaf5df;color:#397b3b;width:40px;height:40px;font-size:12px;font-weight:800}
.care__rule strong{display:block;font-size:17px;letter-spacing:-.03em;line-height:1.35}
.care__rule span:last-child{display:block;color:#4c6c53;font-size:13px;line-height:1.75;margin-top:6px}

/* REVIEWS */
.reviews{background:#fff}
.reviews__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.review{margin:0;border:1px solid var(--line);padding:30px;min-height:278px;display:flex;flex-direction:column;border-radius:18px;background:#fafbf8}
.review__quote{color:#7da955;font-family:Georgia,serif;font-size:75px;line-height:.7}
.review blockquote{font-size:18px;line-height:1.6;font-weight:700;letter-spacing:-.025em;margin:24px 0 30px}
.review figcaption{display:flex;flex-direction:column;gap:2px;margin-top:auto;font-size:12px}
.review figcaption strong{font-weight:800}
.review figcaption span{color:#506b54}
.reviews__source{display:inline-flex;align-items:center;gap:14px;margin-top:30px;border-bottom:1px solid var(--ink);font-size:13px;font-weight:800;padding-bottom:6px}
.reviews__source span{font-size:20px}

/* FAQ */
.faq{background:var(--sage)}
.faq__grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1fr);gap:clamp(36px,8vw,130px)}
.faq__help{font-size:14px;color:var(--muted);max-width:360px;margin-top:24px}
.faq__help a{font-weight:800;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.faq__items{border-top:1px solid #a9c0aa}
.faq details{border-bottom:1px solid #a9c0aa}
.faq summary{list-style:none;display:flex;gap:15px;align-items:center;justify-content:space-between;cursor:pointer;min-height:83px;padding:23px 2px;font-size:17px;font-weight:800;letter-spacing:-.025em;line-height:1.45}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;display:grid;place-items:center;width:35px;height:35px;border-radius:50%;border:1px solid #9dbca1;font-weight:400;font-size:24px;transition:transform .2s}
.faq details[open] summary::after{content:"−";transform:rotate(180deg)}
.faq details>p{margin:-2px 35px 24px 0;color:#4c6852;font-size:14px;line-height:1.85;max-width:540px}

/* PURCHASE */
.purchase{background:#fff}
.purchase__box{background:var(--forest-deep);border-radius:30px;color:#fff;padding:clamp(36px,6vw,85px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:25px;align-items:center;position:relative;overflow:hidden;isolation:isolate}
.purchase__box::before{content:"";position:absolute;z-index:-1;width:560px;height:560px;right:-100px;top:-130px;border:1px solid #648360;border-radius:50%;box-shadow:0 0 0 55px rgba(116,154,94,.05),0 0 0 120px rgba(116,154,94,.04)}
.purchase__content{z-index:2}
.purchase .section-kicker{color:var(--lime)}
.purchase h2 em{color:var(--lime);font-style:normal}
.purchase__content>p:not(.section-kicker):not(.fineprint){max-width:480px;color:#c2d4c6;font-size:16px;line-height:1.85;margin:22px 0 25px}
.purchase__price{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin:0 0 26px}
.purchase__price strong{font-size:39px;font-weight:800;letter-spacing:-.06em;line-height:1.2}
.purchase__price span{font-size:11px;color:#bbcfbe}
.purchase .fineprint{color:#a7bbad;max-width:480px;margin:15px 0 0}
.purchase__visual{z-index:2;justify-self:center;width:min(100%,310px);transform:rotate(8deg);background:var(--white);border:7px solid #fff;border-radius:17px;box-shadow:0 30px 60px rgba(0,0,0,.26);overflow:hidden}
.purchase__visual img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.purchase__decoration{display:none}

/* FOOTER */
.footer{background:var(--paper);border-top:1px solid var(--line)}
.footer__top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;padding-block:48px}
.footer__top>div{display:flex;flex-direction:column;gap:7px}
.footer__top>div span{font-size:11px;font-weight:800;letter-spacing:.08em;color:#4b6650;text-transform:uppercase}
.footer__top>div a{font-size:13px;font-weight:700;overflow-wrap:anywhere}
.footer__top>div a:hover,.footer__bottom a:hover{text-decoration:underline;text-underline-offset:3px}
.footer__bottom{border-top:1px solid var(--line);padding-block:22px;display:flex;align-items:start;justify-content:space-between;gap:40px;font-size:11px;color:#4d6752}
.footer__bottom p{margin:0;max-width:690px}
.footer__bottom a{white-space:nowrap;font-weight:800}
.mobile-cta{display:none}

@media (max-width:1100px){
  .nav{gap:20px}
  .hero__layout{gap:25px}
  .hero__visual{min-height:530px}
  .hero__floating{left:0}
  .formula-card{padding:26px}
  .formula-card h3{font-size:22px}
  .gallery__item img{height:395px}
}
@media (max-width:860px){
  .nav{display:none;position:absolute;left:0;right:0;top:calc(100% - 1px);padding:16px max(28px,calc((100vw - var(--container))/2)) 24px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 14px 25px rgba(16,47,32,.1)}
  .header.is-open .nav{display:flex;flex-direction:column;align-items:stretch;gap:0}
  .nav a{font-size:15px;padding:12px 0}
  .menu-toggle{display:flex}
  .hero__layout{grid-template-columns:minmax(0,1fr) minmax(0,.75fr)}
  .hero h1{font-size:clamp(48px,6.3vw,66px)}
  .hero__visual{min-height:440px}
  .hero__picture-frame{width:82%}
  .hero__facts{margin-top:35px}
  .formula__grid{gap:11px}
  .formula-card{padding:22px;min-height:350px}
  .formula-card h3{font-size:19px}
  .dosage__grid,.care__grid,.faq__grid{gap:34px}
  .dosage__image{width:180px}
  .gallery__item img{height:320px}
  .review{padding:24px}
  .review blockquote{font-size:16px}
}
@media (max-width:700px){
  .container{width:min(calc(100% - 36px),var(--container))}
  .header__inner{min-height:68px}
  .wordmark{font-size:21px}
  .header__buy{display:none}
  .hero__layout{grid-template-columns:minmax(0,1fr);min-height:unset;padding-top:48px;padding-bottom:52px;gap:45px}
  .hero h1{font-size:clamp(42px,11vw,64px);max-width:570px;margin-top:26px;letter-spacing:-.06em}
  .hero__lead{font-size:15px}
  .hero__buttons{margin-top:28px;gap:18px}
  .hero__visual{min-height:490px;max-width:530px;width:100%;margin:auto}
  .hero__picture-frame{width:min(72%,320px)}
  .hero__visual-label{top:1%;right:3%}
  .hero__floating{left:2%;bottom:9%}
  .hero__ribbon-track{font-size:10px;padding-block:14px}
  .intro__layout{grid-template-columns:1fr;gap:10px}
  .intro .section-kicker{margin:0 0 10px}
  .intro__text{font-size:15px;margin-top:22px}
  .section-heading{display:block;margin-bottom:30px}
  .section-heading__lead{max-width:560px;margin:20px 0 0}
  .display-title{font-size:clamp(38px,9vw,52px)}
  .formula__grid{grid-template-columns:1fr;gap:12px}
  .formula-card{min-height:250px;padding:24px}
  .formula-card__glyph{font-size:65px;margin:17px 0 8px}
  .formula-card__glyph--round{font-size:80px}
  .formula-card h3{font-size:24px}
  .formula-card p{max-width:500px}
  .dosage__grid,.care__grid,.faq__grid{grid-template-columns:1fr}
  .dosage__image{display:none}
  .dosage__copy>p:not(.section-kicker){margin:18px 0}
  .dosage__micro{margin:15px 0 22px}
  .gallery__grid{grid-template-columns:1fr 1fr;gap:12px}
  .gallery__item--large{grid-column:1 / -1}
  .gallery__item img{height:270px}
  .gallery__item--large img{height:420px}
  .reviews__grid{grid-template-columns:1fr}
  .review{min-height:225px}
  .care__panel{padding:24px}
  .faq__items{margin-top:18px}
  .purchase__box{grid-template-columns:1fr;padding:38px 28px;gap:20px}
  .purchase__visual{width:min(60%,230px);transform:rotate(5deg)}
  .purchase__decoration{font-size:110px;bottom:-22px}
  .footer__top{grid-template-columns:1fr 1fr;gap:25px}
  .footer__top>.wordmark{grid-column:1 / -1}
  .mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:100;background:rgba(255,255,255,.97);border-top:1px solid var(--line);padding:11px max(18px,env(safe-area-inset-right)) calc(11px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));align-items:center;justify-content:space-between;gap:15px;box-shadow:0 -5px 22px rgba(10,37,25,.06)}
  .mobile-cta span{display:flex;flex-direction:column;gap:0}
  .mobile-cta strong{font-size:13px;line-height:1.35}
  .mobile-cta small{font-size:11px;color:var(--muted)}
  .mobile-cta a{font-size:13px;font-weight:800;line-height:1.3;background:var(--ink);color:#fff;border-radius:99px;min-width:125px;text-align:center;padding:13px 22px}
  body{padding-bottom:calc(74px + env(safe-area-inset-bottom))}
}
@media (max-width:410px){
  .hero h1{font-size:clamp(39px,10.8vw,44px)}
  .eyebrow{font-size:9px;padding:9px 11px}
  .hero__buttons{flex-direction:column;align-items:stretch}
  .hero__buttons .button{justify-content:space-between}
  .hero__buttons .text-link{align-self:flex-start}
  .hero__facts strong{font-size:23px}
  .hero__facts div{padding-right:8px}
  .hero__facts div+div{padding-left:12px}
  .hero__facts span{font-size:10px}
  .hero__visual{min-height:410px}
  .hero__floating{padding:13px 18px}
  .hero__floating strong{font-size:27px}
  .hero__visual-label{font-size:9px}
  .dose-option{padding:11px 7px;gap:5px}
  .dose-option span{font-size:10px}
  .dose-option strong{font-size:17px}
  .calculator{padding:19px}
  .calculator__result{padding:23px 19px}
  .calculator__value span:first-child{font-size:72px}
  .calculator__value span:last-child{font-size:15px}
  .gallery__item{padding:6px;border-radius:15px}
  .gallery__item--large img{height:360px}
  .gallery__item img{height:220px}
  .gallery__expand{top:12px;right:12px;width:34px;height:34px}
  .footer__top{grid-template-columns:1fr}
  .footer__top>.wordmark{grid-column:auto}
  .footer__bottom{gap:18px;flex-direction:column}
}
@media (prefers-reduced-motion:no-preference){
  .hero__copy{animation:appear-up .7s both}
  .hero__visual{animation:appear-up .8s .12s both}
  @keyframes appear-up{from{opacity:.7;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
