/* =========================================================================
   components.css, shared frame + foundation components.
   Header, Footer, Trust band, Need-router, Need doors, Signature story,
   Telehealth band, LP shell blocks. Semantic tokens only.
   ========================================================================= */

/* ===================== LOGO / WORDMARK ===================== */
/* Treatment per DESIGN-SYSTEM §14: thin letters, wide tracking, horizon arc,
   single luminous focal dot. Type-set so it re-temperatures with the page. */
.nam-logo{ display:inline-flex; flex-direction:column; gap:5px; line-height:1; text-decoration:none; }
.nam-logo__mark{
  font-family:var(--font-heading); font-weight:300;
  font-size:19px; letter-spacing:.2em; text-transform:uppercase;
  color:var(--fg-on-dark-1); white-space:nowrap; display:inline-flex; align-items:baseline;
}
/* Wordmark accents: gold Ó (brand metal), blue .AI (the glow signal). */
.nam-logo__o{ color:var(--gold); text-shadow:0 0 14px rgba(var(--gold-rgb),.55); }
.nam-logo__ai{ color:var(--accent-hover); letter-spacing:.1em; text-shadow:0 0 14px rgba(var(--glow-rgb),.5); }
.nam-logo:hover .nam-logo__mark{ color:#fff; }
.nam-logo__dot{
  display:inline-block; width:5px; height:5px; border-radius:var(--r-pill);
  background:var(--accent-hover); box-shadow:0 0 8px rgba(var(--glow-rgb),.9);
  margin:0 1px 3px;
}
.nam-logo__arc{ width:100%; height:2px; background:var(--horizon); filter:blur(.3px); opacity:.9; }
.nam-logo--lg .nam-logo__mark{ font-size:29px; letter-spacing:.22em; }
.nam-logo--lg{ gap:8px; }
/* Image lockup variant, the actual NAM brand mark (used in nav + footer) */
.nam-logo--img{ display:inline-flex; align-items:center; }
.nam-logo__img{ display:block; width:auto; height:48px; transition:opacity var(--dur-base); }
.nam-logo--lg .nam-logo__img{ height:68px; }
.nam-logo--img:hover .nam-logo__img{ opacity:.82; }
/* Vertical emblem lockup (burst + horizon + wordmark + tagline), taller than the wordmark */
.nam-logo--emblem .nam-logo__img{ height:74px; }
.nam-logo--emblem.nam-logo--lg .nam-logo__img{ height:104px; }

/* ===================== UTILITY BAR ===================== */
.nam-utility{
  background:#000; color:var(--fg-on-dark-3);
  font-family:var(--font-heading); font-weight:500; font-size:10px;
  letter-spacing:var(--tracking-wider); text-transform:uppercase;
}
.nam-utility__inner{ max-width:1440px; margin:0 auto; padding:10px var(--sp-12);
  display:flex; justify-content:space-between; align-items:center; gap:var(--sp-6); }
.nam-utility__sep{ opacity:.4; margin:0 var(--sp-3); }
@media(max-width:880px){ .nam-utility__left{ display:none; } .nam-utility__inner{ justify-content:center; } }

/* ===================== NAV ===================== */
.nam-nav{ position:sticky; top:0; z-index:50;
  background:color-mix(in srgb, var(--bg-dark) 92%, transparent);
  backdrop-filter:blur(14px); border-bottom:1px solid var(--border-on-dark); }
.nam-nav__inner{ max-width:1440px; margin:0 auto; padding:18px var(--sp-12);
  display:flex; align-items:center; gap:var(--sp-8); }
.nam-nav__links{ display:flex; align-items:center; gap:var(--sp-8); margin-left:auto; }
.nam-nav__link{ font-family:var(--font-heading); font-weight:500; font-size:11px;
  letter-spacing:var(--tracking-wider); text-transform:uppercase; color:var(--fg-on-dark-2);
  padding:6px 0; transition:color var(--dur-base); }
.nam-nav__link:hover{ color:var(--fg-on-dark-1); }
.nam-nav__link.is-active{ color:var(--accent-hover); }
.nam-nav__actions{ display:flex; align-items:center; gap:var(--sp-4); margin-left:var(--sp-6); }
.nam-nav__icon{ width:40px; height:40px; border-radius:var(--r-pill); display:flex; align-items:center; justify-content:center;
  color:var(--fg-on-dark-2); border:1px solid var(--border-on-dark-strong); transition:color var(--dur-base), border-color var(--dur-base); }
.nam-nav__icon:hover{ color:var(--fg-on-dark-1); border-color:var(--fg-on-dark-1); }
.nam-nav__cta{ padding:12px 22px; font-size:11px; }
/* FDA Tracker live dot, the only persistent ambient motion in the nav */
.nam-nav__live{ display:inline-block; width:6px; height:6px; margin-left:7px; border-radius:var(--r-pill);
  background:var(--status-success); box-shadow:0 0 7px var(--status-success); vertical-align:middle;
  animation:nam-live-pulse 2.4s ease-in-out infinite; }
@keyframes nam-live-pulse{ 0%,100%{ opacity:.4; } 50%{ opacity:1; } }
@media(prefers-reduced-motion: reduce){ .nam-nav__live{ animation:none; } }

/* Peptides mega-panel (desktop hover/focus; tap lands on /peptides on mobile) */
.nam-nav__item{ position:relative; display:inline-flex; align-items:center; }
.nam-mega{
  position:absolute; top:100%; left:50%; transform:translateX(-50%) translateY(8px);
  margin-top:14px; min-width:300px; opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);
  z-index:60;
}
.nam-nav__item--mega.is-open .nam-mega{ opacity:1; visibility:visible; pointer-events:auto; transform:translateX(-50%) translateY(0); }
.nam-mega::before{ content:""; position:absolute; top:-14px; left:0; right:0; height:14px; }
.nam-mega__inner{
  background:var(--bg-dark-card); border:1px solid var(--border-on-dark); border-radius:var(--r-lg);
  box-shadow:var(--shadow-3), var(--glow-sm); padding:var(--sp-2); display:flex; flex-direction:column;
}
.nam-mega__item{ display:flex; flex-direction:column; gap:2px; padding:12px 14px; border-radius:var(--r-md);
  transition:background var(--dur-fast); }
.nam-mega__item:hover{ background:var(--bg-dark-hover); }
/* Wider two-column panel for the full Peptides cluster (review P1: expose all surfaces) */
.nam-mega--wide{ min-width:560px; }
.nam-mega--wide .nam-mega__inner{ display:grid; grid-template-columns:1fr 1fr; gap:2px; }

/* Breadcrumb (cluster wayfinding) */
.nam-crumb{ background:var(--bg-dark); border-bottom:1px solid var(--border-on-dark); }
.nam-crumb__inner{ max-width:1280px; margin:0 auto; padding:var(--sp-4) var(--sp-12); display:flex; align-items:center; gap:var(--sp-3); flex-wrap:wrap;
  font-family:var(--font-mono); font-size:12px; letter-spacing:.04em; }
.nam-crumb__link{ color:var(--fg-on-dark-3); transition:color var(--dur-fast); }
.nam-crumb__link:hover{ color:var(--fg-on-dark-1); }
.nam-crumb__sep{ color:var(--fg-on-dark-3); opacity:.6; }
.nam-crumb__cur{ color:var(--accent-hover); }
@media(max-width:560px){ .nam-crumb__inner{ padding:var(--sp-3) var(--sp-6); font-size:11px; } }

/* Wing-wide axis switcher (Status | Learn), Spec Amendments §B.2 */
.nam-axis{ background:var(--bg-dark); border-bottom:1px solid var(--border-on-dark); }
.nam-axis__inner{ max-width:1280px; margin:0 auto; padding:var(--sp-3) var(--sp-12);
  display:flex; align-items:center; gap:var(--sp-5); flex-wrap:wrap; }
