:root{--green:#0f6b5b;--green-dark:#093f38;--green-soft:#dceee8;--mango:#f5b642;--coral:#f26b5b;--cream:#fff8ea;--ink:#17332d;--muted:#64756f;--white:#fff;--line:rgba(23,51,45,.14);--shadow:0 24px 70px rgba(13,62,52,.14);--radius:28px;--radius-sm:16px;--shell:min(1180px,calc(100% - 40px));--display:Georgia,'Times New Roman',serif;--sans:Inter,Avenir,'Segoe UI',Helvetica,Arial,sans-serif}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}body.drawer-open,body.modal-open{overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{color:inherit}.shell{width:var(--shell);margin-inline:auto}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:999;background:#fff;padding:.75rem 1rem;border-radius:10px;box-shadow:var(--shadow)}.skip-link:focus{top:1rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.announcement{background:var(--green-dark);color:#fff;text-align:center;padding:.38rem 1rem;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.site-header{height:86px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.95);position:sticky;top:0;z-index:50;backdrop-filter:blur(12px)}.header-inner{height:100%;display:flex;align-items:center;gap:28px}.wordmark{display:inline-flex;flex-direction:column;line-height:.82;letter-spacing:.16em;font-size:.82rem}.wordmark span{font-weight:800}.wordmark b{font-family:var(--display);font-size:1.18rem;letter-spacing:.06em;color:var(--green);font-style:italic}.wordmark-light,.wordmark-light b{color:#fff}.main-nav{display:flex;align-items:center;gap:1.25rem;margin-left:auto}.main-nav a{font-size:.88rem;font-weight:650;position:relative}.main-nav a:after{content:"";height:2px;background:var(--mango);position:absolute;left:0;right:100%;bottom:-6px;transition:.2s}.main-nav a:hover:after,.main-nav a:focus-visible:after{right:0}.header-actions{display:flex;align-items:center;gap:.75rem}.header-cta{background:var(--green);color:#fff;padding:.6rem 1rem;border-radius:999px;font-size:.85rem;font-weight:750}.cart-button,.icon-button{border:0;background:transparent;cursor:pointer}.cart-button{width:46px;height:46px;border:1px solid var(--line);border-radius:50%;position:relative;display:grid;place-items:center}.cart-button svg{width:22px;fill:none;stroke:currentColor;stroke-width:1.8}.cart-button span{position:absolute;right:-4px;top:-5px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--coral);color:#fff;font-size:.7rem;font-weight:800}.menu-button{display:none;width:42px;height:42px;padding:9px}.menu-button span:not(.sr-only){display:block;width:22px;height:2px;background:var(--ink);margin:5px}.eyebrow{display:block;color:var(--green);font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.55rem}.eyebrow-light{color:#ffe09b}h1,h2,h3,h4,p{margin-top:0}h1,h2,.display{font-family:var(--display);font-weight:500;line-height:1.02;letter-spacing:-.035em}h1{font-size:clamp(3rem,7.2vw,6.6rem);margin-bottom:1.3rem}h2{font-size:clamp(2.25rem,4.5vw,4.2rem);margin-bottom:1.1rem}h3{line-height:1.25}.lead{font-size:clamp(1.05rem,1.5vw,1.25rem);color:var(--muted);max-width:64ch}.button{min-height:48px;border:1px solid transparent;border-radius:999px;padding:.75rem 1.25rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:800;cursor:pointer;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--green);color:#fff}.button-primary:hover{background:var(--green-dark)}.button-secondary{background:var(--mango);color:var(--ink)}.button-ghost{border-color:currentColor;background:transparent}.button-light{background:#fff;color:var(--green-dark)}.button-block{width:100%}.text-link{display:inline-flex;border:0;background:transparent;padding:0;color:var(--green);font-weight:800;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.button-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.75rem}.section{padding:clamp(72px,9vw,120px) 0}.section-tight{padding:60px 0}.section-cream{background:var(--cream)}.section-green{background:var(--green-dark);color:#fff}.section-pink{background:#fff0ed}.section-head{max-width:760px;margin-bottom:2.6rem}.section-head.center{text-align:center;margin-inline:auto}.section-head.center .lead{margin-inline:auto}.hero{background:var(--cream);min-height:760px;display:grid;align-items:center;overflow:hidden;position:relative}.hero:before{content:"";position:absolute;width:380px;height:380px;border-radius:50%;background:var(--mango);filter:blur(0);right:-190px;top:80px;opacity:.7}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:clamp(30px,6vw,90px);padding-block:70px}.hero h1 span{color:var(--green);font-style:italic}.hero-copy{position:relative;z-index:2}.hero-note{display:flex;gap:1rem;align-items:center;margin-top:2rem;color:var(--muted);font-size:.9rem}.hero-note i{width:42px;height:42px;border-radius:50%;background:var(--green-soft);display:grid;place-items:center;color:var(--green);font-style:normal;font-weight:900}.hero-visual{position:relative;min-height:590px;display:grid;place-items:center}.hero-visual:before{content:"";position:absolute;width:84%;aspect-ratio:1;border-radius:50%;background:var(--green);right:3%;top:7%}.hero-visual img{position:relative;width:min(520px,100%);border-radius:260px 260px 42px 42px;box-shadow:var(--shadow);aspect-ratio:1/1.12;object-fit:cover}.floating-label{position:absolute;z-index:2;background:#fff;border-radius:18px;padding:.85rem 1.1rem;box-shadow:var(--shadow);font-weight:800;right:-10px;bottom:12%;transform:rotate(-3deg)}.brand-strip{background:var(--green);color:#fff;overflow:hidden;padding:16px 0}.brand-strip-track{display:flex;gap:3rem;width:max-content;font-family:var(--display);font-size:1.12rem;font-style:italic;animation:marquee 28s linear infinite}.brand-strip-track span:after{content:"◆";font-family:var(--sans);font-size:.55rem;color:var(--mango);margin-left:3rem}@keyframes marquee{to{transform:translateX(-50%)}}.editorial-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,7vw,96px);align-items:center}.editorial-image{border-radius:var(--radius);overflow:hidden;position:relative;box-shadow:var(--shadow)}.editorial-image img{width:100%;aspect-ratio:4/5;object-fit:cover}.editorial-image.landscape img{aspect-ratio:5/4}.editorial-image:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.35);border-radius:inherit;pointer-events:none}.feature-list{display:grid;gap:0;margin-top:2rem}.feature-row{display:grid;grid-template-columns:48px 1fr;gap:1rem;padding:1.2rem 0;border-top:1px solid var(--line)}.feature-row:last-child{border-bottom:1px solid var(--line)}.feature-num{font-family:var(--display);font-style:italic;font-size:1.6rem;color:var(--coral)}.feature-row h3{margin:0 0 .2rem}.feature-row p{margin:0;color:var(--muted)}.character-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.character-card{padding:1.6rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.character-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-weight:900;margin-bottom:1.25rem}.character-card p{color:var(--muted);margin-bottom:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;counter-reset:step}.step{position:relative;padding:2rem;border-radius:var(--radius);background:#fff;border:1px solid var(--line);min-height:250px}.step:before{counter-increment:step;content:"0" counter(step);font-family:var(--display);font-size:3rem;color:var(--mango);display:block;margin-bottom:2.5rem}.step:after{content:"";position:absolute;width:40px;height:40px;border-radius:50%;right:24px;top:24px;background:var(--green-soft)}.ingredient-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.ingredient-card{padding:1.35rem;background:#fff;border-radius:var(--radius-sm);border:1px solid var(--line);min-height:190px;display:flex;flex-direction:column}.ingredient-card:nth-child(3n+1){border-top:4px solid var(--green)}.ingredient-card:nth-child(3n+2){border-top:4px solid var(--mango)}.ingredient-card:nth-child(3n){border-top:4px solid var(--coral)}.ingredient-card h3{font-size:1.02rem;margin-bottom:.25rem}.ingredient-card em{font-family:var(--display);color:var(--green);font-size:.92rem}.ingredient-card p{color:var(--muted);font-size:.9rem;margin:auto 0 0}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.review-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 30px rgba(23,51,45,.06)}.review-card>img,.review-initial{width:100%;aspect-ratio:1.35/1;object-fit:cover}.review-initial{display:grid;place-items:center;background:var(--green-soft);font-family:var(--display);font-size:4rem;color:var(--green)}.review-copy{padding:1.45rem}.review-copy p{font-family:var(--display);font-size:1.12rem;line-height:1.45;margin:.75rem 0}.review-copy strong,.review-copy small{display:block}.review-copy small{color:var(--muted)}.stars{color:#e7a415;letter-spacing:.08em}.content-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.content-card{min-height:390px;border-radius:var(--radius);padding:2rem;display:flex;flex-direction:column;background:var(--green);color:#fff;position:relative;overflow:hidden}.content-card:nth-child(2){background:var(--mango);color:var(--ink)}.content-card:nth-child(3){background:var(--coral)}.content-card .content-kicker{font-size:.72rem;letter-spacing:.14em;font-weight:900}.content-card h3{font-family:var(--display);font-weight:500;font-size:2rem;line-height:1.08;margin:auto 0 1rem}.content-card .text-link{color:currentColor}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.package-option{position:relative;display:block;cursor:pointer}.package-option input{position:absolute;opacity:0}.package-option>span{height:100%;min-height:226px;display:flex;flex-direction:column;padding:1.5rem;border:2px solid var(--line);border-radius:var(--radius-sm);background:#fff;transition:.2s}.package-option input:focus-visible+span{outline:3px solid var(--mango);outline-offset:3px}.package-option input:checked+span{border-color:var(--green);box-shadow:0 0 0 4px rgba(15,107,91,.12),var(--shadow);transform:translateY(-3px)}.package-option strong{font-size:1.1rem}.package-option del{color:var(--muted);margin-top:1.2rem}.package-option b{font-family:var(--display);font-size:2rem;margin-top:auto}.package-option small{color:var(--muted)}.package-note{margin-top:1.2rem;color:var(--muted)}.package-badge{position:absolute;z-index:2;right:14px;top:-12px;background:var(--coral);color:#fff;padding:.3rem .65rem;border-radius:999px;font-size:.72rem;font-weight:800}.price-summary{display:flex;align-items:baseline;gap:1rem;margin:1.3rem 0}.price-summary strong{font-family:var(--display);font-size:2.8rem}.price-summary del{color:var(--muted)}.price-saving{display:block;color:var(--green);font-weight:800;margin-top:-.8rem;margin-bottom:1rem}.quick-order{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,90px);align-items:start}.form-card{background:#fff;padding:clamp(1.4rem,4vw,2.6rem);border-radius:var(--radius);box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field{display:grid;gap:.35rem}.field-full{grid-column:1/-1}.field label{font-weight:750;font-size:.86rem}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:.82rem 1rem;min-height:50px;color:var(--ink)}.field textarea{min-height:130px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{outline:3px solid rgba(15,107,91,.14);border-color:var(--green)}.honeypot{position:absolute!important;left:-9999px!important}.form-status{min-height:24px;margin-top:.75rem;font-weight:700}.form-status.success{color:var(--green)}.form-status.error{color:#a62f25}.page-hero{padding:100px 0 80px;background:var(--cream);overflow:hidden}.page-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}.page-hero h1{font-size:clamp(3.2rem,6vw,6rem);max-width:900px}.page-hero-visual img{border-radius:var(--radius);aspect-ratio:4/3;object-fit:cover;box-shadow:var(--shadow)}.breadcrumbs{display:flex;gap:.4rem;color:var(--muted);font-size:.82rem;margin-bottom:2rem}.breadcrumbs a{text-decoration:underline}.product-main{padding:64px 0}.product-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,6vw,80px);align-items:start}.gallery{position:sticky;top:118px}.gallery-main{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--cream)}.gallery-main img{width:100%;aspect-ratio:1/1;object-fit:cover;cursor:zoom-in}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.9);box-shadow:0 8px 20px rgba(0,0,0,.13);cursor:pointer}.gallery-prev{left:14px}.gallery-next{right:14px}.gallery-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:.65rem;margin-top:.75rem}.gallery-thumb{border:2px solid transparent;border-radius:12px;padding:0;overflow:hidden;background:var(--cream);cursor:pointer}.gallery-thumb.active{border-color:var(--green)}.gallery-thumb img{aspect-ratio:1;object-fit:cover}.product-info h1{font-size:clamp(3.1rem,5vw,5rem);margin-bottom:.75rem}.rating-line{display:flex;gap:.7rem;align-items:center;color:var(--muted);font-size:.9rem}.product-bullets{display:grid;gap:.5rem;margin:1.5rem 0;padding:0;list-style:none}.product-bullets li:before{content:"✓";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--green-soft);color:var(--green);font-weight:900;margin-right:.65rem}.microcopy{font-size:.86rem;color:var(--muted);margin-top:.7rem}.science-banner{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:var(--radius);background:var(--green-dark);color:#fff}.science-banner>div{padding:clamp(2rem,5vw,4.5rem)}.science-banner img{width:100%;height:100%;object-fit:cover;min-height:440px}.article-shell{width:min(780px,calc(100% - 40px));margin-inline:auto}.article-wide{width:min(1120px,calc(100% - 40px));margin-inline:auto;display:grid;grid-template-columns:minmax(0,760px) 320px;gap:48px;align-items:start}.article-body{font-size:1.05rem}.article-body h2{font-size:clamp(2rem,4vw,3.25rem);margin-top:3.3rem}.article-body h3{font-family:var(--display);font-size:1.5rem;margin-top:2.2rem}.article-body p,.article-body li{color:#3d514b}.article-body blockquote{margin:2.2rem 0;padding:1.4rem 1.6rem;border-left:4px solid var(--mango);background:var(--cream);font-family:var(--display);font-size:1.25rem}.article-body a{color:var(--green);text-decoration:underline}.sponsored-label{display:inline-flex;background:var(--coral);color:#fff;border-radius:999px;padding:.42rem .8rem;font-size:.75rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.sticky-product{position:sticky;top:118px;border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem;background:#fff;box-shadow:var(--shadow)}.sticky-product img{border-radius:18px;aspect-ratio:1;object-fit:cover}.sticky-product h3{font-family:var(--display);font-size:1.65rem;margin:.9rem 0 .25rem}.inline-product{display:none;margin:2rem 0;padding:1.4rem;background:var(--green-soft);border-radius:var(--radius-sm)}.source-list{padding:1.4rem 1.4rem 1.4rem 2.5rem;background:#f4f7f5;border-radius:var(--radius-sm);font-size:.9rem}.source-list li+li{margin-top:.6rem}.faq-list{display:grid;gap:.75rem}.faq-list details{border:1px solid var(--line);border-radius:var(--radius-sm);padding:1rem 1.2rem;background:#fff}.faq-list summary{font-weight:850;cursor:pointer}.faq-list details p{color:var(--muted);margin:.75rem 0 0}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,7vw,90px)}.contact-card{background:var(--green-dark);color:#fff;border-radius:var(--radius);padding:2.2rem}.contact-item{padding:1.2rem 0;border-top:1px solid rgba(255,255,255,.2)}.contact-item span{display:block;color:#b8d7d0;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}.contact-item a,.contact-item address{font-size:1.12rem;font-style:normal;font-weight:750}.cart-page{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:start}.cart-panel,.summary-panel{border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;background:#fff}.cart-item{display:grid;grid-template-columns:86px 1fr auto;gap:1rem;align-items:center}.cart-item img{width:86px;height:86px;object-fit:contain;background:var(--cream);border-radius:14px}.cart-item span{display:block;color:var(--muted);font-size:.88rem}.cart-totals,.summary-row{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--line);margin-top:1rem}.summary-row{margin-top:0}.summary-row.total{font-size:1.25rem}.cart-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1rem}.empty-state{text-align:center;padding:2rem 1rem}.empty-icon{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-size:2.5rem;margin:0 auto 1rem}.confirmation{width:min(720px,calc(100% - 40px));margin:80px auto;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:clamp(2rem,6vw,4.5rem);text-align:center;box-shadow:var(--shadow)}.checkmark{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-size:2rem;margin:0 auto 1.5rem}.order-details{text-align:left;background:var(--cream);padding:1.3rem;border-radius:var(--radius-sm);margin:2rem 0}.order-details .summary-row:last-child{font-weight:850}.legal-body{width:min(880px,calc(100% - 40px));margin:0 auto}.legal-body h2{font-size:2rem;margin-top:2.8rem}.legal-body h3{margin-top:2rem}.legal-body p,.legal-body li{color:#43554f}.legal-note{padding:1.2rem;border-left:4px solid var(--mango);background:var(--cream)}.drawer-backdrop{position:fixed;inset:0;background:rgba(9,35,30,.45);z-index:98}.cart-drawer{position:fixed;z-index:99;right:0;top:0;bottom:0;width:min(430px,100%);background:#fff;padding:1.5rem;transform:translateX(105%);transition:transform .28s;box-shadow:-20px 0 60px rgba(0,0,0,.18);overflow:auto}.cart-drawer.open{transform:translateX(0)}.drawer-head{display:flex;justify-content:space-between;align-items:start;padding-bottom:1rem;border-bottom:1px solid var(--line);margin-bottom:1rem}.drawer-head h2{font-size:2.2rem;margin:0}.drawer-head .icon-button{font-size:2rem}.drawer-content .text-link{display:block;text-align:center;margin:1rem auto}.modal,.lightbox{position:fixed;inset:0;z-index:120;background:rgba(9,35,30,.78);display:grid;place-items:center;padding:20px}.modal-card{position:relative;background:#fff;border-radius:var(--radius);padding:2rem;width:min(520px,100%);box-shadow:var(--shadow)}.modal-close{position:absolute;right:16px;top:12px;font-size:2rem}.toggle-row{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.1rem 0;border-top:1px solid var(--line)}.toggle-row span,.toggle-row small{display:block}.toggle-row small{color:var(--muted)}.toggle-row input{width:24px;height:24px;accent-color:var(--green)}.lightbox img{max-width:min(900px,90vw);max-height:88vh;border-radius:20px}.lightbox-close{position:absolute;right:24px;top:18px;color:#fff;font-size:2.5rem}.cookie-banner{position:fixed;z-index:110;left:20px;right:20px;bottom:20px;margin:auto;width:min(1080px,calc(100% - 40px));background:#fff;border:1px solid var(--line);border-radius:22px;padding:1.25rem 1.4rem;box-shadow:0 22px 70px rgba(0,0,0,.2);display:flex;align-items:center;justify-content:space-between;gap:2rem}.cookie-banner p{margin:0;color:var(--muted)}.cookie-actions{display:flex;gap:.6rem;align-items:center;flex-shrink:0}.site-footer{background:#092f2a;color:#fff;padding:74px 0 26px}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr 1fr 1.4fr;gap:3rem}.site-footer h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:#ffd36d}.site-footer p,.site-footer address{color:#b8cdc8;font-style:normal}.site-footer a{display:block;margin:.45rem 0}.footer-brand>a:not(.wordmark){text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.16);padding-top:1.2rem;margin-top:3rem;color:#9eb7b1;font-size:.82rem}
@media(max-width:1050px){.main-nav{position:fixed;left:0;right:0;top:118px;background:#fff;display:none;flex-direction:column;align-items:stretch;padding:1.4rem 20px;border-bottom:1px solid var(--line);box-shadow:0 20px 30px rgba(0,0,0,.08)}.main-nav.open{display:flex}.main-nav a{font-size:1rem;padding:.55rem 0}.menu-button{display:block;margin-left:auto}.header-inner>.wordmark{order:0}.header-inner>.menu-button{order:1}.main-nav{order:4}.header-actions{order:2}.header-cta{display:none}.ingredient-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.article-wide{grid-template-columns:minmax(0,1fr) 280px}}
@media(max-width:800px){:root{--shell:min(100% - 30px,1180px)}h1{font-size:clamp(2.8rem,14vw,4.4rem)}.hero{min-height:auto}.hero-grid,.editorial-split,.page-hero-grid,.product-layout,.quick-order,.contact-grid,.cart-page{grid-template-columns:1fr}.hero-grid{padding-block:54px}.hero-visual{min-height:480px}.floating-label{right:0}.character-grid,.steps,.content-trio{grid-template-columns:1fr 1fr}.ingredient-grid{grid-template-columns:repeat(2,1fr)}.review-grid{grid-template-columns:1fr 1fr}.page-hero{padding:72px 0 60px}.page-hero-visual{order:-1}.gallery{position:relative;top:auto}.article-wide{display:block}.sticky-product{display:none}.inline-product{display:block}.footer-grid{grid-template-columns:1fr 1fr}.cookie-banner{align-items:stretch;flex-direction:column;gap:1rem}.cookie-actions{flex-wrap:wrap}.science-banner{grid-template-columns:1fr}.science-banner img{min-height:320px}.science-banner>div{order:2}}
@media(max-width:560px){body{font-size:16px}.announcement{font-size:.68rem}.site-header{height:72px}.main-nav{top:102px}.header-inner{gap:10px}.wordmark{font-size:.66rem}.wordmark b{font-size:1rem}.cart-button{width:42px;height:42px}.section{padding:68px 0}.hero-visual{min-height:380px}.hero-visual img{border-radius:200px 200px 30px 30px}.floating-label{font-size:.78rem;bottom:6%}.character-grid,.steps,.content-trio,.ingredient-grid,.review-grid,.package-grid,.form-grid{grid-template-columns:1fr}.content-card{min-height:300px}.package-option>span{min-height:180px}.gallery-arrow{display:none}.gallery-thumbs{gap:.35rem}.product-main{padding-top:34px}.price-summary{flex-direction:column;gap:0}.button-row .button{width:100%}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:.3rem}.cart-item{grid-template-columns:72px 1fr}.cart-item>b{grid-column:2}.cookie-banner{left:10px;right:10px;bottom:10px;width:calc(100% - 20px);padding:1rem}.cookie-actions{display:grid}.cookie-actions .button{width:100%}.form-card{padding:1.2rem}.article-body{font-size:1rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Readability repairs: stable prices, spacious reviews and high-contrast actions. */
.package-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.package-option,.package-option>span,.cart-item>*{min-width:0}
.package-option>span{padding-top:1.75rem}
.package-option strong,.package-option del,.package-option small{max-width:100%;overflow-wrap:anywhere}
.package-option b{max-width:100%;font-size:clamp(1.45rem,2.25vw,2rem);line-height:1.15;white-space:nowrap}
.package-badge{max-width:calc(100% - 28px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.price-summary{min-width:0;flex-wrap:wrap}
.price-summary strong{font-size:clamp(2rem,5vw,2.8rem);line-height:1.15}
.price-summary strong,.price-summary del,.cart-item>b,.summary-row>strong:last-child,.summary-row>span:last-child,.cart-totals strong{white-space:nowrap}
.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.button-primary,.header-cta{background:#0b584b;color:#fff}
.button-primary:hover,.button-primary:focus-visible,.header-cta:hover,.header-cta:focus-visible{background:#073d34;color:#fff}
.button-secondary{background:#f5b642;color:#17332d}
.button-secondary:hover,.button-secondary:focus-visible{background:#ffd06a;color:#102a24}
.button-ghost{background:#fff;color:#0b584b;border-color:#0b584b}
.button-ghost:hover,.button-ghost:focus-visible{background:#0b584b;color:#fff;border-color:#0b584b}
.button-light{background:#fff;color:#093f38}
.button:focus-visible,.header-cta:focus-visible,.cart-button:focus-visible,.icon-button:focus-visible{outline:3px solid #f5b642;outline-offset:3px}
@media(max-width:700px){.package-grid,.review-grid{grid-template-columns:1fr}.price-summary{align-items:flex-start;flex-direction:column;gap:.15rem}.package-option>span{min-height:190px}}


/* Reference-matched testimonial gallery and price selector (2026-09-02). */
.reviews-section{background:#fff;overflow:hidden}
.reviews-showcase .section-head{max-width:850px;margin-bottom:2.2rem}
.reviews-showcase .section-head h2{font-size:clamp(2.7rem,5vw,4.6rem);font-weight:500;letter-spacing:-.035em}
.review-media-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.75rem,1.6vw,1.35rem);align-items:center;margin:0 auto 2.2rem;width:min(1160px,100%)}
.review-media-card{margin:0;position:relative;border-radius:22px;overflow:hidden;background:#edf1ef;box-shadow:0 10px 30px rgba(23,51,45,.08)}
.review-media-card:nth-child(2),.review-media-card:nth-child(3){transform:translateY(-10px)}
.review-media-card img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.review-media-card:nth-child(2) img,.review-media-card:nth-child(3) img{aspect-ratio:3/4}
.review-media-card figcaption{position:absolute;left:12px;bottom:12px;padding:.38rem .68rem;border-radius:999px;background:rgba(255,255,255,.9);backdrop-filter:blur(6px);font-size:.76rem;font-weight:800;color:var(--ink)}
.review-text-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;width:min(1040px,100%);margin:0 auto}
.review-card{border:1px solid #e4e9e6;border-radius:20px;box-shadow:none;background:#fff;overflow:visible}
.review-copy{padding:1.5rem 1.6rem}
.review-copy p{font-family:var(--sans);font-size:1rem;line-height:1.65;margin:.7rem 0 1.1rem;color:#3f504b}
.review-author{display:flex;align-items:baseline;gap:.55rem;flex-wrap:wrap}
.review-copy strong,.review-copy small{display:inline}
.review-copy small{color:var(--muted)}
.review-actions{justify-content:center;margin-top:1.7rem}
.review-form-card{max-width:760px;margin:3rem auto 0}

.package-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;align-items:stretch}
.package-option{min-width:0}
.package-option>span.package-card{height:100%;min-height:250px;padding:1.3rem 1.25rem 1.15rem;border:2px solid #dce3e0;border-radius:20px;background:#fff;box-shadow:none;transform:none;display:flex;flex-direction:column;overflow:hidden}
.package-option input:checked+span.package-card{border-color:#087767;box-shadow:0 0 0 4px rgba(8,119,103,.12),0 16px 34px rgba(15,79,69,.10);transform:none}
.package-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;min-height:48px}
.package-option strong{font-size:1.02rem;line-height:1.2;color:var(--ink)}
.package-badge{position:static;max-width:none;white-space:nowrap;overflow:visible;text-overflow:clip;background:#e8f3ef;color:#0b6859;padding:.3rem .55rem;border-radius:999px;font-size:.63rem;font-style:normal;font-weight:850;line-height:1.2}
.package-meta{display:block;color:var(--muted);font-size:.83rem;margin-top:.65rem}
.package-option del{display:block;color:var(--muted);font-size:.86rem;margin-top:.25rem;line-height:1.2;white-space:nowrap}
.package-regular-spacer{display:block;min-height:1.05rem;margin-top:.25rem}
.package-option b{font-family:var(--display);font-size:clamp(1.65rem,2.25vw,2.15rem);line-height:1;margin-top:auto;white-space:nowrap;color:#113d35}
.package-option small{display:block;color:var(--muted);font-size:.76rem;line-height:1.3;margin-top:.35rem;min-height:2em}
.product-info .price-summary{display:flex;align-items:baseline;gap:1rem;margin:1.65rem 0 .65rem;flex-direction:row;flex-wrap:wrap}
.product-info .price-summary strong{font-family:var(--display);font-size:clamp(2.8rem,5vw,4rem);line-height:1;color:#113d35;white-space:nowrap}
.product-info .price-summary del{font-size:1rem;color:#6d7d78;white-space:nowrap}
.product-info .price-saving{margin:0 0 1rem;color:#087767;font-size:1rem;font-weight:850}

@media(max-width:900px){
  .review-media-strip{grid-template-columns:repeat(2,minmax(0,1fr));max-width:700px}
  .review-media-card:nth-child(2),.review-media-card:nth-child(3){transform:none}
  .review-media-card img,.review-media-card:nth-child(2) img,.review-media-card:nth-child(3) img{aspect-ratio:4/5}
  .package-option>span.package-card{min-height:230px;padding:1.1rem}
  .package-heading{display:block;min-height:58px}
  .package-badge{display:inline-block;margin-top:.35rem}
}
@media(max-width:700px){
  .review-text-grid{grid-template-columns:1fr}
  .package-grid{grid-template-columns:1fr}
  .package-option>span.package-card{min-height:190px}
  .package-heading{min-height:auto;display:flex}
  .product-info .price-summary{flex-direction:row;align-items:baseline}
}
@media(max-width:520px){
  .review-media-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:.75rem;margin-inline:-15px;padding:0 15px 8px;width:auto}
  .review-media-card{flex:0 0 76vw;scroll-snap-align:center}
  .reviews-showcase .section-head h2{font-size:2.55rem}
}

/* Price selector: full-width stacked rows so labels and MXN prices never collide. */
.package-grid{
  grid-template-columns:1fr;
  gap:.8rem;
}
.package-option>span.package-card{
  min-height:0;
  padding:1.05rem 1.15rem;
  display:grid;
  grid-template-columns:minmax(150px,1.15fr) minmax(130px,.9fr) minmax(150px,1fr);
  grid-template-rows:auto auto;
  align-items:center;
  column-gap:1.2rem;
  row-gap:.2rem;
  overflow:visible;
}
.package-heading{
  grid-column:1;
  grid-row:1 / span 2;
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:.65rem;
  flex-wrap:wrap;
}
.package-option strong{
  font-size:1.08rem;
  line-height:1.25;
  overflow-wrap:normal;
  word-break:normal;
}
.package-badge{
  flex:0 0 auto;
  margin:0;
}
.package-meta{
  grid-column:2;
  grid-row:1;
  margin:0;
  align-self:end;
}
.package-option del,
.package-regular-spacer{
  grid-column:2;
  grid-row:2;
  margin:.1rem 0 0;
  align-self:start;
}
.package-regular-spacer{min-height:1.1rem}
.package-option b{
  grid-column:3;
  grid-row:1;
  margin:0;
  align-self:end;
  justify-self:start;
  font-size:clamp(1.75rem,3vw,2.35rem);
  line-height:1;
  white-space:nowrap;
}
.package-option small{
  grid-column:3;
  grid-row:2;
  margin:.2rem 0 0;
  min-height:0;
  align-self:start;
}

@media(max-width:620px){
  .package-option>span.package-card{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    min-height:0;
    padding:1.15rem;
  }
  .package-heading{display:flex;min-height:0;width:100%;margin-bottom:.5rem}
  .package-meta{margin-top:.25rem}
  .package-option del,.package-regular-spacer{margin-top:.1rem}
  .package-option b{margin-top:.8rem;font-size:2rem}
  .package-option small{margin-top:.3rem}
}

/* Keep package prices inside the stacked selector cards at all desktop widths. */
.package-option>span.package-card{
  grid-template-columns:minmax(145px,1fr) minmax(125px,.78fr) minmax(0,1.22fr);
  overflow:hidden;
}
.package-option b{
  min-width:0;
  max-width:100%;
  justify-self:end;
  text-align:right;
  font-size:clamp(1.55rem,2.35vw,2rem);
  letter-spacing:-.025em;
}
.package-option small{
  min-width:0;
  max-width:100%;
  justify-self:end;
  text-align:left;
}

@media(max-width:980px) and (min-width:621px){
  .package-option>span.package-card{
    grid-template-columns:minmax(135px,.9fr) minmax(120px,.72fr) minmax(0,1.18fr);
    column-gap:.8rem;
  }
  .package-option b{font-size:1.7rem}
  .package-option strong{font-size:1rem}
  .package-meta,.package-option del{font-size:.78rem}
  .package-option small{font-size:.72rem}
}

/* Review gallery carousel: use all uploaded photos, no name captions, with navigation arrows. */
.review-media-carousel{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:1rem;
  align-items:center;
  width:min(1240px,100%);
  margin:0 auto 2.2rem;
}
.review-media-viewport{
  min-width:0;
  overflow-x:auto;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.review-media-viewport::-webkit-scrollbar{display:none}
.review-media-strip{
  display:flex;
  gap:clamp(.8rem,1.5vw,1.3rem);
  width:max-content;
  margin:0;
  padding:.2rem 0 .35rem;
}
.review-media-card{
  flex:0 0 clamp(190px,21vw,265px);
  scroll-snap-align:start;
  margin:0;
  position:relative;
  border-radius:24px;
  overflow:hidden;
  background:#edf1ef;
  box-shadow:0 12px 28px rgba(23,51,45,.08);
}
.review-media-card img{
  width:100%;
  aspect-ratio:1 / 1;
  object-fit:cover;
  display:block;
}
.review-carousel-arrow{
  width:56px;
  height:56px;
  border-radius:50%;
  border:1px solid #dbe4e0;
  background:#fff;
  color:var(--ink);
  display:grid;
  place-items:center;
  font-size:1.8rem;
  line-height:1;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(23,51,45,.08);
  transition:transform .18s ease,border-color .18s ease,opacity .18s ease;
}
.review-carousel-arrow:hover,
.review-carousel-arrow:focus-visible{transform:translateY(-1px);border-color:#9fb7b0}
.review-carousel-arrow[disabled]{opacity:.4;cursor:default;transform:none}

@media(max-width:900px){
  .review-media-card{flex-basis:clamp(180px,28vw,235px)}
}

@media(max-width:640px){
  .review-media-carousel{
    grid-template-columns:1fr auto auto 1fr;
    gap:.8rem;
  }
  .review-media-viewport{
    grid-column:1 / -1;
    margin-inline:-15px;
    padding-inline:15px;
  }
  .review-media-card{flex:0 0 72vw;max-width:290px}
  .review-carousel-arrow{
    width:48px;
    height:48px;
    font-size:1.55rem;
  }
  .review-carousel-prev{grid-column:2}
  .review-carousel-next{grid-column:3}
}
.review-media-card:nth-child(2),
.review-media-card:nth-child(3){transform:none}
.review-media-card:nth-child(2) img,
.review-media-card:nth-child(3) img,
.review-media-card img{aspect-ratio:1 / 1}
