/* halogrowhq.com (HaloGrow, treatment C) — own design system (BRIEF_v9, 2026-09-17). Differs from A (shophalogrow.com: white base,
   beige hero, Sentient, 8-px buttons, bordered cards, lime rings) and B (halogrowstore.com: dark hero, ivory base, lime-dominant, pill
   buttons, flat tinted cards, Fraunces): a MID-TONE SAGE base (#e3ebdf) with white cards, an editorial two-column reading (spec table
   in the hero, sticky-heading ingredient list, stacked bundle rows), Newsreader headings + IBM Plex Sans body, near-square 3-px buttons
   in ink, thin ink rules instead of shadows, lime only as a small tag, white footer with an ink top rule. Grids / breakpoints follow the
   reference AFB pages so the mobile behaviour stays proven. Contrast: every text/background pair >= AA (muted #465446 on sage = 5.9:1). */
:root{--sage:#e3ebdf;--sage-2:#d3dfcc;--paper:#f4f7f1;--white:#fff;--ink:#0c230e;--green:#0c230e;--green-2:#1b3a1e;--moss:#3a6640;--lime:#bcf263;--muted:#465446;--line:#b9c8b3;--line-2:#d6e0d1;
  --serif:Newsreader,"Times New Roman",Georgia,serif;--sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--radius:3px}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--sage);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}
img{max-width:100%;height:auto;display:block}a{color:inherit}button,input,select{font:inherit}a,button{touch-action:manipulation}button{cursor:pointer}
h1,h2,h3,h4,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.01em;line-height:1.06;color:var(--ink);font-variation-settings:"opsz" 72}
h1{font-size:clamp(2.5rem,5vw,4.4rem)}h2{font-size:clamp(1.95rem,3.4vw,3rem)}h3{font-family:var(--sans);font-weight:600;letter-spacing:-.005em;font-size:1.15rem}
h1 em,h2 em{font-style:italic;color:var(--moss)}
p{color:var(--muted)}.wrap{width:min(1180px,100% - 64px);margin:auto}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
.skip{z-index:100;background:var(--ink);color:#fff;padding:12px;position:absolute;top:-100px;left:12px;border-radius:var(--radius)}.skip:focus{top:10px}

/* top bar + header: white bar with rules, header on the sage base, ink bottom rule, small-caps nav */
.announcement{background:var(--white);color:var(--ink);text-align:center;padding:9px 16px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--line-2)}
.header{background:var(--sage);position:relative;border-bottom:2px solid var(--ink)}
.nav{justify-content:space-between;align-items:center;gap:30px;min-height:80px;display:flex}
.logo{width:150px;height:auto}.navlinks{align-items:center;gap:28px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;display:flex}.navlinks a{text-decoration:none}.navlinks a:hover{color:var(--moss);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
.button{background:var(--ink);color:#fff;text-align:center;border:1px solid var(--ink);border-radius:var(--radius);justify-content:center;align-items:center;gap:12px;min-height:54px;padding:14px 26px;font-weight:600;line-height:1.3;text-decoration:none;display:inline-flex;font-size:13px;letter-spacing:.12em;text-transform:uppercase}
.button:hover{background:var(--green-2);border-color:var(--green-2)}.button svg{width:16px;height:16px;flex-shrink:0}
.button.light{background:var(--white);color:var(--ink);border-color:var(--ink)}.button.light:hover{background:var(--paper)}
.button.outline{border-color:var(--ink);color:var(--ink);background:transparent}.button.outline:hover{background:var(--white)}
.nav .button{min-height:44px;padding:11px 18px;white-space:nowrap;font-size:12px}
.mobile-menu{display:none}
.mobile-nav{border-bottom:2px solid var(--ink);z-index:60;background:var(--sage);position:absolute;top:100%;left:0;right:0}
.mobile-nav[hidden]{display:none}.mobile-nav nav{flex-direction:column;padding:8px 20px 20px;display:flex}
.mobile-nav nav a:not(.button){border-bottom:1px solid var(--line);color:inherit;padding:14px 0;font-weight:600;text-decoration:none}.mobile-nav nav .button{justify-content:center;margin-top:16px}
@media (min-width:801px){.mobile-nav{display:none!important}}
.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--moss);margin-bottom:14px;font-size:12px;font-weight:600;display:block;font-family:var(--sans)}
.eyebrow::before{content:"";display:inline-block;width:18px;height:2px;background:var(--moss);vertical-align:middle;margin-right:10px}

