/* ═══════════════════════════════════════════════════════════════
   DR.SHROOMS — BRAND LAYER v6 (flagship redesign, Sept 2026)
   Loaded LAST on every page. Sets the type system, colour,
   buttons, announcement bar, navigation, page headers and footer
   for the whole site. Homepage layout lives in home.css.
   ═══════════════════════════════════════════════════════════════ */

:root{
  --void:#070B06;
  --deep:#0B120A;
  --surface:#10190D;
  --panel:#162213;
  --edge:rgba(214,226,196,.10);
  --edge-l:rgba(214,226,196,.18);

  --cream:#F3EEE3;
  --cream-2:#CFC8B8;
  --cream-3:#9E9888;

  --gold:#C9A94E;
  --gold-2:#E2C77C;
  --gold-soft:rgba(201,169,78,.14);

  --parchment:#EFE9DA;
  --ink:#141C10;
  --ink-2:#4A5243;

  --fd:"Cormorant Garamond",Georgia,serif;   /* display */
  --fm:"Lato",system-ui,sans-serif;           /* labels / UI */
  --fj:"Lato",system-ui,sans-serif;           /* body */
  --fb:"Cinzel",serif;                        /* wordmark only */

  --ticker-h:36px;
  --nav-h:72px;
  --offset:calc(36px + 72px);
  --gutter:clamp(20px,4vw,48px);
  --maxw:1240px;
}

html{font-variant-numeric:lining-nums;-webkit-text-size-adjust:100%;}
body{background:var(--void);color:var(--cream);font-family:var(--fj);font-size:16px;line-height:1.7;text-rendering:optimizeLegibility;}
::selection{background:var(--gold);color:var(--void);}

/* ── TYPE ───────────────────────────────────────────────────── */
h1,h2,h3,.h2,.page-title,.section-display-title,.prod-name,.prod-card-name,.stack-title,.featured-protocol-title,.section-header .section-label{
  font-family:var(--fd)!important;font-weight:500!important;letter-spacing:-.01em!important;
  font-feature-settings:"lnum" 1,"kern" 1;
}
.h2,.section-display-title{font-size:clamp(2.3rem,4.6vw,3.9rem)!important;line-height:1.02!important;}
.h2 em,.page-title em,.section-display-title em,h1 em,h2 em{font-style:italic;font-weight:500!important;color:var(--gold-2)!important;}
.eyebrow,.page-eyebrow,.section-kicker{
  font-family:var(--fm)!important;font-weight:700!important;font-size:11px!important;
  letter-spacing:.26em!important;text-transform:uppercase;color:var(--gold)!important;
}
.s-rule{background:linear-gradient(90deg,var(--gold),transparent)!important;opacity:.6;}
.sep{display:none!important;}

/* ── BUTTONS ────────────────────────────────────────────────── */
.btn{
  font-family:var(--fm)!important;font-weight:700!important;font-size:12px!important;
  letter-spacing:.18em!important;text-transform:uppercase;min-height:52px;
  padding:1rem 2rem!important;border-radius:2px;gap:.6rem;
  transition:background .3s,color .3s,border-color .3s,transform .3s,box-shadow .3s!important;
}
.btn::before{display:none!important;}
.btn-primary{background:var(--gold)!important;color:#0B120A!important;border:1px solid var(--gold)!important;}
.btn-primary:hover{background:var(--gold-2)!important;border-color:var(--gold-2)!important;box-shadow:0 10px 30px -10px rgba(201,169,78,.55)!important;transform:translateY(-1px);}
.btn-ghost{background:transparent!important;color:var(--cream)!important;border:1px solid rgba(243,238,227,.32)!important;}
.btn-ghost:hover{border-color:var(--cream)!important;background:rgba(243,238,227,.06)!important;}
.btn svg{width:14px;height:14px;}

/* ── ANNOUNCEMENT BAR (rotating, no marquee) ───────────────── */
.ticker{height:var(--ticker-h)!important;background:#0F1A0C!important;border-bottom:1px solid var(--edge)!important;justify-content:center;}
.ticker-track{animation:none!important;position:relative;width:100%;height:100%;display:block!important;}
.ticker-item{
  position:absolute;inset:0;display:flex!important;align-items:center;justify-content:center;
  padding:0 16px!important;font-family:var(--fm)!important;font-weight:700!important;
  font-size:11px!important;letter-spacing:.2em!important;color:var(--gold-2)!important;
  text-transform:uppercase;opacity:0;animation:annRotate 15s infinite;white-space:nowrap;
}
.ticker-item:nth-child(2){animation-delay:5s;}
.ticker-item:nth-child(3){animation-delay:10s;}
.ticker-sep{display:none!important;}
@keyframes annRotate{0%{opacity:0;transform:translateY(4px)}3%,30%{opacity:1;transform:none}33%,100%{opacity:0;transform:translateY(-4px)}}
@media(prefers-reduced-motion:reduce){
  .ticker-item{animation:none;}
  .ticker-item:first-child{opacity:1;}
}
@media(max-width:400px){.ticker-item{letter-spacing:.14em!important;font-size:10.5px!important;}}

/* ── NAVIGATION — dark glass everywhere (no cream flip) ────── */
.nav{height:var(--nav-h)!important;padding:0 var(--gutter)!important;}
.nav.scrolled,.nav.nav-solid{
  background:rgba(7,11,6,.86)!important;
  -webkit-backdrop-filter:saturate(140%) blur(18px);backdrop-filter:saturate(140%) blur(18px);
  border-bottom:1px solid var(--edge)!important;box-shadow:none!important;
}
.nav-brand,.nav.scrolled .nav-brand,.nav.nav-solid .nav-brand{
  color:var(--cream)!important;font-size:15px!important;letter-spacing:.42em!important;font-weight:500!important;
}
.nav-links a,.nav.scrolled .nav-links a,.nav.nav-solid .nav-links a{
  color:rgba(243,238,227,.82)!important;font-family:var(--fm)!important;font-weight:700!important;
  font-size:11px!important;letter-spacing:.18em!important;border:0!important;border-radius:0!important;
  padding:.5rem .9rem!important;position:relative;background:transparent!important;
}
.nav-links a:hover,.nav.scrolled .nav-links a:hover,.nav.nav-solid .nav-links a:hover{color:var(--cream)!important;}
.nav-links a.active,.nav.scrolled .nav-links a.active,.nav.nav-solid .nav-links a.active{color:var(--gold-2)!important;border:0!important;}
.nav-links a:not(.nav-ig)::after{
  content:"";position:absolute;left:.9rem;right:.9rem;bottom:.15rem;height:1px;background:currentColor;
  transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease);
}
.nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1);}
.nav-ig,.nav.scrolled .nav-ig,.nav.nav-solid .nav-ig{color:rgba(243,238,227,.82)!important;}
.nav-ham span,.nav.scrolled .nav-ham span,.nav.nav-solid .nav-ham span{background:var(--cream)!important;}
/* Desktop menu trimmed to the essentials — FAQ + Wholesale live in the footer and mobile menu */
@media(min-width:1200px){
  .nav-links li:has(> a[href*="faq/"]),
  .nav-links li:has(> a[href*="wholesale/"]){display:none!important;}
}
/* cart pill on dark nav */
:is(html,#ecwid_html) :is(body,#ecwid_body) :is(.nav,.nav.scrolled,.nav.nav-solid) .nav-cart-item :is(.ec-minicart,.ecwid-minicart){
  color:var(--cream)!important;border-color:rgba(243,238,227,.3)!important;
}
/* Mobile drawer — dark, generous */
.nav-mobile{background:rgba(7,11,6,.98)!important;border-bottom:1px solid var(--edge)!important;box-shadow:0 30px 60px rgba(0,0,0,.5)!important;padding:calc(var(--offset) + 1rem) 0 2rem!important;}
.nav-mobile li{border-bottom:1px solid var(--edge)!important;}
.nav-mobile a{color:var(--cream)!important;font-family:var(--fd)!important;font-weight:500!important;font-size:24px!important;letter-spacing:0!important;text-transform:none!important;padding:1rem 2rem!important;}
.nav-mobile a:hover,.nav-mobile a.active{color:var(--gold-2)!important;background:rgba(201,169,78,.05)!important;}