.nam-axis__label{ font-family:var(--font-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--fg-on-dark-3); }
.nam-axis__ctx{ color:var(--fg-on-dark-2); text-transform:none; letter-spacing:.02em; }
.nam-axis__seg{ display:inline-flex; gap:4px; padding:4px; border-radius:var(--r-pill);
  background:rgba(255,255,255,.03); border:1px solid var(--border-on-dark); }
.nam-axis__opt{ display:inline-flex; align-items:baseline; gap:8px; text-decoration:none;
  padding:6px 16px; border-radius:var(--r-pill); transition:background var(--dur-fast), color var(--dur-fast); }
.nam-axis__opt:hover{ background:rgba(255,255,255,.05); }
.nam-axis__opt.is-active{ background:var(--accent-soft); border:1px solid var(--border-on-dark-strong); padding:5px 15px; }
.nam-axis__k{ font-family:var(--font-heading); font-weight:600; font-size:11px; letter-spacing:var(--tracking-wide);
  text-transform:uppercase; color:var(--fg-on-dark-2); }
.nam-axis__opt.is-active .nam-axis__k{ color:var(--accent-hover); }
.nam-axis__q{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-12); color:var(--fg-on-dark-3); }
@media(max-width:560px){
  .nam-axis__inner{ padding:var(--sp-3) var(--sp-6); }
  .nam-axis__label{ width:100%; }
  .nam-axis__q{ display:none; }
}
.nam-mega__t{ font-family:var(--font-heading); font-weight:600; font-size:var(--fs-13); color:var(--fg-on-dark-1);
  letter-spacing:.01em; }
.nam-mega__d{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-12); color:var(--fg-on-dark-3); }

/* Hamburger + mobile drawer (≤980px, where the inline links collapse) */
.nam-nav__burger{ display:none; width:42px; height:42px; flex-shrink:0; align-items:center; justify-content:center;
  flex-direction:column; gap:5px; border-radius:var(--r-pill); border:1px solid var(--border-on-dark-strong);
  background:transparent; cursor:pointer; transition:border-color var(--dur-base); }
.nam-nav__burger:hover{ border-color:var(--fg-on-dark-1); }
.nam-nav__burger span{ display:block; width:18px; height:1.5px; background:var(--fg-on-dark-1);
  transition:transform var(--dur-base) var(--ease-out), opacity var(--dur-fast); }
.nam-nav__burger.is-open span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
.nam-nav__burger.is-open span:nth-child(2){ opacity:0; }
.nam-nav__burger.is-open span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }

.nam-mobile{ display:none; border-top:1px solid var(--border-on-dark);
  background:color-mix(in srgb, var(--bg-dark) 96%, transparent); backdrop-filter:blur(14px); }
.nam-mobile__inner{ max-width:1440px; margin:0 auto; padding:var(--sp-4) var(--sp-8) var(--sp-8);
  display:flex; flex-direction:column; }
.nam-mobile__link{ font-family:var(--font-heading); font-weight:500; font-size:15px; letter-spacing:.02em;
  color:var(--fg-on-dark-1); padding:var(--sp-4) 0; border-bottom:1px solid var(--border-on-dark);
  display:flex; align-items:center; }
.nam-mobile__link.is-active{ color:var(--accent-hover); }
.nam-mobile__sub{ display:flex; flex-direction:column; padding:var(--sp-1) 0 var(--sp-3) var(--sp-5);
  border-bottom:1px solid var(--border-on-dark); }
.nam-mobile__sublink{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-14);
  color:var(--fg-on-dark-2); padding:var(--sp-2) 0; }
.nam-mobile__sublink:hover{ color:var(--fg-on-dark-1); }
.nam-mobile__cta{ margin-top:var(--sp-6); justify-content:center; }

@media(max-width:980px){
  .nam-nav__links{ display:none; }
  .nam-nav__burger{ display:flex; }
  .nam-nav__actions{ margin-left:auto; }
  .nam-nav__cta{ display:none; }
  .nam-mobile.is-open{ display:block; max-height:80vh; overflow-y:auto; }
}

/* ===================== HERO (split / centered) ===================== */
.nam-hero{ position:relative; background:var(--bg-dark); overflow:hidden; border-bottom:1px solid var(--border-on-dark); }
.nam-hero__bg{ position:absolute; inset:0; z-index:0; pointer-events:none; }
.nam-hero__bg img, .nam-hero__bg video{ width:100%; height:100%; object-fit:cover; object-position:72% 50%; opacity:.9; }
.nam-hero__bg video{ display:block; }
.nam-hero__bg::after{ content:""; position:absolute; inset:0;
  background:linear-gradient(90deg, var(--bg-dark) 18%, color-mix(in srgb, var(--bg-dark) 55%, transparent) 52%, transparent 88%),
    linear-gradient(0deg, var(--bg-dark) 2%, transparent 38%); }
.nam-hero--img .nam-hero__inner{ min-height:62vh; display:flex; align-items:center; }
.nam-hero__glow{ position:absolute; z-index:0; right:-12%; top:42%; transform:translateY(-50%);
  width:62vw; height:62vw; max-width:840px; max-height:840px; border-radius:var(--r-pill); pointer-events:none;
  background:radial-gradient(circle, rgba(var(--glow-rgb),.16) 0%, rgba(var(--glow-rgb),.04) 38%, transparent 70%); }
.nam-hero__inner{ position:relative; z-index:1; max-width:1280px; margin:0 auto; padding:var(--sp-24) var(--sp-12); }
.nam-hero__copy{ max-width:760px; display:flex; flex-direction:column; align-items:flex-start; }
.nam-hero__eyebrow{ margin-bottom:var(--sp-8); }
.nam-hero__sub{ margin:var(--sp-6) 0 0; max-width:54ch; color:var(--fg-on-dark-2); }
.nam-hero__horizon{ width:min(640px,100%); margin:var(--sp-8) 0 0; }
.nam-hero__horizon .nam-logo__arc{ height:2px; }

/* ===================== NEED-ROUTER ===================== */
.nam-router{ margin-top:var(--sp-12); width:100%; }
.nam-router__q{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-13);
  letter-spacing:var(--tracking-wider); text-transform:uppercase; color:var(--fg-on-dark-3); margin-bottom:var(--sp-5); }
.nam-router__grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:var(--sp-3); }
.nam-router__card{ position:relative; display:flex; flex-direction:column; gap:var(--sp-3);
  padding:var(--sp-6) var(--sp-5); border-radius:var(--r-md); text-align:left;
  background:linear-gradient(180deg, rgba(var(--glow-rgb),.14), rgba(var(--glow-rgb),.05)); border:1px solid var(--border-on-dark);
  transition:transform var(--dur-base) var(--ease-out), border-color var(--dur-base), background var(--dur-base), box-shadow var(--dur-base); }
.nam-router__card:hover{ transform:translateY(-4px); border-color:rgba(var(--glow-rgb),.6);
  background:linear-gradient(180deg, rgba(var(--glow-rgb),.2), rgba(var(--glow-rgb),.08));
  box-shadow:0 18px 40px -18px rgba(0,0,0,.6), 0 0 0 1px rgba(var(--glow-rgb),.22); }
.nam-router__card-icon{ color:var(--accent-hover); filter:drop-shadow(0 0 8px rgba(var(--glow-rgb),.4)); }
.nam-router__card-label{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-14);
  color:var(--fg-on-dark-1); letter-spacing:-.005em; line-height:1.25; }
.nam-router__card-arrow{ margin-top:auto; color:var(--accent-hover); font-size:14px; transition:transform var(--dur-base); }
.nam-router__card:hover .nam-router__card-arrow{ transform:translateX(4px); }
.nam-router__capture{ display:flex; gap:var(--sp-2); margin-top:var(--sp-6); max-width:480px; }
.nam-router__input{ flex:1; padding:13px 16px; border-radius:var(--r-sm); background:rgba(255,255,255,.05);
  border:1px solid var(--border-on-dark-strong); color:var(--fg-on-dark-1); font-family:var(--font-body); font-size:var(--fs-14); }