/* hero: editorial two-column — copy + spec table left, packshot on a white plate right */
.home-hero{background:var(--sage)}
.hero-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;gap:64px;padding-block:64px 60px;display:grid}
.hero-copy{min-width:0}.hero-copy h1{max-width:640px}
.hero-copy>p{max-width:520px;margin:24px 0 22px;font-size:18px;line-height:1.65}
.hero-specs{margin:0 0 26px;padding:0;max-width:520px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 20px;border-top:1px solid var(--ink)}
.hero-specs>div{display:contents}.hero-specs dt,.hero-specs dd{margin:0;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}
.hero-specs dt{color:var(--moss);font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:11.5px;padding-top:11px}.hero-specs dd{color:var(--ink)}
.hero-image{aspect-ratio:.86;justify-content:center;align-items:center;min-width:0;display:flex;background:var(--white);border:1px solid var(--ink);border-radius:var(--radius);padding:6%;position:relative}
.hero-image::after{content:"";position:absolute;inset:10px;border:1px solid var(--line-2);border-radius:2px;pointer-events:none}
.hero-image img{object-fit:contain;width:100%;height:100%;max-height:560px;position:relative}
.hero-note{font-size:13px;color:var(--muted);margin-top:14px}

/* trust strip: white, four ruled cells */
.benefit-strip{background:var(--white);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.benefit-strip .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;font-size:14px;font-weight:600}
.benefit-strip span{display:flex;align-items:center;gap:10px;padding:16px 18px;border-left:1px solid var(--line-2)}.benefit-strip span:first-child{border-left:0;padding-left:0}
.benefit-strip svg{width:20px;height:20px;color:var(--moss);flex-shrink:0}

