:root { --yellow:#f6b51d; --yellow-hot:#ffc72c; --ink:#11110f; --warm:#f5f2ec; --cream:#fffdf9; --gray:#d9d5cc; --stone:#7d786e; --condensed:"Barlow Condensed","Arial Narrow",Impact,sans-serif; --body:"DM Sans",Arial,sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--ink); }
body { margin:0; color:var(--ink); font-family:var(--body); background:var(--cream); font-size:16px; }
a { color:inherit; text-decoration:none; }
button, input { font:inherit; }
button { cursor:pointer; }
.skip-link { position:fixed; top:0; left:1rem; z-index:100; transform:translateY(-130%); padding:.75rem 1rem; background:#fff; color:#000; font-weight:800; transition:transform .2s; }
.skip-link:focus { transform:translateY(0); }
.sr-only { position:absolute; width:1px; height:1px; clip:rect(0,0,0,0); overflow:hidden; white-space:nowrap; }
.shipping-bar { min-height:31px; display:flex; justify-content:center; align-items:center; gap:13px; padding:7px 18px; background:var(--yellow); color:#17130a; font:800 12px/1 var(--condensed); letter-spacing:.08em; }
.site-header { height:78px; display:flex; align-items:center; justify-content:space-between; gap:30px; padding:0 clamp(22px,5vw,72px); position:relative; z-index:20; background:var(--cream); border-bottom:1px solid #dfdbd2; }
.brand { display:inline-flex; flex-direction:column; align-items:flex-start; font:900 27px/.68 var(--condensed); letter-spacing:-.05em; transform:skew(-6deg); }
.brand span { color:var(--ink); }.brand strong { color:var(--yellow); -webkit-text-stroke:1px var(--ink); }
.site-nav { display:flex; gap:28px; margin-left:auto; }
.site-nav a, .cart-link { font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; transition:color .2s; }.site-nav a:hover { color:#93700d; }
.cart-link { display:flex; gap:7px; align-items:center; }.cart-count { display:grid; place-items:center; width:20px; height:20px; border-radius:50%; background:var(--ink); color:var(--cream); font-size:11px; }
.menu-button { display:none; background:transparent; border:0; padding:8px; }.menu-button span:not(.sr-only) { display:block; width:24px; height:2px; margin:5px 0; background:var(--ink); }
.hero { min-height:675px; position:relative; display:grid; grid-template-columns:minmax(0, 1fr) minmax(410px, .86fr); overflow:hidden; background:var(--cream); }
.hero-copy { align-self:center; position:relative; z-index:2; max-width:720px; padding:83px 24px 72px clamp(24px,8vw,130px); }.eyebrow { display:flex; gap:9px; align-items:center; margin:0 0 16px; font:700 12px/1 var(--body); letter-spacing:.12em; }.eyebrow span { display:inline-block; width:26px; height:4px; background:var(--yellow); }.eyebrow.light { color:var(--warm); }
h1,h2,h3,p { margin-top:0; } h1,h2,h3 { font-family:var(--condensed); text-transform:uppercase; letter-spacing:-.035em; } h1 { max-width:625px; margin-bottom:22px; font-size:clamp(69px,8.7vw,137px); font-weight:900; line-height:.78; } h1 em,h2 em { font-style:normal; color:var(--yellow); -webkit-text-stroke:1.5px var(--ink); }
.hero-description { max-width:430px; margin-bottom:29px; font-size:16px; line-height:1.55; color:#4a4740; }.hero-actions { display:flex; align-items:center; gap:28px; }.button { min-height:53px; display:inline-flex; align-items:center; justify-content:center; gap:24px; padding:13px 22px; border:1px solid var(--ink); font:800 17px/1 var(--condensed); letter-spacing:.025em; text-transform:uppercase; transition:transform .18s, background .18s; }.button:hover { transform:translate(-3px,-3px); box-shadow:4px 4px 0 var(--ink); }.button-primary { background:var(--yellow); }.button-primary span { font-size:24px; line-height:0; }.text-link { padding-bottom:5px; border-bottom:2px solid var(--ink); font:800 14px/1 var(--condensed); letter-spacing:.04em; }.text-link span { margin-left:8px; }
.hero-proof { display:flex; gap:25px; margin-top:47px; }.hero-proof div { display:flex; gap:7px; align-items:center; padding-right:25px; border-right:1px solid #b6b0a4; }.hero-proof div:last-child { padding:0; border:0; }.hero-proof strong { font:800 34px/1 var(--condensed); }.hero-proof span { font:700 10px/1.15 var(--body); letter-spacing:.06em; text-transform:uppercase; color:#625e56; }
.hero-visual { position:relative; min-height:615px; background:#d9d4cb; overflow:hidden; }.hero-visual::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 65% 20%, rgba(255,255,255,.7), transparent 40%), linear-gradient(110deg, rgba(255,255,255,.72), rgba(255,255,255,.05) 55%), repeating-linear-gradient(-15deg,transparent 0 11px,rgba(0,0,0,.035) 12px 13px); z-index:1; pointer-events:none; }.hero-image-frame { position:absolute; inset:0; overflow:hidden; }.hero-image-frame img { display:block; width:100%; height:100%; object-fit:cover; object-position:93% 50%; mix-blend-mode:multiply; filter:contrast(1.06) saturate(.92); }.caution { height:17px; background:repeating-linear-gradient(135deg,var(--yellow) 0 18px,var(--yellow) 18px 20px,var(--ink) 20px 38px,var(--ink) 38px 40px); }.caution-top { position:absolute; z-index:4; top:0; left:0; right:0; transform:rotate(-2deg) scale(1.05); }.hero-stamp { position:absolute; z-index:4; display:grid; place-items:center; align-content:center; width:106px; height:106px; bottom:51px; left:7%; border:2px solid var(--ink); border-radius:50%; background:var(--yellow); text-align:center; transform:rotate(-10deg); box-shadow:0 0 0 5px rgba(246,181,29,.35); }.hero-stamp span { font:800 10px/1 var(--condensed); letter-spacing:.07em; }.hero-stamp strong { font:900 19px/.78 var(--condensed); }.hero-stamp i { position:absolute; bottom:8px; font-style:normal; font-size:9px; }.visual-caption { position:absolute; z-index:4; top:45px; left:7%; margin:0; font:800 21px/.8 var(--condensed); letter-spacing:.02em; color:#15130e; transform:rotate(-2deg); }.visual-caption strong { color:var(--yellow); -webkit-text-stroke:1px var(--ink); font-size:33px; }
.ticker { overflow:hidden; padding:13px 0; background:var(--ink); color:var(--yellow); white-space:nowrap; }.ticker-track { display:inline-flex; align-items:center; gap:21px; min-width:max-content; animation:marquee 43s linear infinite; font:800 19px/1 var(--condensed); letter-spacing:.025em; }.ticker b { font-size:16px; color:var(--cream); } @keyframes marquee { to { transform:translateX(-33%); } }
.section-shell { padding-left:clamp(24px,8vw,130px); padding-right:clamp(24px,8vw,130px); }.benefits { display:grid; grid-template-columns:minmax(230px,.92fr) minmax(500px,1.55fr); align-items:center; gap:75px; padding-top:119px; padding-bottom:119px; background:var(--ink); color:var(--warm); }.section-intro h2,.how h2,.details h2,.faq h2,.closing-cta h2,.product-panel h2 { margin-bottom:23px; font-size:clamp(48px,5.1vw,76px); font-weight:900; line-height:.79; }.section-intro h2 em,.details h2 em,.closing-cta h2 em { -webkit-text-stroke:1px var(--warm); }.section-intro > p:last-child,.details-copy > p:last-of-type { max-width:390px; color:#c1bdb4; font-size:15px; line-height:1.62; }.benefit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:13px; }.benefit-card { min-height:335px; position:relative; display:flex; flex-direction:column; padding:22px; overflow:hidden; }.benefit-card::after { content:""; position:absolute; left:0; right:0; bottom:0; height:10px; background:repeating-linear-gradient(135deg,currentColor 0 12px,currentColor 12px 14px,transparent 14px 26px,transparent 26px 28px); opacity:.45; }.card-gold { background:var(--yellow); color:#16130d; }.card-dark { border:1px solid #494640; color:var(--warm); }.card-light { background:#eeeae1; color:#16130d; }.card-no { font:800 15px/1 var(--condensed); letter-spacing:.08em; }.line-icon { margin-top:auto; margin-bottom:11px; font:700 62px/.7 var(--condensed); }.icon-gut { transform:rotate(-18deg); }.hardhat { font-size:78px; border:5px solid currentColor; border-bottom:0; width:82px; height:48px; border-radius:83px 83px 0 0; }.icon-load { font-size:75px; }.benefit-card h3 { margin:0 0 9px; font-size:29px; line-height:.83; font-weight:800; }.benefit-card p { margin:0; font-size:12px; line-height:1.45; }
.how { padding-top:113px; padding-bottom:105px; background:var(--warm); }.how-header { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:54px; }.how h2 { margin:0; }.steps { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #aca79c; }.step { position:relative; min-height:255px; padding:25px 26px 15px 0; border-right:1px solid #aca79c; }.step + .step { padding-left:27px; }.step:last-child { border:0; }.step-number { font:800 16px/1 var(--condensed); color:#8d877e; }.step-icon { height:80px; margin-top:16px; color:var(--yellow); }.scoop-icon { width:95px; border:5px solid var(--ink); border-radius:50%; position:relative; transform:rotate(-25deg); }.scoop-icon::after { content:""; position:absolute; width:61px; height:11px; top:66px; left:67px; border:5px solid var(--ink); border-left:0; transform:rotate(25deg); }.pour-icon { width:45px; height:62px; border:5px solid var(--ink); border-radius:7px; transform:rotate(-27deg); position:relative; }.pour-icon::after { content:"···"; position:absolute; top:53px; left:39px; color:var(--yellow); font:900 38px/1 var(--condensed); transform:rotate(27deg); }.move-icon { font:900 112px/.6 var(--condensed); color:var(--ink); }.step h3 { margin:10px 0 6px; font-size:34px; line-height:1; }.step p { max-width:210px; margin:0; font-size:13px; line-height:1.5; color:#615d55; }
.product-section { display:grid; grid-template-columns:1fr 1fr; background:var(--yellow); }.product-art { min-height:670px; position:relative; overflow:hidden; background:#dfd8ce; }.product-art::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.23),transparent 60%); pointer-events:none; }.product-art-image { position:absolute; inset:0; overflow:hidden; }.product-art-image img { display:block; width:100%; height:100%; object-fit:cover; object-position:93% 50%; }.product-art p { position:absolute; z-index:2; left:clamp(24px,5vw,85px); top:60px; margin:0; font:900 clamp(46px,5.2vw,82px)/.75 var(--condensed); color:var(--cream); -webkit-text-stroke:1px var(--ink); }.product-art p::after { content:""; display:block; width:90px; margin-top:28px; height:12px; background:repeating-linear-gradient(135deg,var(--yellow) 0 12px,var(--ink) 12px 24px); }.product-panel { padding:78px clamp(24px,7vw,104px) 69px; background:var(--yellow); }.product-panel h2 { font-size:clamp(53px,5.7vw,84px); }.product-panel h2 em { color:var(--cream); -webkit-text-stroke:1px var(--ink); }.rating { display:flex; gap:8px; align-items:center; margin-bottom:21px; font-size:13px; font-weight:700; }.rating span { color:var(--ink); letter-spacing:1px; }.rating a { text-decoration:underline; font-weight:400; }.product-description { max-width:410px; margin-bottom:22px; font-size:14px; line-height:1.55; }.price { margin:0 0 23px; font-size:14px; }.price del { color:#746022; }.price strong { margin-left:7px; font:800 29px/1 var(--condensed); }.price span { color:#524720; font-size:12px; }.purchase-options { margin:0 0 18px; padding:0; border:0; }.purchase-options legend { margin-bottom:9px; font:800 13px/1 var(--condensed); letter-spacing:.09em; }.purchase-options label { min-height:61px; position:relative; display:grid; grid-template-columns:18px 1fr auto; align-items:center; column-gap:10px; margin-bottom:8px; padding:10px 14px; border:1px solid rgba(17,17,15,.55); cursor:pointer; }.purchase-options label:has(input:checked) { border:2px solid var(--ink); padding:9px 13px; background:rgba(255,253,249,.23); }.purchase-options input { appearance:none; width:14px; height:14px; margin:0; border:1px solid var(--ink); border-radius:50%; }.purchase-options input:checked { border:4px solid var(--ink); background:var(--yellow); }.purchase-options b { display:block; font:800 15px/1 var(--condensed); letter-spacing:.04em; }.purchase-options small { display:block; margin-top:3px; font-size:10px; }.purchase-options > label > strong { font:800 21px/1 var(--condensed); }.purchase-options i { position:absolute; right:0; top:-11px; padding:3px 7px; background:var(--ink); color:var(--yellow); font:800 10px/1 var(--condensed); letter-spacing:.08em; font-style:normal; }.purchase-row { display:flex; gap:9px; }.quantity { display:flex; align-items:center; height:53px; border:1px solid var(--ink); }.quantity button { width:36px; height:100%; padding:0; border:0; background:transparent; font-size:22px; }.quantity output { min-width:22px; text-align:center; font-weight:700; }.add-to-cart { flex:1; }.purchase-notes { display:flex; gap:14px; flex-wrap:wrap; margin-top:15px; font-size:10px; font-weight:700; letter-spacing:.01em; }
.details { display:grid; grid-template-columns:.9fr 1.1fr; gap:9vw; padding-top:113px; padding-bottom:113px; background:var(--ink); color:var(--warm); }.details-copy h2 { font-size:clamp(48px,5.3vw,78px); }.light-link { color:var(--yellow); border-bottom-color:var(--yellow); }.ingredient-list { border-top:1px solid #605d56; }.ingredient-list div { display:grid; grid-template-columns:90px 1fr; gap:0 23px; padding:24px 0 22px; border-bottom:1px solid #605d56; }.ingredient-list strong { grid-row:span 2; color:var(--yellow); font:800 57px/.75 var(--condensed); }.ingredient-list span { font:800 24px/1 var(--condensed); text-transform:uppercase; }.ingredient-list p { grid-column:2; margin:7px 0 0; color:#b7b3ac; font-size:12px; line-height:1.45; }
.review-section { display:flex; align-items:center; justify-content:space-between; gap:50px; min-height:376px; padding-top:65px; padding-bottom:65px; background:var(--cream); }.review-quote { position:relative; max-width:665px; padding-left:50px; }.quote-mark { position:absolute; top:-32px; left:0; color:var(--yellow); font:900 112px/1 var(--condensed); }.review-quote blockquote { margin:0 0 17px; font:600 clamp(23px,2.3vw,33px)/1.18 var(--condensed); }.review-quote p,.review-score p { margin:0; font:800 10px/1 var(--body); letter-spacing:.1em; }.review-dots { display:flex; gap:8px; margin-top:23px; }.review-dots i,.review-dots b { width:8px; height:8px; display:block; border:1px solid var(--ink); border-radius:50%; }.review-dots b { background:var(--ink); }.review-score { min-width:175px; padding:23px; border-left:1px solid #b7b2a8; }.review-score > span { color:#e4a714; font-size:18px; letter-spacing:2px; }.review-score strong { display:block; margin:8px 0 2px; font:900 64px/.8 var(--condensed); }.review-score small { font-size:25px; }.review-score p { color:#5d5951; }
.faq { display:grid; grid-template-columns:.75fr 1.25fr; gap:9vw; padding-top:110px; padding-bottom:115px; background:#eae6de; }.faq h2 { margin:0; }.faq-list { border-top:1px solid #9c978d; }.faq details { border-bottom:1px solid #9c978d; }.faq summary { position:relative; padding:20px 36px 20px 0; list-style:none; font:800 21px/1 var(--condensed); cursor:pointer; }.faq summary::-webkit-details-marker { display:none; }.faq summary span { position:absolute; right:4px; top:16px; font:400 29px/1 var(--body); }.faq details[open] summary span { transform:rotate(45deg); }.faq details p { max-width:590px; margin:0; padding:0 10px 21px 0; color:#514d46; font-size:13px; line-height:1.6; }
.closing-cta { position:relative; min-height:440px; display:grid; align-items:center; overflow:hidden; background:var(--yellow); }.closing-cta::before { content:""; position:absolute; width:66vw; height:66vw; max-width:900px; max-height:900px; right:-15vw; top:-31vw; border:36px solid var(--ink); border-radius:50%; opacity:.95; }.closing-inner { position:relative; z-index:1; padding:70px clamp(24px,8vw,130px); }.closing-inner h2 { margin-bottom:15px; font-size:clamp(55px,7vw,105px); }.closing-inner h2 em { color:var(--cream); }.closing-inner > p:not(.eyebrow) { margin-bottom:24px; font-size:16px; }.closing-inner .button { background:var(--ink); color:var(--cream); border-color:var(--ink); }.closing-inner .button:hover { box-shadow:4px 4px 0 var(--cream); }.caution-bottom { position:absolute; bottom:-2px; left:-2%; right:-2%; transform:rotate(1deg); }
.site-footer { display:grid; grid-template-columns:160px 1fr; gap:29px 70px; padding:52px clamp(24px,8vw,130px) 34px; background:var(--ink); color:var(--warm); }.footer-brand span { color:var(--cream); }.footer-brand strong { -webkit-text-stroke:1px var(--cream); }.site-footer > div { display:flex; gap:22px; align-items:center; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }.site-footer p { grid-column:1 / -1; max-width:790px; margin:0; color:#97938b; font-size:10px; line-height:1.55; }.site-footer small { grid-column:1/-1; color:#77736c; font-size:9px; letter-spacing:.08em; }
.toast { position:fixed; z-index:100; bottom:24px; right:24px; transform:translateY(130%); padding:15px 19px; background:var(--ink); border-left:5px solid var(--yellow); color:var(--cream); font:800 15px/1 var(--condensed); letter-spacing:.04em; text-transform:uppercase; box-shadow:5px 5px 0 rgba(0,0,0,.16); transition:transform .25s ease; }.toast.show { transform:translateY(0); }
@media (max-width: 900px) { .hero { grid-template-columns:1fr .78fr; }.hero-copy { padding-left:clamp(24px,5vw,60px); }.benefits { grid-template-columns:1fr; gap:45px; }.section-intro > p:last-child { max-width:550px; }.product-panel { padding-left:38px; padding-right:38px; }.product-art p { left:28px; }.faq { gap:45px; }.details { gap:50px; }.site-nav { gap:16px; } }
@media (max-width: 700px) { .shipping-bar { font-size:10px; gap:8px; }.site-header { height:66px; padding:0 20px; }.site-nav { position:absolute; left:0; right:0; top:65px; display:none; flex-direction:column; gap:0; padding:9px 20px 18px; background:var(--cream); border-bottom:1px solid #d8d3ca; }.site-nav.open { display:flex; }.site-nav a { padding:13px 0; border-bottom:1px solid #ded9cf; }.menu-button { display:block; order:1; margin-left:auto; }.cart-link { order:2; }.cart-link span { display:none; }.hero { display:flex; flex-direction:column; min-height:0; }.hero-copy { padding:63px 24px 48px; }.hero-copy h1 { font-size:clamp(66px,18.5vw,105px); }.hero-description { font-size:14px; }.hero-actions { align-items:flex-start; flex-direction:column; gap:20px; }.hero-proof { gap:13px; margin-top:38px; }.hero-proof div { padding-right:13px; }.hero-visual { min-height:500px; }.hero-image-frame img { object-position:91% 50%; }.visual-caption { top:35px; left:23px; font-size:18px; }.visual-caption strong { font-size:28px; }.hero-stamp { width:90px; height:90px; bottom:28px; left:24px; }.ticker-track { font-size:17px; }.benefits,.how,.details,.faq { padding-top:73px; padding-bottom:73px; }.benefit-grid { grid-template-columns:1fr; }.benefit-card { min-height:230px; }.how-header { display:block; margin-bottom:35px; }.how-header .eyebrow { margin-bottom:24px; }.steps { grid-template-columns:1fr; }.step,.step + .step { min-height:185px; padding:21px 0; border-right:0; border-bottom:1px solid #aca79c; }.step:last-child { border-bottom:0; }.step-icon { position:absolute; top:45px; right:16px; opacity:.85; }.product-section { grid-template-columns:1fr; }.product-art { min-height:475px; }.product-art p { font-size:54px; }.product-panel { padding:54px 24px 50px; }.product-panel h2 { font-size:68px; }.details { grid-template-columns:1fr; }.ingredient-list div { grid-template-columns:78px 1fr; }.ingredient-list strong { font-size:50px; }.review-section { display:block; padding-top:70px; padding-bottom:60px; }.review-score { margin-top:40px; border-left:0; border-top:1px solid #b7b2a8; }.faq { grid-template-columns:1fr; }.closing-cta { min-height:390px; }.closing-cta::before { width:120vw; height:120vw; right:-60vw; top:-22vw; }.site-footer { grid-template-columns:1fr; gap:25px; }.site-footer > div { flex-wrap:wrap; }.site-footer p,.site-footer small { grid-column:1; }.toast { right:15px; left:15px; bottom:15px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; }.ticker-track { animation:none; }.button,.toast { transition:none; } }

/* Keep the supplied product pack fully visible while the surrounding artwork supplies the texture. */
.hero-image-frame img, .product-art-image img { object-fit:contain; object-position:70% 50%; }
.hero-image-frame img { object-fit:cover; object-position:72% 50%; }

/* OFF LOAD display system — dense, forward-leaning construction lettering. */
:root { --offload-display: "Anton", "Barlow Condensed", Impact, sans-serif; }
.brand, h1, h2, h3, .button, .text-link, .site-nav a, .cart-link, .shipping-bar, .eyebrow, .benefit-card h3, .step h3, .purchase-options legend, .purchase-options b, .purchase-options > label > strong, .price strong, .rating, .faq summary, .review-quote blockquote, .review-quote p, .review-score strong, .review-score p, .site-footer > div, .site-footer small {
  font-family: var(--offload-display);
  font-weight: 400;
  letter-spacing: -.035em;
}
h1, h2, h3, .brand { transform: skewX(-2.5deg); transform-origin: left center; }
h1 { font-size: clamp(64px, 8vw, 126px); }
h1, h2 { line-height: .9; text-shadow: .018em .018em 0 rgba(17,17,15,.14); }
.brand { letter-spacing: -.075em; }
.brand span, .brand strong { display:block; }
.site-nav a, .shipping-bar, .eyebrow { letter-spacing: .025em; }

/* Hero pouch: retain the supplied image's full contrast and let its dark edges melt into the panel. */
.hero-visual { background:var(--cream); }
.hero-visual::before { display:none; }
.hero-image-frame img { object-fit:cover; object-position:50% 50%; mix-blend-mode:normal; filter:none; }
.visual-caption { color:var(--ink); text-shadow:none; }

/* Cleaner, more open card hierarchy. */
.benefit-card h3 { margin:34px 0 16px; font-size:31px; line-height:.94; letter-spacing:.02em; }
.benefit-card p { margin:0; font-size:15px; line-height:1.5; }
.section-intro h2 { letter-spacing:.01em; line-height:.98; }
.section-intro h2 em { -webkit-text-stroke:0; text-shadow:none; }

/* The pouch image stays unfiltered against the matching page canvas. */
.product-art { background:var(--ink); }
.product-art::after { display:none; }
.product-art-image img { object-fit:contain; object-position:center; mix-blend-mode:normal; filter:none; }
.product-panel h2, .faq h2 { letter-spacing:.02em; line-height:.98; }
.closing-cta h2 em { -webkit-text-stroke:2px var(--ink); paint-order:stroke fill; }

/* Availability, truck mark, and stronger end-card lettering. */
.brand-truck { width:72px; height:50px; transform:none; }
.brand-truck img { display:block; width:100%; height:100%; object-fit:contain; }
.footer-brand { width:112px; height:70px; }
.product-panel { position:relative; }
.stock-stamp { position:absolute; top:59px; right:clamp(24px,7vw,104px); margin:0; padding:7px 10px 5px; border:3px solid #a81d19; color:#a81d19; font:400 22px/.9 var(--offload-display); letter-spacing:.04em; transform:rotate(-8deg); }
.availability-button { min-width:230px; }
.details h2 { letter-spacing:.02em; line-height:.98; }
.details h2 em { -webkit-text-stroke:2px var(--ink); paint-order:stroke fill; }
.closing-cta::before { display:none; }
.closing-inner h2 { margin-bottom:18px; font-size:clamp(68px,8.25vw,130px); line-height:.94; letter-spacing:.02em; }
.closing-inner h2 em { letter-spacing:.028em; -webkit-text-stroke:3px var(--ink); paint-order:stroke fill; }
.closing-truck { position:absolute; top:50%; right:clamp(32px,8vw,140px); width:min(38vw,530px); height:auto; transform:translateY(-50%); }
.site-footer > div { gap:30px; font-size:16px; letter-spacing:.06em; }
@media (max-width:700px) {
  .brand-truck { width:62px; height:44px; }
  .footer-brand { width:105px; height:65px; }
  .stock-stamp { position:static; display:table; margin:0 0 18px auto; font-size:19px; }
  .availability-button { min-width:0; font-size:14px; gap:12px; }
  .closing-cta { min-height:610px; }
  .closing-inner { padding-bottom:285px; }
  .closing-inner h2 { font-size:clamp(62px,17vw,96px); }
  .closing-truck { top:auto; right:50%; bottom:20px; width:min(86vw,480px); transform:translateX(50%); }
  .site-footer > div { gap:22px; font-size:15px; }
}

/* Refined closing card: a simpler, more compact message and a solid white truck mark. */
.closing-inner h2 { font-size:clamp(56px,6.4vw,102px); }
.closing-truck { filter:brightness(0) invert(1); opacity:.96; }
@media (max-width:700px) { .closing-inner h2 { font-size:clamp(52px,14.3vw,80px); } }

/* More breathable purchase labels without disrupting the card layout. */
.purchase-options b { letter-spacing:.025em; }
.purchase-options small { letter-spacing:.03em; }
.availability-button { letter-spacing:.05em; }

/* Custom OFF LOAD shell for the secure Flodesk waitlist form. */
body.modal-open { overflow:hidden; }
.email-modal { position:fixed; z-index:200; inset:0; display:grid; place-items:center; padding:24px; }
.email-modal[hidden] { display:none; }
.email-modal__backdrop { position:absolute; inset:0; background:rgba(17,17,15,.78); backdrop-filter:blur(5px); }
.email-modal__panel { position:relative; width:min(100%,620px); max-height:calc(100dvh - 48px); overflow:auto; padding:48px clamp(24px,5vw,55px) clamp(30px,5vw,48px); border:2px solid var(--ink); background:var(--cream); box-shadow:10px 10px 0 var(--yellow); }
.email-modal__close { position:absolute; top:12px; right:15px; width:38px; height:38px; padding:0; border:0; background:transparent; color:var(--ink); font:400 37px/.8 var(--body); }
.email-modal__close:hover, .email-modal__close:focus-visible { color:#8c6710; }
.email-modal__eyebrow { margin:0 0 12px; color:#6f5620; font:400 14px/1 var(--offload-display); letter-spacing:.09em; }
.email-modal h2 { margin:0 0 14px; font-size:clamp(45px,7vw,68px); line-height:.88; letter-spacing:.02em; }
.email-modal h2 em { color:var(--yellow); -webkit-text-stroke:1.5px var(--ink); paint-order:stroke fill; }
.email-modal__copy { max-width:430px; margin-bottom:26px; font-size:15px; line-height:1.55; }
#fd-form-6ab83bb7e0e5d015b5abd3ae { width:100%; min-height:80px; }
@media (max-width:700px) {
  .email-modal { padding:15px; }
  .email-modal__panel { max-height:calc(100dvh - 30px); padding:44px 22px 28px; box-shadow:6px 6px 0 var(--yellow); }
  .email-modal__copy { font-size:14px; }
}

/* Desktop hero: let the full pouch and gummies breathe inside the frame. */
@media (min-width:701px) {
  .hero-image-frame { padding:clamp(24px,3vw,54px); }
  .hero-image-frame img { object-fit:contain; object-position:center; }
}

/* Scale the availability callout with the product panel at every desktop width. */
.stock-stamp { top:clamp(28px,3vw,42px); right:clamp(20px,4vw,72px); max-width:calc(100% - 48px); padding:clamp(6px,.7vw,10px) clamp(10px,1.1vw,15px) clamp(5px,.55vw,8px); border-width:clamp(2px,.28vw,4px); font-size:clamp(18px,2.15vw,32px); letter-spacing:.05em; }
@media (max-width:700px) {
  .stock-stamp { padding:8px 12px 6px; border-width:3px; font-size:23px; }
}