.nam-router__input::placeholder{ color:var(--fg-on-dark-3); }
.nam-router__input:focus{ outline:none; border-color:var(--accent-hover); box-shadow:0 0 0 3px var(--accent-soft); }
.nam-router__note{ font-size:var(--fs-12); color:var(--fg-on-dark-3); margin-top:var(--sp-3); }
@media(max-width:980px){ .nam-router__grid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:480px){ .nam-router__grid{ grid-template-columns:1fr; } .nam-router__capture{ flex-direction:column; } }

/* ===================== HERO V2, single-CTA fold (CRO) ===================== */
/* Inline proof bar (stars + cert), sits between subhead and the CTA. */
.hero2-proof{ display:flex; align-items:center; gap:var(--sp-5); flex-wrap:wrap; margin-top:var(--sp-8); }
.hero2-proof .nam-stars-row__text{ color:var(--fg-on-dark-2); font-size:var(--fs-14); }
.hero2-proof__sep{ width:1px; height:18px; background:var(--border-on-dark-strong); }
.hero2-proof__item{ display:inline-flex; align-items:center; gap:var(--sp-2);
  font-family:var(--font-body); font-size:var(--fs-13); color:var(--fg-on-dark-3); }
.hero2-proof__item svg{ color:var(--accent-hover); }

/* CTA + price anchor on one line, the single dominant action. */
.hero2-act{ margin-top:var(--sp-10); }
.hero2-cta-row{ display:flex; align-items:center; gap:var(--sp-6); flex-wrap:wrap; }
.hero2-cta{ font-size:var(--fs-14); padding:16px 28px; }
.hero2-price{ display:inline-flex; align-items:baseline; gap:var(--sp-2);
  font-family:var(--font-heading); color:var(--fg-on-dark-2); }
.hero2-price__lead{ font-size:var(--fs-13); font-weight:400; color:var(--fg-on-dark-3); }
.hero2-price__num{ font-size:var(--fs-24); font-weight:500; color:var(--fg-on-dark-1); letter-spacing:var(--tracking-tight); }
.hero2-price__unit{ font-size:var(--fs-14); font-weight:400; color:var(--fg-on-dark-3); }
.hero2-price__note{ font-size:var(--fs-12); font-weight:400; color:var(--fg-on-dark-3);
  padding-left:var(--sp-3); margin-left:var(--sp-1); border-left:1px solid var(--border-on-dark-strong); }

/* Risk-reversal chip row, loud, visible removal of the three buying frictions. */
.hero2-chips{ display:flex; align-items:center; gap:var(--sp-3); flex-wrap:wrap; margin-top:var(--sp-8); }
.hero2-chip{ display:inline-flex; align-items:center; gap:var(--sp-2);
  font-family:var(--font-body); font-size:var(--fs-13); color:var(--fg-on-dark-2);
  padding:6px 12px 6px 10px; border-radius:var(--r-pill);
  border:1px solid var(--border-on-dark-strong); background:rgba(255,255,255,.04); }
.hero2-chip svg{ color:var(--accent-hover); flex-shrink:0; }

.hero2-sub{ display:flex; align-items:center; gap:var(--sp-6); flex-wrap:wrap; margin-top:var(--sp-6); }
.hero2-trustline{ font-family:var(--font-body); font-size:var(--fs-12); color:var(--fg-on-dark-3); }
.hero2-shop{ font-family:var(--font-body); font-size:var(--fs-13); color:var(--fg-on-dark-3);
  transition:color var(--dur-base); }
.hero2-shop:hover{ color:var(--fg-on-dark-2); }
.hero2-shop__em{ font-weight:500; color:var(--accent-hover); }

/* Step 2, the need-router, revealed only after commit. */
.hero2-step2{ margin-top:var(--sp-10); width:100%; max-width:760px; }
.hero2-step2__head{ display:flex; align-items:center; justify-content:space-between; gap:var(--sp-4);
  margin-bottom:var(--sp-5); }
.hero2-step2__q{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-13);
  letter-spacing:var(--tracking-wider); text-transform:uppercase; color:var(--fg-on-dark-3); }
.hero2-step2__back{ font-family:var(--font-body); font-size:var(--fs-13); color:var(--fg-on-dark-3);
  background:none; border:none; cursor:pointer; transition:color var(--dur-base); }
.hero2-step2__back:hover{ color:var(--fg-on-dark-1); }
.hero2-router__grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:var(--sp-3); }
.hero2-step2 .nam-router__capture{ margin-top:var(--sp-6); }
@media(max-width:980px){ .hero2-router__grid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:480px){ .hero2-router__grid{ grid-template-columns:1fr; } }

/* ===================== SIGNATURE STORY (Dawn card inside Cool page) ===================== */
.nam-signature{ position:relative; border-radius:var(--r-lg); overflow:hidden;
  border:1px solid var(--border-on-dark); background:var(--bg-dark-card);
  display:grid; grid-template-columns:1.1fr 1fr; }
.nam-signature__copy{ padding:var(--sp-20) var(--sp-16); display:flex; flex-direction:column; align-items:flex-start; }
.nam-signature__halo{ position:absolute; top:-20%; left:-10%; width:420px; height:420px; border-radius:var(--r-pill);
  background:radial-gradient(circle, rgba(var(--glow-rgb),.22) 0%, transparent 70%); pointer-events:none; }
.nam-signature__media{ position:relative; min-height:480px; overflow:hidden; }
.nam-signature__media img{ width:100%; height:100%; object-fit:cover; }
.nam-signature__veil{ position:absolute; inset:0;
  background:linear-gradient(90deg, var(--bg-dark-card) 0%, transparent 42%),
            linear-gradient(180deg, transparent 60%, rgba(20,9,16,.55) 100%); }
.nam-signature__quote{ font-family:var(--font-edit); font-style:italic; font-weight:300;
  font-size:clamp(22px,2.4vw,30px); line-height:1.34; color:var(--fg-on-dark-1); margin:var(--sp-6) 0 0;
  border-left:1px solid var(--accent-hover); padding-left:var(--sp-6); }
@media(max-width:880px){ .nam-signature{ grid-template-columns:1fr; } .nam-signature__copy{ padding:var(--sp-12); } .nam-signature__media{ min-height:320px; } }

/* ===================== NEED DOORS ===================== */
.nam-doors{ display:grid; grid-template-columns:repeat(4,1fr); gap:var(--sp-4); }
.nam-door{ position:relative; display:flex; flex-direction:column; min-height:240px;
  border-radius:var(--r-md); overflow:hidden; border:1px solid var(--border-on-dark);
  background:linear-gradient(180deg, rgba(var(--glow-rgb),.14), rgba(var(--glow-rgb),.05));
  padding:var(--sp-8); transition:transform var(--dur-base) var(--ease-out), border-color var(--dur-base), box-shadow var(--dur-base); }
.nam-door:hover{ transform:translateY(-6px); border-color:rgba(var(--glow-rgb),.6);
  box-shadow:0 26px 60px -22px rgba(0,0,0,.7), 0 0 0 1px rgba(var(--glow-rgb),.22), var(--glow-md); }
/* door image media (homepage), dissolves into the card top */
.nam-door--img{ padding-top:0; }
.nam-door__media{ display:block; margin:calc(var(--sp-8) * -1) calc(var(--sp-8) * -1) var(--sp-6); overflow:hidden; position:relative; }
.nam-door__media img{ display:block; width:100%; height:auto; transition:transform var(--dur-slow) var(--ease-out); }
.nam-door--img:hover .nam-door__media img{ transform:scale(1.055); }
.nam-door__media::after{ content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, transparent 42%, color-mix(in srgb, var(--bg-dark) 78%, transparent) 100%),
    radial-gradient(120% 90% at 82% 0%, rgba(var(--glow-rgb),.18), transparent 58%); }
