/* ===================================================================
   VIGORHORSE — VigorHoorse.com
   Palette : ink #16090B (near-black, matching the label's own dark
             smoky background) | ink-dk #0B0405 | steel(=vivid crimson
             accent, echoing the label's own red mist and glowing
             eyes) #D6222E | steel-dk #A61822 | sage(=lighter red
             highlight) #F0555E | stone #FAF7F7 | sand #F0DCDC |
             slate #453232 | line #E8D2D2
   Type    : 'Fjalla One' (bold, condensed display, echoing the
             label's own aggressive wordmark) + 'Karla' (clean,
             neutral body) — a fresh pairing not reused
   Motif   : the galloping trail — a slim trail of three fading
             hoofprint-like marks receding into the distance behind
             the bottle, echoing the label's own horse imagery
             directly, distinct from every other trail/path motif
             used elsewhere by using discrete fading marks rather
             than a continuous line, bounce, or hex hop
   Layout  : STRUCTURALLY UNIQUE HERO — an eighty-fourth distinct
             hero paradigm for this project: THE GALLOPING TRAIL. A
             slim trail of three fading marks recedes into the
             distance behind the bottle, echoing the label's own
             horse imagery - 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 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, a
             gummy drift bounce, a nerve pathway trace, a honeycomb
             bee path, or an amber melt drip used in this project's
             other builds. The bottle image itself is NEVER clipped
             or masked by the trail - it stays fully open with
             object-fit:contain.
   Voice   : EXTREMELY cautious, general structure-function only -
             VigorHorse supports male vitality, stamina and everyday
             confidence as part of a healthy lifestyle. NEVER makes
             any specific size, growth, or measurement claim of any
             kind, and NEVER claims to treat, cure, or prevent
             erectile dysfunction or any other diagnosed medical
             condition. For adult use only.
   SOURCING NOTE (SEVERE CASE): the assigned competitor source is
             itself a skeptical third-party review (BlastFitness.com)
             that flags this exact product for NOT disclosing a
             single ingredient, dosage, serving size, or Supplement
             Facts panel anywhere on its real sales page, and for
             making an extreme, physically implausible claim ("a
             3.8-inch size increase in 12 days") alongside
             testimonials claiming rapid "visible growth" - all of
             which are dangerous, unverifiable, and are NOT used
             anywhere on this site in any form. Since no ingredient
             list could be confirmed from any source, none is
             invented here; the site uses only the label's own
             confirmed generic claim ("Dietary Supplement," 30
             gummies) with an explicit transparency note echoing the
             third-party review's own honest caution. The review also
             found no refund or guarantee terms disclosed on the real
             sales page; this project's standard 60-day guarantee is
             offered here as this build's own policy, with that gap
             disclosed honestly. Pricing coincidentally matches this
             project's standard pattern almost exactly as confirmed
             by the review ($79/2-bottle +shipping, $69/3-bottle free
             ship, $49/6-bottle free ship, ~73% off a $1,074 original
             price point) and is used as confirmed.
   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:#16090B;
  --ink-dk:#0B0405;
  --steel:#D6222E;
  --steel-dk:#A61822;
  --sage:#F0555E;
  --stone:#FAF7F7;
  --sand:#F0DCDC;
  --slate:#453232;
  --line:#E8D2D2;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--stone);color:#211C18;
  font-family:'Karla',system-ui,sans-serif;font-size:17px;line-height:1.72;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:'Fjalla One',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:'Fjalla One',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}
.vh-wrap{max-width:1160px;margin:0 auto;padding:0 22px}
.vh-narrow{max-width:830px;margin:0 auto}
.vh-mid{text-align:center}

.vh-eyebrow{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--steel-dk);margin-bottom:.8em}
.vh-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 ---------- */
.vh-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:'Fjalla One',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)}
.vh-btn:hover{background:var(--ink-dk);transform:translateY(-2px);color:#fff}
.vh-btn-sage{background:var(--sage);box-shadow:0 10px 24px rgba(110,156,126,.32)}
.vh-btn-sage:hover{background:#5A8768}
.vh-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:'Fjalla One',sans-serif;
  font-weight:600;font-size:.95rem;padding:14px 26px;border-radius:6px;transition:.16s}
.vh-btn-ghost:hover{border-color:var(--steel);color:var(--steel-dk)}
.vh-btn-full{width:100%}

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

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

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

/* ---------- HERO : THE GALLOPING TRAIL — three fading marks receding into the distance behind the bottle, NEVER clipping the image ---------- */
.vh-hero{background:linear-gradient(180deg,var(--ink) 0%,var(--ink-dk) 100%);padding:54px 0 68px;overflow:hidden;position:relative}
.vh-hero-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:50px;align-items:center;
  position:relative;z-index:1}