/* ── INNER PAGE HEADERS ─────────────────────────────────────── */
.page-header{padding:calc(var(--offset) + clamp(3rem,7vw,6rem)) var(--gutter) clamp(3rem,6vw,5rem)!important;border-bottom:1px solid var(--edge)!important;}
.page-header::before{background:radial-gradient(ellipse 60% 70% at 50% 0%,rgba(52,92,38,.28) 0%,transparent 70%)!important;}
.page-title{
  font-family:var(--fd)!important;font-weight:500!important;letter-spacing:-.015em!important;
  font-size:clamp(3rem,7vw,5.8rem)!important;line-height:.98!important;max-width:14ch!important;
}
.page-sub{font-size:1.08rem!important;color:var(--cream-2)!important;max-width:560px!important;line-height:1.75!important;}
@media(max-width:700px){.page-title{font-size:clamp(2.6rem,12vw,3.6rem)!important;max-width:11ch!important;}}

/* ── SECTIONS ───────────────────────────────────────────────── */
.s{padding:clamp(4rem,8vw,7rem) var(--gutter)!important;}
.si{max-width:var(--maxw);}

/* ── CARDS (site-wide surfaces) ─────────────────────────────── */
.stack-card,.featured-protocol,.review-card,.contact-card,.contact-box{border-radius:2px!important;}
.stack-card{background:var(--surface)!important;border:1px solid var(--edge)!important;transition:border-color .3s,transform .4s var(--ease)!important;}
.stack-card:hover{border-color:rgba(201,169,78,.35)!important;transform:translateY(-3px);}
.stack-title{font-size:1.65rem!important;line-height:1.1!important;}
.prod-card-name{font-size:1.6rem!important;line-height:1.1!important;}
.prod-name{font-size:clamp(2.8rem,6vw,4.8rem)!important;line-height:.98!important;}
.prod-headline{font-family:var(--fd)!important;font-style:italic;font-weight:500!important;font-size:clamp(1.4rem,2.6vw,1.9rem)!important;}
.big-price,.stat-num,.prod-card-price,.stack-price-now{font-family:var(--fd)!important;font-weight:600!important;}
.section-header .section-label{font-size:clamp(1.9rem,3.2vw,2.6rem)!important;}

/* ── FOOTER ─────────────────────────────────────────────────── */
footer{background:var(--deep)!important;padding:clamp(3.5rem,7vw,5.5rem) var(--gutter) 2rem!important;}
footer::before{background:linear-gradient(90deg,transparent,rgba(201,169,78,.35),transparent)!important;}
.footer-inner{max-width:var(--maxw)!important;}
.footer-brand-name{font-size:15px!important;letter-spacing:.42em!important;color:var(--cream)!important;margin-bottom:1rem!important;}
.footer-tagline{color:var(--cream-2)!important;font-size:.92rem!important;}
.footer-col-title{font-family:var(--fm)!important;font-weight:700!important;color:var(--gold)!important;letter-spacing:.24em!important;}
.footer-links a{font-family:var(--fj)!important;font-weight:400!important;font-size:.93rem!important;color:var(--cream-2)!important;}
.footer-links a:hover{color:var(--gold-2)!important;}
.footer-copy{font-family:var(--fj)!important;letter-spacing:.04em!important;}