.nam-door__icon{ width:46px; height:46px; border-radius:var(--r-pill); display:flex; align-items:center; justify-content:center;
  background:var(--accent-soft); border:1px solid var(--border-on-dark-strong); color:var(--accent-hover); margin-bottom:var(--sp-6);
  filter:drop-shadow(0 0 10px rgba(var(--glow-rgb),.35)); }
.nam-door__title{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-32); color:var(--fg-on-dark-1); margin:0 0 var(--sp-3); letter-spacing:-.02em; }
.nam-door__desc{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-14); line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); margin:0 0 var(--sp-6); flex:1; }
.nam-door__cta{ display:inline-flex; align-items:center; gap:var(--sp-2); font-family:var(--font-heading); font-weight:600; font-size:11px; letter-spacing:var(--tracking-wider); text-transform:uppercase; color:var(--accent-hover); transition:gap var(--dur-base) var(--ease-out); }
.nam-door:hover .nam-door__cta{ color:var(--fg-on-dark-1); gap:var(--sp-3); }
.nam-door--soon{ opacity:.6; }
.nam-door__badge{ position:absolute; top:var(--sp-5); right:var(--sp-5); font-family:var(--font-heading); font-weight:600;
  font-size:9px; letter-spacing:var(--tracking-wider); text-transform:uppercase; color:var(--fg-on-dark-2);
  border:1px solid var(--border-on-dark-strong); padding:4px 9px; border-radius:var(--r-pill); }
@media(max-width:980px){ .nam-doors{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:480px){ .nam-doors{ grid-template-columns:1fr; } }

/* ===================== HOME NEED DOORS, full-bleed 2+3 bento ===================== */
.home-doors{ display:grid; grid-template-columns:repeat(6,1fr); gap:var(--sp-5); }
.home-door{ position:relative; display:flex; flex-direction:column; justify-content:flex-end;
  min-height:340px; border-radius:var(--r-lg); overflow:hidden; isolation:isolate;
  border:1px solid var(--border-on-dark); text-decoration:none;
  transition:transform var(--dur-base) var(--ease-out), border-color var(--dur-base), box-shadow var(--dur-base); }
.home-door--feature{ grid-column:span 3; min-height:440px; }
.home-door--std{ grid-column:span 2; }
.home-door__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 42%;
  z-index:0; transform:scale(1.001); transition:transform var(--dur-slow) var(--ease-out); }
.home-door__scrim{ position:absolute; inset:0; z-index:1; pointer-events:none;
  background:
    linear-gradient(180deg, transparent 30%,
      color-mix(in srgb, var(--bg-dark) 52%, transparent) 64%,
      color-mix(in srgb, var(--bg-dark) 94%, transparent) 100%),
    radial-gradient(130% 100% at 85% 6%, rgba(var(--glow-rgb),.16), transparent 56%); }
.home-door:hover{ transform:translateY(-6px); border-color:rgba(var(--glow-rgb),.55);
  box-shadow:0 30px 70px -26px rgba(0,0,0,.8), 0 0 0 1px rgba(var(--glow-rgb),.22), var(--glow-md); }
.home-door:hover .home-door__img{ transform:scale(1.06); }
.home-door__body{ position:relative; z-index:2; padding:var(--sp-8);
  display:flex; flex-direction:column; align-items:flex-start; gap:var(--sp-3); }
.home-door__icon{ width:44px; height:44px; border-radius:var(--r-pill); display:inline-flex; align-items:center; justify-content:center;
  background:color-mix(in srgb, var(--bg-dark) 50%, transparent); backdrop-filter:blur(8px);
  border:1px solid var(--border-on-dark-strong); color:var(--accent-hover); margin-bottom:var(--sp-3);
  box-shadow:0 0 16px rgba(var(--glow-rgb),.28); }
.home-door__title{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-32);
  color:var(--fg-on-dark-1); margin:0; letter-spacing:-.02em; line-height:var(--lh-snug); }
.home-door--feature .home-door__title{ font-size:var(--fs-40); }
.home-door__desc{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-14);
  line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); margin:0; max-width:42ch; }
.home-door__cta{ display:inline-flex; align-items:center; gap:var(--sp-2); margin-top:var(--sp-2);
  font-family:var(--font-heading); font-weight:600; font-size:11px; letter-spacing:var(--tracking-wider);
  text-transform:uppercase; color:var(--accent-hover); }
.home-door__arrow{ transition:transform var(--dur-base) var(--ease-out); }
.home-door:hover .home-door__cta{ color:var(--fg-on-dark-1); }
.home-door:hover .home-door__arrow{ transform:translateX(4px); }
@media(max-width:960px){
  .home-doors{ grid-template-columns:repeat(2,1fr); }
  .home-door--feature{ grid-column:span 2; min-height:360px; }
  .home-door--std{ grid-column:span 1; }
  .home-door--std:last-child{ grid-column:span 2; }
}
@media(max-width:560px){
  .home-doors{ grid-template-columns:1fr; }
  .home-door--feature, .home-door--std, .home-door--std:last-child{ grid-column:span 1; min-height:300px; }
}

/* ===================== SHOP RAIL (price-forward Tier-1 PDPs) ===================== */
.nam-rail__head{ display:flex; align-items:flex-end; justify-content:space-between; gap:var(--sp-6); margin-bottom:var(--sp-8); }
.nam-rail__all{ flex-shrink:0; display:inline-flex; align-items:center; gap:var(--sp-2); font-family:var(--font-heading);
  font-weight:600; font-size:11px; letter-spacing:var(--tracking-wider); text-transform:uppercase; color:var(--accent-hover);
  transition:gap var(--dur-base) var(--ease-out); }
.nam-rail__all:hover{ gap:var(--sp-3); color:var(--fg-on-dark-1); }
/* Responsive wrapping grid, all five cards lay out without being cut off:
   ~5-up on desktop, wraps down to 1-up on phones. */
.nam-rail{ display:grid; grid-template-columns:repeat(auto-fill, minmax(220px,1fr)); gap:var(--sp-4); }
@media(max-width:560px){ .nam-rail{ grid-template-columns:repeat(2, 1fr); } }
@media(max-width:400px){ .nam-rail{ grid-template-columns:1fr; } }
.nam-shopcard{ scroll-snap-align:start; display:flex; flex-direction:column; min-height:212px;
  border-radius:var(--r-md); border:1px solid var(--border-on-dark); background:var(--bg-dark-card);
  padding:var(--sp-6); transition:transform var(--dur-base) var(--ease-out), border-color var(--dur-base), box-shadow var(--dur-base); }
.nam-shopcard:hover{ transform:translateY(-5px); border-color:rgba(var(--glow-rgb),.55);
  box-shadow:0 24px 56px -24px rgba(0,0,0,.7), var(--glow-md); }
.nam-shopcard__price{ font-family:var(--font-heading); font-weight:600; font-size:var(--fs-32); color:var(--fg-on-dark-1);
  letter-spacing:-.02em; line-height:1; }
.nam-shopcard__unit{ font-family:var(--font-body); font-weight:400; font-size:var(--fs-14); color:var(--fg-on-dark-3); margin-left:4px; letter-spacing:0; }
.nam-shopcard__name{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-18); color:var(--fg-on-dark-1);
  margin:var(--sp-5) 0 var(--sp-2); letter-spacing:-.01em; }
.nam-shopcard__diff{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-13); line-height:var(--lh-relaxed);
  color:var(--fg-on-dark-2); margin:0 0 var(--sp-5); flex:1; }
