/* ===================================================================
   VASCULIFE (vasculiife.com) — bespoke design system, written fresh.
   Blood Balance Support capsules (60 caps). Label states: White Mulberry
   Extract + Cinnamon Extract.
   UNIQUENESS: fresh HTML/CSS/JS, own class prefix (vsl-), own palette,
   own fonts, own signature element, own section order. Shares nothing
   with any earlier build.
   Palette: night #20264d | night-2 #2b3364 | rose #e0435c | rose-deep #c22f47
            aqua #3fc7b4 | aqua-deep #2ba694 | ivory #f7f6fb | mist #eceaf4
            ink #1b1f38 | quiet #6f7392 | rule #e2e0ee
   Display: 'Outfit'   Body: 'Karla'
   Signature: pulse waveform (vascular / heartbeat trace)
   Layout notes: grids minmax(0,1fr); flex children min-width:0;
   images capped with min(Npx,100%); hero mobile order H1 -> image -> rest.

   ===== SENSITIVE: BLOOD-SUGAR + CARDIOVASCULAR + WEIGHT-LOSS =====
   Source is a SKEPTICAL review (infoquu) which found: no published
   clinical trials on the finished formula; marketing far stronger than
   evidence; broad multi-condition claims are a red flag; benefits at
   best modest/gradual; "not a proven solution for diabetes, poor
   circulation, or cardiovascular disease." That honesty is preserved
   here rather than reversed into hype.
   - NO diabetes/heart-disease diagnose-treat-cure-manage claims.
   - Label wording "Improves Blood Circulation" softened to structure-
     function ("supports healthy circulation"); "Aids Natural Weight
     Loss" softened, no guarantees, diet-and-exercise framing, ED-safe.
   - Mulberry + Cinnamon may lower blood sugar -> dedicated safety block
     with diabetes-medication / insulin hypoglycaemia warning.
   - Explicit "not a substitute for medication, insulin or medical care".
   - Pregnancy / nursing / under-18 / surgery / medication consult.
   - Finished-formula-not-clinically-tested stated on page.
   - No blood-sugar or blood-pressure numbers anywhere, incl. reviews.
=================================================================== */

:root{
  --night:#20264d;
  --night-2:#2b3364;
  --rose:#e0435c;
  --rose-deep:#c22f47;
  --aqua:#3fc7b4;
  --aqua-deep:#2ba694;
  --ivory:#f7f6fb;
  --mist:#eceaf4;
  --ink:#1b1f38;
  --quiet:#6f7392;
  --rule:#e2e0ee;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:'Karla','Segoe UI',sans-serif;
  font-size:17px;
  line-height:1.75;
  color:var(--ink);
  background:var(--ivory);
}
h1,h2,h3,h4{
  font-family:'Outfit','Segoe UI',sans-serif;
  font-weight:600;
  line-height:1.16;
  color:var(--night);
  letter-spacing:-.4px;
  margin:0 0 14px;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;height:auto;display:block;}
.wrap{max-width:1140px;margin:0 auto;padding:0 22px;}
.tag{
  font-family:'Outfit',sans-serif;font-weight:600;font-size:.74rem;
  letter-spacing:2.6px;text-transform:uppercase;color:var(--rose);
}
.mid{text-align:center;}

/* ---------- buttons ---------- */
.vsl-cta,
.vsl-cta-quiet,
.vsl-cta-line{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-family:'Outfit',sans-serif;font-weight:600;font-size:1.02rem;
  padding:15px 32px;border:none;cursor:pointer;border-radius:6px;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}