/* ── PRODUCT PAGES ──────────────────────────────────────────── */
.page .section-label{font-family:var(--fm)!important;font-weight:700!important;font-size:11px!important;letter-spacing:.26em!important;color:var(--gold)!important;margin-bottom:1rem!important;}
.prod-badge{color:var(--gold-2)!important;border-color:rgba(201,169,78,.4)!important;font-weight:700;border-radius:1px;}
.breadcrumb{color:var(--cream-3)!important;}
.breadcrumb a{color:var(--cream-2)!important;}
.back-link{color:var(--cream-3)!important;}
.bag-btn{background:var(--gold)!important;color:#0B120A!important;border:1px solid var(--gold)!important;font-weight:700!important;letter-spacing:.18em!important;border-radius:2px;min-height:52px;}
.bag-btn:hover{background:var(--gold-2)!important;border-color:var(--gold-2)!important;}
.big-price{color:var(--gold-2)!important;font-size:3rem!important;}
.problem-box,.solution-box,.why-box,.expect-box{border-radius:0 2px 2px 0;}
.solution-box{border-left-color:var(--gold)!important;}
.problem-box p{font-family:var(--fd)!important;font-style:italic;font-weight:500!important;font-size:1.3rem!important;line-height:1.5!important;color:var(--cream)!important;}
.related-link{border-radius:1px;}
.related-link:hover{border-color:var(--gold)!important;color:var(--gold-2)!important;}

/* ── ACCENT UNIFICATION — one accent (gold), sage labels retire ── */
:root{--sage:#B39A52;--sage-2:#D2B66A;}

/* ── REVIEWS PAGE — match homepage review cards ─────────────── */
.review-card{display:flex;flex-direction:column;}
.review-card > div:first-child{color:var(--gold-2)!important;opacity:1!important;}
.review-card p{font-family:var(--fd)!important;font-style:normal!important;font-weight:500!important;font-size:1.3rem!important;line-height:1.45!important;color:var(--cream)!important;flex:1;}
.review-card > span{font-family:var(--fm)!important;font-weight:700!important;font-size:11px!important;letter-spacing:.16em!important;color:var(--cream-3)!important;border-top:1px solid var(--edge);padding-top:1rem;}

/* ── ABOUT / WHOLESALE / CONTACT quotes & italics in display face ── */
.about-quote p,.contact-card p[style*="italic"],.contact-box p[style*="italic"],blockquote p{font-family:var(--fd)!important;font-weight:500!important;font-size:1.35rem!important;line-height:1.45!important;}

/* ── FAQ ─────────────────────────────────────────────────────── */
details > summary{font-family:var(--fd)!important;font-weight:500!important;font-size:clamp(1.25rem,2vw,1.5rem)!important;color:var(--cream)!important;padding:1.5rem 0!important;}
details > summary:hover,details[open] > summary{color:var(--gold-2)!important;}
details p{color:var(--cream-2);font-size:1rem;line-height:1.8;}

/* ═══ v7 ═══════════════════════════════════════════════════════ */

/* ── PRODUCT PAGES: two-column with sticky buy box ─────────── */
.pp-buy{display:none;}
@media(min-width:1100px){
  .page.page--product{max-width:1240px!important;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:0 clamp(3rem,5vw,5.5rem);align-items:start;padding-left:var(--gutter)!important;padding-right:var(--gutter)!important;}
  .pp-main{min-width:0;}
  .pp-main > .price-cta:first-of-type{display:none;}          /* the buy box replaces the top price row */
  .pp-buy{display:block;position:sticky;top:calc(var(--offset) + 4.6rem);margin-top:4.2rem;}
}
.pp-buy__card{position:relative;background:linear-gradient(180deg,rgba(201,169,78,.07),rgba(201,169,78,0) 40%),var(--surface);border:1px solid rgba(201,169,78,.28);border-radius:2px;padding:2rem 1.8rem 1.6rem;text-align:center;box-shadow:0 30px 60px -30px rgba(0,0,0,.7);}
.pp-buy__badge{display:block;width:120px;height:auto;margin:-4.2rem auto .9rem;filter:drop-shadow(0 14px 22px rgba(0,0,0,.55));}
.pp-buy__kicker{font-family:var(--fm);font-weight:700;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0 0 .35rem;}
.pp-buy__name{font-family:var(--fd);font-weight:500;font-size:2rem;line-height:1.05;color:var(--cream);margin:0 0 .3rem;}
.pp-buy__size{font-size:13px;color:var(--cream-3);letter-spacing:.06em;margin:0 0 1rem;}
.pp-buy__price{font-family:var(--fd);font-weight:600;font-size:2.8rem;line-height:1;color:var(--gold-2);margin-bottom:1.2rem;}
.pp-buy__btn{width:100%;justify-content:center;}
.pp-buy__list{list-style:none;margin:1.4rem 0 1.2rem;padding:1.2rem 0 0;border-top:1px solid var(--edge);text-align:left;display:grid;gap:.55rem;}
.pp-buy__list li{display:flex;gap:.6rem;align-items:center;font-size:13.5px;color:var(--cream-2);}
.pp-buy__list svg{flex:0 0 16px;width:16px;height:16px;fill:none;stroke:var(--gold-2);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.pp-buy__help{display:inline-block;font-size:13px;color:var(--gold-2);text-decoration:none;border-bottom:1px solid rgba(226,199,124,.35);padding-bottom:2px;}
.pp-buy__help:hover{border-color:var(--gold-2);}
.bag-btn.is-added{background:var(--cream)!important;border-color:var(--cream)!important;color:#0B120A!important;}
.page--product .prod-header{margin-top:.5rem;}

/* ── STACKS PAGE refinements ───────────────────────────────── */
.stack-card{border-radius:2px!important;}
.stack-card-media,.featured-protocol-media{border-radius:2px!important;}
.stack-combo span{border-color:rgba(201,169,78,.3)!important;color:var(--gold-2)!important;border-radius:1px!important;}
.stack-price-now{color:var(--gold-2)!important;}
.stack-saving,.featured-protocol-save{border-color:rgba(201,169,78,.45)!important;color:var(--gold-2)!important;}
.featured-protocol{border-color:rgba(201,169,78,.3)!important;border-radius:2px!important;}
.trust-badge{border-color:rgba(201,169,78,.25)!important;color:var(--cream-2)!important;}

/* ── FOOTER badge ──────────────────────────────────────────── */
.footer-brand-name::before{content:"";display:block;width:74px;height:86px;margin-bottom:1.2rem;
  background:url(home/logo-560.webp) center/contain no-repeat;filter:drop-shadow(0 10px 18px rgba(0,0,0,.5));}
@media(max-width:768px){.footer-brand-name::before{margin-left:0;}}

/* ═══ v8 ═══ */
@media(prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important;transition:none!important;}}
/* About: label badge heads the founder column */
.about-badge{display:block;width:150px;height:auto;margin:0 0 1.8rem;filter:drop-shadow(0 18px 28px rgba(0,0,0,.55));}
@media(max-width:900px){.about-badge{width:110px;margin-bottom:1.2rem;}}
/* Product Guide: tighter cards on phones */
@media(max-width:640px){
  .prod-card-inner{padding:1.4rem 1.2rem!important;}
  .prod-card-desc{-webkit-line-clamp:2!important;line-clamp:2!important;margin-bottom:1rem!important;}
  .filter-btn{min-height:40px;}
}
/* Wholesale CTA em colour now follows the system */
.ws-cta h2 em{color:var(--gold-2)!important;}

/* ═══ v9 ═══ */
/* engraved forest-floor watermark in every inner page header */
.page-header{overflow:hidden;}
.page-header::after{content:"";position:absolute;z-index:0;right:-60px;bottom:-30px;width:min(640px,70vw);aspect-ratio:702/338;
  background:url(home/engraving-ink.webp) no-repeat center/contain;filter:invert(1) sepia(.5) saturate(1.4);opacity:.075;pointer-events:none;}
.page-header::before{z-index:0;}
@media(max-width:700px){.page-header::after{right:-40px;bottom:-10px;width:110vw;opacity:.06;}}
/* film grain across the whole site (very light) */
body::after{content:"";position:fixed;inset:0;z-index:2000;pointer-events:none;opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}

/* ═══ v11 — PRODUCT PAGES: editorial layout ══════════════════ */
/* Header: engraved watermark + calmer intro */
.page--product .prod-header{position:relative;}
.page--product .prod-seo-intro{color:var(--cream-2)!important;}
.page--product .prod-headline{margin-top:.2rem!important;}

/* Section labels: gold eyebrow with a short rule */
.page .section-label{display:flex!important;align-items:center;gap:.8rem;}
.page .section-label::before{content:"";width:22px;height:1px;background:var(--gold);opacity:.7;}

/* Problem → Solution side by side */
.page .section:has(> .problem-box){display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;grid-auto-flow:column;column-gap:1.2rem;margin-bottom:3rem;}
.page .section:has(> .problem-box) > .problem-box,.page .section:has(> .problem-box) > .solution-box{margin:0!important;height:100%;}
.problem-box{background:transparent!important;border:1px solid var(--edge-l)!important;border-left:1px solid var(--edge-l)!important;padding:1.6rem 1.6rem!important;}
.problem-box p{font-size:1.28rem!important;color:var(--cream-2)!important;}
.solution-box{background:linear-gradient(180deg,rgba(201,169,78,.08),rgba(201,169,78,.02))!important;border:1px solid rgba(201,169,78,.4)!important;padding:1.6rem 1.6rem!important;}
.solution-box p{font-size:1.02rem!important;line-height:1.75!important;color:var(--cream)!important;}
@media(max-width:760px){.page .section:has(> .problem-box){grid-template-columns:1fr;grid-auto-flow:row;grid-template-rows:none;row-gap:0;}
  .page .section:has(> .problem-box) > .problem-box{margin-bottom:1.6rem!important;}}

/* Key benefits: two-column checklist */
.benefits-grid{grid-template-columns:1fr 1fr!important;border:0!important;border-top:1px solid var(--edge)!important;gap:0 1.6rem!important;margin-bottom:3rem!important;}
.benefit-item{padding:1rem 0!important;border-bottom:1px solid var(--edge)!important;font-size:.98rem!important;color:var(--cream)!important;align-items:center!important;}
.benefit-dot{width:18px!important;height:18px!important;border-radius:50%!important;margin:0!important;background:transparent!important;border:1px solid rgba(201,169,78,.55);position:relative;flex:0 0 18px;}
.benefit-dot::after{content:"";position:absolute;left:5px;top:3px;width:5px;height:8px;border:solid var(--gold-2);border-width:0 1.5px 1.5px 0;transform:rotate(45deg);}
@media(max-width:640px){.benefits-grid{grid-template-columns:1fr!important;}}

/* Why ours is different: parchment panel with the engraving */
.why-box{background:var(--parchment)!important;border:0!important;padding:2rem 2rem 2rem!important;color:var(--ink)!important;overflow:hidden;margin-bottom:3rem!important;}
.why-box::before{content:"";display:block;width:min(360px,80%);aspect-ratio:702/338;margin:0 auto 1.2rem;background:url(home/engraving-ink.webp) center/contain no-repeat;}
.why-box p{color:var(--ink)!important;font-family:var(--fd)!important;font-weight:500!important;font-size:1.3rem!important;line-height:1.5!important;text-align:center;max-width:46ch;margin:0 auto!important;}

/* How to use / Who it's for */
.two-col{gap:1.2rem!important;background:transparent!important;margin-bottom:3rem!important;}
.two-col-item{background:transparent!important;border-top:1px solid rgba(201,169,78,.45);padding:1.4rem 0 0!important;}
.two-col-item p{color:var(--cream-2)!important;font-size:.98rem!important;line-height:1.8!important;}
.two-col-item strong{color:var(--cream)!important;font-weight:700;}

/* What to expect */
.expect-box{background:transparent!important;border:0!important;border-left:2px solid var(--gold)!important;padding:.4rem 0 .4rem 1.4rem!important;margin-bottom:3rem!important;}
.expect-box p{font-family:var(--fd)!important;font-weight:500;font-size:1.35rem!important;line-height:1.5!important;color:var(--cream)!important;}

/* The science accordion (was hit by the FAQ summary style) */
details.science-box{background:transparent!important;border:1px solid var(--edge-l)!important;}
details.science-box > summary{font-family:var(--fm)!important;font-weight:700!important;font-size:11px!important;letter-spacing:.24em!important;text-transform:uppercase!important;color:var(--gold)!important;padding:1.2rem 1.4rem!important;display:flex!important;justify-content:space-between;align-items:center;cursor:pointer;list-style:none;}
details.science-box > summary::-webkit-details-marker{display:none;}
details.science-box > summary span{display:none!important;}
details.science-box > summary::after{content:"+";font-family:var(--fj);font-size:18px;letter-spacing:0;color:var(--gold-2);transition:transform .3s;}
details.science-box[open] > summary::after{transform:rotate(45deg);}
.science-content{font-weight:400!important;}

/* Bottom price row: the sticky buy box covers it on desktop */
@media(min-width:1100px){.pp-main > .price-cta:last-of-type{display:none!important;}}

/* Explore other products: a tidy index, not pills */
.related h2{font-family:var(--fm)!important;font-weight:700!important;font-size:11px!important;letter-spacing:.24em!important;text-transform:uppercase!important;color:var(--gold)!important;margin-bottom:1rem!important;}
.related-links{display:grid!important;grid-template-columns:repeat(3,1fr);gap:0 1.6rem!important;border-top:1px solid var(--edge);}
.related-link{border:0!important;border-bottom:1px solid var(--edge)!important;padding:.95rem 0!important;font-family:var(--fd)!important;font-weight:500!important;font-size:1.2rem!important;letter-spacing:0!important;color:var(--cream)!important;display:flex;justify-content:space-between;align-items:center;}
.related-link::after{content:"→";font-family:var(--fj);font-size:.9rem;color:var(--gold-2);transition:transform .3s;}
.related-link:hover{color:var(--gold-2)!important;background:transparent!important;}
.related-link:hover::after{transform:translateX(4px);}
@media(max-width:640px){.related-links{grid-template-columns:1fr 1fr;}}
.disclaimer{font-family:var(--fj)!important;letter-spacing:.02em!important;}

/* Mobile sticky buy bar (shown by site.js once the main price row scrolls away) */
.pp-sticky{position:fixed;left:0;right:0;bottom:0;z-index:900;display:none;align-items:center;gap:.9rem;
  padding:.7rem 88px calc(.7rem + env(safe-area-inset-bottom)) 16px;background:rgba(7,11,6,.94);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid rgba(201,169,78,.3);
  transform:translateY(110%);transition:transform .4s var(--ease);}
.pp-sticky.is-on{transform:none;}
.pp-sticky__meta{display:flex;flex-direction:column;line-height:1.1;min-width:0;}
.pp-sticky__name{font-family:var(--fd);font-weight:500;font-size:1.05rem;color:var(--cream);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pp-sticky__price{font-family:var(--fd);font-weight:600;font-size:1.15rem;color:var(--gold-2);}
.pp-sticky .bag-btn{margin-left:auto;min-height:46px!important;padding:.7rem 1.1rem!important;font-size:11px!important;white-space:nowrap;}
@media(max-width:1099px){.pp-sticky{display:flex;}}

/* Smart header (site.js) */
.ticker,.nav{transition:transform .45s var(--ease),background .4s,border-color .4s!important;}
body.hdr-hidden .ticker{transform:translateY(-100%);}
body.hdr-hidden .nav{transform:translateY(calc(-100% - var(--ticker-h)));}
@media(prefers-reduced-motion:reduce){.ticker,.nav{transition:none!important;}}
/* product buy box follows the header */
body.hdr-hidden .pp-buy{top:4.6rem;}
.pp-buy{transition:top .45s var(--ease);}
.why-box::before{position:static!important;inset:auto!important;height:auto!important;border:0!important;opacity:1!important;transform:none!important;}
.why-box::after{display:none!important;}
.pp-sticky__meta{flex:1 1 auto;}
.pp-sticky .bag-btn{flex:0 0 auto;margin-left:0;padding:.7rem 1.2rem!important;letter-spacing:.14em!important;}
.pp-sticky .bag-btn{width:auto!important;}

/* ═══ v11 — PRODUCT GUIDE (catalogue index) ═══════════════ */
.search-input{border-color:var(--edge-l)!important;border-radius:2px;font-family:var(--fj)!important;font-size:15px!important;letter-spacing:.02em!important;padding:1.05rem 1.3rem 1.05rem 3rem!important;
  background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23C9A94E' stroke-width='1.6' stroke-linecap='round'%3E%3Ccircle cx='8' cy='8' r='6'/%3E%3Cpath d='m13 13 4 4'/%3E%3C/svg%3E") no-repeat 1.1rem center!important;}
.search-input:focus{border-color:var(--gold)!important;}
.filter-btn{border-radius:2px;font-weight:700!important;color:var(--cream-2)!important;border-color:var(--edge-l)!important;min-height:42px;}
.filter-btn:hover{color:var(--cream)!important;border-color:rgba(201,169,78,.5)!important;}
.filter-btn.active{color:#0B120A!important;background:var(--gold)!important;border-color:var(--gold)!important;}
.section-count{font-weight:700;color:var(--gold)!important;}
.prod-card::before{height:2px!important;background:var(--gold)!important;transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)!important;}
.prod-card:hover::before{transform:scaleX(1);}
.prod-card:hover{transform:none!important;}
.prod-card-badge{color:var(--gold)!important;font-weight:700;}
.prod-card-headline{font-weight:500!important;font-size:1.05rem!important;}
.prod-card-link::after{transition:transform .3s;}
.prod-card:hover .prod-card-link::after{transform:translateX(4px);}
.stat-num{font-size:2.6rem!important;}

/* ═══ v11 — SHOP THE STACKS ═══════════════════════════════ */
.stacks-intro,.stacks-lede{color:var(--cream-2)!important;}
.stack-card-media img{transition:transform 1.1s var(--ease);}
.stack-card:hover .stack-card-media img{transform:scale(1.04);}
.stack-desc{color:var(--cream-2)!important;}
.featured-protocol-title{font-size:clamp(2rem,4vw,3rem)!important;line-height:1.02!important;}
.featured-protocol-badge,.featured-protocol-days{border-radius:1px!important;font-weight:700!important;}
.stack-maxim{background:var(--parchment)!important;border:0!important;border-radius:2px!important;}
.stack-maxim *{color:var(--ink)!important;}
.stack-maxim a{color:#7A6220!important;}
.stack-maxim-text{font-family:var(--fd)!important;font-style:italic;font-weight:500!important;font-size:clamp(1.3rem,2.4vw,1.8rem)!important;line-height:1.4!important;}
.stacks-intro-trust .stacks-trust-badge{border:0!important;background:none!important;padding:0 .9rem!important;border-left:1px solid var(--edge-l)!important;border-radius:0!important;color:var(--cream-2)!important;font-weight:700;}
.stacks-intro-trust .stacks-trust-badge:first-child{border-left:0!important;}
.stacks-intro-trust .trust-icon,.stacks-intro-trust svg{display:none!important;}
.stack-saving,.stack-saving *{border-radius:1px!important;}
.stacks-intro-trust{gap:0!important;}

/* ═══ v11 — closing CTA band on content pages ═══════════════ */
.cta-band{background:var(--parchment);color:var(--ink);padding:clamp(4rem,8vw,6.5rem) var(--gutter);text-align:center;position:relative;isolation:isolate;}
.cta-band__inner{max-width:720px;margin:0 auto;display:flex;flex-direction:column;align-items:center;}
.cta-band__art{width:min(340px,80%);height:auto;margin-bottom:1.8rem;}
.cta-band .eyebrow{color:#7A6220!important;}
.cta-band .h2{color:var(--ink)!important;margin:0 0 .8rem;}
.cta-band .h2 em{color:#7F6420!important;}
.cta-band p{color:var(--ink-2);font-size:1rem;margin:0 0 2rem;}
.cta-band__btns{display:flex;gap:.8rem;flex-wrap:wrap;justify-content:center;}
.btn-ink{background:var(--ink)!important;color:var(--parchment)!important;border:1px solid var(--ink)!important;}
.btn-ink:hover{background:#26311E!important;}
.btn-ink-ghost{background:transparent!important;color:var(--ink)!important;border:1px solid rgba(20,28,16,.4)!important;}
.btn-ink-ghost:hover{border-color:var(--ink)!important;background:rgba(20,28,16,.05)!important;}
.cta-band :focus-visible{outline-color:#6E5618;}
@media(max-width:520px){.cta-band__btns{flex-direction:column;width:100%;max-width:320px;}.cta-band__btns .btn{width:100%;justify-content:center;}}

/* ═══ v13 — PRODUCT PLATES (label-style product imagery) ═════ */
.plate{position:relative;margin:0;background:var(--parchment);color:var(--ink);text-align:center;display:flex;flex-direction:column;align-items:center;
  padding:1.5rem 1.2rem 1.3rem;isolation:isolate;overflow:hidden;}
.plate::before{content:"";position:absolute;inset:7px;border:1px solid rgba(20,28,16,.55);pointer-events:none;}
.plate::after{content:"";position:absolute;inset:11px;border:1px solid rgba(138,109,31,.45);pointer-events:none;}
.plate__brand{font-family:var(--fb);font-size:11px;letter-spacing:.42em;text-transform:uppercase;color:var(--ink);margin:.3rem 0 .6rem;}
.plate__art{display:block;width:100%;aspect-ratio:702/338;max-width:340px;background:url(home/engraving-ink-2x.webp) no-repeat center/contain;margin:.1rem 0 .8rem;}
.plate__name{font-family:var(--fd);font-weight:600;font-size:2rem;line-height:1;color:var(--ink);letter-spacing:.01em;text-transform:uppercase;}
.plate__latin{font-family:var(--fd);font-style:italic;font-weight:500;font-size:1.05rem;color:#5B4A14;margin-top:.35rem;}
.plate__meta{font-family:var(--fm);font-weight:700;font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:#7A6220;margin-top:.8rem;padding-top:.7rem;border-top:1px solid rgba(20,28,16,.2);}
.plate{background-image:var(--grain);background-blend-mode:multiply;background-color:var(--parchment);}

/* in the buy box the plate replaces the hex badge + name block */
.pp-buy__card{padding-top:1rem!important;}
.pp-buy__card > .plate{margin:0 -.8rem 1.4rem;}
.pp-buy__kicker,.pp-buy__name,.pp-buy__size{display:none!important;}
@media(min-width:1100px){.pp-buy{top:calc(var(--offset) + 1.5rem)!important;margin-top:3.2rem!important;} body.hdr-hidden .pp-buy{top:1.5rem!important;}}

/* hero plate on phones/tablets (the buy box is desktop-only) */
.plate--hero{margin:0 0 1.8rem;max-width:520px;}
.plate--hero .plate__name{font-size:clamp(1.8rem,8vw,2.6rem);}
@media(min-width:1100px){.plate--hero{display:none!important;}}

/* Product Guide cards: engraved header band, a different crop per card */
.prod-card-art{display:block;height:150px;background-color:var(--parchment);background-image:url(home/engraving-ink-2x.webp);background-repeat:no-repeat;background-size:150% auto;position:relative;border-bottom:1px solid rgba(201,169,78,.35);transition:background-size 1.2s var(--ease);}
.prod-card-art::after{content:"";position:absolute;inset:6px;border:1px solid rgba(20,28,16,.35);pointer-events:none;}
.prod-card:hover .prod-card-art{background-size:160% auto;}
.plate-art.plate--v1{background-position:8% 42%;}
.plate-art.plate--v2{background-position:42% 70%;}
.plate-art.plate--v3{background-position:78% 48%;}
.plate-art.plate--v4{background-position:98% 78%;}
.plate-art.plate--v5{background-position:64% 22%;}
.plate-art.plate--v6{background-position:30% 95%;}
@media(max-width:640px){.prod-card-art{height:120px;}}
/* calmer card bands: the whole engraving, contained, like a label shelf */
.prod-card-art{background-size:auto 78%!important;background-position:center 58%!important;height:140px;}
.prod-card:hover .prod-card-art{background-size:auto 84%!important;}
/* customer review on product pages */
.pp-review{margin:0 0 3rem;padding:2rem 2rem 1.6rem;background:var(--surface);border:1px solid var(--edge);position:relative;}
.pp-review::before{content:"“";position:absolute;top:.1rem;right:1.2rem;font-family:var(--fd);font-size:6rem;line-height:1;color:rgba(201,169,78,.22);}
.pp-review__stars{color:var(--gold-2);letter-spacing:.18em;font-size:13px;}
.pp-review blockquote{margin:.8rem 0 1rem;font-family:var(--fd);font-weight:500;font-size:1.4rem;line-height:1.4;color:var(--cream);}
.pp-review figcaption{font-family:var(--fm);font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);}
.pp-review__more{display:inline-block;margin-top:.9rem;font-size:13px;color:var(--gold-2);text-decoration:none;border-bottom:1px solid rgba(226,199,124,.35);}
.pp-review__more:hover{border-color:var(--gold-2);}

/* ═══ v13 — Desktop shop menu ════════════════════════════════ */
.mega{position:fixed;left:0;right:0;top:calc(var(--ticker-h) + var(--nav-h));z-index:940;background:rgba(9,14,8,.97);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--edge-l);box-shadow:0 30px 60px -20px rgba(0,0,0,.7);
  opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .3s,transform .35s var(--ease),visibility 0s linear .35s;}
.mega.is-open{opacity:1;visibility:visible;transform:none;transition:opacity .3s,transform .35s var(--ease);}
.mega__inner{max-width:var(--maxw);margin:0 auto;padding:2.2rem var(--gutter) 2.4rem;display:grid;grid-template-columns:1fr 1fr 1.3fr 1.2fr;gap:2.5rem;}
.mega__title{font-family:var(--fm);font-weight:700;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:0 0 1rem;}
.mega ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem;}
.mega__col a{font-family:var(--fd);font-weight:500;font-size:1.25rem;color:var(--cream);text-decoration:none;transition:color .25s;}
.mega__col a:hover,.mega__col a:focus-visible{color:var(--gold-2);}
.mega__col--needs ul{grid-template-columns:1fr 1fr;gap:.55rem 1.2rem;}
.mega__col--needs a{display:flex;flex-direction:column;line-height:1.15;}
.mega__col--needs em{font-style:italic;color:var(--gold-2);}
.mega__col--needs span{font-family:var(--fj);font-size:12.5px;color:var(--cream-3);}
.mega__feature{position:relative;display:flex;flex-direction:column;text-decoration:none;color:var(--cream);}
.mega__img{display:block;aspect-ratio:16/10;background:center/cover no-repeat;border:1px solid var(--edge-l);margin-bottom:.8rem;transition:filter .4s;}
.mega__feature:hover .mega__img{filter:brightness(1.08);}
.mega__tag{position:absolute;top:10px;left:10px;background:var(--gold);color:#0B120A;font-family:var(--fm);font-weight:700;font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:.35rem .6rem;}
.mega__name{font-family:var(--fd);font-weight:500;font-size:1.35rem;}
.mega__sub{font-size:12.5px;color:var(--cream-3);}
@media(max-width:1199px){.mega{display:none!important;}}
.nav-links li.has-mega > a::before{content:"";position:absolute;right:.1rem;top:50%;width:5px;height:5px;border:solid currentColor;border-width:0 1px 1px 0;transform:translateY(-70%) rotate(45deg);opacity:.7;}
.nav-links li.has-mega > a{padding-right:1.25rem!important;}
/* card = art band + inner; inner fills the rest so the price row is never clipped */
.prod-card{display:flex!important;flex-direction:column;}
.prod-card-inner{height:auto!important;flex:1 1 auto;}
/* whole card clickable */
.prod-card{cursor:pointer;}
.prod-card-link::before{content:"";position:absolute;inset:0;z-index:1;}
/* header reading order: badge → name → tagline → story → latin */
.page--product .prod-header{display:flex;flex-direction:column;}
.page--product .prod-badge{order:0;align-self:flex-start;}
.page--product .prod-name{order:1;}
.page--product .prod-headline{order:2;margin:0 0 1.1rem!important;}
.page--product .prod-seo-intro{order:3;}
.page--product .prod-latin{order:4;margin-top:.4rem!important;}

/* ═══ v15 — REAL PRODUCT PHOTOS (from the IONOS store) ═══════ */
[data-photo].photo-failed:not(.prod-card-art){display:none!important;}
.pp-photo{margin:0;position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--edge-l);}
.pp-photo img{display:block;width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;}
.pp-photo--side{display:none;}
@media(min-width:1100px){
  .page.page--product{grid-template-columns:minmax(0,1fr) 420px!important;}
  .pp-buy{position:static!important;align-self:stretch;margin-top:3.2rem!important;}
  .pp-photo--side{display:block;margin-bottom:1.2rem;}
  .pp-buy__card{position:sticky;top:calc(var(--offset) + 1.5rem);transition:top .45s var(--ease);}
  body.hdr-hidden .pp-buy__card{top:1.5rem;}
  .pp-buy:has(.pp-photo--side:not(.photo-failed)) .pp-buy__card > .plate{display:none;}
  .pp-buy:has(.pp-photo--side:not(.photo-failed)) .pp-buy__card{padding-top:1.8rem!important;}
  .pp-photo--hero{display:none!important;}
}
@media(max-width:1099px){
  .pp-photo--hero{margin:0 0 1.8rem;max-width:560px;}
  .pp-main:has(.pp-photo--hero:not(.photo-failed)) .plate--hero{display:none!important;}
}
/* buy card shows name + size again when the photo leads */
@media(min-width:1100px){
  .pp-buy:has(.pp-photo--side:not(.photo-failed)) .pp-buy__name{display:block!important;}
  .pp-buy:has(.pp-photo--side:not(.photo-failed)) .pp-buy__size{display:block!important;}
  .pp-buy:has(.pp-photo--side:not(.photo-failed)) .pp-buy__kicker{display:block!important;}
}

/* Product Guide cards: photo header (engraving band remains the fallback) */
.prod-card-art.has-photo{height:auto!important;aspect-ratio:4/3;background-image:none!important;overflow:hidden;border-bottom:1px solid var(--edge-l);}
.prod-card-art.has-photo::after{display:none;}
.prod-card-art.has-photo.photo-failed{aspect-ratio:auto;height:140px!important;background-image:url(home/engraving-ink-2x.webp)!important;}
.prod-card-photo{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease);}
.prod-card:hover .prod-card-photo{transform:scale(1.04);}

/* Homepage "Find your remedy" tiles */
.h-need__img{display:block;margin:-1.6rem -1.4rem .9rem;aspect-ratio:1/1;overflow:hidden;border-bottom:1px solid rgba(20,28,16,.14);}
.h-need__img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease);}
.h-need:hover .h-need__img img{transform:scale(1.05);}
@media(max-width:640px){.h-need__img{margin:-1.2rem -1rem .8rem;}}
/* stack photo fallback: engraving plate instead of an empty gap */
.stack-card-media.photo-failed{display:block!important;background:var(--parchment) url(home/engraving-ink-2x.webp) center/72% auto no-repeat;min-height:220px;}
/* Shop the Stacks: 8 standard cards → 4 per row on wide screens (no orphans) */
@media(min-width:1200px){.stack-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}.stack-title{font-size:1.5rem!important;}}

/* ===== v18: "Not for human consumption" notices (Turkey Tail, Cordyceps, Cordyceps & Rhodiola) ===== */
:root{--warn:#B3261E;--warn-ink:#fff;}
.nfhc{display:inline-flex;align-items:center;gap:.4em;vertical-align:middle;margin:0 .15em 0 .5em;padding:.3em .65em .3em .45em;border-radius:3px;background:var(--warn);color:var(--warn-ink)!important;font-family:'Lato',system-ui,sans-serif!important;font-size:.66rem!important;font-weight:700!important;font-style:normal!important;letter-spacing:.08em!important;line-height:1.2!important;text-transform:uppercase!important;white-space:nowrap;text-decoration:none!important;-webkit-text-fill-color:var(--warn-ink);}
.nfhc::before{content:"!";display:inline-grid;place-items:center;width:1.35em;height:1.35em;border-radius:50%;background:var(--warn-ink);color:var(--warn);-webkit-text-fill-color:var(--warn);font-size:.95em;font-weight:900;line-height:1;flex:none;}
h1 .nfhc,.prod-card-name .nfhc,.h-need__prod .nfhc,.pp-buy__name .nfhc{display:flex;width:max-content;max-width:100%;margin:.55em 0 0;font-size:.72rem!important;}
.stack-combo span .nfhc,.related-link .nfhc,.pp-sticky__name .nfhc,.mega .nfhc,.breadcrumb .nfhc{font-size:.56rem!important;padding:.22em .5em .22em .35em;margin-left:.4em;}
.pp-sticky__name .nfhc{display:flex;width:max-content;margin:.25em 0 0;}
.mega .nfhc{display:flex;width:max-content;margin:.35em 0 0;}
@media(max-width:480px){.nfhc{white-space:normal;}}
.nfhc-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1rem;margin:0 0 1.25rem;padding:.95rem 1.2rem .95rem 1rem;border-radius:4px;background:var(--warn);color:#fff;font-family:'Lato',system-ui,sans-serif;border-left:6px solid #7A140F;}
.nfhc-banner strong{display:inline-flex;align-items:center;gap:.6rem;font-size:1rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.nfhc-banner strong::before{content:"!";display:inline-grid;place-items:center;width:1.6rem;height:1.6rem;border-radius:50%;background:#fff;color:var(--warn);font-weight:900;}
.nfhc-banner span{font-size:.85rem;opacity:.92;}
.nfhc-buy{margin:.6rem 0 .9rem!important;padding:.6rem .8rem;border-radius:3px;background:var(--warn);color:#fff!important;font-family:'Lato',system-ui,sans-serif;font-size:.8rem!important;font-weight:900!important;letter-spacing:.12em;text-transform:uppercase;text-align:center;}
/* Ecwid store (shop grid, product pages, single-product embeds) — matched by store product ID */
.grid-product--id-844767943 .grid-product__title-inner::after,.grid-product--id-844763984 .grid-product__title-inner::after,.grid-product--id-844767933 .grid-product__title-inner::after,
.ecwid-productBrowser-ProductPage-844767943 .product-details__product-title::after,.ecwid-productBrowser-ProductPage-844763984 .product-details__product-title::after,.ecwid-productBrowser-ProductPage-844767933 .product-details__product-title::after,
.ec-Product-844767943 .ecsp-title::after,.ec-Product-844763984 .ecsp-title::after,.ec-Product-844767933 .ecsp-title::after{
 content:"Not for human consumption";display:block;width:max-content;max-width:100%;margin:.5em 0 0;padding:.3em .65em;border-radius:3px;background:#B3261E;color:#fff;font-family:'Lato',system-ui,sans-serif;font-size:.66rem;font-weight:700;letter-spacing:.08em;line-height:1.2;text-transform:uppercase;white-space:normal;}
.nfhc--title{display:flex;width:max-content;max-width:100%;margin:.2rem 0 1.1rem;font-size:.78rem!important;}
.h-need__prod .nfhc{white-space:normal;font-size:.56rem!important;}
.stack-combo>span:has(>.nfhc){display:inline-flex;flex-direction:column;align-items:flex-start;gap:.35em;border-color:var(--warn)!important;}
.stack-combo>span>.nfhc{margin:0;white-space:normal;}
.prod-card-desc .nfhc{margin-left:.3em;font-size:.56rem!important;padding:.2em .5em .2em .35em;}
.related-links{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
@media(max-width:900px){.related-links{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
.related-link:has(.nfhc){display:grid!important;grid-template-columns:1fr auto;align-items:center;row-gap:.45rem;}
.related-link:has(.nfhc)::after{order:2;}
.related-link .nfhc{order:3;grid-column:1/-1;width:max-content;max-width:100%;margin:0!important;white-space:normal;}
.h-need__prod .nfhc,.pp-sticky__name .nfhc,.stack-combo>span>.nfhc{width:auto!important;max-width:100%;}
@media(max-width:600px){.nfhc{white-space:normal!important;max-width:100%;}h1+.nfhc,.nfhc--title{width:auto!important;}}
.related-link .nfhc{width:auto!important;justify-self:start;min-width:0;}.related-link:has(.nfhc){min-width:0;}

/* ===== v19: global-brand footer + mobile menu meta ===== */
footer.gf{padding-top:clamp(4rem,8vw,6.5rem)!important;}
.gf .footer-inner{margin:0 auto;}
.gf-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,2fr);gap:clamp(2.5rem,6vw,6rem);padding-bottom:clamp(2.5rem,5vw,4rem);border-bottom:1px solid var(--edge);}
.gf-seal{width:64px;height:auto;margin:0 0 1.3rem;opacity:.95;}
.gf-word{font-family:var(--fb);letter-spacing:.42em;font-size:.82rem;color:var(--gold-2);margin:0 0 1.4rem;}
.gf-line{font-family:var(--fd);font-weight:400;font-size:clamp(1.9rem,3vw,2.6rem);line-height:1.08;color:var(--cream);margin:0 0 1rem;letter-spacing:-.01em;}
.gf-line em{color:var(--gold-2);font-style:italic;}
.gf-sub{font-size:.9rem;line-height:1.7;color:var(--cream-2);max-width:34ch;margin:0 0 1.8rem;}
.gf-social{display:inline-flex;align-items:center;gap:.6rem;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--cream)!important;border:1px solid var(--edge);padding:.75rem 1.1rem;border-radius:2px;transition:border-color .3s,color .3s;}
.gf-social:hover{border-color:var(--gold);color:var(--gold-2)!important;}
.gf-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;}
.gf-h{font-size:.66rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-2);margin:0 0 1.3rem;font-weight:700;}
.gf-cols ul{list-style:none;margin:0;padding:0;display:grid;gap:.85rem;}
.gf-cols a{font-size:.9rem;color:var(--cream-2)!important;text-decoration:none;transition:color .25s;overflow-wrap:anywhere;}
.gf-cols a:hover{color:var(--gold-2)!important;}
.gf-trust{list-style:none;margin:0;padding:1.6rem 0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.8rem 2rem;border-bottom:1px solid var(--edge);}
.gf-trust li{display:flex;align-items:center;gap:.7rem;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--cream-2);}
.gf-trust li::before{content:"";width:6px;height:6px;border:1px solid var(--gold);transform:rotate(45deg);flex:none;}
.gf-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.8rem 2rem;padding:1.6rem 0 1.2rem;font-size:.74rem;color:var(--cream-3,#8f9384);}
.gf-region{display:inline-flex;align-items:center;gap:.55rem;letter-spacing:.06em;}
.gf-flag{width:18px;height:12px;border-radius:1px;background:
 linear-gradient(90deg,transparent 42%,#fff 42% 58%,transparent 58%),
 linear-gradient(transparent 36%,#fff 36% 64%,transparent 64%),
 linear-gradient(90deg,transparent 45%,#C8102E 45% 55%,transparent 55%),
 linear-gradient(transparent 42%,#C8102E 42% 58%,transparent 58%),#012169;
 background-blend-mode:normal;box-shadow:0 0 0 1px rgba(255,255,255,.15);}
.gf .footer-disclaimer{margin:0;padding-top:1.2rem;border-top:1px solid var(--edge);color:var(--cream-3,#8f9384);line-height:1.7;max-width:none;text-align:left;}
@media(max-width:960px){.gf-top{grid-template-columns:1fr;}.gf-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.4rem 1.5rem;}}
@media(max-width:600px){.gf-trust{flex-direction:column;}.gf-bottom{flex-direction:column;}}
.nav-mobile__meta{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;padding:1.4rem 2rem 0;margin-top:1rem;border-top:1px solid var(--edge);}
.nav-mobile .nav-mobile__meta a{font-family:var(--fj)!important;font-size:.72rem!important;letter-spacing:.2em!important;text-transform:uppercase!important;color:var(--gold-2)!important;padding:.4rem 0!important;}
svg.gf-flag{width:20px;height:10px;background:none;box-shadow:0 0 0 1px rgba(255,255,255,.18);}
.gf-social,.gf-social span,.gf-cols a{text-decoration:none!important;}

/* ===== v19: Our Story page ===== */
.st{padding:clamp(4.5rem,9vw,8rem) var(--gutter,1.5rem);}
.st--line{border-top:1px solid var(--edge);}
.st-wrap{max-width:var(--maxw,1240px);margin:0 auto;}
.st-h{font-family:var(--fd);font-weight:400;font-size:clamp(2.2rem,4.4vw,3.6rem);line-height:1.05;letter-spacing:-.015em;color:var(--cream);margin:.8rem 0 0;}
.st-h em{color:var(--gold-2);font-style:italic;}
.st-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(2.5rem,7vw,7rem);align-items:start;}
.st-intro__body p{font-size:clamp(1rem,1.2vw,1.1rem);line-height:1.9;color:var(--cream-2);margin:0 0 1.4rem;font-weight:400;}

.st-quote{padding:clamp(4.5rem,9vw,8rem) var(--gutter,1.5rem);text-align:center;}
.st-quote__seal{width:84px;height:auto;margin:0 auto 2.2rem;display:block;}
.st-quote__text{font-family:var(--fd);font-style:italic;font-weight:400;font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.35;max-width:30ch;margin:0 auto 2rem;color:var(--ink);}
.st-quote__cite{font-family:var(--fd);font-size:1.4rem;color:var(--ink);margin:0;}
.st-quote__cite span{display:block;font-family:var(--fj);font-size:.66rem;letter-spacing:.26em;text-transform:uppercase;color:#7a6326;margin-top:.5rem;}
.st-head{max-width:40rem;margin-bottom:clamp(2.5rem,5vw,4rem);}
.st-principles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--edge);}
.st-principles li{padding:2rem 1.8rem 0 0;}
.st-principles li+li{padding-left:1.8rem;border-left:1px solid var(--edge);}
.st-principles span{font-family:var(--fd);font-size:1rem;color:var(--gold-2);letter-spacing:.1em;}
.st-principles h3{font-family:var(--fd);font-weight:500;font-size:1.55rem;color:var(--cream);margin:1rem 0 .8rem;line-height:1.15;}
.st-principles p{font-size:.92rem;line-height:1.75;color:var(--cream-2);margin:0;}
.st-families{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--edge);border:1px solid var(--edge);}
.st-fam{display:flex;flex-direction:column;background:var(--void,#070B06);padding:clamp(2rem,3vw,2.8rem);text-decoration:none!important;transition:background .35s;min-height:300px;}
.st-fam:hover{background:#0f150c;}
.st-fam__k{font-family:var(--fd);font-size:2.6rem;color:var(--gold);opacity:.6;line-height:1;}
.st-fam h3{font-family:var(--fd);font-weight:500;font-size:1.8rem;color:var(--cream);margin:1.6rem 0 .8rem;}
.st-fam p{font-size:.92rem;line-height:1.75;color:var(--cream-2);margin:0 0 2rem;}
.st-fam__go{margin-top:auto;font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-2);}
@media(max-width:1000px){.st-principles{grid-template-columns:repeat(2,minmax(0,1fr));}.st-principles li:nth-child(3){padding-left:0;border-left:0;}.st-principles li:nth-child(n+3){margin-top:2rem;border-top:1px solid var(--edge);}}
@media(max-width:800px){.st-intro{grid-template-columns:1fr;}.st-families{grid-template-columns:1fr;}.st-fam{min-height:0;}}
@media(max-width:560px){.st-principles{grid-template-columns:1fr;}.st-principles li,.st-principles li+li{padding:1.8rem 0 0;border-left:0;}.st-principles li+li{margin-top:1.8rem;border-top:1px solid var(--edge);}}
.st-quote{background:var(--parchment);color:var(--ink);}

/* ===== v19: Customer care page ===== */
.cc{padding:clamp(4rem,8vw,7rem) var(--gutter,1.5rem);}
.cc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--edge);border:1px solid var(--edge);}
.cc-card{background:var(--void,#070B06);padding:clamp(2rem,3vw,2.6rem);display:flex;flex-direction:column;min-height:320px;}
.cc-k{font-family:var(--fd);color:var(--gold-2);font-size:1rem;letter-spacing:.1em;}
.cc-card h2{font-family:var(--fd);font-weight:500;font-size:1.7rem;color:var(--cream);margin:1.2rem 0 .9rem;line-height:1.1;}
.cc-card p{font-size:.92rem;line-height:1.75;color:var(--cream-2);margin:0 0 1.8rem;}
.cc-go{margin-top:auto;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-2)!important;text-decoration:none!important;font-weight:700;}
.cc-go:hover{color:var(--cream)!important;}
.cc-sub{font-size:.85rem;color:var(--cream-2)!important;margin-top:.7rem;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--edge);}
.cc-direct{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:clamp(2rem,5vw,4rem);margin-top:clamp(3rem,6vw,5rem);padding-top:clamp(2.5rem,5vw,3.5rem);border-top:1px solid var(--edge);}
.cc-mail{display:block;margin-top:.9rem;font-family:var(--fd);font-size:clamp(1.7rem,3vw,2.5rem);color:var(--cream)!important;text-decoration:none!important;overflow-wrap:anywhere;line-height:1.1;}
.cc-mail:hover{color:var(--gold-2)!important;}
.cc-faq{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.7rem;}
.cc-faq a{font-size:.92rem;color:var(--cream-2)!important;}
.cc-co{margin:1rem 0 0;font-size:.9rem;line-height:1.8;color:var(--cream-2);}
@media(max-width:1100px){.cc-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:800px){.cc-direct{grid-template-columns:1fr;}}
@media(max-width:560px){.cc-grid{grid-template-columns:1fr;}.cc-card{min-height:0;}}
.gf .gf-line{font-family:var(--fd)!important;}
.gf .gf-word{font-family:var(--fb)!important;}
.cc-sub{margin:0 0 .6rem;}.cc-sub+.cc-go{margin-top:auto;padding-top:1.2rem;}
.nav-mobile__meta{justify-content:center;border-bottom:0!important;}
.policy-note a{color:var(--gold-2)!important;}
/* v19b: homepage stacks — 9 cards incl. signature protocol */
.h-sig{position:absolute;right:.9rem;top:.9rem;padding:.42rem .7rem;background:rgba(7,11,6,.82);border:1px solid var(--gold);color:var(--gold-2);font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;font-weight:700;backdrop-filter:blur(4px);}
.h-stack__img.photo-failed{display:block!important;background:var(--parchment) url(home/engraving-ink-2x.webp) center/70% auto no-repeat;}
#protocol{scroll-margin-top:calc(var(--offset,90px) + 1.5rem);}
/* v21: shop (IONOS) stack photos are mostly 4:3 — frame every stack card at 4:3 so nothing important is cropped */
.stack-card-media{aspect-ratio:4/3!important;}
.stack-card-media img,.h-stack__img img,.featured-protocol-media img{object-fit:cover;object-position:50% 50%!important;}

/* ===== v26: SEO tincture hub pages + hub links ===== */
.hub-crumbs{max-width:var(--maxw,1240px);margin:0 auto;padding:1.4rem var(--gutter,1.5rem) 0;font-size:.78rem;letter-spacing:.06em;color:var(--cream-3,#8f9384);}
.hub-crumbs a{color:var(--cream-2)!important;text-decoration:none;}.hub-crumbs a:hover{color:var(--gold-2)!important;}
.hub-copy{max-width:780px;margin:0 auto;padding:clamp(2.5rem,5vw,4rem) var(--gutter,1.5rem);}
.hub-copy--intro{padding-bottom:1rem;}
.hub-h{font-family:var(--fd);font-weight:400;font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.12;color:var(--cream);margin:2.6rem 0 1rem;}
.hub-copy > .hub-h:first-child{margin-top:0;}
.hub-copy p{font-size:1rem;line-height:1.85;color:var(--cream-2);margin:0 0 1.1rem;}
.hub-copy p a{color:var(--gold-2)!important;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(201,169,78,.4);}
.hub-copy strong{color:var(--cream);font-weight:700;}
.hub-faq{border-top:1px solid var(--edge);margin-top:1rem;}
.hub-q{border-bottom:1px solid var(--edge);}
.hub-q summary{display:flex;justify-content:space-between;gap:1.5rem;align-items:center;padding:1.25rem 0;cursor:pointer;list-style:none;font-family:var(--fd);font-size:1.25rem;color:var(--cream);}
.hub-q summary::-webkit-details-marker{display:none;}
.hub-q summary span{color:var(--gold-2);font-family:var(--fj);transition:transform .3s;}
.hub-q[open] summary span{transform:rotate(45deg);}
.hub-q div p{padding-bottom:1.2rem;margin:0;}
.hub-more{margin-top:2.4rem!important;padding-top:1.6rem;border-top:1px solid var(--edge);font-size:.9rem!important;}
.section-hub{margin-left:auto;margin-right:1.2rem;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2)!important;text-decoration:none;font-weight:700;}
.section-header{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;}
.h-hublinks{display:flex;gap:1.4rem;margin-top:.9rem;}
.h-hublinks a{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:inherit;opacity:.8;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px;}
.h-hublinks a:hover{opacity:1;}

/* ===== v27: homepage keyword section + guide notes ===== */
.h-seo{padding:clamp(4rem,8vw,6.5rem) 0;border-top:1px solid var(--edge);background:var(--void);}
.h-seo__inner{max-width:1100px;}
.h-seo__title{font-family:var(--fd);font-weight:400;font-size:clamp(2rem,4vw,3.2rem);line-height:1.06;letter-spacing:-.015em;color:var(--cream);margin:0 0 1.2rem;max-width:20ch;}
.h-seo__title em{color:var(--gold-2);font-style:italic;}
.h-seo__lede{font-size:clamp(1rem,1.2vw,1.1rem);line-height:1.85;color:var(--cream-2);max-width:62ch;margin:0 0 clamp(2.2rem,4vw,3.2rem);}
.h-seo__cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4.5rem);border-top:1px solid var(--edge);padding-top:clamp(2rem,4vw,2.8rem);}
.h-seo__cols h3{font-family:var(--fd);font-weight:500;font-size:1.6rem;color:var(--cream);margin:0 0 .9rem;}
.h-seo__cols p{font-size:.95rem;line-height:1.85;color:var(--cream-2);margin:0 0 1.3rem;}
.h-seo__cols p a{color:var(--gold-2);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(201,169,78,.4);}
@media(max-width:760px){.h-seo__cols{grid-template-columns:1fr;}}
.hub-note{font-size:.82rem!important;color:var(--cream-3,#8f9384)!important;border-left:2px solid var(--gold);padding-left:1rem;}
.page-sub--kw{margin-top:.6rem!important;font-style:italic;opacity:.85;}