.nam-shopcard__cta{ display:inline-flex; align-items:center; gap:var(--sp-2); font-family:var(--font-heading); font-weight:600;
  font-size:11px; letter-spacing:var(--tracking-wider); text-transform:uppercase; color:var(--accent-hover); transition:gap var(--dur-base) var(--ease-out); }
.nam-shopcard:hover .nam-shopcard__cta{ gap:var(--sp-3); color:var(--fg-on-dark-1); }

/* shop index, same cards in a wrapping grid */
.nam-shopgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:var(--sp-4); }
.nam-shopgrid .nam-shopcard{ margin:0; }
@media(max-width:900px){ .nam-shopgrid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:560px){ .nam-shopgrid{ grid-template-columns:1fr; } }

/* shop hub hero, copy + product render */
.nam-shophero__grid{ display:grid; grid-template-columns:1fr .82fr; gap:var(--sp-10); align-items:center; }
.nam-shophero__media{ position:relative; aspect-ratio:4/5; max-height:520px; border-radius:var(--r-lg);
  overflow:hidden; background:var(--c-void); border:1px solid var(--border-on-dark); justify-self:end; width:100%; }
.nam-shophero__media img{ display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
@media(max-width:900px){ .nam-shophero__grid{ grid-template-columns:1fr; }
  .nam-shophero__media{ max-height:400px; aspect-ratio:16/10; justify-self:stretch; } }

/* shop card product render, a void window seated above the price */
.nam-shopcard--media{ padding-top:0; overflow:hidden; }
.nam-shopcard__viz{ display:block; margin:0 calc(var(--sp-6) * -1) var(--sp-5); aspect-ratio:16/11;
  background:var(--c-void); overflow:hidden; border-bottom:1px solid var(--border-on-dark); }
.nam-shopcard__viz img{ display:block; width:100%; height:100%; object-fit:cover; object-position:center 42%;
  transition:transform var(--dur-base) var(--ease-out); }
.nam-shopcard--media:hover .nam-shopcard__viz img{ transform:scale(1.04); }

/* shop escape hatch under the need-router cards */
.nam-router__hatch{ display:inline-block; margin-top:var(--sp-5); font-family:var(--font-body); font-weight:300;
  font-size:var(--fs-14); color:var(--fg-on-dark-3); transition:color var(--dur-base); }
.nam-router__hatch:hover{ color:var(--fg-on-dark-2); }
.nam-router__hatch-em{ font-weight:500; color:var(--accent-hover); }

/* ===================== TELEHEALTH CAPABILITY BAND ===================== */
.nam-tele{ display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border:1px solid var(--border-on-dark); border-radius:var(--r-md); overflow:hidden; }
.nam-tele[data-cells="5"]{ grid-template-columns:repeat(5,1fr); }
.nam-tele[data-cells="6"]{ grid-template-columns:repeat(3,1fr); }
.nam-tele__cell{ padding:var(--sp-7) var(--sp-5); border-right:1px solid var(--border-on-dark);
  display:flex; flex-direction:column; gap:var(--sp-3); }
.nam-tele__cell:last-child{ border-right:0; }
/* 6-cell = two rows of three: kill the right edge on col 3, add a row divider */
.nam-tele[data-cells="6"] .nam-tele__cell:nth-child(3n){ border-right:0; }
.nam-tele[data-cells="6"] .nam-tele__cell:nth-child(-n+3){ border-bottom:1px solid var(--border-on-dark); }
.nam-tele__icon{ color:var(--accent-hover); margin-bottom:var(--sp-2); }
.nam-tele__t{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-16); color:var(--fg-on-dark-1); line-height:1.3; text-wrap:balance; }
.nam-tele__d{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-13); line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); }
.nam-tele__note{ color:var(--fg-on-dark-1); }
.nam-tele__honest{ margin-top:var(--sp-6); text-align:center; font-family:var(--font-body);
  font-weight:300; font-style:italic; font-size:var(--fs-13); color:var(--fg-on-dark-2); }
/* Scale-claim furniture (Compendium §A.1/§E), quiet support line, never hero. */
.nam-scale{ text-align:center; font-family:var(--font-body); font-weight:300;
  font-size:var(--fs-13); color:var(--fg-on-dark-3); letter-spacing:0.005em; }
.nam-scale .mono{ font-family:var(--font-mono); font-weight:400; color:var(--fg-on-dark-2);
  font-size:0.94em; letter-spacing:0.01em; }
.nam-tele__scale{ margin-top:var(--sp-10); }
.nam-trust__scale{ margin-top:var(--sp-10); }
/* Women's proof block (Compendium §B.1b) */
.nam-wproof{ display:grid; grid-template-columns:repeat(auto-fit, minmax(240px,1fr)); gap:var(--sp-8); margin-top:var(--sp-12); max-width:820px; margin-left:auto; margin-right:auto; }
.nam-wproof.is-condensed{ grid-template-columns:repeat(2,1fr); max-width:760px; margin-left:auto; margin-right:auto; }
.nam-wproof__cell{ padding:var(--sp-10); border:1px solid var(--border-on-dark); border-radius:var(--radius-lg, 14px); background:var(--bg-dark-card); }
.nam-wproof__n{ font-family:var(--font-mono); font-weight:500; font-size:clamp(34px,4vw,52px); line-height:1; color:var(--fg-on-dark-1); letter-spacing:-0.01em; }
.nam-wproof__d{ margin:var(--sp-5) 0 0; font-family:var(--font-body); font-weight:300; font-size:var(--fs-16); line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); }
.nam-wproof__src{ display:block; margin-top:var(--sp-5); font-family:var(--font-mono); font-size:var(--fs-12); letter-spacing:0.02em; color:var(--fg-on-dark-3); }
.nam-wproof__close{ margin:var(--sp-12) auto 0; max-width:64ch; text-align:center; font-family:var(--font-body); font-weight:300; font-size:var(--fs-18); line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); }
@media(max-width:860px){ .nam-wproof, .nam-wproof.is-condensed{ grid-template-columns:1fr; } }
/* Women's hub flagship, compact redesign of "the gap we're building against".
   Tight band: small head, two horizontal stat rows, inline closer. */
[data-screen-label="Women's Longevity Hub"] [data-screen-label="Women's proof block"]{ padding:var(--sp-12) 0; }
[data-screen-label="Women's Longevity Hub"] [data-screen-label="Women's proof block"] .nam-head{ margin-bottom:var(--sp-6); max-width:none; }
[data-screen-label="Women's Longevity Hub"] [data-screen-label="Women's proof block"] .nam-head .nam-h2{ font-size:var(--fs-24); margin-top:var(--sp-2); }
[data-screen-label="Women's Longevity Hub"] .nam-wproof{ gap:var(--sp-4); margin:0; max-width:none; }
[data-screen-label="Women's Longevity Hub"] .nam-wproof__cell{ display:grid; grid-template-columns:auto 1fr; align-items:center; column-gap:var(--sp-5); padding:var(--sp-5) var(--sp-6); }
[data-screen-label="Women's Longevity Hub"] .nam-wproof__n{ font-size:clamp(28px,3vw,38px); grid-row:1 / span 2; padding:0; margin:0; max-width:none; }
[data-screen-label="Women's Longevity Hub"] .nam-wproof__d{ margin:0; font-size:var(--fs-14); line-height:var(--lh-snug,1.35); }
[data-screen-label="Women's Longevity Hub"] .nam-wproof__src{ margin-top:2px; }
[data-screen-label="Women's Longevity Hub"] .nam-wproof__close{ margin-top:var(--sp-6); font-size:var(--fs-14); max-width:64ch; text-align:left; opacity:.85; }
/* Hub decisive close, big single CTA + quieter email fallback (Women's + Men's + Longevity) */
[data-screen-label="Women's Longevity Hub"] .lp-final__row .nam-btn--primary,
[data-screen-label="Men's Optimization Hub"] .lp-final__row .nam-btn--primary,
[data-screen-label="Longevity Hub"] .lp-final__row .nam-btn--primary{ padding:16px 30px; font-size:var(--fs-16); }
[data-screen-label="Women's Longevity Hub"] .wl-close__fallback,
[data-screen-label="Men's Optimization Hub"] .wl-close__fallback,
[data-screen-label="Longevity Hub"] .wl-close__fallback{ margin-top:var(--sp-10); display:flex; flex-direction:column; align-items:center; gap:var(--sp-3); opacity:.78; width:100%; }
[data-screen-label="Women's Longevity Hub"] .wl-close__fallback .nam-router__capture,
[data-screen-label="Men's Optimization Hub"] .wl-close__fallback .nam-router__capture,
[data-screen-label="Longevity Hub"] .wl-close__fallback .nam-router__capture{ margin-top:0; }
[data-screen-label="Women's Longevity Hub"] .wl-close__fallback-label,
[data-screen-label="Men's Optimization Hub"] .wl-close__fallback-label,
[data-screen-label="Longevity Hub"] .wl-close__fallback-label{ margin:0; font-size:var(--fs-13); color:var(--fg-on-dark-2); }
[data-screen-label="Women's Longevity Hub"] .lp-final .nam-router__note,
[data-screen-label="Men's Optimization Hub"] .lp-final .nam-router__note,
[data-screen-label="Longevity Hub"] .lp-final .nam-router__note{ margin-top:var(--sp-6); text-align:center; }
@media(max-width:480px){ [data-screen-label="Women's Longevity Hub"] .lp-final__row .nam-btn--primary,
[data-screen-label="Men's Optimization Hub"] .lp-final__row .nam-btn--primary,
[data-screen-label="Longevity Hub"] .lp-final__row .nam-btn--primary{ width:100%; justify-content:center; } }