/* sections: sage (default) / white (.soft) / paper (.paper) */
.section{padding:84px 0}.section.soft{background:var(--white)}.section.paper{background:var(--paper)}
.section-heading{max-width:720px;margin:0 0 40px}.section-heading p{margin-top:16px;font-size:17px}.section-heading.center{text-align:center;margin-inline:auto}.section-heading.center .eyebrow::before{display:none}
.section-cta{justify-content:flex-start;margin-top:36px;display:flex}.section-heading.center+*+.section-cta,.center-cta{justify-content:center}
.three-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;display:grid}.split>*,.three-grid>*{min-width:0}
.four-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;display:grid}.four-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}
.card{border:0;background:var(--white);border-radius:var(--radius);min-width:0;padding:28px 26px;border-top:3px solid var(--ink)}
.section.soft .card{background:var(--paper)}
.card img{width:54px;height:54px;margin-bottom:22px}.card h3{min-height:52px;margin-bottom:12px;font-size:19px;line-height:1.3}.card p{font-size:15px;line-height:1.7}
.why-icon{width:50px;height:50px;margin-bottom:22px;border:1px solid var(--ink);border-radius:var(--radius);padding:11px;color:var(--ink)}
.routine article{border-top:1px solid var(--ink);padding-top:18px}
.routine img{aspect-ratio:1.2;object-fit:cover;border-radius:var(--radius);width:100%;margin-bottom:20px;background:var(--sage-2)}
.step-number{color:var(--moss);font-family:var(--serif);font-size:30px;line-height:1;margin-bottom:10px;display:block;font-variation-settings:"opsz" 72}.routine p{margin-top:12px;font-size:15px}
.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:70px;display:grid}
.lead{margin:20px 0 24px;font-size:17px}
.image-panel{aspect-ratio:1;border:1px solid var(--ink);border-radius:var(--radius);padding:0;overflow:hidden;background:var(--white)}.image-panel img{object-fit:cover;width:100%;height:100%;display:block}
.layer-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--ink)}.layer-list li{border-bottom:1px solid var(--line);gap:18px;padding:18px 0;display:flex}
.layer-list li>span{color:var(--moss);font-family:var(--serif);font-size:26px;line-height:1;padding-top:2px;min-width:34px;font-variation-settings:"opsz" 72}.layer-list h3{font-size:17px}.layer-list p{margin-top:6px;font-size:15px}
/* ingredients: sticky heading left, ruled list right (editorial two-column) */
.ing-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:70px;align-items:start;display:grid}.ing-layout>*{min-width:0}
.ing-sticky{position:sticky;top:24px}.ing-sticky .section-heading{margin-bottom:0}
.ingredients-grid{display:grid;gap:0;border-top:1px solid var(--ink)}
.ingredients-grid article{display:grid;grid-template-columns:96px minmax(0,1fr);gap:0 24px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);text-align:left}
.ingredients-grid img{aspect-ratio:1;object-fit:cover;border-radius:var(--radius);width:96px;margin:0;border:1px solid var(--line);background:var(--white);grid-row:1/3}
.ingredients-grid h3{font-size:18px}.ingredients-grid h3 small{display:inline-block;margin-left:10px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--moss);vertical-align:middle}
.ingredients-grid p{margin-top:4px;font-size:15px}
.ingredient-note{margin-top:18px;font-size:13px}
.faq-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;display:grid;align-items:start}.faq-layout .lead{max-width:330px}
.text-link{text-underline-offset:5px;text-decoration-thickness:2px;text-decoration-color:var(--moss);align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;display:inline-flex;color:var(--ink)}.text-link svg{width:15px;height:15px}
.faq-row{border-top:1px solid var(--ink);padding:18px 0}.faq-row:last-of-type{border-bottom:1px solid var(--ink)}
.faq-row summary{cursor:pointer;justify-content:space-between;align-items:center;gap:22px;min-height:28px;font-family:var(--serif);font-size:20px;font-weight:400;line-height:1.35;list-style:none;display:flex;font-variation-settings:"opsz" 24}
.faq-row summary::-webkit-details-marker{display:none}.faq-row summary span{flex-shrink:0;width:26px;height:26px;border:1px solid var(--ink);border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:18px;font-weight:400;line-height:1;transition:transform .2s}.faq-row[open] summary span{transform:rotate(45deg);background:var(--ink);color:#fff}
.faq-row p{padding:14px 40px 0 0;font-size:15px;line-height:1.7}.faq-row p+p{padding-top:10px}.faq-row a{color:var(--moss)}
.compact{padding:13px 0}.compact summary{font-size:16px;font-family:var(--sans);font-weight:600}
.guarantee{background:var(--sage)}.guarantee .wrap{background:var(--white);border:1px solid var(--ink);border-radius:var(--radius);padding:48px}
.guarantee-inner{grid-template-columns:110px minmax(0,760px);align-items:center;gap:50px;display:grid}
.guarantee-inner>svg{width:90px;height:90px;color:var(--moss)}
.guarantee h2{color:var(--ink)}.guarantee p{color:var(--muted);max-width:680px;margin:20px 0 0}.guarantee .terms-note{margin-top:10px;font-size:13px}.guarantee .button{margin-top:26px}

/* footer: white, ink top rule, small-caps headings, boxed operator block */
.footer{color:var(--ink);background:var(--white);padding:52px 0 26px;border-top:2px solid var(--ink)}.footer p{color:var(--muted)}
.footer-top{grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:50px;display:grid}
.footer-logo{width:150px;margin-bottom:18px}.footer a{font-size:14px;line-height:2.4;text-decoration:none;display:block}.footer a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--moss);text-decoration-thickness:2px}
.footer h3{letter-spacing:.1em;margin-bottom:14px;font-size:11.5px;color:var(--moss);text-transform:uppercase;font-weight:600}
.footer .addr{font-size:13px;line-height:1.7;color:var(--muted);margin-top:12px;border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;background:var(--paper)}.footer .addr b{color:var(--ink);display:block;margin-bottom:2px}.footer .addr a{display:inline;font-size:inherit;line-height:inherit;color:var(--moss)}
.footer small{color:var(--muted);border-top:1px solid var(--line);margin-top:34px;padding-top:22px;font-size:12px;line-height:1.7;display:block}
.footer small a{display:inline;font-size:inherit;line-height:inherit}

