/* ===================================================================
   CARDIO C2 — carrdioc2.com
   Palette : ink #14243A (deep navy, from the label) | ink-dk #0B1626
             | steel(=medium blue accent) #2A7AA8 | steel-dk #1F5F82 |
             sage(=light blue secondary) #6FB4D9 | stone #F5F9FB |
             sand #E8F1F5 | slate #46566A | line #DCE8EE
   Type    : 'Familjen Grotesk' (a clean, modern grotesque) + 'Inter'
             (clean body) — a fresh pairing not reused
   Motif   : the EKG trace — a classic heartbeat/EKG zigzag line with a
             glowing pulse travelling continuously along it, echoing
             the cardiovascular/circulation theme directly; distinct
             from every other signature used across this project (not
             a hex cluster, not a spiral swirl, not connected molecule
             nodes, not a sequential petal-bloom, not a directional
             streak-burst)
   Layout  : STRUCTURALLY UNIQUE HERO — a tenth distinct hero paradigm
             for this project: an EKG PULSE-EDGE panel (a clip-path
             polygon whose top edge is jagged, tracing an actual
             heartbeat waveform shape rather than a smooth curve,
             blob, or straight diagonal), with the bottle sitting
             inside it — a deliberate contrast to this project's nine
             other hero shapes (rect-split, diagonal-cut, ring-circle,
             teardrop, tilted-rect, hexagon, fluid-blob, arch-niche,
             speed-wedge). Other sections keep the same underlying
             architecture as prior builds (same page order for SEO/
             EEAT).
   Tech    : this build makes deliberate, direct use of Bootstrap 5's
             grid and utility classes (row, col-*, g-*) alongside the
             project's custom component classes.
   Voice   : confident, direct brand voice — general circulation,
             energy, and heart-wellness framing ONLY. Never a
             treatment for any diagnosed cardiovascular disease, high
             cholesterol, high blood pressure, or any other medical
             condition.
   CRITICAL COMPLIANCE NOTE: the competitor review supplied for this
             build (inmybowl.com) repeatedly asserts that this formula
             "dissolves hardened cholesterol crystals" that standard
             cholesterol/blood-pressure tests supposedly fail to
             detect — a "hidden root cause" narrative that is NOT
             recognized medical science (atherosclerotic plaque is not
             a distinct, supplement-dissolvable "crystal," and
             standard lipid panels are a real, validated diagnostic
             tool, not something this or any supplement bypasses).
             This build DELIBERATELY DOES NOT repeat that claim
             anywhere, including in blog content, schema, or hero
             copy. Instead it uses the brand's OWN more measured
             marketing language from its supplied "How It Works"
             graphic ("support healthy circulation, heart function,
             and overall vitality") as the basis for all positioning.
             The 8 ingredients (Beta-Cyclodextrin, Beet Root Extract,
             L-Citrulline, Hawthorn Berry, L-Arginine, L-Theanine,
             Black Garlic Extract, CoQ10) are each described only by
             their own individually well-documented, mainstream
             properties (circulation, nitric oxide support,
             antioxidant activity, cellular energy) — never tied to
             the crystal-dissolving narrative.
   GUARANTEE NOTE: the supplied zip's own guarantee-badge image is
             baked with "60 DAYS," but the competitor review and a
             prior verified research pass both independently confirm
             90 days for this brand. Per this project's established
             guarantee-override rule, this build uses 90 days
             throughout and does NOT use the supplied 60-day badge
             image anywhere (using it would create a direct, visible
             contradiction with the rest of the page's own text) —
             a CSS-built badge is used instead, styled to match.
   Rules   : grids minmax(0,1fr) · flex min-width:0 · img max-width min(Npx,100%)
             mobile hero order = IMAGE first, then H1, then rest —
             VERIFIED: every class referenced in the mobile media
             query below (.c2-hero-title, .c2-hero-rest) is confirmed
             present in the actual page HTML, not just assumed.
=================================================================== */

:root{
  --ink:#14243A;
  --ink-dk:#0B1626;
  --steel:#2A7AA8;
  --steel-dk:#1F5F82;
  --sage:#6FB4D9;
  --stone:#F5F9FB;
  --sand:#E8F1F5;
  --slate:#46566A;
  --line:#DCE8EE;
}

