/* ===================================================================
   NERVE SAFE — nerve-safe.com
   Palette : ink #0C2E1E (deep forest green, matching the label's own
             dark green accents) | ink-dk #071A11 | steel(=vivid
             leaf-green accent, echoing the label's own bright green
             wordmark) #4CBB4F | steel-dk #369539 | sage(=lighter
             leaf-green highlight) #8BD46F | stone #F8FCF7 | sand
             #EAF6E6 | slate #37453D | line #DCEDD8
   Type    : 'Jost' (clean, geometric display) + 'Hanken Grotesk'
             (neutral, readable body) — a fresh pairing not reused
   Motif   : nerve pathway trace — a slim, gently branching line that
             traces a calm neural/root-like path behind the bottle,
             echoing the label's own dashed spine-and-leaf icon
             directly, distinct from the nerve root branch and nerve
             signal wave motifs used elsewhere by being a single,
             calm, continuously-traced line rather than a branching
             tree or an oscillating wave
   Layout  : STRUCTURALLY UNIQUE HERO — an eightieth distinct hero
             paradigm for this project: NERVE PATHWAY TRACE. A slim,
             gently branching line traces a calm path behind the
             bottle, echoing the label's own dashed spine icon -
             distinct from a solid orb, chevrons, corner frames,
             petal shapes, a ribbon orbit, a medallion ring, honeycomb
             cells, cross-hair lines, a drip arc, power bars, an EKG
             pulse line, a DNA helix, a hex node grid, an ascending
             arrow trail, expanding ripple rings, a crystal drop
             facet, a flex arc, a synapse spark web, a honeycomb bee
             path, a focus ring iris, a gummy bounce trail, a calm
             wave ring, an amber melt drip, a neon drop glow, a wave
             crest arc, a power slash, a radiant glow halo, a
             galloping trail, a nerve signal wave, a nerve root
             branch, a cell cluster orbit, a compass bearing arc, a
             thought bubble trail, rising flame wisps, citrus burst
             rays, a rising sun arc, silk strand waves, circuit pulse
             lines, golden thread weave, a page turn arc, a balance
             scale arc, a vital drop trail, a breeze wisp trail, a
             lantern glow drift, a heartbeat ring pulse, a dotted
             halo bloom, a cortex fold wave, a rosemary sprig sway, a
             neural node web, a heart line echo, a mobility ribbon
             flow, a ginkgo leaf drift, a signal stream cascade, a
             droplet arrow rise, a steady gauge settle, a verify scan
             sweep, a petal drift rise, a neural spark cascade, a
             zenith peak arc, a voltage arc crackle, a prism refract
             drift, a heat shimmer rise, a nectar ribbon swirl, an
             ember spiral rise, a synapse pulse arc, a glucose ring
             settle, or a gummy drift bounce used in this project's
             other builds. The bottle image itself is NEVER clipped
             or masked by the trace line - it stays fully open with
             object-fit:contain.
   Voice   : cautious, structure-function only - Nerve Safe supports
             healthy nerve function and everyday comfort as part of a
             healthy lifestyle. NEVER claims to treat, cure, or
             prevent neuropathy, diabetic nerve damage, or any other
             diagnosed neurological or medical condition.
   SOURCING NOTE: the assigned competitor source (nervesafe.net)
             disallows automated access via robots.txt, so it could
             not be read directly. Independent research also found no
             single, reliably confirmed ingredient list specific to
             this exact product - only a confirmed brand match (an
             eBay listing for "Nerve Safe, Nervesafe Advanced Nerve
             Performance" by OTR Labs, matching this build's physical
             label) and many other nerve-support category products
             from different brands with widely varying formulas (some
             built around B-vitamins and Alpha Lipoic Acid, others
             around herbal blends like Passionflower, Corydalis, and
             Prickly Pear) - with no way to confirm which, if any,
             applies to this specific product. Rather than guess or
             borrow an unconfirmed formula, this site uses only the
             physical label's own confirmed, generic structure-
             function claims ("Maximum Strength," "Nerve Support")
             with an explicit transparency note directing readers to
             their physical label for specific ingredient details,
             matching the approach used for AlkaVitality, Horse Jello,
             and Derma Honey. The zip's own "How It Works" infographic
             used language that edges toward implying treatment of a
             diagnosed condition ("lasting relief in hands & feet,"
             evoking peripheral neuropathy) and overstated claims
             ("strengthens & protects nerve pathways"), so it was NOT
             usable as-is - a clean equivalent was recreated in the
             same visual style with honest, general wellness language
             instead. This project's standard pricing ($79/$69/$49
             per bottle) and standard 60-day money-back guarantee are
             used, since no source confirmed specific pricing or
             guarantee terms for this build.
   Rules   : grids minmax(0,1fr) · flex min-width:0 · img max-width min(Npx,100%)
             mobile hero order = IMAGE first, then H1, then rest
=================================================================== */