.vh-hero-shot{order:1;position:relative;display:flex;justify-content:center;align-items:center;min-height:260px}
.vh-glow-svg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;overflow:visible}
.vh-glow-svg .vh-mark{fill:var(--steel);animation:vhTrailFade 4.5s ease-in-out infinite}
@keyframes vhTrailFade{0%,100%{opacity:.12}50%{opacity:.4}}
@media(prefers-reduced-motion:reduce){.vh-glow-svg .vh-mark{animation:none;opacity:.22}}
.vh-hero-copy{order:2}
.vh-hero h1{color:#fff}
.vh-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(214,34,46,.35))}
.vh-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}
.vh-hero h1 em{font-style:italic;color:var(--sage)}
.vh-lede{font-size:1.05rem;color:#E8D2D2;max-width:37em}

.vh-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(22,9,11,.08)}
.vh-answer .tag{display:block;font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--steel-dk);margin-bottom:9px}
.vh-answer p{margin:0;color:var(--slate)}
.vh-answer p.first{color:var(--ink);font-weight:700;margin-bottom:.75em}

.vh-facts{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:0 0 22px;padding:0}
.vh-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}

.vh-check{list-style:none;margin:0 0 24px;padding:0}
.vh-check li{position:relative;padding-left:32px;margin-bottom:11px;font-size:.96rem;font-weight:500;color:#E8D2D2}
.vh-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(214,34,46,.28)}
.vh-check li::after{content:'\2713';position:absolute;left:4px;top:6.5px;color:#fff;font-size:.62rem;font-weight:800}

.vh-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 26px}
.vh-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}
.vh-figures b{display:block;font-family:'Fjalla One',sans-serif;font-weight:700;font-size:1.2rem;color:#fff;line-height:1.1}
.vh-figures span{font-size:.68rem;font-weight:700;color:#C9A0A0;text-transform:uppercase;letter-spacing:.05em}

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

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

/* ---------- "the galloping trail" signature — three tiny fading marks receding ---------- */
.vh-ascent{margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 18px 14px;
  box-shadow:0 8px 22px rgba(22,9,11,.15);text-align:center;max-width:260px;margin-left:auto;margin-right:auto}
.vh-ascent h4{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;color:var(--steel-dk);
  margin-bottom:8px;font-family:'Karla',sans-serif;font-weight:700}
.vh-ascent svg{display:block;margin:0 auto;overflow:visible}
.vh-mini-mark{fill:var(--steel);animation:vhMiniTrailFade 2.4s ease-in-out infinite}
.vh-ascent-cap{font-size:.68rem;font-weight:700;color:var(--slate);margin-top:8px}
@keyframes vhMiniTrailFade{0%,100%{opacity:.2}50%{opacity:.6}}
@media(prefers-reduced-motion:reduce){.vh-mini-mark{animation:none;opacity:.35}}

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

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

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

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

/* ---------- list ---------- */
.vh-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
@media(max-width:780px){.vh-list{grid-template-columns:minmax(0,1fr)}}
.vh-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)}
.vh-list li b{display:block;color:var(--ink);margin-bottom:3px;font-size:.97rem;font-family:'Fjalla One',sans-serif}

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

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

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

/* ---------- guarantee ---------- */
.vh-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){.vh-guar{grid-template-columns:minmax(0,1fr);gap:24px;text-align:center;padding:28px 22px}}
.vh-guar img{max-width:min(175px,100%);margin:0 auto}
.vh-guar p{color:var(--slate)}