.vsl-cta{
  background:var(--rose);color:#fff;
  box-shadow:0 10px 24px rgba(224,67,92,.28);
}
.vsl-cta:hover{background:var(--rose-deep);transform:translateY(-2px);box-shadow:0 14px 30px rgba(224,67,92,.4);}
.vsl-cta-quiet{background:var(--night);color:#fff;}
.vsl-cta-quiet:hover{background:var(--night-2);transform:translateY(-2px);}
.vsl-cta-line{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55);}
.vsl-cta-line:hover{background:#fff;color:var(--night);border-color:#fff;}

/* ---------- header ---------- */
.vsl-bar{
  position:sticky;top:0;z-index:900;
  background:rgba(247,246,251,.94);backdrop-filter:blur(9px);
  border-bottom:1px solid var(--rule);padding:13px 0;
}
.vsl-bar .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.vsl-mark{display:flex;align-items:center;gap:9px;font-family:'Outfit',sans-serif;font-weight:700;font-size:1.42rem;color:var(--night);}
.vsl-mark svg{width:30px;height:30px;flex:0 0 auto;}
.vsl-mark b{color:var(--rose);font-weight:700;}
.vsl-links{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0;}
.vsl-links a{font-weight:600;font-size:.9rem;color:var(--night);opacity:.8;}
.vsl-links a:hover{opacity:1;color:var(--rose);}
.vsl-burger{display:none;background:none;border:none;font-size:1.7rem;color:var(--night);cursor:pointer;line-height:1;}
@media(max-width:920px){
  .vsl-links{position:absolute;left:0;right:0;top:100%;display:none;flex-direction:column;gap:0;background:var(--ivory);border-top:1px solid var(--rule);}
  .vsl-links.show{display:flex;}
  .vsl-links li{width:100%;border-bottom:1px solid var(--rule);}
  .vsl-links a{display:block;padding:15px 22px;}
  .vsl-links .buy{display:none;}
  .vsl-burger{display:block;}
}

/* ---------- hero ---------- */
.vsl-hero{
  position:relative;overflow:hidden;color:#fff;padding:62px 0 0;
  background:
    radial-gradient(circle at 84% 22%, rgba(63,199,180,.22) 0%, transparent 52%),
    linear-gradient(160deg,var(--night) 0%,var(--night-2) 62%,#3a2350 130%);
}
.vsl-hero-grid{display:flex;align-items:center;gap:46px;flex-wrap:wrap;position:relative;z-index:2;}
.vsl-hero-copy{flex:1 1 430px;min-width:0;}
.vsl-lead,.vsl-rest{width:100%;}
.vsl-hero h1{color:#fff;font-size:3rem;margin:14px 0 18px;}
.vsl-hero h1 i{font-style:normal;color:var(--aqua);}
.vsl-hero p{color:#c9cbe4;font-size:1.08rem;max-width:520px;margin:0;}
.vsl-hero-shot{flex:1 1 250px;min-width:0;text-align:center;position:relative;}
.vsl-hero-shot img{max-width:min(250px,100%);margin:0 auto;filter:drop-shadow(0 24px 40px rgba(0,0,0,.45));position:relative;z-index:2;}
.vsl-hero-shot::after{
  content:'';position:absolute;left:50%;top:50%;width:270px;height:270px;
  transform:translate(-50%,-50%);z-index:1;
  background:radial-gradient(circle,rgba(224,67,92,.22) 0%,transparent 68%);
}
.vsl-hero-btns{display:flex;gap:13px;flex-wrap:wrap;margin-top:24px;}
.vsl-stars{display:flex;align-items:center;gap:11px;margin-top:22px;color:#c9cbe4;font-size:.94rem;font-weight:600;}
.vsl-stars span:first-child{color:var(--aqua);letter-spacing:2px;font-size:1.12rem;}
@media(max-width:920px){
  .vsl-hero-copy{display:contents;}
  .vsl-lead{order:1;}
  .vsl-hero-shot{order:2;margin-top:12px;}
  .vsl-rest{order:3;}
  .vsl-hero h1{font-size:2.3rem;}
}
/* pulse signature */
.vsl-pulse{position:relative;z-index:2;padding:34px 0 32px;display:flex;flex-direction:column;align-items:center;}
.vsl-pulse svg{width:210px;height:44px;}
.vsl-pulse em{font-style:normal;color:#8f93bb;font-size:.74rem;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;margin-top:7px;}

/* ---------- generic band ---------- */
.vsl-band{padding:72px 0;}
.vsl-band-mist{background:var(--mist);}
.vsl-band-night{background:var(--night);color:#d5d7ea;}
.vsl-band-night h2,.vsl-band-night h3{color:#fff;}
.vsl-title{max-width:720px;margin:0 auto 42px;text-align:center;}
.vsl-title h2{font-size:2.35rem;margin-top:9px;}
.vsl-title p{color:var(--quiet);margin:0;}

/* ---------- trust row ---------- */
.vsl-trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
@media(max-width:780px){.vsl-trust{grid-template-columns:repeat(2,minmax(0,1fr));}}
.vsl-trust div{background:#fff;border:1px solid var(--rule);border-radius:12px;padding:22px 16px;text-align:center;}
.vsl-trust img{max-width:min(126px,100%);margin:0 auto 10px;border-radius:8px;}
.vsl-trust p{margin:0;font-family:'Outfit',sans-serif;font-weight:600;font-size:.92rem;color:var(--night);}

/* ---------- honest evidence callout (distinctive to this build) ---------- */
.vsl-evidence{
  background:#fff;border:1px solid var(--rule);border-left:4px solid var(--aqua);
  border-radius:12px;padding:30px 32px;max-width:880px;margin:0 auto;
}
.vsl-evidence h3{font-size:1.35rem;}
.vsl-evidence p{color:var(--quiet);margin:0 0 10px;}
.vsl-evidence p:last-child{margin-bottom:0;}
.vsl-evidence strong{color:var(--night);}

/* ---------- split rows ---------- */
.vsl-split{display:flex;align-items:center;gap:50px;flex-wrap:wrap;}
.vsl-split.flip{flex-direction:row-reverse;}
.vsl-split figure{flex:1 1 250px;min-width:0;margin:0;text-align:center;}
.vsl-split figure img{max-width:min(330px,100%);margin:0 auto;filter:drop-shadow(0 16px 30px rgba(32,38,77,.2));}
.vsl-split .body{flex:1 1 410px;min-width:0;}
.vsl-split .body h2{font-size:2.05rem;}
.vsl-split .body p{color:var(--quiet);}

/* ---------- what it supports (numbered) ---------- */
.vsl-support{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
@media(max-width:880px){.vsl-support{grid-template-columns:1fr;}}
.vsl-support article{background:#fff;border:1px solid var(--rule);border-radius:12px;padding:26px 24px;}
.vsl-support b{font-family:'Outfit',sans-serif;font-size:1.5rem;color:var(--aqua-deep);display:block;}
.vsl-support h4{font-size:1.14rem;margin:6px 0 9px;}
.vsl-support p{margin:0;color:var(--quiet);font-size:.92rem;}

/* ---------- ingredients ---------- */
.vsl-ing{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:880px;margin:0 auto;}
@media(max-width:700px){.vsl-ing{grid-template-columns:1fr;}}
.vsl-ing article{background:#fff;border:1px solid var(--rule);border-top:3px solid var(--rose);border-radius:12px;padding:24px 22px;}
.vsl-ing h4{font-size:1.12rem;color:var(--rose-deep);}
.vsl-ing p{margin:0;color:var(--quiet);font-size:.91rem;}
.vsl-ing em{font-style:normal;font-weight:700;color:var(--night);font-size:.85rem;}

/* ---------- safety block ---------- */
.vsl-safety{background:#171c38;border:1px solid #333a63;border-radius:14px;padding:40px 38px;color:#cfd2e8;}
.vsl-safety h3{color:#fff;font-size:1.5rem;display:flex;align-items:center;gap:11px;margin-bottom:16px;}
.vsl-safety h3 svg{width:30px;height:30px;flex:0 0 auto;}
.vsl-safety p{margin:0 0 12px;font-size:.95rem;}
.vsl-safety p:last-child{margin-bottom:0;}
.vsl-safety strong{color:#fff;}

/* ---------- usage ---------- */
.vsl-usage{max-width:640px;margin:0 auto;background:#fff;border:1px solid var(--rule);border-radius:12px;padding:30px;text-align:center;}
.vsl-usage h4{font-size:1.2rem;}
.vsl-usage p{margin:0;color:var(--quiet);}

/* ---------- voices ---------- */
.vsl-voices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
@media(max-width:880px){.vsl-voices{grid-template-columns:1fr;}}
.vsl-voices article{background:#fff;border:1px solid var(--rule);border-radius:12px;padding:26px 24px;}
.vsl-voices header{display:flex;align-items:center;gap:13px;margin-bottom:11px;}
.vsl-voices header img{width:52px;height:52px;border-radius:50%;object-fit:cover;}
.vsl-voices strong{font-family:'Outfit',sans-serif;color:var(--night);display:block;font-weight:600;}
.vsl-voices small{color:var(--quiet);}
.vsl-voices .rate{color:var(--rose);letter-spacing:2px;margin-bottom:7px;}
.vsl-voices p{margin:0;color:var(--quiet);font-size:.93rem;}

/* ---------- pricing ---------- */
.vsl-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch;}
@media(max-width:880px){.vsl-plans{grid-template-columns:1fr;max-width:400px;margin:0 auto;}}
.vsl-plan{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--rule);border-radius:14px;padding:28px 22px;text-align:center;}
.vsl-plan.pick{border:2px solid var(--rose);box-shadow:0 20px 42px rgba(224,67,92,.16);}
.vsl-flag{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--rose);color:#fff;font-family:'Outfit',sans-serif;font-weight:600;font-size:.7rem;letter-spacing:.6px;text-transform:uppercase;padding:5px 15px;border-radius:4px;white-space:nowrap;}
.vsl-flag.calm{background:var(--night);}
.vsl-plan img{max-width:min(180px,100%);height:150px;object-fit:contain;margin:6px auto 12px;}
.vsl-plan h4{font-size:1.32rem;margin-bottom:2px;}
.vsl-plan .sup{color:var(--quiet);font-size:.87rem;margin-bottom:12px;}
.vsl-plan .each{font-family:'Outfit',sans-serif;font-weight:600;font-size:2.5rem;color:var(--night);line-height:1;}
.vsl-plan .each span{font-family:'Karla',sans-serif;font-size:.86rem;font-weight:400;color:var(--quiet);}
.vsl-plan .sum{font-weight:700;margin:9px 0 3px;color:var(--ink);}
.vsl-plan .ship{font-size:.85rem;font-weight:700;color:var(--aqua-deep);margin-bottom:13px;}
.vsl-plan .ship.pay{color:var(--quiet);font-weight:400;}
.vsl-plan .vsl-cta{width:100%;margin-top:auto;}
.vsl-plan .cards{max-width:min(180px,100%);margin:12px auto 0;opacity:.7;}

/* ---------- guarantee ---------- */
.vsl-promise{display:flex;align-items:center;gap:40px;flex-wrap:wrap;background:#fff;border:1px solid var(--rule);border-radius:16px;padding:36px;}
.vsl-promise img{max-width:min(170px,100%);margin:0 auto;}
.vsl-promise div{flex:1 1 340px;min-width:0;}
.vsl-promise h3{font-size:1.8rem;}
.vsl-promise p{color:var(--quiet);}

/* ---------- faq ---------- */
.vsl-faq{max-width:800px;margin:0 auto;}
.vsl-faq details{background:#fff;border:1px solid var(--rule);border-radius:10px;margin-bottom:11px;overflow:hidden;}
.vsl-faq summary{cursor:pointer;list-style:none;padding:19px 22px;font-family:'Outfit',sans-serif;font-weight:600;font-size:1.06rem;color:var(--night);display:flex;justify-content:space-between;align-items:center;gap:14px;}
.vsl-faq summary::-webkit-details-marker{display:none;}
.vsl-faq summary::after{content:'+';color:var(--rose);font-size:1.4rem;flex-shrink:0;}
.vsl-faq details[open] summary::after{content:'\2212';}
.vsl-faq .ans{padding:0 22px 19px;color:var(--quiet);}
.vsl-faq .ans p{margin:0 0 10px;}
.vsl-faq .ans p:last-child{margin-bottom:0;}

/* ---------- footer ---------- */
.vsl-foot{background:#141833;color:#8f93bb;font-size:.9rem;padding:44px 0 28px;}
.vsl-foot a{color:#c9cbe4;}
.vsl-foot a:hover{color:var(--aqua);}
.vsl-foot hr{border:none;border-top:1px solid #2a2f52;margin:24px 0;}
.vsl-foot .fine{font-size:.81rem;color:#797ea6;max-width:900px;}

/* ---------- mobile buy bar ---------- */
.vsl-dock{position:fixed;left:0;right:0;bottom:0;z-index:940;display:none;align-items:center;justify-content:space-between;gap:12px;background:#141833;border-top:2px solid var(--rose);padding:9px 16px;}
.vsl-dock b{color:#fff;font-family:'Outfit',sans-serif;font-size:1rem;display:block;line-height:1.2;}
.vsl-dock small{color:#8f93bb;font-size:.72rem;}
@media(max-width:920px){.vsl-dock{display:flex;}body{padding-bottom:68px;}}