/* Men's merged close, TIER 2 (gated-doors waitlist) sits below a labeled divider,
   visually subordinate to the live start-now path above it. */
.lp-close--merged .lp-final__inner{ max-width:760px; }
.lp-close__split{ display:flex; align-items:center; gap:var(--sp-5); width:100%; max-width:560px;
  margin:var(--sp-12) auto 0; color:var(--fg-on-dark-3); font-size:var(--fs-13); }
.lp-close__split::before, .lp-close__split::after{ content:""; flex:1; height:1px; background:var(--border-on-dark); }
.lp-close__split > span{ white-space:nowrap; }
.lp-close__waitlist{ margin-top:var(--sp-8); padding:var(--sp-8) var(--sp-8) var(--sp-7);
  border:1px solid var(--border-on-dark); border-radius:var(--r-lg); background:rgba(255,255,255,.02);
  display:flex; flex-direction:column; align-items:center; gap:var(--sp-3); width:100%; }
.lp-close__waitlist .nam-eyebrow{ margin:0; }
.lp-close__waitlist-title{ margin:0; font-family:var(--font-heading); font-weight:500; font-size:var(--fs-20);
  line-height:var(--lh-tight); color:var(--fg-on-dark-1); text-wrap:balance; }
.lp-close__waitlist-sub{ margin:0; max-width:56ch; font-size:var(--fs-14); line-height:var(--lh-relaxed);
  color:var(--fg-on-dark-2); }
.lp-close__waitlist .lp-waitlist{ margin-top:var(--sp-3); }
.lp-close__waitlist .lp-waitlist__note{ margin-top:var(--sp-2); }
/* Market-size proof line (Compendium §B/C) */
.nam-marketstat-band{ padding:var(--sp-12) 0; }
.nam-marketstat{ max-width:72ch; margin:0 auto; text-align:center; font-family:var(--font-body); font-weight:300; font-size:var(--fs-16); line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); }
.nam-marketstat .mono{ font-family:var(--font-mono); font-weight:400; color:var(--fg-on-dark-1); font-size:0.95em; }
.nam-marketstat__src{ font-family:var(--font-mono); font-size:var(--fs-12); letter-spacing:0.02em; color:var(--fg-on-dark-3); font-style:normal; }
@media(max-width:1000px){
  .nam-tele, .nam-tele[data-cells="5"], .nam-tele[data-cells="6"]{ grid-template-columns:repeat(2,1fr); }
  .nam-tele__cell{ border-right:1px solid var(--border-on-dark); border-bottom:1px solid var(--border-on-dark); }
  .nam-tele__cell:nth-child(2n){ border-right:0; }
}
@media(max-width:560px){
  .nam-tele, .nam-tele[data-cells="5"], .nam-tele[data-cells="6"]{ grid-template-columns:1fr; }
  .nam-tele__cell{ border-right:0; }
}

/* ===================== PROVENANCE CONTRAST STRIP (Component C) ===================== */
.nam-prov__grid{ display:grid; grid-template-columns:1.15fr 1fr; gap:var(--sp-6); margin-top:var(--sp-4); }
.nam-prov__col{ border:1px solid var(--border-on-dark); border-radius:var(--r-md);
  padding:var(--sp-8) var(--sp-7); background:var(--bg-dark-elev); }
.nam-prov__col--lane{ background:var(--bg-dark-card); border-color:var(--rim); }
.nam-prov__label{ font-family:var(--font-heading); font-weight:600; font-size:var(--fs-12);
  letter-spacing:var(--tracking-widest); text-transform:uppercase; color:var(--fg-on-dark-2);
  margin-bottom:var(--sp-5); }
.nam-prov__list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:var(--sp-4); }
.nam-prov__li{ display:flex; align-items:flex-start; gap:var(--sp-3);
  font-family:var(--font-body); font-size:var(--fs-15); line-height:var(--lh-snug); color:var(--fg-on-dark-1); }
.nam-prov__mk{ flex-shrink:0; display:inline-flex; margin-top:2px; }
.nam-prov__li.is-no .nam-prov__mk{ color:var(--fg-on-dark-3,#8a8a93); }
.nam-prov__li.is-yes{ color:var(--accent-hover); font-weight:500; }
.nam-prov__li.is-yes .nam-prov__mk{ color:var(--accent-hover); }
.nam-prov__lanetext{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-15);
  line-height:var(--lh-relaxed); color:var(--fg-on-dark-1); margin:0; }
.nam-prov__proof{ margin-top:var(--sp-6); border:1px solid var(--border-on-dark); border-radius:var(--r-md);
  padding:var(--sp-8) var(--sp-7); }
.nam-prov__stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:var(--sp-6); margin-bottom:var(--sp-6); }
.nam-prov__stat{ display:flex; flex-direction:column; gap:var(--sp-2); }
.nam-prov__statn{ font-family:var(--font-heading); font-weight:600; font-size:var(--fs-32); color:var(--accent-hover); line-height:1; }
.nam-prov__statd{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-13); line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); }
.nam-prov__purity{ font-family:var(--font-body); font-size:var(--fs-14); line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); margin:0 0 var(--sp-3); }
.nam-prov__purity strong{ color:var(--fg-on-dark-1); font-weight:500; }
.nam-prov__cite{ font-family:var(--font-body); font-size:var(--fs-12); color:var(--fg-on-dark-3,#8a8a93); margin:0; }
.nam-prov__furniture{ margin-top:var(--sp-6); display:flex; align-items:center; justify-content:space-between;
  gap:var(--sp-6); flex-wrap:wrap; }
.nam-prov__compliance{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-13);
  line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); margin:0; max-width:62ch; }
.nam-prov__cta{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-14);
  color:var(--accent-hover); text-decoration:none; white-space:nowrap; }
.nam-prov__cta:hover{ text-decoration:underline; }
@media(max-width:880px){
  .nam-prov__grid{ grid-template-columns:1fr; }
  .nam-prov__stats{ grid-template-columns:1fr; gap:var(--sp-5); }
}

