/* ===================================================================
   HORSEFIL — horsefilo.com
   Palette : ink #1A1410 (near-black warm dark, from the label) |
             ink-dk #0D0A08 | steel(=gold accent, from the label)
             #C9A227 | steel-dk #9C7D1D | sage(=deep crimson red
             secondary, from the label's red accents) #B0293D |
             stone #FAF8F5 | sand #F0EAE0 | slate #4A423A |
             line #E5DDD0
   Type    : 'Big Shoulders Display' (a tall, bold condensed athletic
             display face) + 'Inter' (clean body) — a fresh pairing
             not reused
   Motif   : the power surge — a lightning-bolt-shaped path that
             flickers/glows in place on a continuous loop, echoing the
             lightning-bolt icon in the label's own "BOOSTS ENERGY"
             artwork; a flicker mechanic distinct from every other
             signature used across this project (not a travelling
             stream, not a straight EKG sweep, not an angular circuit,
             not a droplet, not connected molecule nodes, not a scale-
             pulse ring, not growing bars)
   Layout  : STRUCTURALLY UNIQUE HERO — a ninth distinct hero paradigm
             for this project: a SPOTLIGHT STAGE. The bottle stands on
             a dark stage backdrop under a converging triangular beam
             of light (a CSS clip-path cone), with small stat-plaque
             chips flanking it like a trophy display — a dramatic
             beam/stage framing device, distinct from the two-column
             split, diagonal clip-path, droplet clip-path, tilted
             card-frame, dark monitor-screen panel, aperture frame, and
             ascending steps used in this project's other builds.
             Other sections keep the same underlying architecture as
             prior builds (same page order for SEO/EEAT), with a
             distinct visual treatment per section.
   Voice   : STRICT compliant framing only — general energy, stamina,
             physical performance, and everyday vitality. NEVER
             testosterone-boost, erectile dysfunction, or bedroom-
             performance language anywhere on this site, per this
             project's standing caution for this product category.
   SOURCING NOTE: this build's own zip assets (bottle label, two
             separate "How It Works" graphics) consistently confirm a
             gummy format taken 1/day, 30 gummies/bottle, with no
             dosage discrepancy this time (a prior, separate build
             under a different HorseFil domain had flagged a label-
             vs-instructions dosage mismatch; this build's own assets
             show no such conflict). A detailed, compliance-conscious
             competitor review names 6 ingredients (L-Citrulline,
             L-Carnitine, Panax Ginseng Extract, Maca Root Extract,
             Rhodiola Extract, Grape Seed Extract) and is used as the
             ingredient source since the zip's own graphics don't name
             ingredients individually. That review also independently
             documents a real, relevant medication caution: L-
             Citrulline supports the nitric-oxide pathway, and combining
             it with nitrate medications, PDE5 inhibitors, or blood-
             pressure medication without medical guidance is a genuine
             safety consideration — stated plainly on this site rather
             than omitted. The competitor review names 2 unspecified
             bonus items on the 6-bottle package with no cover art or
             specific names given anywhere, so this site does not
             fabricate bonus titles or imagery for them.
   Rules   : grids minmax(0,1fr) · flex min-width:0 · img max-width min(Npx,100%)
             mobile hero order = IMAGE first, then H1, then rest — set
             directly via order on the two hero-grid children
             themselves (no wrapper-class dependency), verified against
             the rendered HTML before delivery.
=================================================================== */

:root{
  --ink:#1A1410;
  --ink-dk:#0D0A08;
  --steel:#C9A227;
  --steel-dk:#9C7D1D;
  --sage:#B0293D;
  --stone:#FAF8F5;
  --sand:#F0EAE0;
  --slate:#4A423A;
  --line:#E5DDD0;
}

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

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

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

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

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