:root{
  --ink:#0C2E1E;
  --ink-dk:#071A11;
  --steel:#4CBB4F;
  --steel-dk:#369539;
  --sage:#8BD46F;
  --stone:#F8FCF7;
  --sand:#EAF6E6;
  --slate:#37453D;
  --line:#DCEDD8;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--stone);color:#211C18;
  font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:17px;line-height:1.72;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:'Jost',sans-serif;font-weight:700;line-height:1.24;margin:0 0 .5em;
  color:var(--ink);text-transform:none;overflow-wrap:break-word;word-break:break-word}
h1{font-size:clamp(2.05rem,5vw,2.95rem);font-weight:800}
h2{font-size:clamp(1.55rem,3.1vw,2.05rem)}
h3{font-size:1.25rem}
h4{font-family:'Jost',sans-serif;font-weight:600;font-size:1.02rem;margin:0 0 .5em;color:var(--ink)}
p{margin:0 0 1.15em}
a{color:inherit;text-decoration:none}
strong,b{color:var(--ink)}
img{max-width:100%;height:auto;display:block}
.ns-wrap{max-width:1160px;margin:0 auto;padding:0 22px}
.ns-narrow{max-width:830px;margin:0 auto}
.ns-mid{text-align:center}

.ns-eyebrow{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--steel-dk);margin-bottom:.8em}
.ns-pill{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);
  border-radius:999px;padding:9px 19px;font-size:.8rem;font-weight:700;color:var(--ink);
  box-shadow:0 4px 14px rgba(28,56,50,.06)}

/* ---------- buttons ---------- */
.ns-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;
  background:var(--ink);color:#fff;font-weight:700;font-size:.98rem;font-family:'Jost',sans-serif;
  padding:15px 30px;border:none;border-radius:6px;cursor:pointer;letter-spacing:.02em;
  transition:transform .16s,box-shadow .16s,background .16s;
  box-shadow:0 10px 24px rgba(28,56,50,.26)}