/* product page */
.product-section{padding:34px 0 64px}
.product-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:54px;display:grid}.product-grid>*{min-width:0}
.product-image{aspect-ratio:1;background:var(--white);border:1px solid var(--ink);border-radius:var(--radius);justify-content:center;align-items:center;padding:8%;display:flex;position:relative;overflow:hidden}
.product-image img{object-fit:contain;width:100%;height:100%}.product-image.photo{background:none;padding:0;overflow:hidden}.product-image.photo img{object-fit:cover}
.gallery-thumbs{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}
.gallery-thumbs button{aspect-ratio:1;border:1px solid var(--line);background:var(--white);border-radius:var(--radius);padding:6px;min-width:0}
.gallery-thumbs button[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.gallery-thumbs button img{object-fit:contain;width:100%;height:100%}
.pdp-pills{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:16px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.pdp-pills span{display:flex;align-items:center;justify-content:center;gap:7px;padding:11px 6px;font-size:12px;font-weight:600;color:var(--ink);text-align:center;border-left:1px solid var(--line-2)}.pdp-pills span:first-child{border-left:0}
.pdp-pills svg{width:15px;height:15px;color:var(--moss);flex-shrink:0}
.product-info h1{font-size:clamp(2.1rem,3.2vw,3rem)}.product-info .eyebrow{margin-bottom:12px}
.product-benefits{gap:9px;margin:20px 0 26px;padding:0;font-size:14.5px;list-style:none;display:grid}
.product-benefits li{align-items:flex-start;gap:10px;display:flex}.product-benefits svg{width:18px;height:18px;padding:3px;border:1px solid var(--ink);border-radius:var(--radius);color:var(--ink);flex-shrink:0;margin-top:2px}
.purchase{scroll-margin-top:24px;background:var(--white);border:1px solid var(--ink);border-radius:var(--radius);padding:22px}
.bundle-heading{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}
.bundle-heading h2{letter-spacing:-.01em;font-size:22px;font-family:var(--serif);font-weight:400;font-variation-settings:"opsz" 24}.bundle-heading>span{color:var(--moss);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
/* bundle options as stacked rows (A and B use two-column tiles) */
.bundle-options{display:grid;gap:0;border-top:1px solid var(--ink)}
.bundle-option{cursor:pointer;background:var(--white);border:0;border-bottom:1px solid var(--line);border-radius:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto;gap:2px 14px;align-items:center;min-width:0;padding:14px 8px;position:relative}
.bundle-option.selected{background:var(--paper);box-shadow:inset 3px 0 0 var(--ink)}
.bundle-option.best-value{}
.option-top{grid-area:1/1/3/2;align-self:center;color:var(--ink);display:flex;align-items:center}
.bundle-option>strong{grid-area:1/2;font-size:17px;line-height:1.3;font-weight:600}
.bundle-option>b{grid-area:1/3/3/4;font-size:20px;line-height:1.2;font-family:var(--serif);font-weight:400;text-align:right;font-variation-settings:"opsz" 24}
.bundle-option>.option-unit{grid-area:2/2;font-size:13px;line-height:1.4;color:var(--muted)}
.bundle-savings{color:var(--moss);white-space:nowrap;background:transparent;border:1px solid var(--moss);border-radius:var(--radius);justify-content:center;align-items:center;min-height:20px;padding:1px 7px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;line-height:1.4;display:inline-flex;position:absolute;top:50%;right:110px;transform:translateY(-50%)}
.bundle-savings.best{background:var(--lime);border-color:var(--lime);color:var(--ink)}
.bd-radio-input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}
.bd-radio{background:#fff;border:1px solid var(--ink);border-radius:50%;flex-shrink:0;width:18px;height:18px;display:inline-block;position:relative}
.bd-radio-input:checked+.bd-radio{border-color:var(--ink);background:var(--ink)}
.bd-radio-input:checked+.bd-radio:after{content:"";background:#fff;border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}
.bd-radio-input:focus-visible+.bd-radio{outline-offset:2px;outline:3px solid var(--moss)}
.buy-button{width:100%;margin-top:16px;min-height:58px;font-size:14px}
.payment-methods{flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;max-width:100%;margin:12px auto 0;display:flex}
.payment-methods img{object-fit:contain;background:#fff;border:1px solid var(--line-2);border-radius:var(--radius);width:48px;height:32px;padding:4px;display:block}
.purchase-commitment{text-align:center;color:var(--ink);margin:14px 0 0;font-size:14px;line-height:1.5}
.purchase+.compact{margin-top:16px}.product-info .faq-row{border-top-color:var(--line)}.product-info .faq-row:last-of-type{border-bottom-color:var(--line)}
.pdp-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:70px;display:grid}.pdp-split>*{min-width:0}
.pdp-copy h2{margin-bottom:24px}.pdp-copy>p{max-width:560px;margin-bottom:18px;font-size:16px;line-height:1.8}
.pdp-specs{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:28px;display:grid;border-top:1px solid var(--ink)}
.pdp-specs>div{padding:16px 16px 16px 0;border-left:1px solid var(--line);padding-left:16px}.pdp-specs>div:first-child{border-left:0;padding-left:0}
.pdp-specs strong{color:var(--ink);letter-spacing:-.02em;font-size:42px;line-height:1.1;display:block;font-family:var(--serif);font-weight:400;font-variation-settings:"opsz" 72}
.pdp-specs span{color:var(--muted);margin-top:6px;font-size:13px;line-height:1.5;display:block}
.pdp-visual{margin:0;padding:0}.pdp-visual img{aspect-ratio:1;object-fit:cover;width:100%;height:auto;border:1px solid var(--ink);border-radius:var(--radius);display:block}
.pdp-visual figcaption{text-align:center;color:var(--muted);margin-top:14px;font-size:13px;line-height:1.6;letter-spacing:.04em}
.pdp-cta{flex-direction:column;align-items:center;margin-top:36px;display:flex}.pdp-cta .button{min-width:260px}
.pdp-fine{font-size:13px;line-height:1.7}
.pdp-questions{align-items:start}.pdp-questions .faq-row p{font-size:16px}
.pdp-closing{background:var(--sage);text-align:center}.pdp-closing .wrap{max-width:820px;background:var(--white);border:1px solid var(--ink);border-radius:var(--radius);padding:56px 40px}.pdp-closing h2{font-size:clamp(2.25rem,4vw,3.6rem)}
.pdp-closing .eyebrow::before{display:none}.pdp-closing p{max-width:590px;margin:22px auto 0;font-size:17px;line-height:1.75}.pdp-closing .pdp-fine{margin-top:24px;font-size:13px}.pdp-closing .pdp-cta{margin-top:28px}
.pdp-reasons{background:var(--white)}.pdp-reasons .section-heading{max-width:720px;margin-bottom:44px}.pdp-reasons .pdp-cta{margin-top:42px}
.formula-cards img{width:64px;height:64px;border-radius:var(--radius);object-fit:cover;border:1px solid var(--line)}
.formula-cards small{display:block;color:var(--moss);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin:-6px 0 10px}
.compare{max-width:860px;margin:0 auto;overflow-x:auto;border:1px solid var(--ink);border-radius:var(--radius);background:var(--white)}.compare table{width:100%;border-collapse:separate;border-spacing:0;font-size:15px;color:var(--ink)}
.compare td,.compare th{padding:16px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle}
.compare tr:last-child td,.compare tr:last-child th{border-bottom:0}
.compare thead th{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--moss);border-bottom:1px solid var(--ink)}
.compare tbody th{font-weight:600;color:var(--ink);width:22%}.compare td{color:var(--muted)}
.compare .hi{background:var(--sage);color:var(--ink);font-weight:600}.compare thead .hi{background:var(--ink)}.compare-logo{height:24px;width:auto}

/* inner pages: white header band with a rule, sage body */
.page-hero{background:var(--white);padding:56px 0;border-bottom:1px solid var(--ink)}.page-hero h1{font-size:clamp(2.2rem,4vw,3.4rem);max-width:760px}.page-hero p{max-width:640px;margin-top:18px;font-size:17px}.page-hero p a{color:var(--moss)}
.page-hero .wrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:40px;align-items:center}.page-hero .wrap.one{grid-template-columns:1fr}
.page-hero .art img{max-height:320px;object-fit:contain;margin-left:auto;border:1px solid var(--ink);border-radius:var(--radius);background:var(--paper)}
.legal{max-width:860px;margin:0 auto}.legal .card{padding:44px;line-height:1.7;border-top-width:1px}.legal .card h2{font-size:1.5rem;margin:32px 0 10px}.legal .card h3{font-size:1.1rem;margin:24px 0 8px}.legal .card p,.legal .card li{margin:0 0 12px;color:var(--muted)}.legal .card ul,.legal .card ol{padding-left:22px}.legal .card a{color:var(--moss)}
.legal .card table{border-collapse:collapse;width:100%;font-size:14px}.legal .card td,.legal .card th{border:1px solid var(--line);padding:8px 10px;text-align:left}
.cards-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.cards-2 .card h3{min-height:0;margin-bottom:8px}.cards-2 .card p{margin-bottom:16px}.cards-2 .card a.button{margin-top:4px;max-width:100%}.cards-2 .card a.button[href^="mailto:"]{text-transform:none;letter-spacing:.02em;font-size:14px;overflow-wrap:anywhere}
.center{text-align:center}.mt{margin-top:40px}.muted{color:var(--muted);font-size:14px}
.operator{margin-top:40px;font-size:14px;color:var(--muted);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;background:var(--white)}.operator a{color:var(--moss)}
.stack-links a{display:block;color:var(--moss);margin-top:6px}

/* responsive (same breakpoints as the proven reference layout) */
@media (max-width:1050px){.four-grid,.four-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}.card h3{min-height:0}.footer-top{grid-template-columns:1fr 1fr}.benefit-strip .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}.benefit-strip span:nth-child(3){border-left:0;padding-left:0}}
@media (max-width:1000px){.product-grid{gap:30px}.split,.pdp-split{gap:36px}.faq-layout,.ing-layout{gap:40px}.hero-grid{gap:36px}.bundle-savings{right:96px}}
@media (max-width:800px){.wrap{width:calc(100% - 40px)}.nav{min-height:70px}.navlinks{gap:16px}.navlinks .desktop-link{display:none}.mobile-menu{background:0 0;border:0;min-height:44px;padding:10px;display:block;color:var(--ink)}
  .hero-grid{gap:26px;padding-block:40px}.hero-copy>p{font-size:16px}.three-grid{gap:16px}.section{padding:56px 0}.footer-top{gap:24px}
  .product-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.product-image{padding:8%}.purchase{padding:16px}
  .ing-layout{grid-template-columns:1fr}.ing-sticky{position:static}.ing-sticky .section-heading{margin-bottom:28px}
  .faq-layout{grid-template-columns:1fr;gap:20px}.faq-layout .lead{max-width:100%}
  .guarantee .wrap{padding:32px}.guarantee-inner{grid-template-columns:90px minmax(0,1fr);gap:24px}
  .page-hero .wrap{grid-template-columns:1fr}.page-hero .art{display:none}.legal .card{padding:24px}}