/* ---------- steps ---------- */
.vh-steps{display:grid;gap:15px}
.vh-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}
.vh-step-row .n{width:34px;height:34px;border-radius:6px;background:rgba(78,124,142,.14);color:var(--steel-dk);
  font-family:'Fjalla One',sans-serif;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.92rem}
.vh-step-row p{margin:0;color:var(--slate);font-size:.93rem}

/* ---------- FAQ ---------- */
.vh-faq{border-top:1px solid var(--line)}
.vh-faq-row{border-bottom:1px solid var(--line)}
.vh-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:'Fjalla One',sans-serif;font-weight:600;font-size:1.04rem;color:var(--ink)}
.vh-faq-btn::after{content:'+';font-size:1.5rem;color:var(--steel-dk);flex-shrink:0;transition:transform .2s;font-family:'Karla',sans-serif}
.vh-faq-row.on .vh-faq-btn::after{transform:rotate(45deg)}
.vh-faq-body{max-height:0;overflow:hidden;transition:max-height .28s ease}
.vh-faq-body p{padding:0 4px 20px;margin:0;color:var(--slate);font-size:.94rem}

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

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

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

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

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

/* ---------- footer ---------- */
.vh-foot{background:var(--ink-dk);color:#8AA098;padding:48px 0 34px;font-size:.87rem}
.vh-foot a{color:#CBDAD3}
.vh-foot a:hover{color:var(--sage)}
.vh-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}
.vh-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}
.vh-foot hr{border:none;border-top:1px solid rgba(255,255,255,.1);margin:22px 0}
.vh-foot p{margin:0 0 14px;line-height:1.68}
.vh-foot .cr{text-align:center;font-size:.84rem;opacity:.85;margin-top:22px}

/* ---------- free bonuses ---------- */
.vh-bonus-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
@media(max-width:980px){.vh-bonus-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.vh-bonus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.vh-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}
.vh-bonus-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(22,9,11,.09);border-color:var(--steel)}
.vh-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}
.vh-bonus-card img{max-width:135px;margin:0 auto 15px;border-radius:3px;
  box-shadow:0 14px 26px rgba(22,9,11,.18)}
.vh-bonus-card h4{font-size:.94rem;margin-bottom:7px}
.vh-bonus-card p{font-size:.82rem;color:var(--slate);margin:0}

/* ---------- guarantee badge ---------- */
.vh-guar-badge{display:flex;align-items:center;justify-content:center;position:relative;padding:10px}
.vh-guar-badge::before{content:'';position:absolute;width:210px;height:210px;border-radius:50%;
  background:radial-gradient(circle,rgba(214,34,46,.13) 0%,transparent 72%);z-index:0}
.vh-guar-badge img,.vh-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) */
.vh-ing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media(max-width:980px){.vh-ing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.vh-ing-grid{grid-template-columns:minmax(0,1fr)}}
.vh-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}
.vh-ing-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(22,9,11,.09);border-color:var(--steel)}
.vh-ing-top{height:5px}
.vh-ing-body{padding:21px 21px 19px;flex:1;display:flex;flex-direction:column}
.vh-ing-head{display:flex;align-items:center;gap:12px;margin-bottom:13px}
.vh-ing-icon{width:42px;height:42px;min-width:42px;border-radius:9px;display:flex;align-items:center;
  justify-content:center;font-size:1.25rem}