.ns-btn:hover{background:var(--ink-dk);transform:translateY(-2px);color:#fff}
.ns-btn-sage{background:var(--sage);box-shadow:0 10px 24px rgba(110,156,126,.32)}
.ns-btn-sage:hover{background:#5A8768}
.ns-btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:10px;
  background:#fff;border:1px solid var(--line);color:var(--ink);font-family:'Jost',sans-serif;
  font-weight:600;font-size:.95rem;padding:14px 26px;border-radius:6px;transition:.16s}
.ns-btn-ghost:hover{border-color:var(--steel);color:var(--steel-dk)}
.ns-btn-full{width:100%}

/* ---------- top bar ---------- */
.ns-strip{background:var(--ink);color:#B9CBC4;font-size:.76rem;text-align:center;padding:9px 16px}
.ns-strip b{color:var(--sage)}
.ns-strip span{white-space:nowrap;margin:0 10px;display:inline-block}
@media(max-width:580px){.ns-strip{font-size:.7rem;line-height:1.55}.ns-strip span{white-space:normal;margin:0 6px}}

/* ---------- nav ---------- */
.ns-nav{position:sticky;top:0;z-index:900;background:rgba(247,246,241,.94);backdrop-filter:blur(9px);
  border-bottom:1px solid var(--line)}
.ns-nav .ns-wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 22px}
.ns-logo{font-family:'Jost',sans-serif;font-weight:700;font-size:1.3rem;color:var(--ink);white-space:nowrap;letter-spacing:.01em}
.ns-logo em{font-style:normal;color:var(--steel-dk)}
.ns-links{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0}
.ns-links a{font-size:.87rem;font-weight:600;color:var(--ink);opacity:.8}
.ns-links a:hover{opacity:1;color:var(--steel-dk)}
.ns-links a.ns-btn,.ns-links a.ns-btn:hover{color:#fff;opacity:1}
.ns-toggle{display:none;background:none;border:none;color:var(--ink);font-size:1.5rem;cursor:pointer;line-height:1}
@media(max-width:1020px){
  .ns-links{position:absolute;top:100%;left:0;right:0;background:var(--stone);flex-direction:column;
    align-items:stretch;gap:0;border-top:1px solid var(--line);display:none;max-height:76vh;overflow:auto}
  .ns-links.open{display:flex}
  .ns-links li{border-bottom:1px solid var(--line)}
  .ns-links a{display:block;padding:15px 22px}
  .ns-links .ns-btn{margin:14px 22px;width:calc(100% - 44px)}
  .ns-toggle{display:block}
}

/* ---------- sections ---------- */
.ns-sec{padding:76px 0}
.ns-sec-sand{background:var(--sand)}
.ns-sec-dark{background:var(--ink);color:#B9CBC4}
.ns-sec-dark h2,.ns-sec-dark h3,.ns-sec-dark h4{color:#fff}
.ns-sec-dark .ns-eyebrow{color:#8FBBA8}
.ns-head{max-width:770px;margin:0 auto 44px;text-align:center}
.ns-head p{color:var(--slate)}
.ns-sec-dark .ns-head p{color:#AABDB4}

/* ---------- HERO : NERVE PATHWAY TRACE — a slim, gently branching line tracing a calm path behind the bottle, NEVER clipping the image ---------- */
.ns-hero{background:linear-gradient(180deg,var(--ink) 0%,var(--ink-dk) 100%);padding:54px 0 68px;overflow:hidden;position:relative}
.ns-hero-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:50px;align-items:center;
  position:relative;z-index:1}
.ns-hero-shot{order:1;position:relative;display:flex;justify-content:center;align-items:center;min-height:260px}
.ns-glow-svg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;overflow:visible}
.ns-glow-svg .ns-trace{fill:none;stroke:var(--steel);stroke-width:2;stroke-linecap:round;opacity:0;animation:nsTraceDraw 7s ease-in-out infinite}
.ns-glow-svg .ns-trace2{fill:none;stroke:var(--sage);stroke-width:1.5;stroke-linecap:round;opacity:0;animation:nsTraceDraw 8s ease-in-out infinite 2.5s}
.ns-glow-svg .ns-node{fill:var(--sage);opacity:0;animation:nsNodeFade 7s ease-in-out infinite}
@keyframes nsTraceDraw{0%{stroke-dasharray:260;stroke-dashoffset:260;opacity:0}25%{opacity:.45}60%{stroke-dashoffset:0;opacity:.4}90%{opacity:.15}100%{opacity:0}}
@keyframes nsNodeFade{0%,100%{opacity:0}40%{opacity:.6}70%{opacity:.3}}
@media(prefers-reduced-motion:reduce){.ns-glow-svg .ns-trace,.ns-glow-svg .ns-trace2,.ns-glow-svg .ns-node{animation:none;opacity:.22;stroke-dasharray:none}}
.ns-hero-copy{order:2}
.ns-hero h1{color:#fff}
.ns-hero-shot img{max-width:min(215px,100%);width:100%;height:auto;object-fit:contain;margin:0 auto;
  position:relative;z-index:2;filter:drop-shadow(0 22px 34px rgba(76,187,79,.35))}
.ns-wave-tag{position:absolute;bottom:2%;right:2%;background:#fff;border:1px solid var(--line);border-radius:10px;
  padding:8px 14px;font-size:.74rem;font-weight:700;color:var(--ink);box-shadow:0 10px 20px rgba(0,0,0,.3);
  z-index:3;white-space:nowrap}
.ns-hero h1 em{font-style:italic;color:var(--sage)}
.ns-lede{font-size:1.05rem;color:#D6EBD1;max-width:37em}

.ns-answer{background:#fff;border-left:4px solid var(--steel);border-radius:0 8px 8px 0;
  padding:23px 25px;margin:0 0 22px;box-shadow:0 8px 24px rgba(12,46,30,.08)}
.ns-answer .tag{display:block;font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--steel-dk);margin-bottom:9px}
.ns-answer p{margin:0;color:var(--slate)}
.ns-answer p.first{color:var(--ink);font-weight:700;margin-bottom:.75em}

.ns-facts{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:0 0 22px;padding:0}
.ns-facts li{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:7px 15px;
  font-size:.8rem;font-weight:700;color:#fff}

.ns-check{list-style:none;margin:0 0 24px;padding:0}
.ns-check li{position:relative;padding-left:32px;margin-bottom:11px;font-size:.96rem;font-weight:500;color:#DCEDD8}
.ns-check li::before{content:'';position:absolute;left:0;top:5px;width:18px;height:18px;border-radius:50%;
  background:var(--steel);box-shadow:0 0 0 4px rgba(76,187,79,.28)}
.ns-check li::after{content:'\2713';position:absolute;left:4px;top:6.5px;color:#fff;font-size:.62rem;font-weight:800}

.ns-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 26px}
.ns-figures div{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:14px 8px;text-align:center}
.ns-figures b{display:block;font-family:'Jost',sans-serif;font-weight:700;font-size:1.2rem;color:#fff;line-height:1.1}
.ns-figures span{font-size:.68rem;font-weight:700;color:#9BC290;text-transform:uppercase;letter-spacing:.05em}

.ns-hero-btns{display:flex;flex-wrap:wrap;gap:13px;margin-bottom:20px}
.ns-hero-trust{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.78rem;font-weight:700;color:#9BC290}

@media(max-width:920px){
  .ns-hero-grid{grid-template-columns:minmax(0,1fr);gap:26px}
  .ns-hero-copy{display:contents}
  .ns-hero-shot{order:1;min-height:200px}
  .ns-hero-title{order:2}
  .ns-hero-rest{order:3}
  .ns-hero-shot img{max-width:min(175px,100%)}
  .ns-wave-tag{bottom:0;right:0}
}

/* ---------- "nerve pathway trace" signature — a tiny calm branching trace line ---------- */
.ns-ascent{margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 18px 14px;
  box-shadow:0 8px 22px rgba(12,46,30,.15);text-align:center;max-width:260px;margin-left:auto;margin-right:auto}
.ns-ascent h4{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;color:var(--steel-dk);
  margin-bottom:8px;font-family:'Hanken Grotesk',sans-serif;font-weight:700}
.ns-ascent svg{display:block;margin:0 auto;overflow:visible}
.ns-trace-mini{fill:none;stroke:var(--steel);stroke-width:2;stroke-linecap:round;stroke-dasharray:36;opacity:0;animation:nsMiniTraceDraw 3.4s ease-in-out infinite}
.ns-ascent-cap{font-size:.68rem;font-weight:700;color:var(--slate);margin-top:8px}
@keyframes nsMiniTraceDraw{0%{stroke-dashoffset:36;opacity:0}30%{opacity:.7}70%{opacity:.7}100%{stroke-dashoffset:-36;opacity:0}}
@media(prefers-reduced-motion:reduce){.ns-trace-mini{animation:none;opacity:.5}}

/* ---------- grids ---------- */
.ns-grid{display:grid;gap:20px}
.ns-g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ns-g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ns-g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:980px){.ns-g4{grid-template-columns:repeat(2,minmax(0,1fr))}.ns-g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.ns-g4,.ns-g3,.ns-g2{grid-template-columns:minmax(0,1fr)}}

.ns-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:26px 22px}
.ns-card p{color:var(--slate);font-size:.93rem;margin:0}
.ns-sec-dark .ns-card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16)}
.ns-sec-dark .ns-card p{color:#AABDB4}
.ns-card-badge{text-align:center}
.ns-card-badge img{max-width:min(135px,100%);margin:0 auto 14px;border-radius:6px}

.ns-idx{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;
  background:var(--ink);color:#fff;font-family:'Jost',sans-serif;font-weight:700;font-size:.9rem;margin-bottom:13px}
.ns-idx-sage{background:var(--sage)}

/* ---------- split ---------- */
.ns-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
@media(max-width:920px){.ns-split{grid-template-columns:minmax(0,1fr);gap:30px}}
.ns-split img{max-width:min(440px,100%);margin:0 auto;border-radius:8px}
.ns-split-copy p{color:var(--slate)}
.ns-sec-dark .ns-split-copy p{color:#AABDB4}

/* ---------- list ---------- */
.ns-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
@media(max-width:780px){.ns-list{grid-template-columns:minmax(0,1fr)}}
.ns-list li{background:#fff;border:1px solid var(--line);border-left:3px solid var(--steel);
  border-radius:0 8px 8px 0;padding:15px 18px;font-size:.92rem;color:var(--slate)}
.ns-list li b{display:block;color:var(--ink);margin-bottom:3px;font-size:.97rem;font-family:'Jost',sans-serif}

/* ---------- callouts ---------- */
.ns-callout{background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px 24px;font-size:.92rem;color:var(--slate)}
.ns-callout b{color:var(--ink)}
.ns-callout a{color:var(--steel-dk);text-decoration:underline;text-underline-offset:3px}
.ns-flagbox{background:#F2EEDF;border:1px solid #DCCE9E;border-radius:8px;padding:21px 23px;font-size:.9rem;color:#5F5423}
.ns-flagbox b{color:#7A6A1E}
.ns-alert{background:#EAEFE9;border:1px solid #BFD0BE;border-radius:8px;padding:21px 23px;font-size:.9rem;color:#33453A}
.ns-alert b{color:var(--steel-dk)}

/* ---------- reviews ---------- */
.ns-rev-head{display:flex;align-items:center;gap:13px;margin-bottom:11px}
.ns-rev-head img{width:52px;height:52px;border-radius:50%;object-fit:cover;flex-shrink:0}
.ns-rev-name{font-weight:700;font-size:.94rem;color:var(--ink);font-family:'Jost',sans-serif}
.ns-rev-sub{font-size:.77rem;color:var(--slate)}
.ns-stars{color:#6E9C7E;letter-spacing:2px;font-size:.9rem;margin-bottom:8px}
.ns-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;text-align:center;margin-top:34px}
@media(max-width:680px){.ns-board{grid-template-columns:minmax(0,1fr)}}
.ns-board b{display:block;font-family:'Jost',sans-serif;font-weight:700;font-size:1.85rem;color:var(--ink)}
.ns-board span{font-size:.78rem;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:.08em}

/* ---------- pricing ---------- */
.ns-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
@media(max-width:980px){.ns-plans{grid-template-columns:minmax(0,1fr);max-width:430px;margin:0 auto}}
.ns-plan{background:#fff;border:1px solid var(--line);border-radius:8px;padding:28px 22px;text-align:center;
  display:flex;flex-direction:column;position:relative}
.ns-plan.top{border-color:var(--sage);box-shadow:0 24px 46px rgba(110,156,126,.2)}
@media(min-width:981px){.ns-plan.top{transform:translateY(-10px)}}
.ns-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--sage);color:#fff;
  font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:6px 16px;border-radius:999px;
  white-space:nowrap;font-family:'Jost',sans-serif}
.ns-badge-steel{background:var(--steel);color:#fff}
.ns-plan img.pk{max-width:min(190px,100%);max-height:170px;width:auto;height:170px;object-fit:contain;margin:8px auto 16px}
.ns-plan-ttl{font-family:'Jost',sans-serif;font-weight:700;font-size:1.28rem;color:var(--ink)}
.ns-plan-sub{font-size:.83rem;color:var(--slate);margin-bottom:14px}
.ns-plan-price{font-family:'Jost',sans-serif;font-weight:700;font-size:2.2rem;color:var(--ink);line-height:1}
.ns-plan-price small{font-family:'Hanken Grotesk',sans-serif;font-size:.8rem;font-weight:700;color:var(--slate)}
.ns-plan-was{text-decoration:line-through;color:var(--slate);font-size:.86rem;margin:8px 0 2px}
.ns-plan-tot{font-weight:700;font-size:.97rem;color:var(--ink);margin-bottom:6px}
.ns-plan-ship{font-size:.83rem;font-weight:700;color:var(--steel-dk);margin-bottom:12px}
.ns-plan-ship.pay{color:var(--slate)}
.ns-plan ul{list-style:none;margin:0 0 18px;padding:0;text-align:left;font-size:.86rem;color:var(--slate)}
.ns-plan ul li{position:relative;padding-left:21px;margin-bottom:7px}
.ns-plan ul li::before{content:'\2713';position:absolute;left:0;color:var(--steel-dk);font-weight:700}
.ns-plan .ns-btn{margin-top:auto}
.ns-plan .cards{max-width:min(165px,100%);margin:13px auto 0;opacity:.6}

/* ---------- guarantee ---------- */
.ns-guar{display:grid;grid-template-columns:auto minmax(0,1fr);gap:40px;align-items:center;
  background:#fff;border:1px solid var(--line);border-radius:8px;padding:36px}
@media(max-width:820px){.ns-guar{grid-template-columns:minmax(0,1fr);gap:24px;text-align:center;padding:28px 22px}}
.ns-guar img{max-width:min(175px,100%);margin:0 auto}
.ns-guar p{color:var(--slate)}

/* ---------- steps ---------- */
.ns-steps{display:grid;gap:15px}
.ns-step-row{background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px 24px;
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start}
.ns-step-row .n{width:34px;height:34px;border-radius:6px;background:rgba(78,124,142,.14);color:var(--steel-dk);
  font-family:'Jost',sans-serif;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.92rem}
.ns-step-row p{margin:0;color:var(--slate);font-size:.93rem}

/* ---------- FAQ ---------- */
.ns-faq{border-top:1px solid var(--line)}
.ns-faq-row{border-bottom:1px solid var(--line)}
.ns-faq-btn{width:100%;background:none;border:none;text-align:left;cursor:pointer;padding:20px 4px;
  display:flex;justify-content:space-between;align-items:center;gap:16px;
  font-family:'Jost',sans-serif;font-weight:600;font-size:1.04rem;color:var(--ink)}
.ns-faq-btn::after{content:'+';font-size:1.5rem;color:var(--steel-dk);flex-shrink:0;transition:transform .2s;font-family:'Hanken Grotesk',sans-serif}
.ns-faq-row.on .ns-faq-btn::after{transform:rotate(45deg)}
.ns-faq-body{max-height:0;overflow:hidden;transition:max-height .28s ease}
.ns-faq-body p{padding:0 4px 20px;margin:0;color:var(--slate);font-size:.94rem}

/* ---------- refs ---------- */
.ns-refs{list-style:none;margin:0 0 18px;padding:0}
.ns-refs li{padding:11px 0;border-bottom:1px solid var(--line);font-size:.91rem;color:var(--slate)}
.ns-refs a{color:var(--steel-dk);font-weight:600;text-decoration:underline;text-underline-offset:3px}

/* ---------- final CTA ---------- */
.ns-final{background:linear-gradient(150deg,var(--ink) 0%,var(--ink-dk) 100%);border-radius:14px;
  padding:52px 30px;text-align:center}
.ns-final h2{color:#fff}
.ns-final p{color:#B9CBC4}
.ns-final img{max-width:min(260px,100%);margin:22px auto}
.ns-final .old{color:#B9CBC4;text-decoration:line-through}
.ns-final .new{font-family:'Jost',sans-serif;font-weight:700;font-size:2.05rem;color:var(--sage);margin:4px 0 20px}
.ns-final .sm{font-size:.84rem;color:#B9CBC4;margin:16px 0 0}

/* ---------- breadcrumb ---------- */
.ns-crumb{font-size:.81rem;color:var(--slate);padding:16px 0 0}
.ns-crumb a{color:var(--steel-dk);font-weight:700}
.ns-crumb i{font-style:normal;margin:0 7px;opacity:.5}

/* ---------- related ---------- */
.ns-rel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media(max-width:780px){.ns-rel{grid-template-columns:minmax(0,1fr)}}
.ns-rel a{display:block;background:#fff;border:1px solid var(--line);border-radius:8px;padding:19px 20px;transition:.15s}
.ns-rel a:hover{border-color:var(--sage);transform:translateY(-2px)}
.ns-rel b{display:block;font-size:.98rem;color:var(--ink);margin-bottom:5px;font-family:'Jost',sans-serif}
.ns-rel span{font-size:.84rem;color:var(--slate)}

/* ---------- article ---------- */
.ns-article h2{margin-top:1.6em}
.ns-article h3{margin-top:1.35em}
.ns-article p{color:var(--slate)}
.ns-article a{color:var(--steel-dk);text-decoration:underline;text-underline-offset:3px}
.ns-meta{font-size:.86rem;color:var(--slate);margin-bottom:26px}
.ns-meta a{color:var(--steel-dk);font-weight:700}

/* ---------- footer ---------- */
.ns-foot{background:var(--ink-dk);color:#8AA098;padding:48px 0 34px;font-size:.87rem}
.ns-foot a{color:#CBDAD3}
.ns-foot a:hover{color:var(--sage)}
.ns-foot-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 25px;list-style:none;margin:0 0 20px;padding:0;font-weight:700}
.ns-foot-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 21px;list-style:none;margin:0 0 26px;padding:0;font-size:.84rem}
.ns-foot hr{border:none;border-top:1px solid rgba(255,255,255,.1);margin:22px 0}
.ns-foot p{margin:0 0 14px;line-height:1.68}
.ns-foot .cr{text-align:center;font-size:.84rem;opacity:.85;margin-top:22px}

/* ---------- free bonuses ---------- */
.ns-bonus-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
@media(max-width:980px){.ns-bonus-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.ns-bonus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ns-bonus-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px 18px 24px;
  text-align:center;transition:transform .16s,box-shadow .16s}
.ns-bonus-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(12,46,30,.09);border-color:var(--steel)}
.ns-bonus-tag{display:inline-block;background:var(--steel);color:#fff;font-size:.63rem;font-weight:700;
  letter-spacing:.07em;text-transform:uppercase;padding:4px 12px;border-radius:999px;margin-bottom:14px}
.ns-bonus-card img{max-width:135px;margin:0 auto 15px;border-radius:3px;
  box-shadow:0 14px 26px rgba(12,46,30,.18)}
.ns-bonus-card h4{font-size:.94rem;margin-bottom:7px}
.ns-bonus-card p{font-size:.82rem;color:var(--slate);margin:0}

/* ---------- guarantee badge ---------- */
.ns-guar-badge{display:flex;align-items:center;justify-content:center;position:relative;padding:10px}
.ns-guar-badge::before{content:'';position:absolute;width:210px;height:210px;border-radius:50%;
  background:radial-gradient(circle,rgba(76,187,79,.13) 0%,transparent 72%);z-index:0}
.ns-guar-badge img,.ns-guar-badge svg{position:relative;z-index:1;margin:0}

/* ================= SECTION-UNIQUE TREATMENT #1 =================
   Ingredients: icon-cards with a copper top-bar (used ONLY here) */
.ns-ing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media(max-width:980px){.ns-ing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.ns-ing-grid{grid-template-columns:minmax(0,1fr)}}
.ns-ing-card{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;
  display:flex;flex-direction:column;transition:transform .16s,box-shadow .16s}
.ns-ing-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(12,46,30,.09);border-color:var(--steel)}
.ns-ing-top{height:5px}
.ns-ing-body{padding:21px 21px 19px;flex:1;display:flex;flex-direction:column}
.ns-ing-head{display:flex;align-items:center;gap:12px;margin-bottom:13px}
.ns-ing-icon{width:42px;height:42px;min-width:42px;border-radius:9px;display:flex;align-items:center;
  justify-content:center;font-size:1.25rem}
.ns-ing-name{font-family:'Jost',sans-serif;font-weight:700;font-size:1rem;color:var(--ink);line-height:1.22;margin:0}
.ns-ing-cat{font-size:.64rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--slate);margin-top:3px}
.ns-ing-body p{color:var(--slate);font-size:.87rem;margin:0 0 15px;flex:1;line-height:1.6}
.ns-ing-dose{font-size:.7rem;font-weight:700;color:var(--steel-dk);background:var(--stone);border:1px solid var(--line);
  border-radius:6px;padding:6px 10px;display:inline-flex;align-items:center;gap:6px;width:fit-content}
.ns-ing-dose.warn{color:#9C4221;background:#FBEEE8;border-color:#F0D3C2}
.ns-ing-dose.on{color:#1F6B5C;background:#E4F3EC;border-color:#C4E3D4}

/* pathway breakdown table (replaces a typical dose-table since doses ARE disclosed here;
   this instead shows the NO/circulation-pathway redundancy honestly) */
.ns-pathtable{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;font-size:.85rem}
.ns-pathtable th{background:var(--ink);color:#fff;text-align:left;padding:12px 14px;font-family:'Jost',sans-serif;font-weight:700;font-size:.85rem}
.ns-pathtable td{padding:12px 14px;border-top:1px solid var(--line);color:var(--slate)}
.ns-pathtable tr:nth-child(even) td{background:var(--sand)}
.ns-pathtable td b{color:var(--ink)}
.ns-pathtable-wrap{overflow-x:auto}
@media(max-width:680px){.ns-pathtable{font-size:.76rem}.ns-pathtable th,.ns-pathtable td{padding:9px 10px}}

/* ================= SECTION-UNIQUE TREATMENT #2 =================
   Benefits: a horizontal ribbon-list, icon left / text right, used
   ONLY in the Benefits section — deliberately different from the
   ingredient icon-card grid above */
.ns-ribbon-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.ns-ribbon{display:flex;align-items:flex-start;gap:16px;padding:20px 22px;border-bottom:1px solid var(--line)}
.ns-ribbon:last-child{border-bottom:none}
.ns-ribbon:nth-child(even){background:var(--stone)}
.ns-ribbon-icon{width:44px;height:44px;min-width:44px;border-radius:50%;background:var(--sand);
  display:flex;align-items:center;justify-content:center;font-size:1.3rem;color:var(--steel-dk)}
.ns-ribbon-body h4{margin:0 0 4px;font-size:1.02rem;color:var(--ink)}
.ns-ribbon-body p{margin:0;color:var(--slate);font-size:.9rem}

/* ================= SECTION-UNIQUE TREATMENT #3 =================
   Quick How-To-Use: a connected vertical timeline, used ONLY here —
   distinct from both the icon-card grid and the ribbon list */
.ns-timeline{position:relative;padding-left:38px}
.ns-timeline::before{content:'';position:absolute;left:13px;top:6px;bottom:6px;width:2px;background:var(--line)}
.ns-tl-item{position:relative;padding-bottom:26px}
.ns-tl-item:last-child{padding-bottom:0}
.ns-tl-dot{position:absolute;left:-38px;top:0;width:28px;height:28px;border-radius:50%;background:var(--ink);
  color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:800;font-family:'Jost',sans-serif;
  box-shadow:0 0 0 4px #fff, 0 0 0 5px var(--line)}
.ns-tl-item h4{margin:0 0 4px;font-size:1rem;color:var(--ink)}
.ns-tl-item p{margin:0;color:var(--slate);font-size:.9rem}

/* ================= SECTION-UNIQUE TREATMENT #4 =================
   The Difference: a two-column comparison callout ("Typical Formula"
   vs "VapoCept's Formula"), used ONLY here — distinct from every
   other section's visual treatment */
.ns-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid var(--line);
  border-radius:12px;overflow:hidden}
@media(max-width:760px){.ns-compare{grid-template-columns:minmax(0,1fr)}}
.ns-compare>div{padding:24px 24px 26px}
.ns-compare .a{background:var(--stone)}
.ns-compare .b{background:var(--ink);color:#fff}
.ns-compare h4{font-size:.72rem;letter-spacing:.11em;text-transform:uppercase;margin:0 0 14px}
.ns-compare .a h4{color:var(--steel-dk)}
.ns-compare .b h4{color:var(--steel)}
.ns-compare ul{margin:0;padding:0;list-style:none}
.ns-compare li{position:relative;padding-left:22px;margin-bottom:11px;font-size:.9rem;line-height:1.5}
.ns-compare .a li{color:var(--slate)}
.ns-compare .b li{color:#D8DBE6}
.ns-compare li::before{content:'\2022';position:absolute;left:2px;top:0;font-size:1.1rem}
.ns-compare .a li::before{color:var(--steel)}
.ns-compare .b li::before{color:var(--steel)}

/* ---------- blog hub hero + cards ---------- */
.ns-bhero{background:linear-gradient(160deg,var(--sand) 0%,var(--stone) 100%);padding:58px 0 44px;text-align:center;
  border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.ns-bhero::before{content:'';position:absolute;top:-40%;right:-10%;width:340px;height:340px;border-radius:50%;
  background:radial-gradient(circle,rgba(76,187,79,.12) 0%,transparent 70%);z-index:0}
.ns-bhero::after{content:'';position:absolute;bottom:-50%;left:-8%;width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle,rgba(139,212,111,.1) 0%,transparent 70%);z-index:0}
.ns-bhero>.ns-wrap{position:relative;z-index:1}
.ns-bhero .ns-pill{margin-bottom:18px}
.ns-bhero h1{margin-bottom:12px}
.ns-bhero p.lede{color:var(--slate);max-width:560px;margin:0 auto;font-size:1.02rem}
.ns-bhero-meta{display:flex;justify-content:center;align-items:center;gap:10px 22px;margin-top:24px;flex-wrap:wrap}
.ns-bhero-meta span{font-size:.72rem;font-weight:700;color:var(--steel-dk);text-transform:uppercase;letter-spacing:.08em;
  background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 15px}

.ns-bsection-ttl{font-size:.74rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--steel-dk);
  margin:0 0 18px;padding-bottom:10px;border-bottom:2px solid var(--line);display:inline-block}
.ns-bgroup{margin-bottom:46px}
.ns-bgroup:last-child{margin-bottom:0}

.ns-bgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
@media(max-width:900px){.ns-bgrid{grid-template-columns:minmax(0,1fr)}}
.ns-bcard{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;
  display:flex;flex-direction:column;transition:transform .16s,box-shadow .16s}
.ns-bcard:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(12,46,30,.1);border-color:var(--steel)}
.ns-bcard-head{background:var(--ink);padding:22px 22px 19px}
.ns-bcard-head .tag{display:block;font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--steel);margin-bottom:9px}
.ns-bcard-head h3{color:#fff;margin:0;font-size:1.08rem;line-height:1.3}
.ns-bcard-body{padding:19px 22px 22px;flex:1;display:flex;flex-direction:column}
.ns-bcard-body p{color:var(--slate);font-size:.89rem;flex:1;margin:0 0 14px}
.ns-bcard-body .read{color:var(--steel-dk);font-weight:700;font-size:.85rem;margin-top:auto;display:inline-flex;align-items:center;gap:5px}
.ns-bcard-body .read:hover{color:var(--steel)}

/* ---------- sticky bar ---------- */
.ns-sticky{position:fixed;left:0;right:0;bottom:0;z-index:950;background:var(--ink-dk);
  border-top:2px solid var(--sage);padding:9px 15px;display:none;align-items:center;justify-content:space-between;
  gap:12px;box-shadow:0 -8px 24px rgba(0,0,0,.2)}
.ns-sticky .t{min-width:0;line-height:1.25;color:#fff}
.ns-sticky .t b{display:block;font-size:.92rem;color:var(--sage);font-family:'Jost',sans-serif}
.ns-sticky .t small{color:#B9CBC4;font-size:.71rem}
.ns-sticky .ns-btn{padding:11px 18px;font-size:.86rem;flex-shrink:0}
@media(max-width:920px){.ns-sticky{display:flex}body{padding-bottom:68px}}
