/* ===================================================================
   GLUCOPRIL — glucopriil.com
   Palette : ink #7A1620 (deep maroon-red, from the label) | ink-dk
             #4D0E15 | steel(=steel-teal blue accent) #3D7A8C |
             steel-dk #2A5A68 | sage(=lighter teal-blue highlight)
             #6FA8B8 | stone #FAF6F5 (warm white) | sand #F3E5E3 |
             slate #4A3F3D | line #E8D8D6
   Type    : 'Bitter' (strong, medical-adjacent slab serif) + 'Inter'
             (clean body) — a fresh pairing not reused
   Motif   : the blood drop arc — a drop shape with an upward-curving
             arrow trail that draws itself on a loop, echoing the
             label's own drop-and-arrow logo mark; distinct from every
             other signature used across this project (not a curved
             cell-stream, not a zigzag streak, not right-angle circuit
             traces, not concentric rings, not a radiating dot fan,
             not a drop ripple, not a crest pulse, not a honeycomb
             bloom, not a leaf vein, not a gut-flow spiral, not a
             neuron pulse, not a flame flicker, not a dew shimmer)
   Layout  : STRUCTURALLY UNIQUE HERO — a sixteenth distinct hero
             paradigm for this project: a LIQUID ORB. A large, soft,
             semi-transparent circular glass-like orb sits behind the
             bottle, echoing the product's own infographic staging -
             a defined circular boundary with a liquid-glass feel,
             distinct from the smooth diffuse glow of a "calm halo."
             The bottle image itself is NEVER clipped or masked by
             the orb shape - it stays fully open with object-fit:
             contain, floating in front of the orb. Distinct from the
             two-column split, diagonal clip-path, centered rings,
             droplet clip-path, tilted card frame, radial burst
             spotlight, floating shelf, vertical ledger, spotlight
             pedestal, honeycomb frame, wave arc, split diagonal
             ribbon, calm halo, bold frame corners, and petal
             backdrop used in this project's other builds.
   Voice   : confident, direct brand voice grounded in real product-
             category substance rather than repeated boilerplate
             disclaimer language. Structure-function claims only -
             "helps support healthy blood sugar levels already within
             a normal range" (language the brand's own label already
             uses). NEVER claims to treat, cure, or manage diabetes.
   SOURCING NOTE: the official source's own page lists 4 tagged
             ingredients (Berberine, Gymnema Sylvestre, Cinnamon Bark,
             Chromium) alongside a much longer "Scientific References"
             list covering roughly two dozen studies on a wider set of
             blood-sugar botanicals (banaba, bitter melon, fenugreek,
             ginseng, magnesium, green tea, etc). Those additional
             studies support the general category, not necessarily
             every ingredient in this specific formula - this build
             only claims the 4 ingredients that are actually tagged on
             the product itself, and cites research for those 4 only.
   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:#7A1620;
  --ink-dk:#4D0E15;
  --steel:#3D7A8C;
  --steel-dk:#2A5A68;
  --sage:#6FA8B8;
  --stone:#FAF6F5;
  --sand:#F3E5E3;
  --slate:#4A3F3D;
  --line:#E8D8D6;
}

*{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:'Bitter',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:'Bitter',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}
.gp-wrap{max-width:1160px;margin:0 auto;padding:0 22px}
.gp-narrow{max-width:830px;margin:0 auto}
.gp-mid{text-align:center}

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

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

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

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

/* ---------- HERO : LIQUID ORB — a soft glass-like circular orb behind the bottle, NEVER clipping the image ---------- */
.gp-hero{background:linear-gradient(180deg,var(--stone) 0%,var(--sand) 100%);padding:54px 0 68px;overflow:hidden;position:relative}
.gp-hero-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:50px;align-items:center;
  position:relative;z-index:1}
.gp-hero-shot{order:1;position:relative;display:flex;justify-content:center;align-items:center;min-height:260px}
.gp-orb{position:absolute;width:250px;height:250px;border-radius:50%;z-index:0;
  background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.9) 0%,rgba(111,168,184,.22) 32%,rgba(122,22,32,.10) 68%,transparent 82%);
  box-shadow:inset 0 0 40px rgba(122,22,32,.08)}
.gp-hero-copy{order:2}
.gp-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 30px rgba(122,22,32,.24))}
.gp-orb-tag{position:absolute;bottom:4%;right:4%;background:var(--ink);color:#fff;border-radius:10px;
  padding:8px 14px;font-size:.74rem;font-weight:700;z-index:3;white-space:nowrap;
  box-shadow:0 10px 20px rgba(122,22,32,.24)}
.gp-hero h1 em{font-style:normal;color:var(--steel-dk)}
.gp-lede{font-size:1.05rem;color:var(--slate);max-width:37em}

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

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

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

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

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

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

/* ---------- "the blood drop arc" signature — a drop with an upward-curving arrow trail drawing itself, echoing the label's drop-arrow logo ---------- */
.gp-ascent{margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 18px 14px;
  box-shadow:0 8px 22px rgba(122,22,32,.07);text-align:center;max-width:260px;margin-left:auto;margin-right:auto}
.gp-ascent h4{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;color:var(--steel-dk);
  margin-bottom:8px;font-family:'Inter',sans-serif;font-weight:700}
.gp-ascent svg{display:block;margin:0 auto;overflow:visible}
.gp-drop-shape{fill:var(--ink)}
.gp-drop-arrow{fill:none;stroke:var(--steel);stroke-width:2.5;stroke-linecap:round;
  stroke-dasharray:60;stroke-dashoffset:60;animation:gpArrowDraw 3s ease-in-out infinite}
.gp-ascent-cap{font-size:.68rem;font-weight:700;color:var(--slate);margin-top:8px}
@keyframes gpArrowDraw{0%{stroke-dashoffset:60}55%,70%{stroke-dashoffset:0}100%{stroke-dashoffset:-60}}
@media(prefers-reduced-motion:reduce){.gp-drop-arrow{animation:none;stroke-dashoffset:0}}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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