/* ============================================================
   SITE-WIDE STYLES, single source of truth for every page.
   Dentara, warm African-earth palette (sand / clay / ochre)
   layered over a clinical teal "real doctor" anchor.
   ============================================================ */

/* ---------------------------------------------------------------
     GOLDEN RATIO SYSTEM  (phi = 1.618, sqrt-phi = 1.272)
     Type scale (px), stepped by phi and sqrt-phi:
       14  -  17  -  22(body)  -  28  -  36  -  46
     Spacing scale = Fibonacci (which converges on phi):
       8  -  13  -  21  -  34  -  55  -  89
     Measure locked to ~80 characters via the ch unit.
  --------------------------------------------------------------- */
  :root {
    color-scheme: only light;
    --phi: 1.618;
    --f-2: 14px;  --f-1: 17px;  --f0: 22px;  --f1: 28px;  --f2: 36px;  --f3: 46px;
    --s1: 8px;  --s2: 13px;  --s3: 21px;  --s4: 34px;  --s5: 55px;  --s6: 89px;
    --lh: 1.618;        /* golden line-height for body */
    --pad: 55px;        /* side padding (Fibonacci) */
    --measure: 80ch;    /* readable line ~80 characters */

    /* ---- Dentara warm-earth palette ---- */
    --ink:      #2b2117;  /* body text, warm espresso */
    --teal:     #0e7c72;  /* clinical teal, the "real doctor" trust anchor */
    --teal-dk:  #0a544c;  /* darker teal */
    --clay:     #a8472a;  /* terracotta, warm headline / accent */
    --clay-dk:  #7e351f;  /* deep clay */
    --mint:     #c2872f;  /* (warm) ochre / amber, rules, toprule, dividers */
    --mint-soft:#f3e3bd;  /* warm sand, highlighter */
    --line:     #e3d6bb;  /* warm tan hairline borders */
    --paper:    #fffdf8;  /* warm off-white page */
    --wash:     #f3ead6;  /* warm sand body background */
    --cta:      #ffcc00;  /* gold CTA */
    --cta-dk:   #c79a00;  /* CTA shadow / border */
    --cta-ink:  #2b2117;  /* warm dark text on the CTA */
  }
  html, body { background-color:var(--wash) !important; color:var(--ink) !important; margin:0; padding:0; }
  * { forced-color-adjust: none; }
  body { font-family: Georgia,"Times New Roman",serif; font-size:var(--f0); line-height:var(--lh); color:var(--ink) !important; background-color:var(--wash) !important; padding:15px 15px 100px 15px; box-sizing:border-box; }

  /* page capped at 800px wide */
  .page { max-width: 800px; margin:-24px auto 0 auto; position:relative; z-index:1; background-color:var(--paper) !important; border:1px solid var(--line); box-shadow: 0 1px 3px rgba(43,33,23,0.07); padding: var(--s4) var(--pad) var(--pad) var(--pad); }
  .newsbar { position:relative; z-index:0; box-sizing:border-box; margin:-15px -15px 0 -15px; background:var(--clay); color:#fff; display:flex; align-items:center; justify-content:center; min-height:1in; text-align:center; font-family:"Helvetica Neue",Arial,sans-serif; font-weight:700; text-transform:uppercase; letter-spacing:2.5px; font-size:11px; padding:9px 16px 33px 16px; box-shadow:0 2px 6px rgba(43,33,23,0.22); }
  .clickbank-disclaimer { max-width:660px; margin:30px auto 0 auto; padding:0 40px; text-align:center; font-size:13px; line-height:1.6; color:#8a7a5a; }
  .clickbank-disclaimer p { margin:0; font-size:13px; }
  .ads-disclaimer { max-width:660px; margin:0 auto; padding:16px 40px 4px 40px; text-align:center; font-size:11px; line-height:1.55; color:#9a8a6a; }
  .ads-disclaimer p { margin:0; font-size:11px; }

  .toprule { text-align:center; color:var(--mint); letter-spacing:3px; font-size:var(--f-2); text-transform:uppercase; margin:0 0 var(--s4) 0; font-family:"Helvetica Neue",Arial,sans-serif; font-weight:700; }
  h1 { color:#c00; font-size:var(--f2); line-height:1.236; font-weight:bold; text-align:center; margin: var(--s2) 0 var(--s3) 0; }
  @media (max-width: 720px) {
    .page { padding-top: var(--s2); }
    h1 { font-size:26px; line-height:1.3; margin-top: var(--s1); }
  }
  .subhead { color:#5a4a36; font-size:var(--f0); font-style:italic; font-weight:bold; text-align:center; margin:0 0 calc(var(--s5) / 2) 0; line-height:1.382; }
  p { margin:0 0 var(--s3) 0; font-size:var(--f0); }
  .lead { font-size:var(--f1); line-height:1.5; }
  .dropcap::first-letter { font-size:var(--f3); line-height:36px; float:left; padding:6px 10px 0 0; color:var(--clay); font-weight:bold; }
  .letterimg { display:block; width:100%; height:auto; margin: var(--s4) auto; border-radius:6px; border:1px solid var(--line); box-shadow:0 1px 6px rgba(43,33,23,0.10); }
  /* bundle image sitting directly above a CTA: keep the gap to the button tight (<=20px) */
  .bundleimg { margin-bottom:20px; max-width:600px; border:none; box-shadow:none; }
  .bundleimg + .btn { margin-top:20px; }
  picture { display:block; }
  /* author photo that floats beside a paragraph */
  .docpic { float:left; width:var(--dpw,350px); height:auto; border-radius:6px; margin:calc(6px - var(--dpup,0px)) var(--s4) var(--s2) 0; border:1px solid var(--line); box-shadow:0 1px 6px rgba(43,33,23,0.10); }
  .docpic-right { float:right; margin:calc(6px - var(--dpup,0px)) 0 var(--s2) var(--s4); }
  .docpic-sm { width:200px; }
  /* captioned floated figure (span-based so it's valid inside a paragraph) */
  .capfig { display:block; float:left; width:var(--dpw,250px); margin:6px var(--s4) var(--s2) 0; }
  .capfig.right { float:right; margin:6px 0 var(--s2) var(--s4); }
  .capimg { display:block; width:100%; height:auto; border-radius:6px; border:1px solid var(--line); box-shadow:0 1px 6px rgba(43,33,23,0.10); }
  .imgcap { display:block; margin:7px 0 0 0; font-size:13px; line-height:1.45; font-style:italic; color:#8a7d63; text-align:center; }
  .imgcap-wide { display:block; max-width:none; margin:-26px auto var(--s4) auto; font-size:14.5px; line-height:1.5; font-style:italic; color:#8a7d63; text-align:center; }
  .imgcap-1line { max-width:none; white-space:nowrap; }
  /* burn-vs-feed comparison */
  .compare { display:flex; gap:var(--s4); margin:var(--s5) auto; max-width:760px; }
  .compare-col { flex:1; text-align:center; }
  .comparehead { margin:0; font-weight:bold; font-size:var(--f1); line-height:1.1; }
  .comparesub { margin:5px 0 var(--s3) 0; font-size:15px; color:#8a7d63; }
  .compare-burn .comparehead { color:var(--clay); }
  .compare-feed .comparehead { color:var(--teal); }
  .comparebox { border-radius:12px; padding:var(--s3) var(--s2); color:#fff; box-shadow:0 1px 6px rgba(43,33,23,0.12); }
  .compare-burn .comparebox { background:#7a2f18; }
  .compare-feed .comparebox { background:var(--teal-dk); }
  .comparebox .label { display:inline-block; font-family:Arial,Helvetica,sans-serif; font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:#fff; background:rgba(255,255,255,.16); padding:4px 11px; border-radius:20px; margin:0 0 10px 0; }
  .comparebox b { display:block; font-size:19px; line-height:1.25; color:#fff; }
  .comparebox span { display:block; font-size:14px; margin-top:4px; color:rgba(255,255,255,0.82); }
  .comparearrow { font-size:22px; line-height:1; margin:9px 0; }
  .compare-burn .comparearrow { color:var(--clay); }
  .compare-feed .comparearrow { color:var(--teal); }
  /* doctor signature sign-off */
  .signoff-block { display:flex; align-items:center; justify-content:center; gap:var(--s4); margin:var(--s5) 0 var(--s4) 0; }
  .signoff-block img { width:120px; height:120px; border-radius:50%; object-fit:cover; border:1px solid var(--line); box-shadow:0 1px 6px rgba(43,33,23,0.10); flex:none; }
  .sig-name { margin:0; font-family:'Great Vibes','Segoe Script','Brush Script MT',cursive; font-size:50px; line-height:1; color:var(--ink); }
  .sig-title { margin:6px 0 0 0; font-size:14px; font-weight:bold; letter-spacing:.5px; color:#8a7d63; }
  /* tiny disclaimer under digital-product mockups */
  .prodnote { display:block; font-family:Arial,Helvetica,sans-serif; font-size:10px; line-height:1.4; color:#9a8d73; text-align:center; margin:4px auto var(--s3) auto; -webkit-text-size-adjust:100%; text-size-adjust:100%; }
  img.captioned { margin-bottom:2px !important; }
  .prodnote + .btn { margin-top:16px; }
  .bonusimgwrap { flex:none; width:213px; display:flex; flex-direction:column; }
  .bonusimgwrap .prodnote { margin:4px auto 0 auto; }
  .testi-pic { float:left; width:125px; height:125px; object-fit:cover; border-radius:50%; margin:4px var(--s3) var(--s2) 0; border:1px solid var(--line); box-shadow:0 1px 6px rgba(43,33,23,0.10); }
  .sectionhead { text-align:center; font-size:var(--f2); color:var(--clay); font-weight:bold; margin: var(--s6) 0 var(--s1) 0; font-style:italic; line-height:1.25; }
  /* tribal diamond motif divider (ochre line + clay diamonds) */
  .finerule { clear:both; width:70px; height:0; border:none; border-top:1px solid var(--line); margin:var(--s4) auto; }
  .sectionrule { width:160px; height:16px; border:none; margin:0 auto var(--s4) auto; background:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='160'%20height='16'%3E%3Crect%20x='0'%20y='7'%20width='160'%20height='1.5'%20fill='%23c2872f'/%3E%3Cg%20fill='%23a8472a'%3E%3Cpath%20d='M80%201%20L87%208%20L80%2015%20L73%208%20Z'/%3E%3Cpath%20d='M58%203.5%20L63%208%20L58%2012.5%20L53%208%20Z'/%3E%3Cpath%20d='M102%203.5%20L107%208%20L102%2012.5%20L97%208%20Z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat; }
  /* mid-letter subheadline, with small flanking tribal diamonds */
  .midhead { text-align:center; font-family:Georgia,"Times New Roman",serif; font-weight:bold; font-size:var(--f1); color:var(--clay); line-height:1.3; margin: var(--s5) auto var(--s3) auto; max-width:36ch; }
  .midhead::before, .midhead::after { content:"\25C6"; color:var(--mint); font-size:0.55em; vertical-align:middle; margin:0 0.6em; position:relative; top:-0.12em; }
  .midhead.nodia::before, .midhead.nodia::after { content:none; }
  .pull { font-style:italic; color:var(--clay); padding:var(--s1) var(--s4); margin: var(--s5) var(--s2); text-align:center; font-size:var(--f1); line-height:1.382; font-weight:bold; }
  .pullquote { margin:var(--s5) auto; padding:0; max-width:620px; border:none; font-style:italic; color:#4a3f2e; text-align:center; }
  .pullquote p { margin:0 0 var(--s2) 0; }
  .pullquote cite { display:block; font-style:normal; font-weight:bold; color:var(--clay); font-size:15px; }
  .testi { border:1px solid var(--line); border-radius:10px; padding:var(--s3); margin: var(--s4) 0; font-style:italic; color:#4a3f2e; overflow:hidden; background:#faf4e6; box-shadow:0 1px 4px rgba(43,33,23,0.06); }
  .testi .who { font-style:normal; font-weight:bold; display:block; margin-top:var(--s1); color:var(--clay); }
  /* two testimonials side by side as columns */
  .testi-row { display:flex; gap:var(--s3); align-items:stretch; margin:var(--s4) 0; }
  .testi-row .testi { flex:1; margin:0; }
  .testi-row .testi-pic { float:none; display:block; margin:0 auto var(--s2) auto; }
  /* medical "case file" treatment for the long patient case studies (Carol, Walter, Denise) */
  .testi.casefile { position:relative; background:#fdfbf4; border:1px solid var(--teal); border-radius:4px; padding:calc(38px + var(--s3)) var(--s3) var(--s3) var(--s3); font-style:normal; color:#3a3526; box-shadow:0 2px 12px rgba(43,33,23,0.12); }
  .testi.casefile::before { content:"PATIENT CASE FILE"; position:absolute; top:0; left:0; right:0; height:38px; line-height:38px; padding:0 14px; background:var(--teal); color:#fff; font-family:"Courier New",ui-monospace,monospace; font-size:13px; font-weight:bold; letter-spacing:2px; text-transform:uppercase; border-radius:3px 3px 0 0; }
  .testi.casefile .who { font-family:"Courier New",ui-monospace,monospace; font-weight:bold; text-transform:uppercase; letter-spacing:1px; color:var(--teal-dk); border-top:1px dashed var(--line); padding-top:var(--s2); margin-top:var(--s3); }
  .testi.casefile .who::before { content:"PATIENT: "; color:#8a7d63; }
  .btn { display:block; background:var(--cta); color:var(--cta-ink) !important; border:2px solid var(--cta-dk); border-radius:3px; padding:var(--s3) var(--s2); font-size:var(--f1); font-weight:bold; text-align:center; text-decoration:none; margin: var(--s5) auto; max-width:600px; letter-spacing:0.5px; box-shadow:0 4px 0 var(--cta-dk); transform-origin:center; animation: btnpulse 2.2s ease-in-out infinite; }
  @keyframes btnpulse {
    0%, 100% { transform: scale(1); }
    50%      { transform: scale(1.03); }
  }
  @media (prefers-reduced-motion: reduce) { .btn { animation: none; } }

  /* sticky bottom order button, appears after the first order button scrolls off */
  .sticky-order { position:fixed; left:0; right:0; bottom:0; z-index:999; transform:translateY(110%); transition:transform .35s ease; }
  .sticky-order.show { transform:translateY(0); }
  .sticky-order-btn { display:block; width:100%; box-sizing:border-box; background:var(--cta); color:var(--cta-ink) !important; border:none; border-top:2px solid var(--cta-dk); padding:16px 14px; font-size:var(--f0); font-weight:bold; text-align:center; text-decoration:none; letter-spacing:0.5px; box-shadow:0 -2px 12px rgba(43,33,23,0.18); }
  .price { text-align:center; font-size:var(--f1); font-weight:bold; color:var(--clay); margin: var(--s3) 0; }
  .guarantee { text-align:center; font-style:italic; color:#6a5740; margin: var(--s2) 0 0 0; font-size:var(--f-1); }
  .faqq { position:relative; background:#faf3e4; border-left:4px solid var(--clay); border-radius:4px; padding:14px 18px 14px 54px; margin: var(--s4) 0 0 0; font-weight:bold; color:var(--clay-dk); font-size:var(--f0); line-height:1.35; }
  .faqq::before { content:"Q"; position:absolute; left:14px; top:13px; width:28px; height:28px; line-height:28px; text-align:center; background:var(--clay); color:#fff; border-radius:50%; font-family:"Helvetica Neue",Arial,sans-serif; font-size:15px; font-weight:700; }
  .faqq + p { position:relative; margin:0 0 var(--s2) 0; padding:14px 18px 14px 54px; color:#4a3f2e; border-left:4px solid var(--line); }
  .faqq + p::before { content:"A"; position:absolute; left:14px; top:14px; width:28px; height:28px; line-height:28px; text-align:center; background:var(--mint); color:#fff; border-radius:50%; font-family:"Helvetica Neue",Arial,sans-serif; font-size:15px; font-weight:700; }
  .small { font-size:var(--f-2); line-height:1.5; color:#6a5740; margin-top:var(--s5); border-top:1px solid var(--line); padding-top:var(--s3); }
  .signoff { font-style:italic; color:#4a3f2e; }

  /* readability emphasis */
  b, strong { font-weight:bold; color:var(--ink); }
  u { text-decoration: underline; text-decoration-color:var(--clay); text-decoration-thickness:2px; text-underline-offset:3px; }

  /* warm sand marker highlight on the important lines */
  .hl { background:linear-gradient(180deg, rgba(243,227,189,0) 8%, var(--mint-soft) 8%, var(--mint-soft) 86%, rgba(243,227,189,0) 86%); padding:0 3px; box-decoration-break:clone; -webkit-box-decoration-break:clone; font-weight:bold; color:var(--ink); }
  .mark { background:linear-gradient(180deg, rgba(243,227,189,0) 8%, var(--mint-soft) 8%, var(--mint-soft) 86%, rgba(243,227,189,0) 86%); padding:0 3px; box-decoration-break:clone; -webkit-box-decoration-break:clone; color:var(--ink); }

  /* spoken dialogue, warm sepia */
  .dlg { font-style:italic; color:#6f4a26; }

  /* proper guarantee box */
  .guaranteebox { border:6px double var(--mint); background:#faf3e4; border-radius:4px; padding: var(--s4) var(--s5) var(--s5) var(--s5); margin: var(--s5) 0; box-shadow: inset 0 0 0 2px var(--mint), 0 3px 14px rgba(43,33,23,0.12); overflow:hidden; }
  .guaranteebox .gtitle { font-size:var(--f1); font-weight:bold; color:var(--clay-dk); font-style:italic; margin:0 0 var(--s1) 0; text-align:left; line-height:1.236; }
  .guaranteebox .gbadge { display:inline-block; background:var(--teal); color:#fff; font-size:var(--f-2); font-weight:bold; letter-spacing:1px; text-transform:uppercase; padding:5px 14px; border-radius:3px; margin:0 0 var(--s3) 0; }
  .guaranteebox p { margin:0 0 var(--s2) 0; font-size:var(--f0); line-height:1.5; }
  .guaranteebox p:last-child { margin-bottom:0; }

  /* author byline, circular photo straddles the top rule; teal ring = clinical anchor */
  .authorline { text-align:center; margin: var(--s5) 0; padding:0; border-top:1px solid var(--mint); position:relative; }
  .authorline .bylinepic { display:block; width:90px; height:90px; border-radius:50%; object-fit:cover; margin:-45px auto 10px auto; border:none; box-shadow:0 1px 4px rgba(43,33,23,0.20); position:relative; z-index:1; }
  .authorline .toprule { margin:0; line-height:1.3; }
  .authorline .authordate { margin:5px 0 0 0; font-size:12px; font-style:italic; color:var(--mint); line-height:1; letter-spacing:0.5px; }

  /* bonus callouts (text only, no image) */
  .bonusrow { margin: var(--s4) 0; background:#faf3e4; border:1px solid var(--line); border-radius:6px; padding: var(--s3); display:flex; align-items:flex-start; gap:var(--s3); }
  .bonusrow .bonustext { flex:1; }
  .bonusrow .bonustext p { margin:0; font-size:22px; }
  .bonusimg { flex:none; width:213px; height:auto; border-radius:6px; }
  .bonusrow .bonustext p.bonusvalue { display:inline-block; max-width:100%; white-space:nowrap; margin:var(--s2) 0 0 0; padding:5px 14px; background:var(--teal); color:#fff; font-weight:bold; font-size:clamp(10.5px,3.2vw,14px); line-height:1.2; letter-spacing:.2px; border-radius:999px; }
  .bonusvalue .strike { color:rgba(255,255,255,.78); font-weight:normal; }
  .bonustag { display:inline-block; background:var(--mint); color:#fff; font-size:14px; font-weight:bold; letter-spacing:1px; text-transform:uppercase; padding:4px 12px; border-radius:3px; margin:0 0 var(--s1) 0; }

  /* offer / value stack */
  .offerstack { border:5px dashed var(--clay); border-radius:8px; background:#fdf3d4; padding: var(--s4); margin: var(--s5) 0; box-shadow:0 22px 48px -20px rgba(122,47,24,0.50), 0 6px 16px rgba(43,33,23,0.12), inset 0 0 60px rgba(255,255,255,0.9); }
  .offerstack .ostitle { position:relative; z-index:2; display:block; background:var(--clay); color:#fff; text-align:center; font-size:38px; font-weight:bold; font-style:normal; line-height:1.2; padding:15px 22px; margin:calc(-1 * var(--s4) - 24px) calc(-1 * var(--s4) - 22px) var(--s4) calc(-1 * var(--s4) - 22px); box-shadow:0 6px 14px rgba(43,33,23,0.22); }
  .offerstack .ostitle::before, .offerstack .ostitle::after { content:""; position:absolute; top:calc(100% - 9px); width:18px; height:18px; background:#6e2a14; transform:rotate(45deg); z-index:-1; }
  .offerstack .ostitle::before { left:9px; }
  .offerstack .ostitle::after { right:9px; }
  /* guarantee seal over the bundle image */
  .bundlewrap { position:relative; width:100%; max-width:380px; aspect-ratio:600/414; margin:var(--s2) auto var(--s3) auto; }
  .bundlewrap2 { position:relative; width:100%; max-width:600px; aspect-ratio:600/414; margin:var(--s4) auto 2px auto; }
  .bundlewrap img.captioned, .bundlewrap2 .bundleimg { width:100%; height:100%; object-fit:contain; }
  .bundlewrap2 .bundleimg { margin:0 !important; }
  .bundle-seal { position:absolute; bottom:-2%; right:12%; width:27%; height:auto; z-index:3; transform:rotate(8deg); filter:drop-shadow(0 3px 7px rgba(43,33,23,0.35)); }
  .offerstack .orow { display:flex; justify-content:space-between; align-items:baseline; gap:var(--s3); padding: var(--s2) 0; border-bottom:1px dashed var(--line); font-size:21px; }
  .offerstack .orow .oname { font-weight:bold; color:var(--ink); }
  .offerstack .orow .oname small { display:block; font-weight:normal; font-style:italic; color:#6a5740; font-size:16px; }
  .offerstack .orow .oval { white-space:nowrap; color:#6a5740; }
  .offerstack .orow .ofree { color:var(--teal); font-weight:bold; }
  .offerstack .ototal { display:flex; justify-content:space-between; align-items:baseline; gap:var(--s3); padding: var(--s3) 0 var(--s1) 0; font-size:22px; font-weight:bold; color:var(--ink); }
  .offerstack .strike { color:#b3a487; text-decoration:line-through; }
  .offerstack .otoday { text-align:center; font-size:30px; font-weight:bold; color:var(--clay); margin: var(--s2) 0 0 0; line-height:1.25; }
  .offerstack .osave { text-align:center; color:var(--clay); font-weight:bold; font-size:var(--f0); margin: var(--s2) 0 0 0; }
  .btn-sublink { display:block; text-align:center; margin:-40px auto var(--s4) auto; font-weight:bold; color:#0b6cd1; text-decoration:underline; font-size:var(--f-1); }
  /* payment / trust icons tucked under each CTA button, above the sublink */
  .payicons { display:block; width:200px; max-width:100%; height:auto; margin:-34px auto 0 auto; }
  .payicons + .btn-sublink { margin-top:var(--s2); }
  .btn-sublink:hover { color:#0850a3; }

  /* "beware of fake copies" notice box */
  .fakebox { margin: var(--s5) 0 0; padding: var(--s4) var(--s4) var(--s2); background:#fffdf6; border:1px solid var(--line); border-radius:6px; text-align:center; }
  .fakebox__title { display:inline-block; background:#c00; color:#fff !important; font-family:"Helvetica Neue",Arial,sans-serif; font-weight:700; font-size:16px; letter-spacing:0.3px; padding:9px 20px; border-radius:4px; margin:0 0 var(--s3) 0; }
  .fakebox p { font-size:16px; line-height:1.55; color:#4a3f2e; margin:0 0 var(--s3) 0; }
  .fakebox p:last-child { margin-bottom: var(--s2); }
  .fakebox b { color:var(--ink); }
  .fakebox a { color:var(--teal); font-weight:bold; }

  @media (max-width: 720px) {
    :root { --pad: 21px; --f-2: 12px; --f-1: 16px; --f0: 20px; --f1: 25px; --f2: 32px; --f3: 41px; }
    .page { max-width: 100%; }
    .docpic { float:none; display:block; width:100%; height:auto; margin:0 auto var(--s3) auto; }
    .capfig, .capfig.right { float:none; width:100%; margin:0 auto var(--s3) auto; }
    .imgcap-1line { white-space:normal; }
    .compare { flex-direction:column; gap:var(--s4); max-width:360px; }
    .signoff-block img { width:88px; height:88px; }
    .sig-name { font-size:40px; }
    .testi-pic { float:none; display:block; width:125px; margin:0 auto var(--s3) auto; }
    .testi-row { flex-direction:column; gap:0; }
    /* opt-in: on mobile, drop the floated image BELOW its paragraph's text */
    p:has(> .docpic-mb-below) { display:flex; flex-direction:column; }
    .docpic-mb-below { order:2; margin:var(--s3) auto 0 auto; }
    .bonusrow { flex-direction:column; }
    .bonusimg { width:100%; max-width:none; margin:0 auto; }
    .bonusimgwrap { width:100%; }
    .bonusrow .bonustext p { font-size:20px; }
    .offerstack { border-width:3px; padding:var(--s3); }
    .offerstack .ostitle { font-size:21px; padding:12px 14px; margin-left:calc(-1 * var(--s3) - 16px); margin-right:calc(-1 * var(--s3) - 16px); }
    .offerstack .orow { font-size:19px; }
    .offerstack .otoday { font-size:26px; }
    .guaranteebox { padding:14px; }
    .guaranteebox .gbadge { display:block; width:fit-content; margin-left:auto; margin-right:auto; }
  }


/* ===== secondary (legal / info) pages, selectors the sales page doesn't use ===== */
.updated { text-align:center; color:var(--clay); font-style:italic; font-weight:bold; font-size:16px; margin:0 0 28px 0; }
h2 { color:var(--clay-dk); font-size:24px; margin:32px 0 8px 0; }   /* plain <h2>; .sectionhead overrides this on the sales page */
ul { padding-left:22px; }
li { margin:0 0 16px 0; }
a { color:var(--teal); }
.back { display:inline-block; margin-top:14px; color:var(--mint); text-decoration:none; font-style:italic; }
.back:hover { text-decoration:underline; }
@media (max-width:720px) { h2 { font-size:21px; } }
/* ===== shared footer (render_footer) ===== */
.site-footer{font-family:Georgia,"Times New Roman",serif;max-width:660px;margin:50px auto 0 auto;padding:26px 40px 42px;border-top:1px solid var(--line);text-align:center;color:#6a5740;font-size:14px;line-height:1.7;background:var(--wash);}
.site-footer nav{margin-bottom:10px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;}
.site-footer a{color:var(--teal);text-decoration:none;}
.site-footer a:hover{text-decoration:underline;}
.site-footer .sep{color:#cabfa0;margin:0 7px;}
.site-footer .copy{margin:5px 0 0;font-size:12px;color:#8a7a5a;}
.site-footer .cb-disclaimer{margin-top:16px;font-size:11px;line-height:1.6;color:#9a8a6a;}
@media (max-width:720px){.site-footer{padding:22px 16px 34px;}.site-footer .sep{margin:0 5px;}}

/* ===== exit-intent popup (render_exit_popup) ===== */
.exitpop-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,0.82);opacity:0;transition:opacity .25s ease;}
.exitpop-overlay.show{opacity:1;}
.exitpop-overlay[hidden]{display:none !important;}
.exitpop{position:relative;max-width:480px;width:100%;background:var(--paper);border:1px solid var(--line);border-top:7px solid var(--clay);border-radius:6px;box-shadow:0 14px 50px rgba(20,14,6,0.45);padding:34px 30px 30px;text-align:center;font-family:Georgia,"Times New Roman",serif;color:var(--ink);transform:translateY(14px);transition:transform .25s ease;}
.exitpop-overlay.show .exitpop{transform:translateY(0);}
.exitpop__close{position:absolute;top:8px;right:12px;border:none;background:none;font-size:30px;line-height:1;color:var(--mint);cursor:pointer;padding:4px;}
.exitpop__close:hover{color:var(--clay);}
.exitpop__eyebrow{margin:0 0 8px;font-family:"Helvetica Neue",Arial,sans-serif;text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:700;color:#c00;}
.exitpop__title{margin:0 0 14px;font-size:26px;line-height:1.25;font-weight:bold;color:#c00;}
.exitpop__msg{margin:0 0 14px;font-size:17px;line-height:1.5;color:#4a3f2e;}
.exitpop__scarcity{margin:0 0 22px;font-size:16px;line-height:1.5;font-style:italic;font-weight:bold;color:var(--clay-dk);background:#f6ecd6;border-radius:4px;padding:10px 14px;}
.exitpop__btn{display:block;width:100%;box-sizing:border-box;background:var(--cta);color:var(--cta-ink);border:2px solid var(--cta-dk);border-radius:3px;padding:15px 16px;font-size:19px;font-weight:bold;letter-spacing:0.5px;cursor:pointer;box-shadow:0 4px 0 var(--cta-dk);}
@media (max-width:600px){ .exitpop__title{font-size:22px;} .exitpop{padding:28px 20px 24px;} }