*{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:'Familjen Grotesk',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:'Familjen Grotesk',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}
.c2-wrap{max-width:1160px;margin:0 auto;padding:0 22px}
.c2-nav-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0}
.c2-narrow{max-width:830px;margin:0 auto}
.c2-mid{text-align:center}

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

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

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

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

/* ---------- HERO : EKG PULSE-EDGE (structurally unique — a jagged heartbeat-trace edge, not a smooth clip-path/blob) ---------- */
.c2-hero{background:linear-gradient(180deg,var(--stone) 0%,var(--sand) 100%);padding:54px 0 40px;overflow:hidden;position:relative}
.c2-hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:44px;align-items:center;
  position:relative;z-index:1}
.c2-hero-shot{order:1;position:relative;display:flex;justify-content:center}
.c2-hero-copy{order:2}
.c2-pulse-stage{position:relative;width:300px;max-width:100%}
.c2-pulse-panel{clip-path:polygon(0 18%,10% 18%,14% 4%,19% 32%,24% 18%,32% 18%,36% 10%,41% 26%,46% 18%,100% 18%,100% 100%,0 100%);
  background:linear-gradient(150deg,var(--steel) 0%,var(--sage) 55%,var(--steel-dk) 100%);
  padding:56px 26px 30px;display:flex;align-items:center;justify-content:center;min-height:300px;position:relative}
.c2-pulse-panel img{max-width:min(190px,100%);filter:drop-shadow(0 18px 26px rgba(20,40,60,.3));border-radius:8px}
.c2-pulse-badge{position:absolute;background:#fff;border-radius:12px;padding:8px 13px;
  box-shadow:0 10px 22px rgba(20,40,60,.16);font-size:.72rem;font-weight:700;color:var(--ink);
  display:flex;align-items:center;gap:6px;white-space:nowrap;z-index:3}
.c2-pulse-badge i{width:7px;height:7px;border-radius:50%;background:var(--sage);flex:none}
.c2-pulse-badge.p1{top:4%;right:-6%}
.c2-pulse-badge.p2{bottom:8%;right:-4%}
.c2-hero h1 em{font-style:normal;color:var(--steel-dk)}
.c2-lede{font-size:1.05rem;color:var(--slate);max-width:37em}

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

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

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

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

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

@media(max-width:920px){
  .c2-hero-grid{grid-template-columns:minmax(0,1fr);gap:22px}
  .c2-hero-copy{display:contents}
  .c2-hero-shot{order:1}
  .c2-hero-title{order:2}
  .c2-hero-rest{order:3}
  .c2-pulse-stage{width:220px;margin:0 auto}
  .c2-pulse-panel{min-height:220px;padding:44px 18px 20px}
  .c2-pulse-panel img{max-width:min(140px,100%)}
  .c2-pulse-badge{font-size:.62rem;padding:6px 9px}
}

/* ---------- "the circuit" signature — angular PCB trace, animated, always-on loop ---------- */
.c2-ascent{margin-top:16px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px 12px;
  box-shadow:0 8px 22px rgba(20,36,58,.1);text-align:center;max-width:210px;margin-left:auto;margin-right:auto}
.c2-ascent h4{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:var(--steel-dk);
  margin-bottom:8px;font-family:'Inter',sans-serif;font-weight:700}
.c2-ascent svg{display:block;margin:0 auto;overflow:visible}
.c2-ekg-trail{fill:none;stroke:var(--line);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.c2-ekg-fill{fill:none;stroke:var(--steel);stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round;
  stroke-dasharray:40 400;stroke-dashoffset:0;animation:c2EkgMove 2.6s linear infinite}
.c2-ekg-dot{fill:var(--sage)}
.c2-ascent-cap{font-size:.66rem;font-weight:700;color:var(--slate);margin-top:6px}
@keyframes c2EkgMove{0%{stroke-dashoffset:440}100%{stroke-dashoffset:-440}}
@media(prefers-reduced-motion:reduce){.c2-ekg-fill{animation:none}}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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