/* ===================== TRUST STRIP ===================== */
.nam-trust{ background:var(--bg-dark-card); border-top:1px solid var(--border-on-dark); }
.nam-trust__inner{ max-width:1080px; margin:0 auto; padding:var(--sp-16) var(--sp-12); }
.nam-trust__tag{ text-align:center; margin-bottom:var(--sp-12); color:var(--fg-on-dark-2);
  font-family:var(--font-heading); font-weight:500; font-size:var(--fs-12); letter-spacing:var(--tracking-widest); text-transform:uppercase; }
.nam-trust__chips{ display:flex; flex-wrap:wrap; justify-content:center; align-items:center;
  gap:var(--sp-3) var(--sp-4); margin:0 auto var(--sp-12); max-width:760px; }
.nam-trust__chip{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-13);
  letter-spacing:.01em; color:var(--fg-on-dark-1); padding:6px var(--sp-4);
  border:1px solid var(--border-on-dark); border-radius:var(--r-pill);
  background:rgba(255,255,255,.02); }
.nam-trust__row{ display:flex; justify-content:center; }
.nam-trust__cell{ flex:1; padding:0 var(--sp-8); display:flex; align-items:center; gap:var(--sp-4);
  border-left:1px solid var(--border-on-dark); }
.nam-trust__cell:first-child{ border-left:0; }
.nam-trust__icon{ color:var(--accent-hover); flex-shrink:0; filter:drop-shadow(0 0 8px rgba(var(--glow-rgb),.35)); }
.nam-trust__label{ font-family:var(--font-heading); font-weight:600; font-size:11px; letter-spacing:var(--tracking-wider);
  text-transform:uppercase; color:var(--fg-on-dark-1); line-height:1.45; }
@media(max-width:780px){ .nam-trust__row{ flex-wrap:wrap; gap:var(--sp-8); } .nam-trust__cell{ flex:0 0 45%; border-left:0; } }

/* ===================== FOOTER ===================== */
.nam-footer{ background:var(--bg-dark); border-top:1px solid var(--border-on-dark); }
.nam-footer__main{ max-width:1280px; margin:0 auto; padding:var(--sp-16) var(--sp-12) var(--sp-12);
  display:flex; flex-direction:row; gap:var(--sp-12); align-items:flex-start; }
.nam-footer__brand-col{ display:flex; flex-direction:column; align-items:flex-start; gap:var(--sp-4);
  flex:0 0 200px; padding-bottom:0; border-bottom:0; }
.nam-footer__cols{ flex:1; display:grid; grid-template-columns:repeat(5,1fr); gap:var(--sp-7); align-items:start; }
.nam-footer__tag{ margin:0; max-width:30ch; color:var(--fg-on-dark-3); font-size:var(--fs-13); line-height:var(--lh-relaxed); }
.nam-footer__brand{ display:block; }
.nam-footer__brand img{ display:block; width:auto; height:52px; margin:0; border-radius:6px; }
.nam-footer__col-h{ font-family:var(--font-heading); font-weight:600; font-size:11px; letter-spacing:var(--tracking-wider);
  text-transform:uppercase; color:var(--fg-on-dark-1); margin-bottom:var(--sp-5); }
.nam-footer__link{ display:block; font-family:var(--font-body); font-size:var(--fs-13); color:var(--fg-on-dark-3); padding:5px 0; transition:color var(--dur-base); }
.nam-footer__link:hover{ color:var(--fg-on-dark-1); }
.nam-footer__social{ display:flex; gap:var(--sp-3); margin-top:var(--sp-2); }
.nam-footer__social a{ width:34px; height:34px; border-radius:var(--r-pill); display:flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,.06); color:var(--fg-on-dark-2); transition:background var(--dur-base), color var(--dur-base); }
.nam-footer__social a:hover{ background:var(--accent); color:#fff; }
.nam-footer__legal{ border-top:1px solid var(--border-on-dark); }
.nam-footer__legal-inner{ max-width:1280px; margin:0 auto; padding:var(--sp-6) var(--sp-12);
  display:flex; justify-content:space-between; gap:var(--sp-6); flex-wrap:wrap; }
.nam-footer__compliance{ font-family:var(--font-body); font-size:var(--fs-12); color:var(--fg-on-dark-3); max-width:62ch; line-height:var(--lh-relaxed); }
.nam-footer__network{ display:block; margin-top:var(--sp-3); color:var(--fg-on-dark-3); opacity:0.85; }
.nam-footer__legal-links{ display:flex; gap:var(--sp-6); }
.nam-footer__legal-links a{ font-size:var(--fs-12); color:var(--fg-on-dark-3); }
.nam-footer__legal-links a:hover{ color:var(--fg-on-dark-1); }
@media(max-width:880px){ .nam-footer__main{ flex-direction:column; gap:var(--sp-10); } .nam-footer__cols{ grid-template-columns:1fr 1fr; gap:var(--sp-8); } }

/* ===================== LP SHELL (reusable 9-block) ===================== */
.nam-lp-block{ position:relative; }
.nam-isforme{ display:grid; grid-template-columns:repeat(2,1fr); gap:var(--sp-4); max-width:920px; }
.nam-isforme__item{ display:flex; gap:var(--sp-4); align-items:flex-start; padding:var(--sp-5) 0; border-top:1px solid var(--border-on-dark); }
.nam-isforme__mk{ color:var(--accent-hover); flex-shrink:0; }
.nam-isforme__t{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-16); color:var(--fg-on-dark-1); line-height:var(--lh-snug); }
/* How it works, animated 3-step (NamHowItWorks). Gold is the reveal accent;
   the temperature accent stays the page's one action color. */
.nam-steps{ display:flex; align-items:stretch; gap:0; }
.nam-hiw__conn{ flex:0 0 56px; display:grid; place-items:center; color:var(--fg-on-dark-3); opacity:.5;
  transition:color var(--dur-base) var(--ease-out), opacity var(--dur-base) var(--ease-out), filter var(--dur-base) var(--ease-out); }
.nam-hiw__conn svg{ width:20px; height:20px; transition:transform var(--dur-base) var(--ease-out); }
.nam-hiw__conn.is-lit{ color:var(--gold); opacity:1; filter:drop-shadow(0 0 8px rgba(var(--gold-rgb),.7)); }

.nam-hiw__card{ position:relative; flex:1 1 0; display:flex; flex-direction:column; gap:var(--sp-4);
  background:var(--bg-dark-card); border:1px solid var(--border-on-dark); border-radius:var(--r-lg);
  padding:var(--sp-9) var(--sp-8) var(--sp-8); opacity:.5; overflow:hidden; cursor:pointer;
  transition:opacity var(--dur-slow) var(--ease-out), transform var(--dur-base) var(--ease-out),
             border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-slow) var(--ease-out); }
.nam-hiw__card.is-active{ opacity:1; transform:translateY(-4px); border-color:rgba(var(--gold-rgb),.55);
  box-shadow:0 0 0 1px rgba(var(--gold-rgb),.28), 0 14px 50px rgba(var(--gold-rgb),.22), 0 0 60px rgba(var(--gold-rgb),.16); }
.nam-hiw__card.is-done{ opacity:1; transform:none; border-color:rgba(var(--gold-rgb),.20); box-shadow:inset 0 0 0 1px rgba(var(--gold-rgb),.05); }

.nam-hiw__num{ width:46px; height:46px; border-radius:var(--r-pill); display:grid; place-items:center;
  border:1px solid var(--border-on-dark); font-family:var(--font-heading); font-weight:300; font-size:1.05rem; line-height:1;
  color:var(--fg-on-dark-3); letter-spacing:.02em;
  transition:color var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out); }
.nam-hiw__num span{ transform:translateY(.5px); }
.nam-hiw__card.is-active .nam-hiw__num{ color:var(--gold); border-color:rgba(var(--gold-rgb),.6); box-shadow:0 0 20px rgba(var(--gold-rgb),.5), inset 0 0 12px rgba(var(--gold-rgb),.18); }
.nam-hiw__card.is-done .nam-hiw__num{ color:var(--gold); border-color:rgba(var(--gold-rgb),.4); box-shadow:0 0 10px rgba(var(--gold-rgb),.25); }