/* ---------- HERO : SPOTLIGHT STAGE (structurally unique — a dark stage with a converging light beam, not a card, not a panel, not a circle) ---------- */
.hf-hero{background:linear-gradient(180deg,var(--stone) 0%,var(--sand) 100%);padding:54px 0 68px;overflow:hidden;position:relative}
.hf-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px;align-items:center;
  position:relative;z-index:1}
.hf-hero-shot{position:relative;display:flex;justify-content:center;align-items:center;min-height:340px}
.hf-hero-copy{min-width:0}
.hf-stage{position:relative;width:100%;max-width:380px;height:320px;border-radius:16px;
  background:radial-gradient(ellipse at 50% 0%,rgba(201,162,39,.22) 0%,transparent 62%),var(--ink);
  overflow:hidden;display:flex;align-items:flex-end;justify-content:center;
  box-shadow:0 30px 60px rgba(13,10,8,.35)}
.hf-beam{position:absolute;top:0;left:50%;transform:translateX(-50%);width:0;height:0;
  border-left:80px solid transparent;border-right:80px solid transparent;border-top:230px solid rgba(201,162,39,.16);z-index:0}
.hf-stage-bottle{position:relative;z-index:1;max-width:min(190px,100%);margin-bottom:14px;
  filter:drop-shadow(0 20px 26px rgba(0,0,0,.5))}
.hf-stage-floor{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);width:60%;height:16px;
  border-radius:50%;background:rgba(201,162,39,.18);filter:blur(4px)}
.hf-plaque{position:absolute;background:#fff;border-radius:8px;padding:7px 12px;font-size:.68rem;font-weight:800;
  color:var(--ink);box-shadow:0 8px 16px rgba(13,10,8,.25);white-space:nowrap;z-index:2}
.hf-plaque-a{top:14%;left:4%}
.hf-plaque-b{bottom:22%;right:2%}
.hf-hero h1 em{font-style:normal;color:var(--steel-dk)}
.hf-lede{font-size:1.05rem;color:var(--slate);max-width:37em}

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

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

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

.hf-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 26px}
.hf-figures div{background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px 8px;text-align:center}
.hf-figures b{display:block;font-family:'Big Shoulders Display',sans-serif;font-weight:800;font-size:1.25rem;color:var(--ink);line-height:1.1}
.hf-figures span{font-size:.68rem;font-weight:700;color:var(--slate);text-transform:uppercase;letter-spacing:.05em}

.hf-hero-btns{display:flex;flex-wrap:wrap;gap:13px;margin-bottom:20px}
.hf-hero-trust{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.78rem;font-weight:700;color:var(--slate)}

/* Mobile hero order — set directly on the two grid children themselves (no wrapper-class
   dependency, no display:contents split), verified against the rendered HTML. */
@media(max-width:920px){
  .hf-hero-grid{grid-template-columns:minmax(0,1fr);gap:26px}
  .hf-hero-shot{order:-1;min-height:260px}
  .hf-hero-copy{order:2}
  .hf-stage{max-width:280px;height:250px}
  .hf-stage-bottle{max-width:min(140px,100%)}
  .hf-plaque{font-size:.6rem;padding:6px 10px}
}

/* ---------- "the circuit" signature — angular PCB trace, animated, always-on loop ---------- */
.hf-ascent{margin-top:14px;background:var(--sand);border-radius:10px;padding:12px 12px 8px;text-align:center}
.hf-ascent h4{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--steel-dk);
  margin-bottom:6px;font-family:'Inter',sans-serif;font-weight:700}
.hf-ascent svg{display:block;margin:0 auto;overflow:visible}
.hf-bolt{fill:var(--steel);animation:hfBoltFlicker 2.2s ease-in-out infinite}
.hf-ascent-cap{font-size:.62rem;font-weight:700;color:var(--slate);margin-top:6px}
@keyframes hfBoltFlicker{0%,100%{opacity:1}45%{opacity:1}50%{opacity:.35}55%{opacity:1}78%{opacity:.55}82%{opacity:1}}
@media(prefers-reduced-motion:reduce){.hf-bolt{animation:none}}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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