@media (max-width:700px){.pdp-split{grid-template-columns:minmax(0,1fr);gap:30px}.pdp-copy h2{margin-bottom:20px}.pdp-visual{width:100%;max-width:480px;margin:auto}.pdp-cta .button{width:100%}.pdp-specs strong{font-size:34px}.cards-2{grid-template-columns:1fr}}
@media (max-width:600px){body{font-size:17px}.hero-grid{grid-template-columns:minmax(0,1fr);gap:22px;padding-block:24px 36px}.hero-image{aspect-ratio:1.1;max-height:340px;padding:6%;order:-1}.hero-image img{max-height:300px}
  .hero-copy h1{font-size:2.6rem}.hero-copy>p{margin:18px 0 18px}.hero-copy .button{width:100%;min-height:58px}.hero-specs{margin-bottom:22px}.hero-specs dt,.hero-specs dd{padding:7px 0;font-size:13px}
  .benefit-strip .wrap{grid-template-columns:1fr;padding:6px 0}.benefit-strip span{border-left:0;padding:10px 0;border-top:1px solid var(--line-2);font-size:14px}.benefit-strip span:first-child{border-top:0}
  .three-grid{grid-template-columns:1fr}.four-grid,.four-grid.five{grid-template-columns:1fr;gap:12px}.section-heading{margin-bottom:28px}.section-cta .button{width:100%}.section{padding:46px 0}h2{font-size:2.05rem}
  .card{grid-template-columns:44px minmax(0,1fr);gap:0 16px;padding:20px;display:grid}.cards-2 .card,.legal .card{display:block}.card img,.card .why-icon{grid-row:1/3;width:44px;height:44px;margin:0}.card .why-icon{padding:9px}.card h3{margin-bottom:8px;font-size:18px}.card p{grid-column:2}
  .routine article{grid-template-columns:100px minmax(0,1fr);align-items:start;column-gap:18px;display:grid;padding-top:14px}.routine article img{aspect-ratio:1;grid-area:1/1/4;margin:0}.routine .step-number{grid-column:2;margin-bottom:6px;font-size:24px}.routine h3{grid-column:2;font-size:18px}.routine p{grid-column:2;margin-top:8px;font-size:14px}
  .split{grid-template-columns:minmax(0,1fr);gap:28px}.image-panel{aspect-ratio:1.15;padding:0}
  .ingredients-grid article{grid-template-columns:72px minmax(0,1fr);gap:0 16px;padding:14px 0}.ingredients-grid img{width:72px}.ingredients-grid h3{font-size:17px}.ingredients-grid h3 small{display:block;margin:2px 0 0}.ingredients-grid p{font-size:14px}
  .guarantee .wrap{padding:24px 20px}.guarantee-inner{grid-template-columns:1fr;gap:20px}.guarantee .button{width:100%}.faq-row{padding:15px 0}.faq-row summary{min-height:34px;font-size:18px}.faq-row p{padding-right:0}
  .navlinks{gap:4px}.nav .logo{width:118px}.nav .button{padding:11px 12px;font-size:11px;gap:8px}.nav .button svg{display:none}.announcement{font-size:11px;letter-spacing:.05em}
  .footer-top{grid-template-columns:1fr}
  .product-grid{grid-template-columns:minmax(0,1fr);gap:28px}.product-section{padding-top:18px}.product-image{aspect-ratio:1.1;max-height:360px;padding:8%}.gallery-thumbs{gap:8px;margin-top:10px}.gallery-thumbs button{padding:5px}
  .product-info h1{font-size:2.3rem}.bundle-option{padding:12px 6px;grid-template-columns:auto minmax(0,1fr) auto}.bundle-option>strong{font-size:16px}.bundle-option>b{font-size:18px}.bundle-savings{position:static;transform:none;grid-area:3/2;justify-self:start;margin-top:6px}
  .pdp-pills{grid-template-columns:repeat(2,minmax(0,1fr))}.pdp-pills span:nth-child(3){border-left:0}.pdp-pills span{border-top:1px solid var(--line-2)}.pdp-pills span:nth-child(-n+2){border-top:0}
  .pdp-specs{grid-template-columns:1fr}.pdp-specs>div{border-left:0;padding-left:0;border-bottom:1px solid var(--line);padding:12px 0}.pdp-specs>div:last-child{border-bottom:0}
  .compare table{font-size:13px}.compare td,.compare th{padding:12px 10px}.compare tbody th{width:26%}.compare-logo{height:20px}.pdp-closing .wrap{padding:36px 20px}
  .page-hero{padding:36px 0}.page-hero h1{font-size:2rem}}
@media (max-width:360px){.wrap{width:calc(100% - 32px)}.nav .button{padding-inline:10px;font-size:11px}.logo{width:100px!important}.routine article{grid-template-columns:80px minmax(0,1fr);column-gap:14px}.hero-specs{grid-template-columns:1fr;gap:0}.hero-specs dt{border-bottom:0;padding-bottom:0}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.faq-row summary span{transition:none}}

/* legal pages: seller block + effective date */
.legal .card .entity{margin:14px 0 18px;padding:14px 18px;border-left:3px solid var(--ink);background:var(--sage);color:inherit}.legal .card .entity a{color:var(--moss)}.legal .card .legal-meta{font-size:13px;color:var(--muted);margin:0 0 18px}