.nam-hiw__t{ font-family:var(--font-heading); font-weight:300; font-size:var(--fs-20); line-height:1.2; letter-spacing:-.005em; color:var(--fg-on-dark-1); margin:0; }
.nam-hiw__d{ font-family:var(--font-body); font-weight:300; font-size:var(--fs-14); line-height:var(--lh-relaxed); color:var(--fg-on-dark-2); margin:0; }
.nam-hiw__tag{ margin-top:auto; align-self:flex-start; font-family:var(--font-mono); font-size:var(--fs-12); letter-spacing:.02em;
  color:var(--fg-on-dark-3); border:1px solid var(--border-on-dark); border-radius:var(--r-pill); padding:7px 12px;
  transition:border-color var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out); }
.nam-hiw__card.is-done .nam-hiw__tag{ border-color:rgba(var(--gold-rgb),.22); color:var(--fg-on-dark-2); }

.nam-hiw__shine{ position:absolute; inset:0; border-radius:inherit; pointer-events:none; overflow:hidden; opacity:0; }
.nam-hiw__shine::before{ content:""; position:absolute; top:-30%; bottom:-30%; left:0; width:34%; transform:translateX(-180%) skewX(-14deg);
  background:linear-gradient(90deg, transparent, rgba(var(--gold-rgb),.18) 30%, rgba(255,255,255,.55) 52%, rgba(var(--gold-rgb),.55) 64%, transparent); }
.nam-hiw__shine.is-run{ opacity:1; }
.nam-hiw__shine.is-run::before{ animation:nam-hiw-rake var(--dur-slow) var(--ease-out) forwards; }
@keyframes nam-hiw-rake{ to{ transform:translateX(320%) skewX(-14deg); } }

@media(max-width:780px){
  .nam-isforme{ grid-template-columns:1fr; }
  .nam-steps{ flex-direction:column; max-width:440px; margin:0 auto; }
  .nam-hiw__conn{ flex-basis:auto; padding:var(--sp-3) 0; }
  .nam-hiw__conn svg{ transform:rotate(90deg); }
  .nam-hiw__conn.is-lit svg{ transform:rotate(90deg); }
  .nam-hiw__card{ padding:var(--sp-7) var(--sp-6); }
}
@media (prefers-reduced-motion: reduce){
  .nam-hiw__card, .nam-hiw__num, .nam-hiw__conn{ transition:none; }
  .nam-hiw__shine{ animation:none !important; }
}

/* ===================== TRUST BADGE STRIP (above-fold, §7.12) ===================== */
.nam-badgestrip{ background:var(--bg-dark); border-bottom:1px solid var(--border-on-dark); }
.nam-badgestrip__inner{ max-width:1280px; margin:0 auto; padding:var(--sp-5) var(--sp-12);
  display:flex; align-items:center; justify-content:center; gap:var(--sp-10); flex-wrap:wrap; }
.nam-badgestrip__item{ display:inline-flex; align-items:center; gap:var(--sp-3);
  font-family:var(--font-heading); font-weight:500; font-size:var(--fs-13);
  letter-spacing:var(--tracking-wide); text-transform:uppercase; color:var(--fg-on-dark-2); }
.nam-badgestrip__icon{ color:var(--accent-hover); display:inline-flex; }
@media(max-width:780px){ .nam-badgestrip__inner{ gap:var(--sp-5) var(--sp-8); padding:var(--sp-5) var(--sp-6); }
  .nam-badgestrip__item{ font-size:var(--fs-12); } }

/* ===================== PRESS / AUTHORITY ROW (placeholders) ===================== */
.nam-press{ background:var(--bg-dark); border-bottom:1px solid var(--border-on-dark);
  display:flex; align-items:center; justify-content:center; gap:var(--sp-8); flex-wrap:wrap;
  padding:var(--sp-6) var(--sp-12); }
.nam-press__lead{ font-family:var(--font-heading); font-weight:500; font-size:11px;
  letter-spacing:var(--tracking-wider); text-transform:uppercase; color:var(--fg-on-dark-3); }
.nam-press__row{ display:flex; align-items:center; gap:var(--sp-6); flex-wrap:wrap; }
.nam-press__slot{ display:inline-flex; align-items:center; justify-content:center;
  width:118px; height:38px; border-radius:var(--r-sm);
  border:1px dashed var(--border-on-dark-strong);
  background:repeating-linear-gradient(135deg, rgba(255,255,255,.04) 0 7px, transparent 7px 14px);
  font-family:var(--font-mono, ui-monospace, monospace); font-size:11px; letter-spacing:.08em;
  text-transform:uppercase; color:var(--fg-on-dark-3); }
@media(max-width:780px){ .nam-press{ gap:var(--sp-4); padding:var(--sp-5) var(--sp-6); }
  .nam-press__row{ gap:var(--sp-3); } .nam-press__slot{ width:96px; height:34px; } }

/* ===================== STICKY SCROLL CAPTURE (§6 abandoner recovery) ===================== */
.nam-sticky{ position:fixed; left:0; right:0; bottom:0; z-index:60;
  background:var(--bg-dark-card); border-top:1px solid var(--border-on-dark-strong);
  box-shadow:0 -18px 50px -24px rgba(0,0,0,.8);
  animation:namStickyUp var(--dur-slow) var(--ease-out) both; }
@keyframes namStickyUp{ from{ transform:translateY(100%); } to{ transform:translateY(0); } }
@media(prefers-reduced-motion:reduce){ .nam-sticky{ animation:none; } }
.nam-sticky__inner{ max-width:1280px; margin:0 auto; padding:var(--sp-5) var(--sp-12);
  display:flex; align-items:center; gap:var(--sp-8); }
.nam-sticky__copy{ display:flex; flex-direction:column; gap:2px; flex:1 1 auto; min-width:0; }
.nam-sticky__t{ font-family:var(--font-heading); font-weight:500; font-size:var(--fs-15); color:var(--fg-on-dark-1); }
.nam-sticky__d{ font-family:var(--font-body); font-size:var(--fs-13); color:var(--fg-on-dark-3); }
.nam-sticky__form{ display:flex; align-items:center; gap:var(--sp-3); flex:0 1 auto; }
.nam-sticky__input{ font-family:var(--font-body); font-size:var(--fs-14); color:var(--fg-on-dark-1);
  background:rgba(255,255,255,.05); border:1px solid var(--border-on-dark-strong); border-radius:var(--r-sm);
  padding:11px 14px; width:240px; max-width:42vw; }
.nam-sticky__input::placeholder{ color:var(--fg-on-dark-3); }
.nam-sticky__input:focus{ outline:none; border-color:var(--accent-hover); }
.nam-sticky__btn{ white-space:nowrap; }
.nam-sticky__msg{ flex:1 1 auto; margin:0; font-family:var(--font-body); font-size:var(--fs-15); color:var(--fg-on-dark-1); }
.nam-sticky__em{ color:var(--accent-hover); }
.nam-sticky__x{ flex-shrink:0; background:none; border:none; cursor:pointer;
  font-size:22px; line-height:1; color:var(--fg-on-dark-3); padding:0 var(--sp-2); transition:color var(--dur-base); }
.nam-sticky__x:hover{ color:var(--fg-on-dark-1); }
@media(max-width:780px){
  .nam-sticky__inner{ flex-wrap:wrap; gap:var(--sp-4); padding:var(--sp-4) var(--sp-6); position:relative; }
  .nam-sticky__form{ width:100%; }
  .nam-sticky__input{ flex:1 1 auto; width:auto; max-width:none; }
  .nam-sticky__x{ position:absolute; top:var(--sp-3); right:var(--sp-4); }
}