.vh-ing-name{font-family:'Fjalla One',sans-serif;font-weight:700;font-size:1rem;color:var(--ink);line-height:1.22;margin:0}
.vh-ing-cat{font-size:.64rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--slate);margin-top:3px}
.vh-ing-body p{color:var(--slate);font-size:.87rem;margin:0 0 15px;flex:1;line-height:1.6}
.vh-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}
.vh-ing-dose.warn{color:#9C4221;background:#FBEEE8;border-color:#F0D3C2}
.vh-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) */
.vh-pathtable{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;font-size:.85rem}
.vh-pathtable th{background:var(--ink);color:#fff;text-align:left;padding:12px 14px;font-family:'Fjalla One',sans-serif;font-weight:700;font-size:.85rem}
.vh-pathtable td{padding:12px 14px;border-top:1px solid var(--line);color:var(--slate)}
.vh-pathtable tr:nth-child(even) td{background:var(--sand)}
.vh-pathtable td b{color:var(--ink)}
.vh-pathtable-wrap{overflow-x:auto}
@media(max-width:680px){.vh-pathtable{font-size:.76rem}.vh-pathtable th,.vh-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 */
.vh-ribbon-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.vh-ribbon{display:flex;align-items:flex-start;gap:16px;padding:20px 22px;border-bottom:1px solid var(--line)}
.vh-ribbon:last-child{border-bottom:none}
.vh-ribbon:nth-child(even){background:var(--stone)}
.vh-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)}
.vh-ribbon-body h4{margin:0 0 4px;font-size:1.02rem;color:var(--ink)}
.vh-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 */
.vh-timeline{position:relative;padding-left:38px}
.vh-timeline::before{content:'';position:absolute;left:13px;top:6px;bottom:6px;width:2px;background:var(--line)}
.vh-tl-item{position:relative;padding-bottom:26px}
.vh-tl-item:last-child{padding-bottom:0}
.vh-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:'Fjalla One',sans-serif;
  box-shadow:0 0 0 4px #fff, 0 0 0 5px var(--line)}
.vh-tl-item h4{margin:0 0 4px;font-size:1rem;color:var(--ink)}
.vh-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 */
.vh-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){.vh-compare{grid-template-columns:minmax(0,1fr)}}
.vh-compare>div{padding:24px 24px 26px}
.vh-compare .a{background:var(--stone)}
.vh-compare .b{background:var(--ink);color:#fff}
.vh-compare h4{font-size:.72rem;letter-spacing:.11em;text-transform:uppercase;margin:0 0 14px}
.vh-compare .a h4{color:var(--steel-dk)}
.vh-compare .b h4{color:var(--steel)}
.vh-compare ul{margin:0;padding:0;list-style:none}
.vh-compare li{position:relative;padding-left:22px;margin-bottom:11px;font-size:.9rem;line-height:1.5}
.vh-compare .a li{color:var(--slate)}
.vh-compare .b li{color:#D8DBE6}
.vh-compare li::before{content:'\2022';position:absolute;left:2px;top:0;font-size:1.1rem}
.vh-compare .a li::before{color:var(--steel)}
.vh-compare .b li::before{color:var(--steel)}

/* ---------- blog hub hero + cards ---------- */
.vh-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}
.vh-bhero::before{content:'';position:absolute;top:-40%;right:-10%;width:340px;height:340px;border-radius:50%;
  background:radial-gradient(circle,rgba(214,34,46,.12) 0%,transparent 70%);z-index:0}
.vh-bhero::after{content:'';position:absolute;bottom:-50%;left:-8%;width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle,rgba(240,85,94,.1) 0%,transparent 70%);z-index:0}
.vh-bhero>.vh-wrap{position:relative;z-index:1}
.vh-bhero .vh-pill{margin-bottom:18px}
.vh-bhero h1{margin-bottom:12px}
.vh-bhero p.lede{color:var(--slate);max-width:560px;margin:0 auto;font-size:1.02rem}
.vh-bhero-meta{display:flex;justify-content:center;align-items:center;gap:10px 22px;margin-top:24px;flex-wrap:wrap}
.vh-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}

.vh-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}
.vh-bgroup{margin-bottom:46px}
.vh-bgroup:last-child{margin-bottom:0}

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

/* ---------- sticky bar ---------- */
.vh-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)}
.vh-sticky .t{min-width:0;line-height:1.25;color:#fff}
.vh-sticky .t b{display:block;font-size:.92rem;color:var(--sage);font-family:'Fjalla One',sans-serif}
.vh-sticky .t small{color:#B9CBC4;font-size:.71rem}
.vh-sticky .vh-btn{padding:11px 18px;font-size:.86rem;flex-shrink:0}
@media(max-width:920px){.vh-sticky{display:flex}body{padding-bottom:68px}}
