/* ==========================================================================
   THE LONGEVITY CLUB + CLINIC — Design System
   Brand: Dark Emerald #0F3330 · Light Emerald #20534F · Gold #A28E73
          Light Gold #CEBFAA · Cream #EDEAE3
   Type:  Newsreader (display) · Figtree (body) · IBM Plex Mono (lab data)
   ========================================================================== */

:root{
  /* brand core */
  --forest:#0F3330;
  --forest-deep:#0A211F;
  --forest-mid:#143734;
  --emerald:#20534F;
  --emerald-lt:#2E6C67;
  --gold:#A28E73;
  --gold-deep:#79674F;
  --gold-lt:#CEBFAA;
  --cream:#EDEAE3;

  /* neutrals */
  --bone:#F8F6F4;
  --paper:#FFFFFF;
  --ink:#101D1C;
  --body:#2E3733;
  --stone:#867C6C;
  --line:#E5E1D7;
  --line-d:rgba(237,234,227,.15);
  --sage:#8FAA9E;

  /* signal colors — used only for lab status */
  --sig-low:#C0685B;
  --sig-watch:#A8895D;
  --sig-opt:#3E7B76;

  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  --ease:cubic-bezier(.22,.72,.18,1);
  --maxw:1200px;
  --r:16px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{
  font-family:var(--sans);color:var(--ink);font-size:16px;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:hidden;
  background:
    radial-gradient(40% 26% at 88% 0%, rgba(162,142,115,.10), transparent 62%),
    radial-gradient(44% 30% at -6% 18%, rgba(32,83,79,.07), transparent 64%),
    radial-gradient(44% 28% at 104% 78%, rgba(15,51,48,.05), transparent 62%),
    linear-gradient(180deg,#FCFBF9 0%,#F7F6F2 52%,#F5F4F0 100%);
  background-attachment:fixed;
}
::selection{background:var(--gold-lt);color:var(--forest-deep)}
a{color:inherit}
img{max-width:100%;display:block}
:focus-visible{outline:2.5px solid var(--gold-deep);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-9999px;top:0;background:var(--forest);color:#fff;padding:12px 18px;z-index:300;border-radius:0 0 8px 0;font-weight:600}
.skip:focus{left:0}

/* ---------- layout ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 40px}
.wrap-narrow{max-width:880px;margin:0 auto;padding:0 40px}
.pad{padding:92px 0;position:relative;z-index:1}
.pad-sm{padding:58px 0}
.pad-lg{padding:112px 0}
@media(max-width:760px){
  .wrap,.wrap-narrow{padding:0 20px}
  .pad{padding:54px 0}.pad-sm{padding:38px 0}.pad-lg{padding:62px 0}
}

/* ---------- type ---------- */
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.05;letter-spacing:-.4px;color:var(--ink)}
h1 em,h2 em,h3 em{font-style:italic;color:var(--emerald)}
p{line-height:1.72}
.kicker{display:inline-flex;align-items:center;gap:11px;font-size:11px;font-weight:700;letter-spacing:2.4px;
  text-transform:uppercase;color:var(--emerald)}
.kicker::before{content:"";width:26px;height:1.5px;background:var(--gold-deep);flex:none}
.lede{color:var(--body);line-height:1.72;font-size:18px;max-width:660px}
.sec-head{max-width:700px}
.sec-head h2{font-size:47px;margin-top:16px;letter-spacing:-1.3px;line-height:1.02}
.sec-head .lede{margin-top:16px}
.sec-head.center{margin-left:auto;margin-right:auto;text-align:center}
.sec-head.center .kicker{justify-content:center}
.sec-head.center .lede{margin-left:auto;margin-right:auto}
@media(max-width:760px){.sec-head h2{font-size:31px}.lede{font-size:16.5px}}

/* dark band inversion */
.band-dark{position:relative;color:var(--cream);
  background:
    radial-gradient(56% 78% at 88% 2%, rgba(162,142,115,.20), transparent 58%),
    radial-gradient(52% 78% at 2% 102%, rgba(143,170,158,.12), transparent 60%),
    linear-gradient(158deg,#12413D 0%,#0A211F 100%)}
.band-dark h1,.band-dark h2,.band-dark h3,.band-dark h4{color:#FCFBFA}
.band-dark h2 em,.band-dark h3 em,.band-dark h1 em{color:var(--gold-lt)}
.band-dark .kicker{color:var(--gold)}
.band-dark .kicker::before{background:var(--gold)}
.band-dark .lede,.band-dark p{color:rgba(237,234,227,.82)}
.band-cream{background:linear-gradient(168deg,#F2EFE7,#EAE6DC)}
.band-paper{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--sans);font-weight:650;
  font-size:14.5px;padding:15px 26px;border-radius:10px;border:0;cursor:pointer;text-decoration:none;line-height:1;
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease)}
.btn svg{width:15px;height:15px;transition:transform .25s var(--ease);flex:none}
.btn:hover svg{transform:translateX(3px)}
.btn-gold{background:var(--gold);color:var(--forest-deep);box-shadow:0 12px 26px -12px rgba(121,99,68,.85)}
.btn-gold:hover{transform:translateY(-2px);background:#BFA581;box-shadow:0 18px 34px -12px rgba(121,99,68,.9)}
.btn-forest{background:var(--forest);color:#fff;box-shadow:0 12px 26px -14px rgba(15,51,48,.9)}
.btn-forest:hover{transform:translateY(-2px);background:var(--emerald)}
.btn-line{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.btn-line:hover{border-color:var(--ink)}
.btn-line.on-dark{color:#FCFBFA;border-color:rgba(237,234,227,.28)}
.btn-line.on-dark:hover{border-color:var(--gold-lt);color:var(--gold-lt)}
.btn-lg{padding:18px 32px;font-size:16px}
.btn-block{width:100%}
.tlink{display:inline-flex;align-items:center;gap:7px;font-size:14.5px;font-weight:650;color:var(--gold-deep);text-decoration:none}
.tlink svg{width:14px;height:14px;transition:transform .25s var(--ease)}
.tlink:hover svg{transform:translateX(4px)}
.band-dark .tlink{color:var(--gold-lt)}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}

/* ---------- scroll progress ---------- */
.progress{position:fixed;left:0;top:0;height:3px;width:0;background:linear-gradient(90deg,var(--gold),var(--gold-lt));z-index:250;transition:width .1s linear}

/* ---------- announcement ---------- */
.announce{background:var(--forest-deep);color:var(--cream);font-size:12.5px;position:relative;z-index:120}
.announce .wrap{display:flex;align-items:center;justify-content:center;gap:18px;padding-top:9px;padding-bottom:9px;flex-wrap:wrap;text-align:center}
.announce b{color:var(--gold-lt);font-weight:650}
.announce a{color:var(--gold-lt);text-decoration:none;font-weight:650;white-space:nowrap}
.announce a:hover{text-decoration:underline}
.announce .dot{width:4px;height:4px;border-radius:50%;background:var(--gold);flex:none}
@media(max-width:600px){.announce .dot{display:none}.announce .wrap{gap:8px;font-size:11.5px}}

/* ---------- header ---------- */
.site-head{position:sticky;top:0;z-index:110;background:rgba(251,250,247,.93);backdrop-filter:saturate(1.15) blur(10px);border-bottom:1px solid var(--line)}
.site-head .bar{display:flex;align-items:center;gap:22px;height:74px}
.logo{display:flex;align-items:center;gap:11px;text-decoration:none;flex:none}
.logo svg{width:38px;height:38px;flex:none}
.logo .word{display:flex;flex-direction:column;line-height:1;gap:3px}
.logo .w1{font-family:var(--serif);font-size:20px;font-weight:500;color:var(--forest);letter-spacing:1.2px;text-transform:uppercase}
.logo .w2{font-size:9px;font-weight:700;letter-spacing:2.6px;text-transform:uppercase;color:var(--gold-deep)}
.navlinks{display:flex;gap:0;margin-left:8px}
.navitem{position:relative;padding:12px 0}
.navitem>a{display:inline-flex;align-items:center;gap:6px;font-size:14.5px;font-weight:550;color:var(--ink);
  text-decoration:none;padding:0 12px;opacity:.9}
.navitem>a .cv{font-size:8px;color:var(--stone);transition:.18s var(--ease)}
.navitem:hover>a,.navitem.active>a{color:var(--emerald);opacity:1}
.navitem.active>a{font-weight:700}
.navitem:hover>a .cv{color:var(--emerald);transform:rotate(180deg)}
.dropdown{position:absolute;top:100%;left:-6px;min-width:278px;background:var(--paper);border:1px solid var(--line);
  border-radius:14px;box-shadow:0 30px 60px -30px rgba(10,34,32,.5);padding:8px;
  opacity:0;visibility:hidden;transform:translateY(-8px);transition:.2s var(--ease);z-index:111}
.dropdown::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}
.navitem:hover .dropdown,.navitem:focus-within .dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.dropdown a{display:block;text-decoration:none;padding:10px 13px;border-radius:10px;transition:background .15s}
.dropdown a:hover{background:var(--cream)}
.dropdown .dt{display:block;font-size:14px;font-weight:650;color:var(--ink)}
.dropdown a:hover .dt{color:var(--emerald)}
.dropdown .dsub{display:block;font-size:11.5px;color:var(--stone);margin-top:2px;line-height:1.35}
.navright{margin-left:auto;display:flex;align-items:center;gap:16px;flex:none}
.navtel{font-size:14px;font-weight:650;color:var(--forest);text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;gap:7px}
.navtel svg{width:14px;height:14px;color:var(--gold-deep)}
.navtel:hover{color:var(--emerald)}
.hamb{display:none;width:42px;height:42px;border:0;background:transparent;color:var(--ink);cursor:pointer;align-items:center;justify-content:center}
.hamb svg{width:26px;height:26px}
.mnav{display:none;position:fixed;inset:0;z-index:200;background:var(--paper);padding:80px 24px 40px;overflow-y:auto}
.mnav.open{display:block}
.mnav .mclose{position:absolute;top:16px;right:16px;width:44px;height:44px;border:0;background:transparent;color:var(--ink);cursor:pointer}
.mnav .mclose svg{width:26px;height:26px}
.mnav a.ml{display:block;font-family:var(--serif);font-size:26px;color:var(--ink);text-decoration:none;padding:13px 0;border-bottom:1px solid var(--line)}
.mnav a.ml:hover{color:var(--emerald)}
.mnav .mcta{margin-top:26px;display:flex;flex-direction:column;gap:12px}
@media(max-width:1120px){.navlinks,.navright .navtel,.navright .btn{display:none}.hamb{display:inline-flex}}

/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.6;
  background:radial-gradient(56% 68% at 90% 6%, rgba(162,142,115,.24) 0, transparent 58%),
             radial-gradient(48% 58% at 0% 100%, rgba(32,83,79,.10) 0, transparent 60%)}
.hero .inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1.02fr;gap:52px;align-items:center;
  padding-top:62px;padding-bottom:80px}
.hero .kicker{color:var(--gold-deep)}
.hero h1{font-size:63px;letter-spacing:-2px;margin-top:18px;line-height:1.0}
.hero h1 em{color:var(--gold-deep)}
.hero .sub{margin-top:22px;max-width:492px;font-size:18.5px;line-height:1.62;color:var(--body)}
.hstats{display:flex;gap:32px;flex-wrap:wrap;margin-top:32px}
.hstats div{display:flex;flex-direction:column;gap:3px}
.hstats b{font-family:var(--serif);font-size:28px;font-weight:500;color:var(--forest);letter-spacing:-.4px;line-height:1}
.hstats span{font-size:12.5px;color:var(--stone)}
.credline{display:flex;align-items:center;gap:11px;margin-top:26px;font-size:13px;color:var(--stone);flex-wrap:wrap}
.credline .d{width:4px;height:4px;border-radius:50%;background:var(--gold);flex:none}
@media(max-width:960px){.hero .inner{grid-template-columns:1fr;gap:34px;padding-bottom:52px}.hero h1{font-size:42px;letter-spacing:-1.2px}}
@media(max-width:480px){.hero h1{font-size:35px}}

/* ==========================================================================
   SIGNATURE — THE OPTIMAL RANGE INSTRUMENT
   The visual argument of the clinic: the gold "optimal" window sits
   inside the much wider grey "standard normal" band.
   ========================================================================== */
.instr{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:26px 26px 22px;
  box-shadow:0 1px 2px rgba(10,34,32,.04),0 34px 70px -44px rgba(10,34,32,.5);position:relative}
.instr-top{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:19px}
.instr-badge{width:34px;height:34px;border-radius:9px;background:var(--forest);color:var(--gold-lt);display:flex;align-items:center;justify-content:center;flex:none}
.instr-badge svg{width:17px;height:17px}
.instr-top b{display:block;font-family:var(--serif);font-size:16.5px;font-weight:600;color:var(--ink);letter-spacing:-.2px}
.instr-top span{display:block;font-size:11.5px;color:var(--stone);margin-top:2px}
.instr-live{margin-left:auto;display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:var(--emerald);flex:none}
.instr-live i{width:7px;height:7px;border-radius:50%;background:var(--emerald);animation:pulse 2.4s infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.82)}}

.mk-name{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap}
.mk-name h3{font-size:26px;letter-spacing:-.6px;line-height:1.1}
.mk-name .mk-unit{font-family:var(--mono);font-size:11.5px;color:var(--stone);letter-spacing:.2px}
.mk-sub{font-size:13px;color:var(--stone);margin-top:5px;line-height:1.5}

/* the gauge */
.gauge{margin-top:22px;position:relative;padding-top:26px}
.gauge-track{height:44px;border-radius:10px;background:linear-gradient(90deg,#EFEDE6,#E7E4DA);position:relative;overflow:hidden;border:1px solid var(--line)}
.gauge-std{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(135deg,rgba(133,124,108,.13) 0 6px,transparent 6px 12px);border-left:1px dashed rgba(133,124,108,.5);border-right:1px dashed rgba(133,124,108,.5)}
.gauge-opt{position:absolute;top:0;bottom:0;background:linear-gradient(180deg,rgba(162,142,115,.42),rgba(162,142,115,.26));border-left:2px solid var(--gold-deep);border-right:2px solid var(--gold-deep)}
.gauge-opt::after{content:"OPTIMAL";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-family:var(--sans);font-size:9px;font-weight:800;letter-spacing:1.4px;color:var(--gold-deep);white-space:nowrap}
.gauge-you{position:absolute;top:-8px;bottom:-8px;width:3px;background:var(--forest);border-radius:2px;transition:left .7s var(--ease);z-index:3}
.gauge-you::before{content:"";position:absolute;top:-6px;left:50%;transform:translateX(-50%);width:0;height:0;
  border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid var(--forest)}
.gauge-flag{position:absolute;top:0;transform:translateX(-50%);font-family:var(--mono);font-size:11px;font-weight:600;
  background:var(--forest);color:#fff;padding:4px 9px;border-radius:6px;white-space:nowrap;transition:left .7s var(--ease);z-index:4}
.gauge-scale{display:flex;justify-content:space-between;margin-top:9px;font-family:var(--mono);font-size:10.5px;color:var(--stone)}
.gauge-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:16px;font-size:11.5px;color:var(--body)}
.gauge-legend span{display:inline-flex;align-items:center;gap:7px}
.gauge-legend i{width:14px;height:9px;border-radius:3px;flex:none}
.lg-std{background:repeating-linear-gradient(135deg,rgba(133,124,108,.3) 0 4px,#EFEDE6 4px 8px);border:1px dashed rgba(133,124,108,.6)}
.lg-opt{background:rgba(162,142,115,.45);border:1px solid var(--gold-deep)}
.lg-you{background:var(--forest);width:4px;border-radius:2px}

.mk-verdict{margin-top:20px;background:var(--cream);border:1px solid var(--line);border-left:3px solid var(--gold-deep);border-radius:10px;padding:15px 17px}
.mk-verdict b{font-size:12px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--gold-deep);display:block;margin-bottom:6px}
.mk-verdict p{font-size:13.8px;line-height:1.62;color:var(--body)}
.mk-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}
.mk-tab{font:inherit;font-size:12.5px;font-weight:600;color:var(--body);background:var(--bone);border:1px solid var(--line);
  border-radius:999px;padding:8px 14px;cursor:pointer;transition:.18s var(--ease)}
.mk-tab:hover{border-color:var(--gold)}
.mk-tab.is-on{background:var(--forest);color:var(--cream);border-color:var(--forest)}
@media(max-width:600px){.mk-name h3{font-size:22px}.gauge-track{height:38px}}

/* ---------- press marquee ---------- */
.press{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.6)}
.press .wrap{display:flex;align-items:center;gap:30px;padding-top:19px;padding-bottom:19px}
.press .pl{font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--stone);flex:none;max-width:130px;line-height:1.5}
.marquee{overflow:hidden;flex:1;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.mtrack{display:flex;gap:40px;width:max-content;animation:scroll 38s linear infinite}
.mtrack span{font-family:var(--serif);font-size:19px;color:var(--forest);opacity:.6;white-space:nowrap}
@keyframes scroll{to{transform:translateX(-50%)}}
@media(max-width:760px){.press .wrap{flex-direction:column;align-items:flex-start;gap:12px}.marquee{width:100%}.press .pl{max-width:none}}

/* ---------- GEO answer cards ---------- */
.qa-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:44px}
@media(max-width:820px){.qa-grid{grid-template-columns:1fr}}
.qa{background:rgba(237,234,227,.055);border:1px solid rgba(237,234,227,.15);border-radius:16px;padding:26px}
.qa h3{font-size:21px;line-height:1.22}
.qa p{font-size:14.5px;line-height:1.68;margin-top:11px}
.qa .src{margin-top:14px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--gold);display:inline-flex;align-items:center;gap:8px}
.qa .src::before{content:"✓"}

/* ---------- generic cards ---------- */
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:980px){.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}}

.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:24px;text-decoration:none;color:var(--ink);
  display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .25s}
a.card:hover{transform:translateY(-5px);box-shadow:0 30px 56px -34px rgba(10,34,32,.42);border-color:var(--gold)}
.card .c-eyebrow{font-size:10px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--gold-deep)}
.card h3{font-size:21px;margin-top:9px;line-height:1.16}
a.card:hover h3{color:var(--emerald)}
.card p{font-size:13.8px;color:var(--body);line-height:1.6;margin-top:9px;flex:1}
.card .c-go{margin-top:15px;font-size:12.5px;font-weight:700;color:var(--emerald);display:inline-flex;align-items:center;gap:6px}

/* condition cards */
.cond{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink);
  display:flex;flex-direction:column;transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .25s}
.cond:hover{transform:translateY(-5px);box-shadow:0 30px 56px -34px rgba(10,34,32,.42);border-color:var(--gold)}
.cond-top{height:96px;position:relative;display:flex;align-items:center;justify-content:center;
  background:repeating-linear-gradient(135deg,rgba(255,255,255,.09) 0 9px,transparent 9px 18px),linear-gradient(150deg,#154945,#0B2926)}
.cond-top .ci{width:34px;height:34px;color:var(--gold-lt)}
.cond-body{padding:16px 18px 19px;display:flex;flex-direction:column;flex:1}
.cond-body b{font-family:var(--serif);font-weight:500;font-size:19.5px;letter-spacing:-.3px;line-height:1.14;color:var(--ink)}
.cond:hover .cond-body b{color:var(--emerald)}
.cond-body span{font-size:12.5px;color:var(--stone);line-height:1.5;margin-top:7px;flex:1}
.cond-body .cgo{font-size:11.5px;font-weight:700;color:var(--gold-deep);margin-top:13px}
.ct-a{background:repeating-linear-gradient(135deg,rgba(255,255,255,.09) 0 9px,transparent 9px 18px),linear-gradient(150deg,#185550,#0C2C2A)}
.ct-b{background:repeating-linear-gradient(135deg,rgba(255,255,255,.09) 0 9px,transparent 9px 18px),linear-gradient(150deg,#5E503D,#322B20)}
.ct-c{background:repeating-linear-gradient(135deg,rgba(255,255,255,.09) 0 9px,transparent 9px 18px),linear-gradient(150deg,#17524D,#0D2D2A)}
.ct-d{background:repeating-linear-gradient(135deg,rgba(255,255,255,.09) 0 9px,transparent 9px 18px),linear-gradient(150deg,#4A5B33,#26311B)}

/* ---------- therapy cards with photography ---------- */
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:980px){.tgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.tgrid{grid-template-columns:1fr}}
.tcard{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink);
  display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .25s}
.tcard:hover{transform:translateY(-5px);box-shadow:0 32px 60px -34px rgba(10,34,32,.45);border-color:var(--gold)}
.tcard-img{aspect-ratio:16/11;position:relative;overflow:hidden;background:linear-gradient(150deg,#154945,#0B2926)}
.tcard-img img{width:100%;height:100%;object-fit:cover;transition:transform .55s var(--ease)}
.tcard:hover .tcard-img img{transform:scale(1.045)}
.tcard-img .tflag{position:absolute;top:12px;left:12px;background:rgba(10,33,31,.82);backdrop-filter:blur(4px);color:var(--gold-lt);
  font-size:9.5px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;padding:5px 10px;border-radius:6px}
.tcard-body{padding:19px 20px 22px;display:flex;flex-direction:column;flex:1}
.tcard-body h3{font-size:21px;line-height:1.15}
.tcard:hover .tcard-body h3{color:var(--emerald)}
.tcard-body p{font-size:13.5px;color:var(--body);line-height:1.58;margin-top:9px;flex:1}
.tcard-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.tcard-meta span{font-family:var(--mono);font-size:10.5px;color:var(--forest);background:var(--cream);border:1px solid var(--line);
  padding:4px 9px;border-radius:999px;letter-spacing:-.2px}
/* icon-only therapy tiles */
.tcard-icon{aspect-ratio:auto;height:88px;display:flex;align-items:center;justify-content:center;
  background:repeating-linear-gradient(135deg,rgba(255,255,255,.08) 0 9px,transparent 9px 18px),linear-gradient(150deg,#154945,#0B2926)}
.tcard-icon svg{width:30px;height:30px;color:var(--gold-lt)}

/* ---------- numbered journey (real sequence) ---------- */
.journey{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:48px}
.jstep{padding:0 26px;border-left:1px solid var(--line);position:relative}
.jstep:first-child{padding-left:0;border-left:0}
.jstep .jn{font-family:var(--serif);font-style:italic;font-size:32px;color:var(--gold-deep);line-height:1}
.jstep .jwhen{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.3px;text-transform:uppercase;color:var(--stone);margin-top:9px}
.jstep h3{font-size:19px;margin:7px 0 8px;line-height:1.14}
.jstep p{font-size:13px;color:var(--body);line-height:1.56}
.jstep .jout{display:inline-block;margin-top:13px;font-size:11px;font-weight:700;color:var(--emerald);background:#E3EFE9;
  border:1px solid #BEDACD;border-radius:7px;padding:6px 10px;line-height:1.35}
.band-dark .jstep{border-left-color:rgba(237,234,227,.16)}
.band-dark .jstep .jn{color:var(--gold)}
.band-dark .jstep .jout{color:var(--gold-lt);background:rgba(162,142,115,.12);border-color:rgba(162,142,115,.3)}
@media(max-width:900px){.journey{grid-template-columns:1fr 1fr}.jstep{padding:20px 16px;border-left:0;border-top:1px solid var(--line)}
  .jstep:first-child,.jstep:nth-child(2){border-top:0}.band-dark .jstep{border-top-color:rgba(237,234,227,.16)}}
@media(max-width:560px){.journey{grid-template-columns:1fr}.jstep:nth-child(2){border-top:1px solid var(--line)}}

/* ---------- comparison table ---------- */
.cmp{margin-top:44px;background:var(--paper);border:1px solid var(--line);border-radius:20px;overflow:hidden;
  box-shadow:0 24px 56px -40px rgba(10,34,32,.4)}
.cmp table{width:100%;border-collapse:collapse}
.cmp th,.cmp td{padding:16px 18px;text-align:left;font-size:14px;border-bottom:1px solid var(--line);vertical-align:top}
.cmp thead th{background:var(--forest);color:var(--cream);font-weight:650;font-size:13px;letter-spacing:.3px;border-bottom:0}
.cmp thead th:first-child{background:var(--forest-deep)}
.cmp thead th.hl{background:linear-gradient(160deg,#185550,#0F3330);position:relative}
.cmp thead th.hl::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--gold)}
.cmp tbody th{font-weight:650;color:var(--ink);font-size:13.5px;background:var(--bone);width:26%}
.cmp td{color:var(--body)}
.cmp td.hl{background:rgba(162,142,115,.07);color:var(--ink);font-weight:600}
.cmp tr:last-child th,.cmp tr:last-child td{border-bottom:0}
.cmp .yes{color:var(--sig-opt);font-weight:800}
.cmp .no{color:var(--stone)}
@media(max-width:820px){.cmp{overflow-x:auto}.cmp table{min-width:680px}}

/* ---------- system score dashboard ---------- */
.dash{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:26px;
  box-shadow:0 1px 2px rgba(10,34,32,.04),0 30px 64px -44px rgba(10,34,32,.45)}
.dash-top{display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px;flex-wrap:wrap}
.chi{width:76px;height:76px;border-radius:50%;flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:conic-gradient(var(--gold) 0 72%,#EAE6DC 72% 100%);position:relative}
.chi::before{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--paper)}
.chi b{position:relative;font-family:var(--serif);font-size:25px;color:var(--forest);line-height:1;font-weight:600}
.chi span{position:relative;font-size:8.5px;font-weight:800;letter-spacing:1px;color:var(--stone);text-transform:uppercase;margin-top:1px}
.dash-top .dmeta{flex:1;min-width:180px}
.dash-top .dmeta b{display:block;font-family:var(--serif);font-size:17px;color:var(--ink);font-weight:600}
.dash-top .dmeta span{display:block;font-size:12.5px;color:var(--stone);line-height:1.55;margin-top:4px}
.bioage{text-align:right;flex:none}
.bioage b{display:block;font-family:var(--serif);font-size:32px;color:var(--emerald);line-height:1;font-weight:600}
.bioage span{display:block;font-size:11px;color:var(--stone);margin-top:4px;letter-spacing:.2px}
.sysbars{display:flex;flex-direction:column;gap:10px}
.sysbar{display:flex;align-items:center;gap:11px}
.sysbar .sn{font-size:12.5px;width:130px;color:var(--ink);font-weight:600;flex:none}
.systrack{flex:1;height:8px;border-radius:5px;background:#EAE6DC;overflow:hidden}
.systrack i{display:block;height:100%;border-radius:5px;background:var(--emerald);transition:width 1.1s var(--ease)}
.systrack i.w{background:var(--sig-watch)}
.systrack i.l{background:var(--sig-low)}
.sysbar .sv{font-family:var(--mono);font-size:12px;width:28px;text-align:right;color:var(--forest);flex:none}
.dash-note{margin-top:18px;background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:15px 17px;font-size:13px;color:var(--body);line-height:1.62}
.dash-note b{color:var(--emerald)}
@media(max-width:520px){.sysbar .sn{width:98px;font-size:11.5px}.bioage{text-align:left}}

/* ---------- split ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.split.wide-l{grid-template-columns:1.15fr .85fr}
.split.wide-r{grid-template-columns:.85fr 1.15fr}
@media(max-width:900px){.split,.split.wide-l,.split.wide-r{grid-template-columns:1fr;gap:34px}}
.split-img{border-radius:20px;overflow:hidden;position:relative;box-shadow:0 34px 70px -44px rgba(10,34,32,.55)}
.split-img img{width:100%;height:100%;object-fit:cover}
.split-img .cap{position:absolute;left:16px;bottom:16px;background:rgba(10,33,31,.8);backdrop-filter:blur(5px);color:var(--cream);
  font-size:11.5px;font-weight:600;padding:8px 13px;border-radius:8px;letter-spacing:.2px}

/* ---------- checklist ---------- */
.checks{list-style:none;display:flex;flex-direction:column;gap:11px;margin-top:22px}
.checks li{font-size:14.5px;color:var(--body);padding-left:29px;position:relative;line-height:1.55}
.checks li::before{content:"";position:absolute;left:0;top:2px;width:18px;height:18px;border-radius:50%;background:var(--gold)}
.checks li::after{content:"✓";position:absolute;left:4.5px;top:1px;color:var(--forest-deep);font-size:11px;font-weight:900}
.checks li b{color:var(--ink);font-weight:700}
.band-dark .checks li{color:rgba(237,234,227,.88)}
.band-dark .checks li b{color:#fff}

/* ---------- pricing plans ---------- */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:46px;align-items:stretch}
@media(max-width:940px){.plans{grid-template-columns:1fr;max-width:460px;margin-left:auto;margin-right:auto}}
.plan{position:relative;border-radius:20px;padding:30px 26px;display:flex;flex-direction:column;
  transition:transform .32s var(--ease),box-shadow .32s var(--ease),border-color .3s}
.plan--a{background:var(--paper);border:1px solid var(--line)}
.plan--b{background:#FEFDFC;border:1.5px solid var(--gold);box-shadow:0 34px 66px -42px rgba(10,34,32,.45)}
.plan--c{background:linear-gradient(162deg,#113E3A 0%,#0A211F 100%);color:var(--cream);border:1px solid rgba(162,142,115,.3)}
.plan:hover{transform:translateY(-6px)}
.plan--a:hover{border-color:var(--emerald);box-shadow:0 0 0 3px rgba(32,83,79,.2),0 36px 66px -38px rgba(10,34,32,.5)}
.plan--b:hover{border-color:var(--gold-deep);box-shadow:0 0 0 3px rgba(162,142,115,.34),0 40px 74px -38px rgba(121,99,68,.5)}
.plan--c:hover{box-shadow:0 0 0 3px rgba(162,142,115,.4),0 44px 82px -42px rgba(0,0,0,.6)}
.plan .badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--forest-deep);
  font-size:10.5px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;padding:8px 20px;border-radius:999px;white-space:nowrap;
  box-shadow:0 10px 22px -12px rgba(121,99,68,.9)}
.plan .stage{font-size:10.5px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--gold-deep)}
.plan--c .stage{color:var(--gold)}
.plan .pn{font-family:var(--serif);font-size:29px;font-weight:500;letter-spacing:-.6px;line-height:1;margin-top:10px;color:var(--ink)}
.plan--c .pn{color:#FCFBFA}
.plan .pdesc{font-size:13.5px;line-height:1.55;color:var(--body);margin-top:10px;min-height:52px}
.plan--c .pdesc{color:rgba(237,234,227,.8)}
.plan .price{font-family:var(--serif);font-size:40px;color:var(--forest);letter-spacing:-1.4px;margin-top:16px;line-height:1;font-weight:500}
.plan--c .price{color:var(--gold-lt)}
.plan .price small{font-family:var(--sans);font-size:14px;font-weight:600;color:var(--stone);letter-spacing:0}
.plan--c .price small{color:rgba(237,234,227,.6)}
.plan .plabel{font-size:11.5px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--stone);margin:22px 0 12px;
  padding-top:18px;border-top:1px solid var(--line)}
.plan--c .plabel{color:rgba(237,234,227,.55);border-top-color:rgba(237,234,227,.16)}
.plan ul{list-style:none;display:flex;flex-direction:column;gap:10px;flex:1}
.plan li{font-size:13.5px;line-height:1.5;color:var(--body);padding-left:24px;position:relative}
.plan li::before{content:"✓";position:absolute;left:0;top:0;color:var(--gold-deep);font-weight:900;font-size:12px}
.plan--c li{color:rgba(237,234,227,.86)}
.plan--c li::before{color:var(--gold)}
.plan .btn{margin-top:24px}
.plan .pfoot{font-size:11.5px;color:var(--stone);margin-top:12px;text-align:center;line-height:1.45}
.plan--c .pfoot{color:rgba(237,234,227,.5)}

/* ---------- panels (bloodwork pricing) ---------- */
.panel-note{margin-top:20px;font-size:13px;color:var(--stone);line-height:1.6}

/* ---------- quiz ---------- */
.quizbox{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:34px;
  box-shadow:0 1px 2px rgba(10,34,32,.04),0 34px 72px -46px rgba(10,34,32,.5);max-width:720px;margin:0 auto}
.qprog{display:flex;align-items:center;gap:14px;margin-bottom:24px}
.qprog-track{flex:1;height:6px;border-radius:4px;background:#EAE6DC;overflow:hidden}
.qprog-track i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-lt));border-radius:4px;transition:width .45s var(--ease)}
.qprog span{font-family:var(--mono);font-size:11.5px;color:var(--stone);flex:none}
.qstep h3{font-size:27px;line-height:1.16;letter-spacing:-.6px}
.qstep .qhint{font-size:13.5px;color:var(--stone);margin-top:9px;line-height:1.55}
.qopts{display:flex;flex-direction:column;gap:10px;margin-top:22px}
.qopt{display:flex;align-items:center;gap:13px;background:var(--bone);border:1.5px solid var(--line);border-radius:12px;
  padding:15px 17px;cursor:pointer;text-align:left;font:inherit;font-size:15px;color:var(--ink);transition:.2s var(--ease);width:100%}
.qopt:hover{border-color:var(--gold);background:#fff;transform:translateX(3px)}
.qopt.sel{border-color:var(--emerald);background:#EFF6F2}
.qopt .qbox{width:20px;height:20px;border-radius:6px;border:2px solid var(--line);flex:none;display:flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:900;color:#fff;transition:.2s}
.qopt.sel .qbox{background:var(--emerald);border-color:var(--emerald)}
.qnav{display:flex;gap:12px;margin-top:24px;align-items:center}
.qnav .qback{background:transparent;border:0;font:inherit;font-size:13.5px;font-weight:600;color:var(--stone);cursor:pointer}
.qnav .qback:hover{color:var(--ink)}
.qresult{display:none}
.qresult.show{display:block;animation:fadeUp .5s var(--ease)}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.qr-arch{text-align:center;padding-bottom:24px;border-bottom:1px solid var(--line)}
.qr-arch .qe{font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--gold-deep)}
.qr-arch h3{font-size:36px;margin-top:10px;letter-spacing:-1px}
.qr-arch p{font-size:15px;color:var(--body);margin-top:12px;max-width:520px;margin-left:auto;margin-right:auto}
.qr-block{margin-top:22px}
.qr-block .ql{font-size:11px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--stone);margin-bottom:11px}
.qr-markers{display:flex;flex-wrap:wrap;gap:8px}
.qr-markers span{font-family:var(--mono);font-size:12px;background:var(--cream);border:1px solid var(--line);color:var(--forest);
  padding:6px 11px;border-radius:999px}
.qr-panel{background:var(--cream);border:1px solid var(--line);border-left:3px solid var(--gold-deep);border-radius:12px;padding:18px 20px}
.qr-panel b{font-family:var(--serif);font-size:20px;color:var(--forest);display:block}
.qr-panel p{font-size:13.5px;color:var(--body);margin-top:7px;line-height:1.6}

/* ---------- lead capture band ---------- */
.lead-band{position:relative;overflow:hidden;padding:66px 0;color:var(--cream);
  background:linear-gradient(135deg,#0A211F 0%,#103A37 58%,#0C2C2A 100%)}
.lead-band::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 120% at 92% 0,rgba(162,142,115,.3),transparent 55%)}
.lead{display:grid;grid-template-columns:1.12fr .88fr;gap:48px;align-items:center;position:relative;z-index:1}
@media(max-width:880px){.lead{grid-template-columns:1fr;gap:30px}}
.lead .ueyebrow{font-size:11px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase;color:var(--gold)}
.lead h3{font-family:var(--serif);font-size:39px;font-weight:500;color:#fff;letter-spacing:-1px;line-height:1.05;margin-top:12px}
.lead h3 em{font-style:italic;color:var(--gold-lt)}
.lead .us{font-size:15.5px;color:rgba(237,234,227,.9);margin-top:14px;line-height:1.62;max-width:560px}
.lead ul{list-style:none;margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:11px 22px}
@media(max-width:880px){.lead ul{grid-template-columns:1fr}.lead h3{font-size:30px}}
.lead li{font-size:13.5px;color:#fff;padding-left:27px;position:relative;line-height:1.45}
.lead li::before{content:"";position:absolute;left:0;top:2px;width:17px;height:17px;border-radius:50%;background:var(--gold)}
.lead li::after{content:"✓";position:absolute;left:4px;top:1px;color:var(--forest-deep);font-size:10px;font-weight:900}
.uform{display:flex;flex-direction:column;gap:11px;background:rgba(255,255,255,.07);border:1px solid rgba(162,142,115,.36);
  border-radius:18px;padding:26px;backdrop-filter:blur(5px)}
.ulabel{font-size:12px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:#fff}
.uform input,.uform select{padding:15px 17px;background:#fff;border:0;border-radius:11px;font-family:var(--sans);font-size:15px;color:var(--ink);outline:none;width:100%}
.uform input::placeholder{color:#9b9384}
.unote{font-size:11.5px;color:rgba(237,234,227,.6);text-align:center;margin-top:2px;line-height:1.5}

/* ---------- forms ---------- */
.form-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:32px;
  box-shadow:0 1px 2px rgba(10,34,32,.04),0 30px 66px -44px rgba(10,34,32,.45)}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:600px){.frow{grid-template-columns:1fr}}
.field{display:flex;flex-direction:column;gap:7px;margin-bottom:15px}
.field label{font-size:12px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--stone)}
.field input,.field select,.field textarea{padding:14px 15px;border:1.5px solid var(--line);border-radius:11px;
  font-family:var(--sans);font-size:15px;color:var(--ink);background:var(--bone);outline:none;transition:.2s;width:100%}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--emerald);background:#fff}
.field textarea{min-height:104px;resize:vertical;line-height:1.6}
.chipset{display:flex;flex-wrap:wrap;gap:8px}
.chipset input{position:absolute;opacity:0;width:0;height:0}
.chipset label{font-size:13px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--body);background:var(--bone);
  border:1.5px solid var(--line);border-radius:999px;padding:9px 15px;cursor:pointer;transition:.18s var(--ease)}
.chipset label:hover{border-color:var(--gold)}
.chipset input:checked+label{background:var(--forest);color:var(--cream);border-color:var(--forest)}
.chipset input:focus-visible+label{outline:2.5px solid var(--gold-deep);outline-offset:3px}
.form-ok{display:none;background:#EFF6F2;border:1px solid #BEDACD;border-radius:12px;padding:18px 20px;font-size:14.5px;color:var(--forest);line-height:1.6}
.form-ok.show{display:block;animation:fadeUp .4s var(--ease)}
.form-ok b{display:block;font-family:var(--serif);font-size:19px;margin-bottom:5px}

/* ---------- accordion / FAQ ---------- */
.faq{border-top:1px solid var(--line);margin-top:40px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:22px 44px 22px 0;position:relative;
  font-family:var(--serif);font-size:22px;line-height:1.28;color:var(--ink);transition:color .2s}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--emerald)}
.faq summary::after{content:"";position:absolute;right:6px;top:29px;width:11px;height:11px;
  border-right:2px solid var(--gold-deep);border-bottom:2px solid var(--gold-deep);transform:rotate(45deg);transition:transform .25s var(--ease)}
.faq details[open] summary::after{transform:rotate(-135deg);top:33px}
.faq .fa{padding:0 40px 24px 0;font-size:15px;color:var(--body);line-height:1.75}
.faq .fa p+p{margin-top:12px}
.faq .fmeta{display:inline-block;margin-top:12px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--gold-deep)}
.band-dark .faq{border-top-color:rgba(237,234,227,.16)}
.band-dark .faq details{border-bottom-color:rgba(237,234,227,.16)}
.band-dark .faq summary{color:#FCFBFA}
.band-dark .faq summary:hover{color:var(--gold-lt)}
.band-dark .faq .fa{color:rgba(237,234,227,.8)}
@media(max-width:600px){.faq summary{font-size:18px;padding-right:34px}}

/* ---------- testimonials ---------- */
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}
@media(max-width:900px){.quotes{grid-template-columns:1fr}}
.quote{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:26px;display:flex;flex-direction:column}
.quote .qm{font-family:var(--serif);font-size:16.5px;line-height:1.62;color:var(--ink);font-style:italic;flex:1}
.quote .qwho{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);display:flex;align-items:center;gap:12px}
.quote .qav{width:38px;height:38px;border-radius:50%;background:linear-gradient(150deg,#154945,#0B2926);color:var(--gold-lt);
  display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex:none;font-family:var(--sans)}
.quote .qn{font-size:13.5px;font-weight:700;color:var(--ink);line-height:1.3}
.quote .qc{font-size:11.5px;color:var(--stone);margin-top:2px}
.quote .qres{margin-top:14px;font-family:var(--mono);font-size:11.5px;color:var(--emerald);background:#EFF6F2;border:1px solid #BEDACD;
  border-radius:7px;padding:6px 10px;display:inline-block;align-self:flex-start}
.band-dark .quote{background:rgba(237,234,227,.055);border-color:rgba(237,234,227,.15)}
.band-dark .quote .qm{color:rgba(237,234,227,.92)}
.band-dark .quote .qwho{border-top-color:rgba(237,234,227,.15)}
.band-dark .quote .qn{color:#fff}
.band-dark .quote .qres{color:var(--gold-lt);background:rgba(162,142,115,.12);border-color:rgba(162,142,115,.3)}

/* ---------- marker table (SEO/GEO asset) ---------- */
.mtable{margin-top:32px;background:var(--paper);border:1px solid var(--line);border-radius:18px;overflow:hidden;
  box-shadow:0 24px 56px -44px rgba(10,34,32,.4)}
.mtable table{width:100%;border-collapse:collapse}
.mtable th,.mtable td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line);font-size:13.5px}
.mtable thead th{background:var(--forest);color:var(--cream);font-weight:650;font-size:12px;letter-spacing:.5px;text-transform:uppercase;border-bottom:0}
.mtable tbody td:first-child{font-weight:650;color:var(--ink)}
.mtable td.num{font-family:var(--mono);font-size:12.5px;color:var(--body);letter-spacing:-.2px;white-space:nowrap}
.mtable td.opt{font-family:var(--mono);font-size:12.5px;color:var(--gold-deep);font-weight:600;white-space:nowrap}
.mtable tbody tr:hover{background:var(--bone)}
.mtable tr:last-child td{border-bottom:0}
.mtable .why{color:var(--stone);font-size:12.5px;line-height:1.5}
@media(max-width:860px){.mtable{overflow-x:auto}.mtable table{min-width:720px}}
.msearch{display:flex;gap:10px;margin-top:26px;flex-wrap:wrap}
.msearch input{flex:1;min-width:220px;padding:15px 18px;border:1.5px solid var(--line);border-radius:12px;font-family:var(--sans);
  font-size:15px;background:var(--paper);outline:none;transition:.2s}
.msearch input:focus{border-color:var(--emerald)}
.mfilters{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}
.mfilter{font:inherit;font-size:12.5px;font-weight:600;color:var(--body);background:var(--paper);border:1px solid var(--line);
  border-radius:999px;padding:8px 14px;cursor:pointer;transition:.18s var(--ease)}
.mfilter:hover{border-color:var(--gold)}
.mfilter.is-on{background:var(--forest);color:var(--cream);border-color:var(--forest)}
.mcount{font-family:var(--mono);font-size:12px;color:var(--stone);margin-top:14px}

/* ---------- stat strip ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:44px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stat{padding:26px 24px;border-left:1px solid var(--line)}
.stat:first-child{border-left:0;padding-left:0}
.stat b{display:block;font-family:var(--serif);font-size:39px;color:var(--forest);letter-spacing:-1.2px;line-height:1;font-weight:500}
.stat span{display:block;font-size:12.5px;color:var(--stone);margin-top:9px;line-height:1.5}
.band-dark .stats{border-color:rgba(237,234,227,.16)}
.band-dark .stat{border-left-color:rgba(237,234,227,.16)}
.band-dark .stat b{color:var(--gold-lt)}
.band-dark .stat span{color:rgba(237,234,227,.7)}
@media(max-width:760px){.stats{grid-template-columns:1fr 1fr}.stat{padding:20px 16px;border-left:0}
  .stat:nth-child(3),.stat:nth-child(4){border-top:1px solid var(--line)}.stat:first-child,.stat:nth-child(2){padding-left:16px}
  .band-dark .stat:nth-child(3),.band-dark .stat:nth-child(4){border-top-color:rgba(237,234,227,.16)}}

/* ---------- breadcrumb ---------- */
.crumb{font-size:12.5px;color:var(--stone);padding-top:22px}
.crumb a{text-decoration:none;color:var(--stone)}
.crumb a:hover{color:var(--emerald)}
.crumb .sep{margin:0 7px;opacity:.5}

/* ---------- page hero (interior) ---------- */
.phero{position:relative;overflow:hidden;padding-bottom:56px}
.phero .kicker{color:var(--gold-deep)}
.phero h1{font-size:54px;letter-spacing:-1.8px;margin-top:16px;max-width:840px;line-height:1.02}
.phero .lede{margin-top:20px;font-size:19px;max-width:700px}
.band-dark.phero .kicker{color:var(--gold)}
@media(max-width:760px){.phero h1{font-size:36px;letter-spacing:-1px}}

/* ---------- anchor nav ---------- */
.anchornav{position:sticky;top:74px;z-index:90;background:rgba(251,250,247,.95);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.anchornav::-webkit-scrollbar{display:none}
.anchornav .wrap{display:flex;gap:4px;padding-top:0;padding-bottom:0;white-space:nowrap}
.anchornav a{font-size:13px;font-weight:600;color:var(--body);text-decoration:none;padding:15px 14px;border-bottom:2px solid transparent;transition:.2s}
.anchornav a:hover{color:var(--emerald);border-bottom-color:var(--gold)}

/* ---------- detail section (therapy/condition deep) ---------- */
.detail{padding:52px 0;border-top:1px solid var(--line)}
.detail:first-of-type{border-top:0}
.detail-head{display:flex;align-items:flex-start;gap:18px;margin-bottom:20px}
.detail-ic{width:52px;height:52px;border-radius:14px;flex:none;background:linear-gradient(150deg,#154945,#0B2926);
  display:flex;align-items:center;justify-content:center}
.detail-ic svg{width:24px;height:24px;color:var(--gold-lt)}
.detail-head h2{font-size:34px;letter-spacing:-.9px;line-height:1.08}
.detail-head .dh-sub{font-size:13px;color:var(--stone);margin-top:6px;font-family:var(--mono);letter-spacing:-.2px}
.detail-body{display:grid;grid-template-columns:1.35fr .65fr;gap:38px;align-items:start}
@media(max-width:860px){.detail-body{grid-template-columns:1fr;gap:24px}.detail-head h2{font-size:26px}}
.detail-body p{font-size:15.5px;line-height:1.75;color:var(--body)}
.detail-body p+p{margin-top:14px}
.detail-body h4{font-size:14px;font-family:var(--sans);font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--gold-deep);margin-top:22px;margin-bottom:10px}
.detail-side{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:22px;position:sticky;top:150px}
.detail-side .dsl{font-size:10.5px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--stone);margin-bottom:12px}
.detail-side ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.detail-side li{font-size:13px;color:var(--body);line-height:1.5;padding-left:19px;position:relative}
.detail-side li::before{content:"—";position:absolute;left:0;color:var(--gold)}
.detail-side .dsrow{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}
.detail-side .dsrow:last-child{border-bottom:0}
.detail-side .dsrow span{color:var(--stone)}
.detail-side .dsrow b{font-family:var(--mono);font-size:12.5px;color:var(--forest);text-align:right}
@media(max-width:860px){.detail-side{position:static}}

/* ---------- pull quote ---------- */
.pull{border-left:3px solid var(--gold);padding:6px 0 6px 26px;margin:30px 0;max-width:660px}
.pull p{font-family:var(--serif);font-size:23px;line-height:1.45;color:var(--ink);font-style:italic}
.pull cite{display:block;margin-top:12px;font-family:var(--sans);font-style:normal;font-size:12.5px;font-weight:700;
  letter-spacing:.5px;text-transform:uppercase;color:var(--gold-deep)}
.band-dark .pull p{color:#FCFBFA}
.band-dark .pull cite{color:var(--gold)}

/* ---------- location ---------- */
.loc{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--paper)}
@media(max-width:820px){.loc{grid-template-columns:1fr}}
.loc-info{padding:36px}
.loc-info h3{font-size:27px;letter-spacing:-.6px}
.loc-row{display:flex;gap:13px;margin-top:20px;align-items:flex-start}
.loc-row svg{width:17px;height:17px;color:var(--gold-deep);flex:none;margin-top:3px}
.loc-row b{display:block;font-size:14.5px;color:var(--ink);font-weight:650;line-height:1.4}
.loc-row span{display:block;font-size:13.5px;color:var(--body);line-height:1.6;margin-top:3px}
.loc-row a{color:var(--emerald);text-decoration:none;font-weight:650}
.loc-row a:hover{text-decoration:underline}
.loc-map{background:linear-gradient(150deg,#154945,#0B2926);min-height:300px;position:relative;display:flex;align-items:center;justify-content:center;padding:30px}
.loc-map .mgrid{position:absolute;inset:0;opacity:.16;
  background-image:linear-gradient(rgba(237,234,227,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(237,234,227,.5) 1px,transparent 1px);
  background-size:44px 44px}
.loc-map .mpin{position:relative;text-align:center;color:var(--cream)}
.loc-map .mpin svg{width:36px;height:36px;color:var(--gold);margin:0 auto 12px}
.loc-map .mpin b{display:block;font-family:var(--serif);font-size:21px;color:#fff}
.loc-map .mpin span{display:block;font-size:12.5px;color:rgba(237,234,227,.75);margin-top:6px;line-height:1.6}

/* ---------- sticky mobile CTA ---------- */
.sticky-cta{display:none;position:fixed;left:0;right:0;bottom:0;z-index:150;background:rgba(251,250,247,.97);
  backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:10px 14px calc(10px + env(safe-area-inset-bottom));
  gap:9px;box-shadow:0 -8px 26px -18px rgba(10,34,32,.5)}
.sticky-cta .btn{flex:1;padding:14px 12px;font-size:14px}
@media(max-width:760px){.sticky-cta{display:flex}body{padding-bottom:70px}}

/* ---------- footer ---------- */
.site-foot{background:var(--forest-deep);color:rgba(237,234,227,.72);padding:64px 0 30px;font-size:13.5px;line-height:1.7}
.foot-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:38px;padding-bottom:38px;border-bottom:1px solid rgba(237,234,227,.13)}
@media(max-width:900px){.foot-top{grid-template-columns:1fr 1fr;gap:30px}}
@media(max-width:560px){.foot-top{grid-template-columns:1fr}}
.foot-brand svg{width:44px;height:44px;color:var(--gold)}
.foot-brand .fw{font-family:var(--serif);font-size:21px;color:#fff;letter-spacing:1.2px;text-transform:uppercase;margin-top:14px}
.foot-brand .fw2{font-size:9.5px;font-weight:700;letter-spacing:2.6px;text-transform:uppercase;color:var(--gold);margin-top:4px}
.foot-brand p{margin-top:16px;max-width:320px;font-size:13.5px}
.foot-col h4{font-family:var(--sans);font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:#fff;margin-bottom:15px}
.foot-col a{display:block;text-decoration:none;color:rgba(237,234,227,.72);padding:5px 0;transition:color .18s}
.foot-col a:hover{color:var(--gold-lt)}
.foot-bot{padding-top:26px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:12.5px;color:rgba(237,234,227,.5)}
.foot-bot a{color:rgba(237,234,227,.5);text-decoration:none}
.foot-bot a:hover{color:var(--gold-lt)}
.foot-nap{margin-top:16px;font-size:13px}
.foot-nap b{color:#fff;display:block;font-size:13.5px}
.foot-nap a{color:var(--gold-lt);text-decoration:none}

/* ---------- utility ---------- */
.center{text-align:center}
.mt-0{margin-top:0}.mt-1{margin-top:14px}.mt-2{margin-top:26px}.mt-3{margin-top:40px}.mt-4{margin-top:56px}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.in{opacity:1;transform:none}
.badge-pill{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;
  background:rgba(162,142,115,.14);border:1px solid rgba(162,142,115,.4);color:var(--gold-deep);padding:6px 13px;border-radius:999px}
.band-dark .badge-pill{color:var(--gold-lt);background:rgba(162,142,115,.14);border-color:rgba(162,142,115,.36)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
  .reveal{opacity:1;transform:none}
}
@media print{.site-head,.sticky-cta,.announce,.progress{display:none}}

/* ==========================================================================
   v2 — PORTRAIT, LOGO + CONVERSION COMPONENTS
   ========================================================================== */

/* --- real logo assets --- */
.logo img.mark{height:38px;width:auto;flex:none}
.foot-brand img.flogo{width:150px;height:auto;margin-bottom:4px}

/* --- hero portrait --- */
.hero .inner.with-portrait{grid-template-columns:1.12fr .88fr;gap:56px}
@media(max-width:960px){.hero .inner.with-portrait{grid-template-columns:1fr}}
.portrait{position:relative;border-radius:22px;overflow:hidden;
  background:linear-gradient(168deg,#154945 0%,#0B2926 100%);
  box-shadow:0 40px 80px -46px rgba(10,34,32,.62);isolation:isolate}
.portrait::after{content:"";position:absolute;inset:0;pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(162,142,115,.45);border-radius:22px}
.portrait img{width:100%;height:auto;display:block;
  mix-blend-mode:multiply;filter:contrast(1.03) saturate(1.02)}
.portrait .pplate{position:absolute;left:0;right:0;bottom:0;padding:34px 26px 22px;
  background:linear-gradient(180deg,rgba(10,33,31,0),rgba(10,33,31,.9) 55%,rgba(10,33,31,.97));
  color:var(--cream)}
.portrait .pplate b{display:block;font-family:var(--serif);font-size:22px;font-weight:500;color:#fff;letter-spacing:-.3px}
.portrait .pplate span{display:block;font-size:11.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);margin-top:6px}
.portrait .pbadge{position:absolute;top:16px;left:16px;background:rgba(10,33,31,.78);backdrop-filter:blur(6px);
  border:1px solid rgba(162,142,115,.42);color:var(--gold-lt);font-size:10px;font-weight:800;letter-spacing:1.3px;
  text-transform:uppercase;padding:7px 12px;border-radius:999px}
@media(max-width:960px){.portrait{max-width:420px;margin:0 auto}}

/* --- byline chip (round headshot inline) --- */
.byline{display:flex;align-items:center;gap:13px;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.byline img{width:52px;height:52px;border-radius:50%;object-fit:cover;flex:none;border:2px solid var(--gold)}
.byline b{display:block;font-size:14.5px;font-weight:700;color:var(--ink);line-height:1.3}
.byline span{display:block;font-size:12.5px;color:var(--stone);margin-top:2px}
.band-dark .byline{border-top-color:rgba(237,234,227,.18)}
.band-dark .byline b{color:#fff}
.band-dark .byline span{color:rgba(237,234,227,.65)}

/* --- three ways to start --- */
.ways{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
@media(max-width:880px){.ways{grid-template-columns:1fr}}
.way{background:var(--paper);border:1.5px solid var(--line);border-radius:18px;padding:28px 26px;text-decoration:none;
  color:var(--ink);display:flex;flex-direction:column;position:relative;overflow:hidden;
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .25s}
.way:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:0 34px 62px -36px rgba(10,34,32,.45)}
.way--primary{background:linear-gradient(162deg,#113E3A,#0A211F);border-color:rgba(162,142,115,.4);color:var(--cream)}
.way--primary:hover{border-color:var(--gold);box-shadow:0 0 0 3px rgba(162,142,115,.35),0 40px 74px -38px rgba(0,0,0,.6)}
.way .wnum{width:40px;height:40px;border-radius:11px;background:var(--cream);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;color:var(--gold-deep);margin-bottom:16px}
.way .wnum svg{width:19px;height:19px}
.way--primary .wnum{background:rgba(162,142,115,.16);border-color:rgba(162,142,115,.4);color:var(--gold-lt)}
.way h3{font-size:23px;line-height:1.14}
.way--primary h3{color:#FCFBFA}
.way .wsub{font-size:11px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--gold-deep);margin-top:9px}
.way--primary .wsub{color:var(--gold)}
.way p{font-size:13.8px;color:var(--body);line-height:1.6;margin-top:11px;flex:1}
.way--primary p{color:rgba(237,234,227,.82)}
.way .wgo{margin-top:18px;display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:700;color:var(--emerald)}
.way--primary .wgo{color:var(--gold-lt)}
.way .wgo svg{width:14px;height:14px;transition:transform .25s var(--ease)}
.way:hover .wgo svg{transform:translateX(4px)}
.way .wtag{position:absolute;top:16px;right:16px;font-size:9.5px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;
  background:var(--gold);color:var(--forest-deep);padding:5px 10px;border-radius:999px}

/* --- availability strip --- */
.avail{display:inline-flex;align-items:center;gap:10px;background:rgba(32,83,79,.09);border:1px solid rgba(32,83,79,.28);
  border-radius:999px;padding:9px 16px;font-size:12.5px;font-weight:600;color:var(--forest)}
.avail i{width:8px;height:8px;border-radius:50%;background:var(--emerald);flex:none;animation:pulse 2.4s infinite}
.band-dark .avail{background:rgba(162,142,115,.13);border-color:rgba(162,142,115,.35);color:var(--gold-lt)}
.band-dark .avail i{background:var(--gold-lt)}

/* --- instrument as a full-width band --- */
.instr-band{display:grid;grid-template-columns:.82fr 1.18fr;gap:48px;align-items:center;margin-top:40px}
@media(max-width:940px){.instr-band{grid-template-columns:1fr;gap:30px}}

/* --- desktop sticky CTA bar --- */
.deskbar{position:fixed;left:0;right:0;bottom:0;z-index:140;background:rgba(10,33,31,.97);backdrop-filter:blur(10px);
  border-top:1px solid rgba(162,142,115,.3);transform:translateY(110%);transition:transform .45s var(--ease);
  box-shadow:0 -12px 40px -20px rgba(0,0,0,.6)}
.deskbar.show{transform:translateY(0)}
.deskbar .wrap{display:flex;align-items:center;gap:22px;padding-top:13px;padding-bottom:13px}
.deskbar .dtext{flex:1;min-width:0}
.deskbar .dtext b{display:block;font-family:var(--serif);font-size:18px;color:#fff;font-weight:500;letter-spacing:-.2px}
.deskbar .dtext span{display:block;font-size:12.5px;color:rgba(237,234,227,.7);margin-top:3px}
.deskbar .dacts{display:flex;gap:10px;flex:none}
.deskbar .dclose{background:transparent;border:0;color:rgba(237,234,227,.5);cursor:pointer;font-size:20px;line-height:1;padding:8px;flex:none}
.deskbar .dclose:hover{color:#fff}
@media(max-width:760px){.deskbar{display:none}}

/* --- funnel slide-in --- */
.slidein{position:fixed;right:22px;bottom:22px;z-index:145;width:360px;max-width:calc(100vw - 44px);
  background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:24px;
  box-shadow:0 40px 80px -30px rgba(10,34,32,.55);transform:translateY(24px) scale(.97);opacity:0;visibility:hidden;
  transition:.42s var(--ease)}
.slidein.show{transform:none;opacity:1;visibility:visible}
.slidein .sclose{position:absolute;top:10px;right:12px;background:transparent;border:0;color:var(--stone);cursor:pointer;
  font-size:20px;line-height:1;padding:6px}
.slidein .sclose:hover{color:var(--ink)}
.slidein .seyebrow{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold-deep)}
.slidein h4{font-family:var(--serif);font-size:22px;font-weight:500;line-height:1.18;margin-top:9px;letter-spacing:-.4px}
.slidein p{font-size:13px;color:var(--body);line-height:1.55;margin-top:9px}
.slidein input{width:100%;padding:13px 15px;border:1.5px solid var(--line);border-radius:10px;font-family:var(--sans);
  font-size:14.5px;background:var(--bone);outline:none;margin-top:14px}
.slidein input:focus{border-color:var(--emerald);background:#fff}
.slidein .btn{margin-top:10px;width:100%;padding:14px}
.slidein .sfoot{font-size:11px;color:var(--stone);text-align:center;margin-top:10px}
@media(max-width:760px){.slidein{display:none}}

/* --- inline mid-page CTA --- */
.midcta{background:linear-gradient(150deg,#113E3A,#0A211F);border-radius:20px;padding:38px 40px;
  display:flex;align-items:center;gap:32px;flex-wrap:wrap;color:var(--cream);
  box-shadow:0 34px 70px -44px rgba(10,34,32,.6);position:relative;overflow:hidden}
.midcta::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 130% at 92% 0,rgba(162,142,115,.28),transparent 58%)}
.midcta>*{position:relative;z-index:1}
.midcta .mtx{flex:1;min-width:260px}
.midcta h3{font-family:var(--serif);font-size:29px;font-weight:500;color:#fff;letter-spacing:-.7px;line-height:1.12}
.midcta h3 em{font-style:italic;color:var(--gold-lt)}
.midcta p{font-size:14.5px;color:rgba(237,234,227,.82);margin-top:10px;line-height:1.6}
.midcta .macts{display:flex;gap:11px;flex-wrap:wrap;flex:none}
@media(max-width:700px){.midcta{padding:28px 24px}.midcta h3{font-size:24px}.midcta .macts{width:100%}.midcta .macts .btn{flex:1}}

/* ==========================================================================
   v3 — CLINIC-FIRST HERO, JOURNEY, VIDEO, AI ASSISTANT, STAFF
   ========================================================================== */

/* --- hero consult form --- */
.consult{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:28px;
  box-shadow:0 1px 2px rgba(10,34,32,.04),0 38px 74px -44px rgba(10,34,32,.5);position:relative}
.consult .ctop{border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:18px}
.consult .cfree{display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:800;letter-spacing:1.5px;
  text-transform:uppercase;background:rgba(162,142,115,.16);border:1px solid rgba(162,142,115,.45);color:var(--gold-deep);
  padding:5px 11px;border-radius:999px}
.consult h3{font-size:24px;margin-top:12px;letter-spacing:-.5px;line-height:1.15}
.consult .csub{font-size:13.5px;color:var(--stone);margin-top:8px;line-height:1.55}
.consult .field{margin-bottom:12px}
.consult .field label{font-size:11px}
.consult .field input,.consult .field select{padding:13px 14px;font-size:14.5px}
.consult .cfoot{font-size:11.5px;color:var(--stone);text-align:center;margin-top:11px;line-height:1.5}
.consult .ctrust{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--line);
  font-size:11.5px;color:var(--stone)}
.consult .ctrust span{display:inline-flex;align-items:center;gap:6px}
.consult .ctrust span::before{content:"✓";color:var(--gold-deep);font-weight:900}

/* --- clinic showcase strip --- */
.showcase{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
@media(max-width:1000px){.showcase{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.showcase{grid-template-columns:repeat(2,1fr)}}
.shot{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:4/5;
  background:linear-gradient(150deg,#154945,#0B2926);display:block;text-decoration:none}
.shot img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.shot:hover img{transform:scale(1.06)}
.shot span{position:absolute;left:0;right:0;bottom:0;padding:26px 14px 13px;color:#fff;font-size:12.5px;font-weight:650;
  line-height:1.3;background:linear-gradient(180deg,rgba(10,33,31,0),rgba(10,33,31,.88))}

/* --- from chronic to longevity journey --- */
.arc{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:44px}
@media(max-width:1000px){.arc{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.arc{grid-template-columns:1fr}}
.arcstep{background:rgba(237,234,227,.05);border:1px solid rgba(237,234,227,.16);border-radius:16px;padding:24px 20px;
  display:flex;flex-direction:column;position:relative;transition:transform .3s var(--ease),border-color .25s}
.arcstep:hover{transform:translateY(-5px);border-color:rgba(162,142,115,.5)}
.arcstep.is-end{background:linear-gradient(165deg,rgba(162,142,115,.18),rgba(162,142,115,.05));border-color:rgba(162,142,115,.45)}
.arcstep .an{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--gold);color:var(--gold);
  display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:16px;margin-bottom:15px;flex:none}
.arcstep h3{font-size:19px;line-height:1.16;color:#FCFBFA}
.arcstep .ad{font-size:12.5px;color:rgba(237,234,227,.72);line-height:1.5;margin-top:9px}
.arcstep ul{list-style:none;margin-top:14px;display:flex;flex-direction:column;gap:7px}
.arcstep li{font-size:12.5px;color:rgba(237,234,227,.88);padding-left:16px;position:relative;line-height:1.42}
.arcstep li::before{content:"";position:absolute;left:0;top:7px;width:5px;height:5px;border-radius:50%;background:var(--gold)}
.arcstep .aq{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--gold-lt);line-height:1.5;margin-top:14px}
.pillars{display:flex;gap:32px;flex-wrap:wrap;justify-content:center;margin-top:40px;padding-top:32px;border-top:1px solid rgba(237,234,227,.16)}
.pillar{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:800;letter-spacing:1.4px;
  text-transform:uppercase;color:var(--gold-lt)}
.pillar svg{width:18px;height:18px;color:var(--gold);flex:none}

/* --- intent cards --- */
.intents{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}
@media(max-width:900px){.intents{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.intents{grid-template-columns:1fr}}
.intent{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:22px;text-decoration:none;color:var(--ink);
  display:flex;flex-direction:column;transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .25s}
.intent:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 26px 50px -32px rgba(10,34,32,.4)}
.intent .ilabel{font-size:10px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--gold-deep)}
.intent h3{font-family:var(--serif);font-size:19.5px;font-weight:400;line-height:1.24;margin-top:9px;letter-spacing:-.3px}
.intent:hover h3{color:var(--emerald)}
.intent p{font-size:12.8px;color:var(--body);line-height:1.55;margin-top:9px;flex:1}
.intent .igo{margin-top:13px;font-size:12px;font-weight:700;color:var(--emerald)}

/* --- featured anchor offer --- */
.feature{display:grid;grid-template-columns:1.05fr .95fr;gap:0;border-radius:22px;overflow:hidden;
  border:1px solid var(--line);background:var(--paper);box-shadow:0 36px 74px -46px rgba(10,34,32,.5)}
@media(max-width:900px){.feature{grid-template-columns:1fr}}
.feature-l{padding:40px;display:flex;flex-direction:column;justify-content:center}
.feature-l .fbadge{display:inline-flex;align-self:flex-start;font-size:10px;font-weight:800;letter-spacing:1.5px;
  text-transform:uppercase;background:var(--forest);color:var(--gold-lt);padding:6px 13px;border-radius:999px}
.feature-l h2{font-size:38px;letter-spacing:-1.1px;margin-top:16px;line-height:1.06}
.feature-l p{font-size:15.5px;color:var(--body);line-height:1.7;margin-top:14px}
.feature-r{background:linear-gradient(165deg,#113E3A,#0A211F);padding:40px;color:var(--cream);display:flex;flex-direction:column;justify-content:center}
.feature-r .fnum{display:flex;gap:26px;flex-wrap:wrap;padding-bottom:22px;border-bottom:1px solid rgba(237,234,227,.18)}
.feature-r .fnum div b{display:block;font-family:var(--serif);font-size:34px;color:var(--gold-lt);line-height:1;font-weight:500}
.feature-r .fnum div span{display:block;font-size:11.5px;color:rgba(237,234,227,.7);margin-top:6px}
.feature-r ul{list-style:none;margin-top:20px;display:flex;flex-direction:column;gap:9px}
.feature-r li{font-size:13.5px;color:rgba(237,234,227,.88);padding-left:22px;position:relative;line-height:1.5}
.feature-r li::before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:900;font-size:12px}
.feature-r .btn{margin-top:24px}

/* --- video --- */
.video-wrap{position:relative;border-radius:20px;overflow:hidden;background:linear-gradient(160deg,#113E3A,#0A211F);
  aspect-ratio:16/10;box-shadow:0 40px 80px -46px rgba(10,34,32,.6);cursor:pointer;display:block;border:0;padding:0;width:100%}
.video-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 18%;opacity:.55;mix-blend-mode:luminosity}
.video-wrap::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,33,31,.25),rgba(10,33,31,.8))}
.vplay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:82px;height:82px;border-radius:50%;
  background:rgba(162,142,115,.95);display:flex;align-items:center;justify-content:center;
  box-shadow:0 0 0 0 rgba(162,142,115,.5);animation:ring 2.6s infinite}
@keyframes ring{0%{box-shadow:0 0 0 0 rgba(162,142,115,.5)}70%{box-shadow:0 0 0 26px rgba(162,142,115,0)}100%{box-shadow:0 0 0 0 rgba(162,142,115,0)}}
.vplay svg{width:28px;height:28px;color:var(--forest-deep);margin-left:4px}
.video-wrap .vcap{position:absolute;left:0;right:0;bottom:0;padding:30px 28px 24px;z-index:2;text-align:left}
.video-wrap .vcap b{display:block;font-family:var(--serif);font-size:22px;color:#fff;font-weight:500;letter-spacing:-.3px}
.video-wrap .vcap span{display:block;font-size:12.5px;color:rgba(237,234,227,.75);margin-top:6px}
.video-wrap .vtime{position:absolute;top:16px;right:16px;z-index:2;background:rgba(10,33,31,.75);backdrop-filter:blur(4px);
  color:var(--gold-lt);font-family:var(--mono);font-size:11.5px;padding:5px 11px;border-radius:6px}

/* --- AI assistant --- */
.ai{background:var(--paper);border:1px solid var(--line);border-radius:22px;overflow:hidden;
  box-shadow:0 1px 2px rgba(10,34,32,.04),0 36px 72px -46px rgba(10,34,32,.5);display:flex;flex-direction:column;height:560px}
.ai-top{display:flex;align-items:center;gap:13px;padding:18px 22px;border-bottom:1px solid var(--line);background:var(--bone);flex:none}
.ai-av{width:40px;height:40px;border-radius:11px;background:linear-gradient(150deg,#154945,#0B2926);color:var(--gold-lt);
  display:flex;align-items:center;justify-content:center;flex:none}
.ai-av svg{width:20px;height:20px}
.ai-top b{display:block;font-family:var(--serif);font-size:17px;font-weight:600;letter-spacing:-.2px}
.ai-top span{display:block;font-size:11.5px;color:var(--stone);margin-top:2px}
.ai-log{flex:1;overflow-y:auto;padding:22px;display:flex;flex-direction:column;gap:14px;scroll-behavior:smooth}
.msg{max-width:88%;font-size:14px;line-height:1.65;border-radius:14px;padding:13px 16px;animation:fadeUp .35s var(--ease)}
.msg.bot{background:var(--cream);border:1px solid var(--line);color:var(--body);align-self:flex-start;border-bottom-left-radius:5px}
.msg.you{background:var(--forest);color:var(--cream);align-self:flex-end;border-bottom-right-radius:5px}
.msg b{color:var(--ink);font-weight:700}
.msg.bot a{color:var(--emerald);font-weight:650}
.msg .mcta{display:inline-flex;align-items:center;gap:6px;margin-top:11px;font-size:12.5px;font-weight:700;
  background:var(--gold);color:var(--forest-deep);padding:8px 14px;border-radius:8px;text-decoration:none}
.msg .mcta:hover{background:#BFA581}
.typing{display:flex;gap:5px;align-self:flex-start;background:var(--cream);border:1px solid var(--line);
  padding:15px 18px;border-radius:14px;border-bottom-left-radius:5px}
.typing i{width:7px;height:7px;border-radius:50%;background:var(--stone);animation:blink 1.3s infinite}
.typing i:nth-child(2){animation-delay:.18s}.typing i:nth-child(3){animation-delay:.36s}
@keyframes blink{0%,60%,100%{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}
.ai-chips{display:flex;gap:7px;flex-wrap:wrap;padding:0 22px 14px}
.ai-chip{font:inherit;font-size:12.5px;font-weight:600;color:var(--body);background:var(--bone);border:1px solid var(--line);
  border-radius:999px;padding:8px 13px;cursor:pointer;transition:.18s var(--ease)}
.ai-chip:hover{border-color:var(--gold);background:#fff;color:var(--emerald)}
.ai-form{display:flex;gap:9px;padding:16px 22px;border-top:1px solid var(--line);background:var(--bone);flex:none}
.ai-form input{flex:1;padding:13px 15px;border:1.5px solid var(--line);border-radius:11px;font-family:var(--sans);
  font-size:14.5px;background:#fff;outline:none;min-width:0}
.ai-form input:focus{border-color:var(--emerald)}
.ai-form button{flex:none;width:46px;border:0;border-radius:11px;background:var(--forest);color:#fff;cursor:pointer;
  display:flex;align-items:center;justify-content:center;transition:background .2s}
.ai-form button:hover{background:var(--emerald)}
.ai-form button svg{width:18px;height:18px}
.ai-note{font-size:11.5px;color:var(--stone);text-align:center;margin-top:14px;line-height:1.55}

/* --- staff --- */
.staff{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}
@media(max-width:900px){.staff{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.staff{grid-template-columns:1fr}}
.person{background:var(--paper);border:1px solid var(--line);border-radius:16px;overflow:hidden;
  transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .25s}
.person:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 26px 50px -32px rgba(10,34,32,.4)}
.person .pimg{aspect-ratio:4/5;background:linear-gradient(155deg,#154945,#0B2926);position:relative;
  display:flex;align-items:center;justify-content:center;overflow:hidden}
.person .pimg img{width:100%;height:100%;object-fit:cover}
.person .pinitial{font-family:var(--serif);font-size:44px;color:rgba(162,142,115,.5);font-weight:500}
.person .pmeta{padding:17px 18px 20px}
.person .pmeta b{display:block;font-family:var(--serif);font-size:18px;font-weight:600;letter-spacing:-.2px;line-height:1.2}
.person .prole{display:block;font-size:11px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--gold-deep);margin-top:7px}
.person .pbio{display:block;font-size:12.5px;color:var(--body);line-height:1.55;margin-top:10px}
.person--lead{grid-column:span 2}
@media(max-width:520px){.person--lead{grid-column:span 1}}
.person--lead .pimg{aspect-ratio:16/10}

/* --- results row --- */
.resrow{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:36px}
@media(max-width:860px){.resrow{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.resrow{grid-template-columns:1fr}}
.rescard{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:22px;text-align:center}
.rescard .rlab{font-size:10.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--stone)}
.rescard .rval{font-family:var(--mono);font-size:22px;color:var(--forest);margin-top:11px;letter-spacing:-.5px}
.rescard .rval em{font-style:normal;color:var(--stone);font-size:16px}
.rescard .rval b{color:var(--emerald);font-weight:600}
.rescard .rwho{font-size:11.5px;color:var(--stone);margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}

/* ==========================================================================
   v4 — LIGHT PALETTE. White, bone, black and gold. Green as accent only.
   ========================================================================== */

/* --- near-black band replaces the dark green band for high contrast --- */
.band-ink{position:relative;color:var(--cream);
  background:
    radial-gradient(50% 70% at 88% 4%, rgba(162,142,115,.16), transparent 60%),
    radial-gradient(46% 66% at 4% 100%, rgba(32,83,79,.10), transparent 62%),
    linear-gradient(165deg,#171B19 0%,#0B0E0D 100%)}
.band-ink h1,.band-ink h2,.band-ink h3,.band-ink h4{color:#FEFCFA}
.band-ink h1 em,.band-ink h2 em,.band-ink h3 em{color:var(--gold-lt)}
.band-ink .kicker{color:var(--gold)}
.band-ink .kicker::before{background:var(--gold)}
.band-ink .lede,.band-ink p{color:rgba(237,234,227,.84)}
.band-ink .qa{background:rgba(255,255,255,.04);border-color:rgba(237,234,227,.15)}
.band-ink .qa .src{color:var(--gold)}
.band-ink .stats{border-color:rgba(237,234,227,.16)}
.band-ink .stat{border-left-color:rgba(237,234,227,.16)}
.band-ink .stat b{color:var(--gold-lt)}
.band-ink .stat span{color:rgba(237,234,227,.7)}
.band-ink .faq{border-top-color:rgba(237,234,227,.16)}
.band-ink .faq details{border-bottom-color:rgba(237,234,227,.16)}
.band-ink .faq summary{color:#FEFCFA}
.band-ink .faq summary:hover{color:var(--gold-lt)}
.band-ink .faq .fa{color:rgba(237,234,227,.82)}
.band-ink .tlink{color:var(--gold-lt)}
.band-ink .btn-line{color:#FEFCFA;border-color:rgba(237,234,227,.3)}
.band-ink .btn-line:hover{border-color:var(--gold-lt);color:var(--gold-lt)}
.band-ink .pull p{color:#FEFCFA}
.band-ink .pull cite{color:var(--gold)}

.band-bone{background:linear-gradient(170deg,#F6F4EE,#EFEBE1)}
.band-white{background:var(--paper)}

/* readability lift — larger body copy across the homepage */
.lede{font-size:19px}
.sec-head h2{font-size:50px}
@media(max-width:760px){.lede{font-size:17px}.sec-head h2{font-size:32px}}

/* --- bigger byline avatar --- */
.byline img{width:66px;height:66px;object-position:center 22%}
.byline b{font-size:15px}
.byline span{font-size:13px}

/* ==========================================================================
   CLINIC GALLERY — continuous scroll
   ========================================================================== */
.gallery{overflow:hidden;position:relative;
  mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.gtrack{display:flex;gap:18px;width:max-content;animation:gscroll 46s linear infinite}
.gallery:hover .gtrack{animation-play-state:paused}
@keyframes gscroll{to{transform:translateX(-50%)}}
.gcard{position:relative;width:380px;flex:none;border-radius:18px;overflow:hidden;aspect-ratio:4/3;
  box-shadow:0 22px 48px -28px rgba(10,34,32,.45);background:#0C2624}
.gcard img,.gcard span[role=img]{width:100%;height:100%;object-fit:cover;display:block}
.gcard figcaption{position:absolute;left:0;right:0;bottom:0;padding:34px 18px 16px;z-index:2;
  background:linear-gradient(180deg,rgba(7,18,17,0),rgba(7,18,17,.9));color:#fff}
.gcard figcaption b{display:block;font-family:var(--serif);font-size:19px;font-weight:500;letter-spacing:-.2px}
.gcard figcaption span{display:block;font-size:12.5px;color:rgba(237,234,227,.82);margin-top:5px;line-height:1.4}
@media(max-width:640px){.gcard{width:280px}}

/* ==========================================================================
   HERO SERVICE TILES — the "wow" second section
   ========================================================================== */
.svc{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;margin-top:44px}
.svc-tile{position:relative;border-radius:20px;overflow:hidden;text-decoration:none;color:#fff;
  background:#0C2624;min-height:260px;display:flex;align-items:flex-end;
  box-shadow:0 24px 52px -32px rgba(10,34,32,.5);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.svc-tile:hover{transform:translateY(-6px);box-shadow:0 40px 74px -34px rgba(10,34,32,.6)}
.svc-tile img,.svc-tile span[role=img]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform .7s var(--ease)}
.svc-tile:hover img,.svc-tile:hover span[role=img]{transform:scale(1.06)}
.svc-tile::after{content:"";position:absolute;inset:0;
  background:linear-gradient(175deg,rgba(7,18,17,.05) 20%,rgba(7,18,17,.62) 62%,rgba(7,18,17,.92) 100%)}
.svc-body{position:relative;z-index:2;padding:26px}
.svc-body .stag{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;
  color:var(--forest-deep);background:var(--gold);padding:5px 10px;border-radius:999px}
.svc-body h3{font-family:var(--serif);font-weight:500;font-size:26px;color:#fff;letter-spacing:-.5px;margin-top:12px;line-height:1.1}
.svc-body p{font-size:13.8px;color:rgba(255,255,255,.86);line-height:1.55;margin-top:9px;max-width:44ch}
.svc-body .sgo{display:inline-flex;align-items:center;gap:7px;margin-top:14px;font-size:12.5px;font-weight:750;color:var(--gold-lt)}
.svc-a{grid-column:span 7;min-height:400px}
.svc-b{grid-column:span 5;min-height:400px}
.svc-c,.svc-d,.svc-e{grid-column:span 4}
@media(max-width:900px){.svc-a,.svc-b{grid-column:span 12;min-height:300px}.svc-c,.svc-d,.svc-e{grid-column:span 12;min-height:240px}}

/* ==========================================================================
   THE ARC — 3D white cards with connecting arrows
   ========================================================================== */
.arcx{display:grid;grid-template-columns:repeat(5,1fr);gap:30px;margin-top:52px;position:relative}
@media(max-width:1080px){.arcx{grid-template-columns:repeat(2,1fr);gap:44px 30px}}
@media(max-width:600px){.arcx{grid-template-columns:1fr;gap:40px}}
.astep{background:#fff;border:1px solid #E8E4DA;border-radius:20px;padding:28px 24px 26px;position:relative;
  display:flex;flex-direction:column;
  box-shadow:0 2px 3px rgba(20,30,26,.03),0 10px 20px -8px rgba(20,30,26,.10),0 30px 54px -22px rgba(20,30,26,.20);
  transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.astep:hover{transform:translateY(-8px);
  box-shadow:0 3px 5px rgba(20,30,26,.05),0 16px 30px -10px rgba(20,30,26,.16),0 46px 72px -24px rgba(20,30,26,.3)}
.astep::after{content:"";position:absolute;right:-30px;top:74px;width:30px;height:2px;
  background:linear-gradient(90deg,var(--gold),rgba(162,142,115,.25));z-index:1}
.astep::before{content:"";position:absolute;right:-13px;top:69px;width:11px;height:11px;z-index:2;
  border-top:2px solid var(--gold);border-right:2px solid var(--gold);transform:rotate(45deg)}
.astep:last-child::after,.astep:last-child::before{display:none}
@media(max-width:1080px){
  .astep:nth-child(2n)::after,.astep:nth-child(2n)::before{display:none}
}
@media(max-width:600px){.astep::after,.astep::before{display:none}}
.astep .anum{width:52px;height:52px;border-radius:15px;flex:none;display:flex;align-items:center;justify-content:center;
  font-family:var(--serif);font-size:23px;font-weight:600;color:#fff;margin-bottom:18px;
  background:linear-gradient(155deg,#1B615B,#0F3330);box-shadow:0 10px 22px -10px rgba(15,51,48,.7)}
.astep.is-goal .anum{background:linear-gradient(155deg,#C2A883,#8E734D);box-shadow:0 10px 22px -10px rgba(121,99,68,.8)}
.astep h3{font-size:24px;line-height:1.14;letter-spacing:-.5px}
.astep .adesc{font-size:15px;color:var(--body);line-height:1.6;margin-top:10px}
.astep ul{list-style:none;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);
  display:flex;flex-direction:column;gap:9px}
.astep li{font-size:14.5px;color:var(--ink);padding-left:20px;position:relative;line-height:1.45;font-weight:500}
.astep li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.astep .agoal{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);
  font-family:var(--serif);font-style:italic;font-size:17px;line-height:1.5;color:var(--forest)}
.astep.is-goal{border-color:rgba(162,142,115,.55);background:linear-gradient(170deg,#FDFBF9,#FBF6F0)}

.pillars2{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}
@media(max-width:820px){.pillars2{grid-template-columns:repeat(2,1fr)}}
.pil{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;text-align:center;
  box-shadow:0 12px 26px -18px rgba(20,30,26,.28)}
.pil svg{width:26px;height:26px;color:var(--gold-deep);margin:0 auto 11px}
.pil b{display:block;font-size:13px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink)}
.pil span{display:block;font-size:13px;color:var(--stone);margin-top:7px;line-height:1.5}

/* ==========================================================================
   RESULTS — before/after optimal-range gauges
   ========================================================================== */
.rgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:44px}
@media(max-width:840px){.rgrid{grid-template-columns:1fr}}
.rcard{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;
  box-shadow:0 2px 3px rgba(20,30,26,.03),0 26px 54px -30px rgba(20,30,26,.28)}
.rhead{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.rhead b{font-family:var(--serif);font-size:23px;font-weight:600;letter-spacing:-.3px}
.rhead .runit{font-family:var(--mono);font-size:11.5px;color:var(--stone)}
.rbar{margin-top:22px;position:relative;padding-top:24px}
.rtrack{height:40px;border-radius:10px;background:linear-gradient(90deg,#F0EEE7,#E8E5DB);border:1px solid var(--line);position:relative;overflow:hidden}
.ropt{position:absolute;top:0;bottom:0;background:linear-gradient(180deg,rgba(162,142,115,.42),rgba(162,142,115,.24));
  border-left:2px solid var(--gold-deep);border-right:2px solid var(--gold-deep)}
.ropt::after{content:"OPTIMAL";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  font-size:9px;font-weight:800;letter-spacing:1.3px;color:var(--gold-deep);white-space:nowrap}
.rmark{position:absolute;top:-7px;bottom:-7px;width:3px;border-radius:2px;z-index:3;transition:left 1.4s var(--ease)}
.rmark.before{background:var(--sig-low)}
.rmark.after{background:var(--emerald)}
.rflag{position:absolute;top:0;transform:translateX(-50%);font-family:var(--mono);font-size:11px;font-weight:600;
  padding:4px 9px;border-radius:6px;white-space:nowrap;z-index:4;transition:left 1.4s var(--ease)}
.rflag.before{background:var(--sig-low);color:#fff}
.rflag.after{background:var(--emerald);color:#fff}
.rlegend{display:flex;gap:18px;flex-wrap:wrap;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);font-size:13px;color:var(--body)}
.rlegend span{display:inline-flex;align-items:center;gap:8px}
.rlegend i{width:12px;height:12px;border-radius:3px;flex:none}
.rlegend .lb{background:var(--sig-low)}.rlegend .la{background:var(--emerald)}
.rstory{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);font-size:14.5px;line-height:1.65;color:var(--body);font-style:italic;font-family:var(--serif)}
.rwho2{margin-top:12px;font-size:12.5px;color:var(--stone)}
.rwho2 b{color:var(--ink);font-weight:700}

/* ==========================================================================
   THERAPY INDEX — 20+ compact
   ========================================================================== */
.tlist{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:40px}
@media(max-width:1000px){.tlist{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.tlist{grid-template-columns:repeat(2,1fr)}}
@media(max-width:440px){.tlist{grid-template-columns:1fr}}
.titem{background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px 16px;text-decoration:none;color:var(--ink);
  display:flex;align-items:center;gap:12px;transition:.25s var(--ease)}
.titem:hover{border-color:var(--gold);transform:translateY(-3px);box-shadow:0 18px 34px -22px rgba(20,30,26,.35)}
.titem i{width:8px;height:8px;border-radius:50%;background:var(--gold);flex:none}
.titem b{font-size:14.5px;font-weight:650;line-height:1.25}
.titem:hover b{color:var(--emerald)}

/* ==========================================================================
   PANELS — three on the homepage
   ========================================================================== */
.pnl{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px;align-items:stretch}
@media(max-width:940px){.pnl{grid-template-columns:1fr;max-width:460px;margin-left:auto;margin-right:auto}}
.pcard{position:relative;background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px 26px;
  display:flex;flex-direction:column;box-shadow:0 2px 3px rgba(20,30,26,.03),0 24px 48px -30px rgba(20,30,26,.26);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .25s}
.pcard:hover{transform:translateY(-6px);border-color:var(--gold)}
.pcard.is-hero{border:2px solid var(--gold);box-shadow:0 30px 62px -32px rgba(121,99,68,.5)}
.pcard .ptag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--forest-deep);
  font-size:10.5px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;padding:7px 18px;border-radius:999px;white-space:nowrap}
.pcard .pmk{font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:.4px;color:var(--gold-deep);text-transform:uppercase}
.pcard h3{font-size:28px;letter-spacing:-.6px;margin-top:10px;line-height:1.08}
.pcard .pwho{font-size:14px;color:var(--body);line-height:1.55;margin-top:10px;min-height:46px}
.pcard .pprice{font-family:var(--serif);font-size:38px;color:var(--forest);letter-spacing:-1.2px;margin-top:16px;line-height:1;font-weight:500}
.pcard ul{list-style:none;display:flex;flex-direction:column;gap:9px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line);flex:1}
.pcard li{font-size:14px;line-height:1.5;color:var(--body);padding-left:23px;position:relative}
.pcard li::before{content:"✓";position:absolute;left:0;color:var(--gold-deep);font-weight:900;font-size:12px}
.pcard .btn{margin-top:22px}

/* ==========================================================================
   GUIDES / LEAD MAGNETS
   ========================================================================== */
.guides{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:44px}
@media(max-width:1000px){.guides{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.guides{grid-template-columns:1fr}}
.guide{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;text-decoration:none;color:var(--ink);
  display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .25s}
.guide:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:0 30px 58px -32px rgba(20,30,26,.34)}
.cover{position:relative;aspect-ratio:3/4;border-radius:10px;overflow:hidden;margin-bottom:18px;
  box-shadow:0 14px 30px -14px rgba(20,30,26,.5),inset -8px 0 14px -10px rgba(0,0,0,.35);
  display:flex;flex-direction:column;justify-content:space-between;padding:20px 18px}
.cover::after{content:"";position:absolute;left:0;top:0;bottom:0;width:7px;
  background:linear-gradient(90deg,rgba(0,0,0,.28),rgba(0,0,0,0))}
.cv-a{background:linear-gradient(160deg,#113E3A,#0A211F)}
.cv-b{background:linear-gradient(160deg,#79674F,#413523)}
.cv-c{background:linear-gradient(160deg,#174743,#0A2421)}
.cv-d{background:linear-gradient(160deg,#1F2622,#0B0E0D)}
.cover .cvtop{position:relative;z-index:2;font-size:8.5px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--gold)}
.cover .cvtitle{position:relative;z-index:2;font-family:var(--serif);font-size:21px;font-weight:500;color:#fff;line-height:1.14;letter-spacing:-.3px}
.cover .cvrule{position:relative;z-index:2;width:36px;height:2px;background:var(--gold);margin:12px 0}
.cover .cvfoot{position:relative;z-index:2;font-size:9px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:rgba(237,234,227,.72)}
.guide h3{font-size:18.5px;line-height:1.2}
.guide:hover h3{color:var(--emerald)}
.guide p{font-size:13.5px;color:var(--body);line-height:1.55;margin-top:8px;flex:1}
.guide .ggo{margin-top:14px;font-size:12.5px;font-weight:750;color:var(--gold-deep)}

/* ==========================================================================
   ARTICLES / GEO ANSWER LIBRARY
   ========================================================================== */
.arts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}
@media(max-width:940px){.arts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.arts{grid-template-columns:1fr}}
.art{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;text-decoration:none;color:var(--ink);
  display:flex;flex-direction:column;transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .25s}
.art:hover{transform:translateY(-5px);border-color:var(--gold);box-shadow:0 28px 54px -32px rgba(20,30,26,.32)}
.art .acat{font-size:10px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--gold-deep)}
.art h3{font-size:21px;line-height:1.22;margin-top:10px;letter-spacing:-.3px}
.art:hover h3{color:var(--emerald)}
.art p{font-size:14px;color:var(--body);line-height:1.62;margin-top:10px;flex:1}
.art .ago{margin-top:15px;font-size:12.5px;font-weight:750;color:var(--emerald)}

/* ==========================================================================
   BLOODWORK REPORT VISUAL
   ========================================================================== */
.report{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;
  box-shadow:0 3px 5px rgba(20,30,26,.04),0 36px 70px -40px rgba(20,30,26,.36)}
.rep-head{display:flex;align-items:center;gap:16px;padding:22px 26px;background:linear-gradient(165deg,#171B19,#0B0E0D);color:var(--cream);flex-wrap:wrap}
.rep-head .rchip{width:64px;height:64px;border-radius:50%;flex:none;position:relative;
  background:conic-gradient(var(--gold) 0 72%,rgba(237,234,227,.18) 72% 100%);display:flex;align-items:center;justify-content:center}
.rep-head .rchip::before{content:"";position:absolute;inset:5px;border-radius:50%;background:#121614}
.rep-head .rchip b{position:relative;font-family:var(--serif);font-size:22px;color:var(--gold-lt);font-weight:600}
.rep-head .rmeta{flex:1;min-width:170px}
.rep-head .rmeta b{display:block;font-family:var(--serif);font-size:18px;color:#fff;font-weight:500}
.rep-head .rmeta span{display:block;font-size:12.5px;color:rgba(237,234,227,.7);margin-top:4px}
.rep-head .rage{text-align:right;flex:none}
.rep-head .rage b{display:block;font-family:var(--serif);font-size:30px;color:var(--gold-lt);line-height:1;font-weight:600}
.rep-head .rage span{display:block;font-size:11px;color:rgba(237,234,227,.65);margin-top:5px}
.rep-body{padding:24px 26px 26px}
.rep-note{margin-top:20px;background:var(--cream);border:1px solid var(--line);border-left:3px solid var(--gold-deep);
  border-radius:11px;padding:16px 18px;font-size:14px;line-height:1.65;color:var(--body)}
.rep-note b{color:var(--forest)}
@media(max-width:520px){.rep-head .rage{text-align:left}}

/* ==========================================================================
   v5 — deep forest band, richer report, modern result bars, fixed arrows
   ========================================================================== */

/* --- deep emerald band (arc section) --- */
.band-forest{position:relative;color:var(--cream);
  background:
    radial-gradient(52% 68% at 90% 2%, rgba(162,142,115,.18), transparent 60%),
    radial-gradient(46% 62% at 2% 100%, rgba(32,83,79,.30), transparent 62%),
    linear-gradient(168deg,#13433F 0%,#0B2624 55%,#061715 100%)}
.band-forest h1,.band-forest h2,.band-forest h3,.band-forest h4{color:#FEFCFA}
.band-forest h2 em,.band-forest h3 em{color:var(--gold-lt)}
.band-forest .kicker{color:var(--gold)}
.band-forest .kicker::before{background:var(--gold)}
.band-forest .lede,.band-forest p{color:rgba(237,234,227,.86)}
/* cards inside stay light */
.band-forest .astep h3,.band-forest .astep .adesc,.band-forest .astep li{color:inherit}
.band-forest .astep h3{color:var(--ink)}
.band-forest .astep .adesc{color:var(--body)}
.band-forest .astep li{color:var(--ink)}
.band-forest .astep .agoal{color:var(--forest)}
.band-forest .pil b{color:var(--ink)}
.band-forest .pil span{color:var(--stone)}
.band-forest .astep{box-shadow:0 3px 6px rgba(0,0,0,.16),0 16px 30px -10px rgba(0,0,0,.34),0 40px 70px -26px rgba(0,0,0,.5)}
.band-forest .astep:hover{box-shadow:0 4px 8px rgba(0,0,0,.2),0 22px 40px -12px rgba(0,0,0,.4),0 56px 88px -28px rgba(0,0,0,.6)}

/* --- arrows: single clean chevron, no trailing line --- */
.astep::after{content:"";position:absolute;right:-27px;top:78px;width:13px;height:13px;z-index:3;
  border-top:2.5px solid var(--gold);border-right:2.5px solid var(--gold);transform:rotate(45deg);
  border-radius:2px;background:none}
.astep::before{display:none}
.astep:last-child::after{display:none}
@media(max-width:1080px){.astep:nth-child(2n)::after{display:none}}
@media(max-width:600px){.astep::after{display:none}}

/* ==========================================================================
   REPORT — root-cause pattern + markers + organ ages
   ========================================================================== */
.rep-sec{margin-top:22px}
.rep-sec:first-child{margin-top:0}
.rep-label{display:flex;align-items:center;gap:10px;font-size:10.5px;font-weight:800;letter-spacing:1.4px;
  text-transform:uppercase;color:var(--stone);margin-bottom:13px}
.rep-label::after{content:"";flex:1;height:1px;background:var(--line)}

.pattern{background:linear-gradient(160deg,#FDFAF6,#F8F4ED);border:1px solid rgba(162,142,115,.45);
  border-left:3px solid var(--gold-deep);border-radius:12px;padding:16px 18px}
.pattern b{display:block;font-family:var(--serif);font-size:19px;font-weight:600;color:var(--forest);letter-spacing:-.3px}
.pattern p{font-size:13.5px;line-height:1.6;color:var(--body);margin-top:7px}

.mrows{display:flex;flex-direction:column;gap:2px}
.mrow{display:grid;grid-template-columns:1fr auto auto auto;gap:12px;align-items:center;
  padding:10px 12px;border-radius:9px;transition:background .18s}
.mrow:nth-child(odd){background:var(--bone)}
.mrow:hover{background:var(--cream)}
.mrow .mn{font-size:13.5px;font-weight:650;color:var(--ink);line-height:1.25}
.mrow .mv{font-family:var(--mono);font-size:13.5px;font-weight:600;color:var(--ink);text-align:right;white-space:nowrap}
.mrow .mo{font-family:var(--mono);font-size:11.5px;color:var(--stone);text-align:right;white-space:nowrap}
.pill{font-size:9.5px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;padding:4px 9px;border-radius:999px;white-space:nowrap}
.pill.alert{background:#FBE9E6;color:#A64535;border:1px solid #EFC7BF}
.pill.watch{background:#F4EEE5;color:#79674F;border:1px solid #DBCCB6}
.pill.good{background:#E6F2EB;color:#2E625D;border:1px solid #BFDFCD}
@media(max-width:520px){.mrow{grid-template-columns:1fr auto auto}.mrow .mo{display:none}}

.organ{display:flex;flex-direction:column;gap:9px}
.orow{display:grid;grid-template-columns:118px 1fr 54px;gap:11px;align-items:center}
.orow .on{font-size:12.5px;font-weight:600;color:var(--ink)}
.otrack{height:9px;border-radius:5px;background:#EDEAE1;overflow:hidden;position:relative}
.otrack i{display:block;height:100%;border-radius:5px;transition:width 1.2s var(--ease);
  background:linear-gradient(90deg,#3E7B76,#579E98)}
.otrack i.w{background:linear-gradient(90deg,#A8895D,#C2A883)}
.otrack i.l{background:linear-gradient(90deg,#B85A4B,#D07E6E)}
.orow .ov{font-family:var(--mono);font-size:11.5px;color:var(--stone);text-align:right;white-space:nowrap}
.orow .ov b{color:var(--forest);font-size:12.5px}
@media(max-width:520px){.orow{grid-template-columns:88px 1fr 48px}.orow .on{font-size:11.5px}}

/* ==========================================================================
   RESULT BARS — modern slim track
   ========================================================================== */
.rcard2{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;
  box-shadow:0 2px 4px rgba(20,30,26,.03),0 26px 54px -30px rgba(20,30,26,.28);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.rcard2:hover{transform:translateY(-4px);box-shadow:0 4px 8px rgba(20,30,26,.05),0 36px 66px -30px rgba(20,30,26,.36)}
.r2top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap}
.r2top b{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:-.3px;line-height:1.1}
.r2top span{display:block;font-size:11.5px;color:var(--stone);margin-top:4px;font-family:var(--mono)}
.delta{font-family:var(--sans);font-size:12px;font-weight:800;letter-spacing:.4px;padding:7px 13px;border-radius:999px;
  background:#E6F2EB;color:#2E625D;border:1px solid #BFDFCD;white-space:nowrap;flex:none}
.r2nums{display:flex;align-items:baseline;gap:14px;margin-top:20px;flex-wrap:wrap}
.r2nums .nb{font-family:var(--serif);font-size:34px;font-weight:500;color:var(--sig-low);line-height:1;letter-spacing:-1px}
.r2nums .nar{color:var(--stone);font-size:20px}
.r2nums .na{font-family:var(--serif);font-size:44px;font-weight:600;color:var(--emerald);line-height:1;letter-spacing:-1.4px}
.r2nums .nu{font-family:var(--mono);font-size:12px;color:var(--stone);margin-left:2px}

.r2line{margin-top:34px;position:relative;height:36px}
.r2track{position:absolute;left:0;right:0;top:13px;height:10px;border-radius:6px;
  background:linear-gradient(90deg,#EFEDE6,#E7E4DA);box-shadow:inset 0 1px 2px rgba(20,30,26,.09)}
.r2opt{position:absolute;top:9px;height:18px;border-radius:9px;z-index:1;
  background:linear-gradient(90deg,rgba(162,142,115,.30),rgba(214,190,156,.42));
  box-shadow:0 0 0 1.5px rgba(121,99,68,.55) inset}
.r2opt::after{content:"";position:absolute;left:0;right:0;top:-7px;height:5px;
  border-radius:3px;background:var(--gold);opacity:.9}
.r2fill{position:absolute;top:15px;height:6px;border-radius:4px;z-index:2;
  background:linear-gradient(90deg,rgba(184,90,75,.55),rgba(62,123,118,.85));
  width:0;transition:width 1.5s var(--ease),left 1.5s var(--ease)}
.r2dot{position:absolute;top:9px;width:18px;height:18px;border-radius:50%;z-index:3;transform:translateX(-50%);
  transition:left 1.5s var(--ease)}
.r2dot.b{background:#fff;border:3px solid var(--sig-low);box-shadow:0 2px 6px rgba(20,30,26,.2)}
.r2dot.a{background:var(--emerald);border:3px solid #fff;box-shadow:0 0 0 4px rgba(62,123,118,.18),0 3px 9px rgba(20,30,26,.28)}
.r2scale{display:flex;justify-content:space-between;margin-top:6px;font-family:var(--mono);font-size:10.5px;color:var(--stone)}
.r2key{display:flex;gap:8px;align-items:center;margin-top:14px;font-size:11.5px;color:var(--stone);flex-wrap:wrap}
.r2key span{display:inline-flex;align-items:center;gap:6px}
.r2key i{width:10px;height:10px;border-radius:50%;flex:none}
.r2key .kb{background:#fff;border:2.5px solid var(--sig-low)}
.r2key .ka{background:var(--emerald)}
.r2key .ko{width:16px;height:9px;border-radius:3px;background:linear-gradient(90deg,rgba(162,142,115,.6),rgba(214,190,156,.8))}
.r2story{margin-top:20px;padding-top:18px;border-top:1px solid var(--line);
  font-family:var(--serif);font-style:italic;font-size:15px;line-height:1.65;color:var(--body)}
.r2who{margin-top:12px;font-size:12.5px;color:var(--stone)}
.r2who b{color:var(--ink);font-weight:700}

/* ==========================================================================
   EXPERIENCE — two-up photo band
   ========================================================================== */
.exp{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:44px}
@media(max-width:820px){.exp{grid-template-columns:1fr}}
.expcard{position:relative;border-radius:20px;overflow:hidden;min-height:340px;display:flex;align-items:flex-end;
  background:#0C2624;box-shadow:0 26px 56px -32px rgba(10,34,32,.5)}
.expcard img,.expcard span[role=img]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform .7s var(--ease)}
.expcard:hover img,.expcard:hover span[role=img]{transform:scale(1.05)}
.expcard::after{content:"";position:absolute;inset:0;
  background:linear-gradient(178deg,rgba(7,18,17,.06) 30%,rgba(7,18,17,.72) 70%,rgba(7,18,17,.94) 100%)}
.expbody{position:relative;z-index:2;padding:28px}
.expbody b{display:block;font-family:var(--serif);font-size:25px;font-weight:500;color:#fff;letter-spacing:-.4px;line-height:1.12}
.expbody p{font-size:14px;color:rgba(255,255,255,.88);line-height:1.6;margin-top:10px;max-width:46ch}

/* --- v6: risk reversal + consent under the consult form --- */
.reassure{margin-top:14px;background:var(--cream);border:1px solid var(--line);border-left:3px solid var(--gold-deep);
  border-radius:11px;padding:14px 16px}
.reassure b{display:block;font-size:11px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--gold-deep)}
.reassure span{display:block;font-size:13px;line-height:1.6;color:var(--body);margin-top:7px}
.consent{font-size:11px;line-height:1.55;color:var(--stone);margin-top:12px}
.consent a{color:var(--emerald);font-weight:650}
/* mobile sticky bar was overlapping the last section on some devices */
@media(max-width:760px){body{padding-bottom:calc(84px + env(safe-area-inset-bottom))}}

/* --- v7: hero proof line + practical 3-step strip --- */
.proofline{font-size:13.5px;font-weight:600;color:var(--stone);margin-top:16px;letter-spacing:.1px}
.steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px;padding-top:32px;
  border-top:1px solid rgba(237,234,227,.2)}
@media(max-width:760px){.steps3{grid-template-columns:1fr;gap:14px}}
.s3{background:rgba(255,255,255,.07);border:1px solid rgba(237,234,227,.18);border-radius:14px;padding:20px 22px}
.s3 b{display:block;font-family:var(--serif);font-size:19px;font-weight:500;color:#FEFCFA;letter-spacing:-.2px}
.s3 span{display:block;font-size:13.5px;color:rgba(237,234,227,.82);line-height:1.55;margin-top:8px}
/* article cards that are reference content, not links */
article.art:hover{transform:none;border-color:var(--line);box-shadow:none}

/* ==========================================================================
   v8 — PHOTO PLACEHOLDERS + SOCIAL PROOF
   Placeholders are styled to look intentional, and each one states exactly
   what to shoot. Swap the .phbox element for an <img> when photos arrive.
   ========================================================================== */

.phbox{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:26px 20px;color:var(--cream);
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,.028) 0 10px, transparent 10px 20px),
    radial-gradient(70% 90% at 50% 20%, rgba(162,142,115,.16), transparent 65%),
    linear-gradient(160deg,#113E3A 0%,#091F1D 100%);
  box-shadow:inset 0 0 0 1.5px rgba(162,142,115,.28)}
.phbox .phic{width:40px;height:40px;color:var(--gold);opacity:.85;margin-bottom:14px}
.phbox b{font-family:var(--serif);font-size:17px;font-weight:500;color:#FEFCFA;letter-spacing:-.2px;line-height:1.25}
.phbox span{font-size:12px;color:rgba(237,234,227,.72);line-height:1.5;margin-top:8px;max-width:30ch}
.phbox .phtag{position:absolute;top:11px;left:11px;font-size:8.5px;font-weight:800;letter-spacing:1.2px;
  text-transform:uppercase;color:var(--gold-lt);background:rgba(10,33,31,.72);border:1px solid rgba(162,142,115,.4);
  padding:4px 9px;border-radius:999px}
.phbox.sm b{font-size:14.5px}
.phbox.sm .phic{width:30px;height:30px;margin-bottom:10px}
.phbox.sm span{font-size:11px}
/* round avatar placeholder */
.phav{width:56px;height:56px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(155deg,#154945,#0B2926);box-shadow:inset 0 0 0 1.5px rgba(162,142,115,.4)}
.phav svg{width:24px;height:24px;color:rgba(162,142,115,.75)}
/* inline data awaiting confirmation */
.phdata{border-bottom:1.5px dashed rgba(162,142,115,.7);padding-bottom:1px}

/* ---------- trust bar ---------- */
.trust{display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center}
@media(max-width:900px){.trust{grid-template-columns:1fr;gap:24px}}
.gbadge{display:flex;align-items:center;gap:15px;background:var(--paper);border:1px solid var(--line);
  border-radius:16px;padding:18px 22px;box-shadow:0 14px 30px -20px rgba(20,30,26,.3);flex:none}
.gbadge .glogo{font-family:var(--sans);font-size:22px;font-weight:700;letter-spacing:-.6px;flex:none}
.gbadge .glogo i{font-style:normal}
.gbadge .gb{display:block}
.gbadge .gstars{display:flex;gap:2px;align-items:center}
.gbadge .gstars svg{width:16px;height:16px;color:#BB8D4D}
.gbadge .gscore{font-family:var(--serif);font-size:21px;font-weight:600;color:var(--ink);margin-right:6px;line-height:1}
.gbadge .gcount{display:block;font-size:12px;color:var(--stone);margin-top:5px}
.gbadge .gcount a{color:var(--emerald);font-weight:650;text-decoration:none}
.tfacts{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
@media(max-width:780px){.tfacts{grid-template-columns:repeat(2,1fr);gap:18px 0}}
.tfact{padding:0 22px;border-left:1px solid var(--line)}
.tfact:first-child{border-left:0;padding-left:0}
@media(max-width:780px){.tfact{border-left:0;padding:0 14px}}
.tfact b{display:block;font-family:var(--serif);font-size:27px;font-weight:500;color:var(--forest);letter-spacing:-.6px;line-height:1}
.tfact span{display:block;font-size:12.5px;color:var(--stone);margin-top:7px;line-height:1.4}

/* ---------- testimonials ---------- */
.tst{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}
@media(max-width:960px){.tst{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.tst{grid-template-columns:1fr}}
.tcard2{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;display:flex;flex-direction:column;
  box-shadow:0 2px 3px rgba(20,30,26,.03),0 22px 46px -30px rgba(20,30,26,.26);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.tcard2:hover{transform:translateY(-5px);box-shadow:0 3px 6px rgba(20,30,26,.05),0 32px 60px -30px rgba(20,30,26,.34)}
.tstars{display:flex;gap:2px;margin-bottom:14px}
.tstars svg{width:15px;height:15px;color:#BB8D4D}
.tcard2 .tq{font-family:var(--serif);font-size:16.5px;line-height:1.62;color:var(--ink);flex:1}
.tcard2 .tres{margin-top:16px;font-family:var(--mono);font-size:11.5px;color:var(--emerald);background:#EFF6F2;
  border:1px solid #BFDFCD;border-radius:8px;padding:7px 11px;display:inline-block;align-self:flex-start;line-height:1.4}
.tcard2 .twho{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);display:flex;align-items:center;gap:13px}
.tcard2 .twho img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none}
.tcard2 .tn{font-size:14.5px;font-weight:700;color:var(--ink);line-height:1.25}
.tcard2 .tc{font-size:12px;color:var(--stone);margin-top:3px;line-height:1.4}

/* ---------- video testimonial row ---------- */
.vidrow{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px}
@media(max-width:860px){.vidrow{grid-template-columns:1fr}}
.vcard{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:16/11;cursor:pointer;border:0;padding:0;
  box-shadow:0 22px 46px -28px rgba(20,30,26,.4)}
.vcard .phbox{position:absolute;inset:0;padding:20px}
.vcard .vplay2{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);z-index:3;width:56px;height:56px;
  border-radius:50%;background:rgba(162,142,115,.95);display:flex;align-items:center;justify-content:center}
.vcard .vplay2 svg{width:20px;height:20px;color:var(--forest-deep);margin-left:3px}
.vcard .vlabel{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:24px 18px 15px;text-align:left;
  background:linear-gradient(180deg,rgba(7,23,22,0),rgba(7,23,22,.9))}
.vcard .vlabel b{display:block;font-size:14px;font-weight:700;color:#fff;line-height:1.3}
.vcard .vlabel span{display:block;font-size:11.5px;color:rgba(237,234,227,.78);margin-top:4px}

/* ---------- press / featured in ---------- */
.feat{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:32px}
@media(max-width:900px){.feat{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.feat{grid-template-columns:1fr}}
.fitem{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:18px;text-decoration:none;
  color:var(--ink);display:flex;flex-direction:column;transition:.25s var(--ease)}
.fitem:hover{border-color:var(--gold);transform:translateY(-3px);box-shadow:0 18px 34px -22px rgba(20,30,26,.32)}
.fitem b{font-family:var(--serif);font-size:16px;font-weight:600;letter-spacing:-.2px}
.fitem span{font-size:12.5px;color:var(--stone);line-height:1.5;margin-top:7px}

/* ---------- clinic gallery grid ---------- */
.cgrid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;margin-top:44px}
.cg{position:relative;border-radius:18px;overflow:hidden;min-height:230px;display:flex;align-items:flex-end;
  background:#0C2624;box-shadow:0 20px 44px -28px rgba(10,34,32,.45)}
.cg img,.cg span[role=img]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  background-size:cover;background-position:center;transition:transform .7s var(--ease)}
.cg:hover img,.cg:hover span[role=img]{transform:scale(1.05)}
.cg .phbox{position:absolute;inset:0}
.cg .cglabel{position:relative;z-index:3;padding:22px 18px 16px;width:100%;
  background:linear-gradient(180deg,rgba(7,23,22,0),rgba(7,23,22,.88))}
.cg .cglabel b{display:block;font-family:var(--serif);font-size:17px;font-weight:500;color:#fff;letter-spacing:-.2px}
.cg .cglabel span{display:block;font-size:11.5px;color:rgba(237,234,227,.8);margin-top:4px;line-height:1.4}
.cg-lg{grid-column:span 6;min-height:330px}
.cg-md{grid-column:span 3;min-height:330px}
.cg-sm{grid-column:span 3}
@media(max-width:900px){.cg-lg{grid-column:span 12;min-height:260px}.cg-md,.cg-sm{grid-column:span 6}}
@media(max-width:560px){.cg-md,.cg-sm{grid-column:span 12}}

/* ==========================================================================
   v9 — TOP 10 LIST, ARC ICONS + REBUILT ARROWS, CONDITION ICONS
   ========================================================================== */

/* ---------- eleven reasons grid ---------- */
.top10{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:44px}
@media(max-width:900px){.top10{grid-template-columns:1fr}}
.t10{display:flex;align-items:flex-start;gap:16px;padding:18px 20px;border-radius:14px;
  background:rgba(255,255,255,.045);border:1px solid rgba(237,234,227,.14);text-decoration:none;
  transition:transform .26s var(--ease),background .26s,border-color .26s}
.t10:hover{transform:translateX(4px);background:rgba(255,255,255,.08);border-color:rgba(162,142,115,.5)}
.t10 .t10n{font-family:var(--serif);font-size:26px;font-weight:500;color:var(--gold);line-height:1;flex:none;
  width:34px;text-align:right;opacity:.85;padding-top:4px}
.t10 .t10ic{width:46px;height:46px;border-radius:13px;flex:none;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(155deg,rgba(162,142,115,.24),rgba(162,142,115,.08));
  border:1px solid rgba(162,142,115,.42);color:var(--gold-lt)}
.t10 .t10ic svg{width:24px;height:24px}
.t10 .t10tx{flex:1;min-width:0}
.t10 b{display:block;font-family:var(--serif);font-size:19px;font-weight:500;color:#FEFCFA;letter-spacing:-.2px;line-height:1.25}
.t10 span{display:block;font-size:13.5px;color:rgba(237,234,227,.76);line-height:1.55;margin-top:6px}
.t10 .t10go{color:var(--gold-lt);font-weight:700;font-size:12.5px;margin-top:9px;display:inline-block}
@media(max-width:520px){.t10{padding:16px}.t10 .t10n{display:none}}

/* ---------- arc: icon badges ---------- */
.astep .anum{position:relative;width:62px;height:62px;border-radius:17px;display:flex;align-items:center;
  justify-content:center;margin-bottom:20px;color:var(--gold-lt);
  background:linear-gradient(155deg,#1B615B,#0F3330);box-shadow:0 12px 26px -12px rgba(15,51,48,.75);
  font-family:inherit;font-size:0}
.astep .anum svg{width:29px;height:29px}
.astep .anum::after{content:attr(data-step);position:absolute;top:-8px;right:-8px;width:24px;height:24px;
  border-radius:50%;background:var(--gold);color:var(--forest-deep);font-family:var(--sans);font-size:12px;
  font-weight:800;display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 10px -3px rgba(20,30,26,.5)}
.astep.is-goal .anum{background:linear-gradient(155deg,#C2A883,#8E734D);color:var(--forest-deep);
  box-shadow:0 12px 26px -12px rgba(121,99,68,.8)}
.astep.is-goal .anum::after{background:var(--forest);color:var(--gold-lt)}

/* ---------- arc: rebuilt connector arrows ---------- */
.arcx{gap:44px}
@media(max-width:1080px){.arcx{gap:52px 44px}}
.astep::after,.astep::before{display:none}
.aarrow{position:absolute;right:-44px;top:50px;width:44px;height:34px;z-index:4;
  display:flex;align-items:center;justify-content:center;pointer-events:none}
.aarrow svg{width:34px;height:34px;color:var(--gold);filter:drop-shadow(0 3px 6px rgba(0,0,0,.35))}
@media(max-width:1080px){.astep:nth-child(2n) .aarrow{display:none}}
@media(max-width:600px){.aarrow{display:none}}

/* ---------- conditions: icons + weight ---------- */
.intents{gap:16px}
.intent{padding:26px 24px;border-radius:18px;border-width:1.5px}
.intent:hover{border-color:var(--gold);box-shadow:0 30px 56px -30px rgba(20,30,26,.4)}
.intent .iicon{width:54px;height:54px;border-radius:15px;display:flex;align-items:center;justify-content:center;
  margin-bottom:16px;color:var(--gold-lt);
  background:linear-gradient(155deg,#1B615B,#0F3330);box-shadow:0 10px 22px -10px rgba(15,51,48,.6)}
.intent .iicon svg{width:27px;height:27px}
.intent h3{font-size:21px;margin-top:0}
.intent .ilabel{display:block;margin-bottom:10px}
.intent p{font-size:13.5px;margin-top:10px}

/* ==========================================================================
   v10 — LAB PANEL, ARC PHOTOS, PATIENT STORIES
   ========================================================================== */

/* ---------- multi-marker lab panel (high contrast on dark) ---------- */
.labpanel{background:#fff;border-radius:22px;overflow:hidden;
  box-shadow:0 4px 8px rgba(0,0,0,.2),0 40px 80px -34px rgba(0,0,0,.6)}
.lp-head{display:flex;align-items:center;gap:14px;padding:20px 26px;border-bottom:1px solid var(--line);
  background:linear-gradient(160deg,#F8F6F4,#F2EFE7);flex-wrap:wrap}
.lp-head .lpic{width:38px;height:38px;border-radius:11px;background:var(--forest);color:var(--gold-lt);
  display:flex;align-items:center;justify-content:center;flex:none}
.lp-head .lpic svg{width:19px;height:19px}
.lp-head b{display:block;font-family:var(--serif);font-size:17px;font-weight:600;color:var(--ink);letter-spacing:-.2px}
.lp-head span{display:block;font-size:12px;color:var(--stone);margin-top:3px}
.lp-legend{margin-left:auto;display:flex;gap:16px;flex-wrap:wrap;font-size:11px;color:var(--body)}
.lp-legend span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.lp-legend i{width:15px;height:9px;border-radius:3px;flex:none}
.lp-legend .lstd{background:repeating-linear-gradient(135deg,rgba(120,112,98,.34) 0 4px,#EDEAE1 4px 8px);
  border:1px dashed rgba(120,112,98,.6)}
.lp-legend .lopt{background:linear-gradient(90deg,var(--gold),var(--gold-lt));border:1px solid var(--gold-deep)}
.lp-legend .lyou{width:4px;height:14px;border-radius:2px;background:#B34A38}

.lprow{display:grid;grid-template-columns:150px 1fr 96px;gap:16px;align-items:center;
  padding:15px 26px;border-bottom:1px solid var(--line);transition:background .18s}
.lprow:last-child{border-bottom:0}
.lprow:hover{background:var(--bone)}
.lprow .lpname{min-width:0}
.lprow .lpname b{display:block;font-size:14.5px;font-weight:700;color:var(--ink);line-height:1.2}
.lprow .lpname span{display:block;font-family:var(--mono);font-size:10.5px;color:var(--stone);margin-top:4px}

.lpbar{position:relative;height:30px}
.lptrack{position:absolute;left:0;right:0;top:11px;height:8px;border-radius:5px;background:#EFECE4;
  box-shadow:inset 0 1px 2px rgba(20,30,26,.1)}
.lpstd{position:absolute;top:11px;height:8px;
  background:repeating-linear-gradient(135deg,rgba(120,112,98,.30) 0 4px,rgba(237,234,225,.9) 4px 8px);
  border-left:1px dashed rgba(120,112,98,.65);border-right:1px dashed rgba(120,112,98,.65)}
.lpopt{position:absolute;top:7px;height:16px;border-radius:8px;
  background:linear-gradient(90deg,var(--gold),var(--gold-lt));
  box-shadow:0 2px 8px -2px rgba(121,99,68,.6)}
.lpyou{position:absolute;top:2px;height:26px;width:4px;border-radius:2px;background:#B34A38;z-index:3;
  transform:translateX(-50%);box-shadow:0 0 0 2.5px #fff,0 2px 6px rgba(20,30,26,.35)}
.lpyou.ok{background:var(--emerald)}
.lpval{font-family:var(--mono);font-size:13px;font-weight:600;color:#B34A38;text-align:right;white-space:nowrap}
.lpval.ok{color:var(--emerald)}
.lpval small{display:block;font-size:10px;color:var(--stone);font-weight:400;margin-top:3px}
.lp-foot{padding:18px 26px;background:var(--cream);border-top:1px solid var(--line);
  font-size:13.5px;line-height:1.62;color:var(--body)}
.lp-foot b{color:var(--forest)}
@media(max-width:720px){
  .lprow{grid-template-columns:1fr 76px;gap:10px 12px;padding:14px 18px}
  .lpbar{grid-column:1 / -1;order:3}
  .lp-head{padding:16px 18px}.lp-legend{margin-left:0;width:100%;margin-top:4px}
}

/* ---------- arc: photo headers instead of icons ---------- */
.astep{padding:0}
.aphoto{position:relative;aspect-ratio:3/2;overflow:hidden;background:#0C2624;display:block;border-radius:19px 19px 0 0}
.aphoto img,.aphoto span[role=img]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  background-size:cover;background-position:center;transition:transform .6s var(--ease)}
.astep:hover .aphoto img,.astep:hover .aphoto span[role=img]{transform:scale(1.06)}
.aphoto .phbox{position:absolute;inset:0;padding:14px}
.aphoto .phbox .phtag{left:auto;right:11px}
.aphoto .phbox b{font-size:13px}
.tphoto .phbox b{font-size:14px}
.tphoto .phbox .phic{width:26px;height:26px;margin-bottom:8px}
.aphoto .phbox span:not(.phtag){font-size:10.5px;margin-top:6px}
.aphoto .phbox .phic{width:24px;height:24px;margin-bottom:8px}
.aphoto .astepnum{position:absolute;top:12px;left:12px;z-index:4;width:32px;height:32px;border-radius:50%;
  background:var(--gold);color:var(--forest-deep);font-family:var(--sans);font-size:14px;font-weight:800;
  display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px -2px rgba(20,30,26,.55)}
.astep.is-goal .astepnum{background:var(--forest);color:var(--gold-lt)}
.abody{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}
.astep .anum{display:none}
.aarrow{top:calc(50% - 17px)}

/* ---------- patient stories ---------- */
.stories{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}
@media(max-width:1000px){.stories{grid-template-columns:1fr}}
.story{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;
  box-shadow:0 2px 4px rgba(20,30,26,.03),0 26px 54px -32px rgba(20,30,26,.3);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.story:hover{transform:translateY(-6px);box-shadow:0 4px 8px rgba(20,30,26,.05),0 38px 70px -32px rgba(20,30,26,.4)}
.story-img{position:relative;aspect-ratio:4/3;overflow:hidden;background:#0C2624}
.story-img .phbox{position:absolute;inset:0;padding:20px}
.story-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.story-img .stag{position:absolute;top:13px;left:13px;z-index:4;font-size:9.5px;font-weight:800;letter-spacing:1.2px;
  text-transform:uppercase;background:var(--gold);color:var(--forest-deep);padding:6px 11px;border-radius:999px}
.story-body{padding:24px;display:flex;flex-direction:column;flex:1}
.story-body .sstars{display:flex;gap:2px;margin-bottom:12px}
.story-body .sstars svg{width:15px;height:15px;color:#BB8D4D}
.story-body .squote{font-family:var(--serif);font-size:17px;line-height:1.6;color:var(--ink);flex:1}
.story-body .sres{margin-top:16px;font-family:var(--mono);font-size:11.5px;color:var(--emerald);background:#EFF6F2;
  border:1px solid #BFDFCD;border-radius:8px;padding:8px 12px;line-height:1.45}
.story-body .swho{margin-top:16px;padding-top:15px;border-top:1px solid var(--line);font-size:13px;color:var(--stone)}
.story-body .swho b{display:block;color:var(--ink);font-size:14.5px;font-weight:700;margin-bottom:3px}

/* condition chips under the stories */
.cchips{display:flex;flex-wrap:wrap;gap:9px;margin-top:36px;justify-content:center}
.cchip{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1.5px solid var(--line);
  border-radius:999px;padding:10px 17px;text-decoration:none;color:var(--ink);font-size:14px;font-weight:600;
  transition:.22s var(--ease)}
.cchip:hover{border-color:var(--gold);color:var(--emerald);transform:translateY(-2px);
  box-shadow:0 12px 24px -14px rgba(20,30,26,.35)}
.cchip svg{width:18px;height:18px;color:var(--gold-deep);flex:none}
.cchip:hover svg{color:var(--emerald)}

/* featured 11th reason */
.t10.is-feature{background:linear-gradient(150deg,rgba(162,142,115,.20),rgba(162,142,115,.06));
  border-color:rgba(162,142,115,.55);grid-column:1 / -1}
.t10.is-feature .t10n{color:var(--gold-lt);opacity:1}
.t10.is-feature b{color:var(--gold-lt)}

/* --- v11: founder byline portrait ---------------------------------------
   Circular avatar, cropped upper chest up. */
.byline-lg{gap:20px;padding-top:26px;align-items:center}
.byline-lg img{width:120px;height:120px;border-radius:50%;object-fit:cover;object-position:center 42%;
  border:0;outline:0;display:block;background:#E9EAEC;
  box-shadow:0 1px 2px rgba(20,30,26,.06),0 10px 20px -10px rgba(20,30,26,.28),
             0 22px 38px -22px rgba(20,30,26,.4),0 0 0 1px rgba(162,142,115,.4)}
.byline-lg b{font-size:16.5px;line-height:1.35}
.byline-lg span span{font-size:13px;margin-top:6px;line-height:1.5}
@media(max-width:520px){.byline-lg img{width:94px;height:94px}.byline-lg{gap:15px}}

/* the 11th reason sits level with the rest — no highlight */
.t10.is-feature{background:rgba(255,255,255,.045);border-color:rgba(237,234,227,.14);grid-column:1 / -1}
.t10.is-feature .t10n{color:var(--gold);opacity:.85}
.t10.is-feature b{color:#FEFCFA}

/* ==========================================================================
   v12 — FULL SAMPLE REPORT (bloodwork page)
   ========================================================================== */
.bigreport{background:#fff;border-radius:24px;overflow:hidden;margin-top:44px;
  box-shadow:0 6px 12px rgba(20,30,26,.06),0 50px 90px -40px rgba(20,30,26,.45)}
.br-head{padding:30px 34px;background:linear-gradient(160deg,#171B19,#0B0E0D);color:var(--cream);
  display:grid;grid-template-columns:auto 1fr auto;gap:26px;align-items:center}
@media(max-width:760px){.br-head{grid-template-columns:1fr;gap:18px;padding:24px 20px}}
.br-head .brlogo{font-family:var(--serif);font-size:13px;letter-spacing:2.6px;text-transform:uppercase;color:var(--gold)}
.br-head h3{font-family:var(--serif);font-size:27px;font-weight:500;color:#fff;letter-spacing:-.5px;margin-top:8px}
.br-head .brsub{font-size:13px;color:rgba(237,234,227,.7);margin-top:7px;line-height:1.5}
.brscore{display:flex;gap:20px;flex:none;flex-wrap:wrap}
.brdial{width:96px;height:96px;border-radius:50%;position:relative;flex:none;display:flex;flex-direction:column;
  align-items:center;justify-content:center}
.brdial::before{content:"";position:absolute;inset:7px;border-radius:50%;background:#121614}
.brdial b{position:relative;font-family:var(--serif);font-size:30px;color:var(--gold-lt);line-height:1;font-weight:600}
.brdial span{position:relative;font-size:8.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;
  color:rgba(237,234,227,.6);margin-top:4px}
.brdial.d1{background:conic-gradient(var(--gold) 0 72%,rgba(237,234,227,.15) 72% 100%)}
.brdial.d2{background:conic-gradient(var(--sig-low) 0 58%,rgba(237,234,227,.15) 58% 100%)}
.brdial.d2 b{color:#E8927F}

.br-sec{padding:30px 34px;border-bottom:1px solid var(--line)}
.br-sec:last-child{border-bottom:0}
@media(max-width:760px){.br-sec{padding:24px 20px}}
.br-label{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:800;letter-spacing:1.5px;
  text-transform:uppercase;color:var(--stone);margin-bottom:18px}
.br-label i{width:22px;height:22px;border-radius:6px;background:var(--forest);color:var(--gold-lt);flex:none;
  display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;font-style:normal;
  font-family:var(--sans)}
.br-label::after{content:"";flex:1;height:1px;background:var(--line)}

.sysgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 32px}
@media(max-width:760px){.sysgrid{grid-template-columns:1fr}}

.protolist{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:820px){.protolist{grid-template-columns:1fr}}
.proto{background:var(--bone);border:1px solid var(--line);border-radius:13px;padding:18px}
.proto b{display:block;font-size:11px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--gold-deep)}
.proto ul{list-style:none;margin-top:11px;display:flex;flex-direction:column;gap:7px}
.proto li{font-size:13.5px;color:var(--body);line-height:1.5;padding-left:17px;position:relative}
.proto li::before{content:"";position:absolute;left:0;top:7px;width:5px;height:5px;border-radius:50%;background:var(--gold)}

.br-foot{padding:24px 34px;background:linear-gradient(160deg,#F6F4EE,#EFEBE1);border-top:1px solid var(--line);
  display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.br-foot p{flex:1;min-width:250px;font-size:14px;line-height:1.62;color:var(--body)}
.br-foot p b{color:var(--forest)}
@media(max-width:760px){.br-foot{padding:20px}}

/* panel comparison table */
.ptable{margin-top:40px;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;
  box-shadow:0 24px 56px -40px rgba(20,30,26,.4)}
.ptable table{width:100%;border-collapse:collapse}
.ptable th,.ptable td{padding:15px 18px;text-align:left;font-size:14px;border-bottom:1px solid var(--line)}
.ptable thead th{background:var(--forest);color:var(--cream);font-weight:650;font-size:13px;border-bottom:0}
.ptable thead th.hl{background:linear-gradient(160deg,#185550,#0F3330);position:relative}
.ptable thead th.hl::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--gold)}
.ptable tbody th{font-weight:650;color:var(--ink);font-size:13.5px;background:var(--bone);width:34%}
.ptable td{color:var(--body);text-align:center}
.ptable td.hl{background:rgba(162,142,115,.08);color:var(--ink);font-weight:650}
.ptable .yes{color:var(--sig-opt);font-weight:800;font-size:15px}
.ptable .no{color:var(--stone)}
.ptable tr:last-child th,.ptable tr:last-child td{border-bottom:0}
@media(max-width:760px){.ptable{overflow-x:auto}.ptable table{min-width:620px}}

/* ==========================================================================
   v13 — TYPOGRAPHY ALIGNED TO THE 2026 BRAND BOOK
   Newsreader 600 for display · Hanken Grotesk for everything working.
   Brand book rule: "Display serif never below 24px. Below the floor,
   Hanken Grotesk takes over — everything small is grotesk."
   ========================================================================== */
:root{
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
}
h1,h2,h3,h4{font-weight:600;letter-spacing:-.015em}
.hero h1{font-weight:600;letter-spacing:-.022em;line-height:1.03}
.sec-head h2{font-weight:600;letter-spacing:-.018em}
h1 em,h2 em,h3 em{font-weight:600}
body{letter-spacing:-.002em}
.lede,p{letter-spacing:0}

/* --- the 24px serif floor: anything smaller switches to grotesk --- */
.card h3,.tcard-body h3,.intent h3,.art h3,.guide h3,.qa h3,
.cond-body b,.jstep h3,.person .pmeta b,.t10 b,.s3 b,.gcard figcaption b,
.svc-body h3,.expbody b,.cg .cglabel b,.story-body .swho b,.tcard2 .tn,
.lp-head b,.br-label,.proto b,.rep-head .rmeta b,.mk-name h3,.instr-top b,
.pattern b,.pcard h3,.plan .pn,.rcard2 .r2top b,.loc-info h3,.mrow .mn{
  font-family:var(--sans);letter-spacing:-.012em}
.card h3,.tcard-body h3,.intent h3,.art h3,.svc-body h3{font-weight:700}
.t10 b,.s3 b{font-weight:700}
.qa h3{font-weight:700;letter-spacing:-.014em}
.pcard h3,.plan .pn{font-weight:800;letter-spacing:-.02em}

/* display serif stays serif where it is genuinely large */
.astep h3,.feature-l h2,.expbody b{font-family:var(--serif)}
.astep h3{font-weight:600}

/* quotes and editorial voice keep the serif regardless of size */
.quote .qm,.story-body .squote,.pull p,.tcard2 .tq,.r2story,.astep .agoal,
.byline-lg b{font-family:inherit}
.story-body .squote,.pull p,.tcard2 .tq{font-family:var(--serif);font-weight:400}
.byline-lg b{font-family:var(--sans);font-weight:700}

/* ==========================================================================
   v14 — INTERIOR PAGE HEADERS (distinct from the homepage)
   ========================================================================== */
.ihero{position:relative;overflow:hidden;padding:52px 0 46px;
  background:linear-gradient(168deg,#113E3A 0%,#0B2624 55%,#061715 100%)}
.ihero::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(50% 70% at 88% 0%, rgba(162,142,115,.18), transparent 62%)}
.ihero .wrap{position:relative;z-index:1}
.ihero .crumb{color:rgba(237,234,227,.55);padding-top:0;margin-bottom:18px}
.ihero .crumb a{color:rgba(237,234,227,.55)}
.ihero .crumb a:hover{color:var(--gold-lt)}
.ihero .kicker{color:var(--gold)}
.ihero .kicker::before{background:var(--gold)}
.ihero h1{font-size:52px;letter-spacing:-.022em;margin-top:14px;max-width:900px;line-height:1.04;color:#FEFCFA}
.ihero h1 em{color:var(--gold-lt)}
.ihero .isub{font-size:18.5px;line-height:1.66;color:rgba(237,234,227,.84);margin-top:18px;max-width:720px}
.ihero .imeta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.ihero .imeta span{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;
  color:var(--gold-lt);background:rgba(162,142,115,.13);border:1px solid rgba(162,142,115,.34);
  padding:8px 14px;border-radius:999px}
.ihero .icta{display:flex;gap:11px;flex-wrap:wrap;margin-top:26px}
@media(max-width:760px){.ihero{padding:34px 0 32px}.ihero h1{font-size:33px}}

/* mid-page consult block for interior pages */
.consultband{background:linear-gradient(170deg,#F8F6F4,#F3F0E8);border:1px solid var(--line);
  border-radius:22px;padding:34px;display:grid;grid-template-columns:1fr 420px;gap:38px;align-items:center;
  box-shadow:0 30px 64px -40px rgba(20,30,26,.4)}
@media(max-width:900px){.consultband{grid-template-columns:1fr;padding:26px 22px;gap:26px}}
.consultband .cbtx h3{font-size:34px;letter-spacing:-.02em;line-height:1.1}
.consultband .cbtx h3 em{color:var(--emerald)}
.consultband .cbtx p{font-size:16px;line-height:1.68;color:var(--body);margin-top:14px}
.consultband .cbtx ul{list-style:none;margin-top:18px;display:flex;flex-direction:column;gap:10px}
.consultband .cbtx li{font-size:14.5px;color:var(--body);padding-left:26px;position:relative;line-height:1.5}
.consultband .cbtx li::before{content:"";position:absolute;left:0;top:2px;width:17px;height:17px;border-radius:50%;background:var(--gold)}
.consultband .cbtx li::after{content:"✓";position:absolute;left:4px;top:1px;color:var(--forest-deep);font-size:10px;font-weight:900}
.consultband .consult{box-shadow:0 1px 2px rgba(20,30,26,.04),0 26px 54px -34px rgba(20,30,26,.45)}

/* ==========================================================================
   v15 — HIGHER CONTRAST MARKER BARS + REPORT POLISH
   ========================================================================== */
/* darker track, denser hatching, deeper gold, thicker marker */
.lptrack{background:#E2DED2;box-shadow:inset 0 1px 3px rgba(20,30,26,.16)}
.lpstd{background:repeating-linear-gradient(135deg,rgba(94,88,76,.42) 0 3px,rgba(226,222,210,.95) 3px 7px);
  border-left:1.5px solid rgba(94,88,76,.75);border-right:1.5px solid rgba(94,88,76,.75)}
.lpopt{background:linear-gradient(90deg,#A07F50,#C7AA81);
  box-shadow:0 3px 10px -2px rgba(121,99,68,.75),inset 0 1px 0 rgba(255,255,255,.35)}
.lpyou{width:5px;background:#A8291A;box-shadow:0 0 0 3px #fff,0 3px 8px rgba(20,30,26,.5)}
.lpyou.ok{background:#215E59}
.lpval{color:#A8291A;font-weight:700;font-size:14px}
.lpval.ok{color:#215E59}
.lprow{border-bottom:1px solid #E6E2D8}
.lprow:hover{background:#F7F5EF}
.lprow .lpname b{font-size:15px}

/* value flag on the marker so the number reads on the bar itself */
.lpbar{height:34px}
.lptrack,.lpstd{top:13px}
.lpopt{top:9px;height:18px}
.lpyou{top:3px;height:28px}

/* report header: stronger dials */
.brdial{width:104px;height:104px}
.brdial::before{inset:8px}
.brdial b{font-size:32px}
.br-head{padding:34px}
.br-label i{width:24px;height:24px;font-size:12px}
.br-sec{padding:32px 34px}

/* organ bars: deeper colours */
.otrack{height:11px;background:#E4E0D6;box-shadow:inset 0 1px 2px rgba(20,30,26,.14)}
.otrack i{background:linear-gradient(90deg,#215E59,#40807B)}
.otrack i.w{background:linear-gradient(90deg,#967341,#BD9D70)}
.otrack i.l{background:linear-gradient(90deg,#A8291A,#C9584A)}
.orow .ov b{font-size:13.5px;font-weight:800}

/* marker icon on the "missed markers" cards */
.mkico{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;
  margin-bottom:14px;color:var(--gold-lt);background:linear-gradient(155deg,#1B615B,#0F3330);
  box-shadow:0 10px 22px -10px rgba(15,51,48,.6)}
.mkico svg{width:25px;height:25px}

/* --- v16: therapy photo slot --- */
.tphoto{display:block;border-radius:14px;overflow:hidden;margin-bottom:20px;aspect-ratio:24/9;position:relative;background:#0C2624}
.tphoto img,.tphoto span[role=img]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  background-size:cover;background-position:center}
.tphoto .phbox{position:absolute;inset:0;padding:20px}
.detail-body .tphoto{margin-bottom:20px}

/* --- v17: articles + programs --- */
.artico{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  margin-bottom:14px;color:var(--gold-lt);background:linear-gradient(155deg,#1B615B,#0F3330);
  box-shadow:0 8px 18px -8px rgba(15,51,48,.55)}
.artico svg{width:23px;height:23px}
.mfilters a.mfilter{text-decoration:none}

.proggrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}
@media(max-width:1000px){.proggrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.proggrid{grid-template-columns:1fr}}
.prog{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px 26px;display:flex;
  flex-direction:column;box-shadow:0 2px 4px rgba(20,30,26,.03),0 24px 50px -32px rgba(20,30,26,.3);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .25s}
.prog:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:0 4px 8px rgba(20,30,26,.05),0 34px 64px -32px rgba(20,30,26,.4)}
.progico{width:54px;height:54px;border-radius:15px;display:flex;align-items:center;justify-content:center;
  margin-bottom:18px;color:var(--gold-lt);background:linear-gradient(155deg,#1B615B,#0F3330);
  box-shadow:0 10px 22px -10px rgba(15,51,48,.6)}
.progico svg{width:27px;height:27px}
.prog h3{font-size:24px;letter-spacing:-.02em;line-height:1.14}
.progsub{font-size:11.5px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--gold-deep);margin-top:9px}
.prog p{font-size:14.5px;line-height:1.62;color:var(--body);margin-top:13px}
.prog ul{list-style:none;margin-top:16px;padding-top:16px;border-top:1px solid var(--line);
  display:flex;flex-direction:column;gap:9px;flex:1}
.prog li{font-size:13.5px;color:var(--body);line-height:1.5;padding-left:21px;position:relative}
.prog li::before{content:"✓";position:absolute;left:0;color:var(--gold-deep);font-weight:900;font-size:12px}
.prog .btn{margin-top:20px}

/* ==========================================================================
   v18 — "WHAT NORMAL HIDES" comparison cards (replaces the plain gauge trio)
   ========================================================================== */
.hidecards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}
@media(max-width:1000px){.hidecards{grid-template-columns:1fr}}
.hide{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;
  box-shadow:0 2px 4px rgba(20,30,26,.04),0 26px 54px -32px rgba(20,30,26,.34);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.hide:hover{transform:translateY(-5px);box-shadow:0 4px 8px rgba(20,30,26,.06),0 36px 68px -32px rgba(20,30,26,.44)}
.hide-top{padding:22px 24px 18px;display:flex;align-items:center;gap:14px;
  background:linear-gradient(160deg,#171B19,#0B0E0D)}
.hide-top .hico{width:44px;height:44px;border-radius:12px;flex:none;display:flex;align-items:center;
  justify-content:center;color:var(--gold-lt);background:rgba(162,142,115,.16);border:1px solid rgba(162,142,115,.4)}
.hide-top .hico svg{width:24px;height:24px}
.hide-top b{display:block;font-family:var(--sans);font-size:17px;font-weight:700;color:#FEFCFA;letter-spacing:-.012em}
.hide-top span{display:block;font-family:var(--mono);font-size:11px;color:rgba(237,234,227,.66);margin-top:4px}

.hide-body{padding:24px}
.hide-verdict{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:12px;margin-bottom:20px;
  background:#FBE9E6;border:1px solid #EFC7BF}
.hide-verdict .hv1{font-family:var(--serif);font-size:30px;font-weight:600;color:#A8291A;line-height:1;letter-spacing:-.02em}
.hide-verdict .hv2{font-size:12.5px;line-height:1.45;color:#8A3325;font-weight:600}
.hide-verdict.ok{background:#E6F2EB;border-color:#BFDFCD}
.hide-verdict.ok .hv1{color:#215E59}.hide-verdict.ok .hv2{color:#2E625D}

.hbar{position:relative;height:56px;margin-bottom:6px}
.hbar .hlab{position:absolute;top:0;font-size:10px;font-weight:800;letter-spacing:.9px;text-transform:uppercase}
.htrack{position:absolute;left:0;right:0;top:24px;height:14px;border-radius:8px;background:#E2DED2;
  box-shadow:inset 0 1px 3px rgba(20,30,26,.18)}
.hstd{position:absolute;top:24px;height:14px;
  background:repeating-linear-gradient(135deg,rgba(94,88,76,.4) 0 3px,rgba(226,222,210,.95) 3px 7px);
  border-left:1.5px solid rgba(94,88,76,.7);border-right:1.5px solid rgba(94,88,76,.7)}
.hopt{position:absolute;top:20px;height:22px;border-radius:11px;
  background:linear-gradient(90deg,#A07F50,#C7AA81);box-shadow:0 3px 12px -2px rgba(121,99,68,.8),inset 0 1px 0 rgba(255,255,255,.4)}
.hopt::after{content:"OPTIMAL";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  font-size:8.5px;font-weight:800;letter-spacing:1.1px;color:#3D2F1C;white-space:nowrap}
.hyou{position:absolute;top:15px;height:32px;width:5px;border-radius:3px;background:#A8291A;z-index:4;
  transform:translateX(-50%);box-shadow:0 0 0 3px #fff,0 3px 8px rgba(20,30,26,.5)}
.hyou.ok{background:#215E59}
.hflag{position:absolute;top:0;transform:translateX(-50%);font-family:var(--mono);font-size:11px;font-weight:700;
  background:#A8291A;color:#fff;padding:4px 9px;border-radius:6px;white-space:nowrap;z-index:5}
.hflag.ok{background:#215E59}
.hscale{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;color:var(--stone);margin-top:2px}
.hide-rows{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:9px}
.hide-rows div{display:flex;justify-content:space-between;gap:12px;font-size:13px}
.hide-rows span{color:var(--stone)}
.hide-rows b{font-family:var(--mono);font-size:12.5px;color:var(--ink);font-weight:600}
.hide-rows b.gold{color:var(--gold-deep)}
.hide-note{margin-top:16px;font-size:13.5px;line-height:1.6;color:var(--body)}
.hide-note b{color:var(--forest)}

/* 13 systems cards: larger marker text */
.syscard p{font-family:var(--mono);font-size:13px !important;letter-spacing:-.2px;color:var(--body) !important;
  line-height:1.55;margin-top:10px}
.syscard h3{font-size:19px}

/* --- v19: articles hub --- */
.feat-art{display:grid;grid-template-columns:1.25fr 1fr;gap:20px;margin-top:40px}
@media(max-width:900px){.feat-art{grid-template-columns:1fr}}
.bigart{position:relative;border-radius:20px;overflow:hidden;min-height:400px;display:flex;align-items:flex-end;
  text-decoration:none;background:#0C2624;box-shadow:0 26px 56px -32px rgba(10,34,32,.5);
  transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.bigart:hover{transform:translateY(-5px);box-shadow:0 38px 72px -32px rgba(10,34,32,.6)}
.bigart img,.bigart span[role=img]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  background-size:cover;background-position:center;transition:transform .7s var(--ease)}
.bigart:hover img{transform:scale(1.05)}
.bigart .phbox{position:absolute;inset:0}
.bigart::after{content:"";position:absolute;inset:0;
  background:linear-gradient(178deg,rgba(7,18,17,.1) 30%,rgba(7,18,17,.72) 68%,rgba(7,18,17,.94) 100%)}
.bigart .bacontent{position:relative;z-index:3;padding:30px}
.bigart .batag{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;
  background:var(--gold);color:var(--forest-deep);padding:5px 11px;border-radius:999px}
.bigart h3{font-family:var(--sans);font-size:26px;font-weight:700;color:#fff;letter-spacing:-.018em;margin-top:14px;line-height:1.16}
.bigart p{font-size:14px;color:rgba(255,255,255,.86);line-height:1.6;margin-top:10px;max-width:52ch}
.bigart .bago{display:inline-flex;align-items:center;gap:7px;margin-top:14px;font-size:13px;font-weight:750;color:var(--gold-lt)}
.smallstack{display:flex;flex-direction:column;gap:20px}
.smallstack .bigart{min-height:190px}
.smallstack .bigart h3{font-size:20px}
.smallstack .bigart p{display:none}

.artindex{display:grid;grid-template-columns:repeat(3,1fr);gap:0 32px;margin-top:34px}
@media(max-width:900px){.artindex{grid-template-columns:1fr}}
.artindex a{display:flex;align-items:flex-start;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);
  text-decoration:none;color:var(--ink);transition:.2s}
.artindex a:hover{color:var(--emerald)}
.artindex a i{width:26px;height:26px;flex:none;color:var(--gold-deep);display:flex;align-items:center;justify-content:center}
.artindex a i svg{width:19px;height:19px}
.artindex a b{font-size:14.5px;font-weight:600;line-height:1.35}
.artindex a span{display:block;font-size:11px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:var(--stone);margin-top:4px}

/* ==========================================================================
   v20 — THE PERSONALIZED NUTRITION PLAN ARTIFACT
   ========================================================================== */
.planbook{background:#fff;border-radius:24px;overflow:hidden;margin-top:44px;
  box-shadow:0 6px 12px rgba(20,30,26,.06),0 50px 90px -40px rgba(20,30,26,.45)}
.pb-head{padding:30px 34px;background:linear-gradient(160deg,#113E3A,#0A211F);color:var(--cream);
  display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.pb-head .pblogo{font-family:var(--serif);font-size:12px;letter-spacing:2.6px;text-transform:uppercase;color:var(--gold)}
.pb-head h3{font-family:var(--sans);font-size:25px;font-weight:700;color:#fff;letter-spacing:-.018em;margin-top:8px}
.pb-head .pbsub{font-size:13px;color:rgba(237,234,227,.72);margin-top:7px;line-height:1.5}
.pb-head .pbwhy{margin-left:auto;flex:none;max-width:290px;background:rgba(162,142,115,.14);
  border:1px solid rgba(162,142,115,.4);border-radius:12px;padding:14px 16px}
.pb-head .pbwhy b{display:block;font-size:10px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--gold-lt)}
.pb-head .pbwhy span{display:block;font-size:12.5px;line-height:1.55;color:rgba(237,234,227,.86);margin-top:7px}
@media(max-width:820px){.pb-head{padding:24px 20px}.pb-head .pbwhy{margin-left:0;max-width:none}}

.pb-sec{padding:30px 34px;border-bottom:1px solid var(--line)}
.pb-sec:last-child{border-bottom:0}
@media(max-width:820px){.pb-sec{padding:24px 20px}}

/* seven day plan */
.week{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}
@media(max-width:1000px){.week{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.week{grid-template-columns:1fr}}
.day{background:var(--bone);border:1px solid var(--line);border-radius:13px;overflow:hidden}
.day h4{font-family:var(--sans);font-size:11px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;
  color:#fff;background:var(--forest);padding:9px 12px;text-align:center}
.day .meals{padding:12px}
.meal{padding:9px 0;border-bottom:1px dashed var(--line)}
.meal:last-child{border-bottom:0}
.meal b{display:block;font-size:9.5px;font-weight:800;letter-spacing:.9px;text-transform:uppercase;color:var(--gold-deep)}
.meal span{display:block;font-size:12.5px;line-height:1.45;color:var(--ink);margin-top:4px}
.meal em{font-style:normal;display:block;font-family:var(--mono);font-size:10px;color:var(--emerald);margin-top:5px}

/* supplement protocol */
.suppgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(max-width:820px){.suppgrid{grid-template-columns:1fr}}
.supp{display:grid;grid-template-columns:44px 1fr auto;gap:14px;align-items:center;background:var(--bone);
  border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.supp .sico{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;
  color:var(--gold-lt);background:linear-gradient(155deg,#1B615B,#0F3330)}
.supp .sico svg{width:23px;height:23px}
.supp b{display:block;font-size:14.5px;font-weight:700;color:var(--ink);line-height:1.25}
.supp span{display:block;font-size:12px;color:var(--stone);margin-top:4px;line-height:1.45}
.supp .sdose{font-family:var(--mono);font-size:12px;color:var(--forest);text-align:right;white-space:nowrap;font-weight:600}
.supp .sdose em{font-style:normal;display:block;font-size:10px;color:var(--stone);margin-top:3px}

/* tinctures */
.tinct{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media(max-width:820px){.tinct{grid-template-columns:1fr}}
.tin{background:linear-gradient(160deg,#FDFAF6,#F6F2EC);border:1px solid rgba(162,142,115,.45);
  border-left:3px solid var(--gold-deep);border-radius:12px;padding:16px 18px}
.tin b{display:block;font-size:14.5px;font-weight:700;color:var(--forest);line-height:1.25}
.tin span{display:block;font-size:12.5px;color:var(--body);line-height:1.5;margin-top:7px}
.tin em{font-style:normal;display:block;font-family:var(--mono);font-size:10.5px;color:var(--gold-deep);margin-top:8px}

/* excluded / screening */
.excl{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.excl span{font-size:12.5px;font-weight:600;color:#8A3325;background:#FBE9E6;border:1px solid #EFC7BF;
  padding:7px 13px;border-radius:999px;text-decoration:line-through}
.recipe-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
@media(max-width:900px){.recipe-row{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.recipe-row{grid-template-columns:1fr}}
.recipe{position:relative;border-radius:13px;overflow:hidden;aspect-ratio:4/3;background:#0C2624;display:flex;align-items:flex-end}
.recipe img,.recipe span[role=img]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background-size:cover;background-position:center}
.recipe .phbox{position:absolute;inset:0;padding:14px}
.recipe .rlabel{position:relative;z-index:3;padding:22px 13px 11px;width:100%;
  background:linear-gradient(180deg,rgba(7,23,22,0),rgba(7,23,22,.9));color:#fff;font-size:12.5px;font-weight:650;line-height:1.3}

/* --- v21: related articles in condition sidebars --- */
.relart{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.relart .ra{display:block;font-size:13px;font-weight:600;color:var(--emerald);text-decoration:none;
  padding:8px 0 8px 18px;position:relative;line-height:1.4;border-bottom:1px solid var(--line)}
.relart .ra:last-child{border-bottom:0}
.relart .ra::before{content:"›";position:absolute;left:0;color:var(--gold-deep);font-weight:800}
.relart .ra:hover{color:var(--forest)}

/* --- v22: amber verdict variant + cellular pathways --- */
.hide-verdict.warn{background:#F4EEE5;border-color:#DBCCB6}
.hide-verdict.warn .hv1{color:#79674F}
.hide-verdict.warn .hv2{color:#675337}
.hyou.warn{background:#967341}
.hflag.warn{background:#967341}

.pathgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:40px}
@media(max-width:1050px){.pathgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.pathgrid{grid-template-columns:1fr}}
.path{background:rgba(255,255,255,.05);border:1px solid rgba(237,234,227,.16);border-radius:16px;padding:22px 20px;
  transition:transform .28s var(--ease),border-color .25s}
.path:hover{transform:translateY(-5px);border-color:rgba(162,142,115,.5)}
.pathico{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;
  color:var(--gold-lt);background:rgba(162,142,115,.15);border:1px solid rgba(162,142,115,.4);margin-bottom:15px}
.pathico svg{width:24px;height:24px}
.path h3{font-family:var(--sans);font-size:17px;font-weight:700;color:#FEFCFA;letter-spacing:-.014em;line-height:1.25}
.path p{font-size:13px;line-height:1.55;color:rgba(237,234,227,.78);margin-top:9px}
.path .pmk{display:block;font-family:var(--mono);font-size:10.5px;color:var(--gold);margin-top:12px;
  padding-top:11px;border-top:1px solid rgba(237,234,227,.15);line-height:1.5}

/* --- v24: About hero with portrait --- */
.ihero.has-portrait .wrap{display:grid;grid-template-columns:1fr 320px;gap:48px;align-items:center}
@media(max-width:940px){.ihero.has-portrait .wrap{grid-template-columns:1fr;gap:30px}}
.iportrait{position:relative;border-radius:22px;overflow:hidden;aspect-ratio:4/5;
  box-shadow:0 8px 18px rgba(0,0,0,.24),0 40px 70px -30px rgba(0,0,0,.6);
  outline:1px solid rgba(162,142,115,.4);outline-offset:-1px}
.iportrait img{width:100%;height:100%;object-fit:cover;object-position:center 22%;display:block}
.iportrait figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 18px 15px;z-index:2;
  background:linear-gradient(180deg,rgba(7,23,22,0),rgba(7,23,22,.92));color:#fff}
.iportrait figcaption b{display:block;font-family:var(--sans);font-size:14.5px;font-weight:700;letter-spacing:-.01em}
.iportrait figcaption span{display:block;font-size:11.5px;color:rgba(237,234,227,.8);margin-top:4px;line-height:1.4}
@media(max-width:940px){.iportrait{max-width:280px}}

/* ==========================================================================
   v25 — TONGUE MAP + FOUR TRADITIONS
   ========================================================================== */
.tonguewrap{display:grid;grid-template-columns:1fr 380px;gap:40px;align-items:center;margin-top:44px}
@media(max-width:960px){.tonguewrap{grid-template-columns:1fr;gap:28px}}
.tonguecard{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;
  box-shadow:0 4px 8px rgba(20,30,26,.04),0 34px 68px -38px rgba(20,30,26,.4)}
.tonguecard svg{width:100%;height:auto;display:block}
.tzone{font-family:var(--sans);font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}
.tfood{font-family:var(--sans);font-size:12.5px;font-weight:600}
.tsub{font-family:var(--mono);font-size:10px}

.traditions{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:40px}
@media(max-width:1000px){.traditions{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.traditions{grid-template-columns:1fr}}
.trad{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 24px;
  box-shadow:0 2px 4px rgba(20,30,26,.03),0 22px 46px -30px rgba(20,30,26,.3);
  transition:transform .28s var(--ease),border-color .25s}
.trad:hover{transform:translateY(-5px);border-color:var(--gold)}
.tradico{width:50px;height:50px;border-radius:14px;display:flex;align-items:center;justify-content:center;
  color:var(--gold-lt);background:linear-gradient(155deg,#1B615B,#0F3330);margin-bottom:17px;
  box-shadow:0 10px 22px -10px rgba(15,51,48,.6)}
.tradico svg{width:26px;height:26px}
.trad h3{font-family:var(--sans);font-size:19px;font-weight:700;letter-spacing:-.016em;line-height:1.24}
.trad p{font-size:14px;line-height:1.62;color:var(--body);margin-top:11px}
.trad .tex{display:block;margin-top:14px;padding-top:13px;border-top:1px solid var(--line);
  font-family:var(--mono);font-size:11px;color:var(--gold-deep);line-height:1.55}

/* screening rebuild */
.screen{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:40px}
@media(max-width:860px){.screen{grid-template-columns:1fr}}
.scard{border-radius:18px;padding:26px;border:1px solid var(--line);background:#fff}
.scard.out{background:linear-gradient(160deg,#FDF4F2,#FBE9E6);border-color:#EFC7BF}
.scard.in{background:linear-gradient(160deg,#EEF4F2,#E6F2EB);border-color:#BFDFCD}
.scard h3{font-family:var(--sans);font-size:20px;font-weight:700;letter-spacing:-.016em}
.scard.out h3{color:#8A3325}.scard.in h3{color:#215E59}
.scard p{font-size:14px;line-height:1.62;color:var(--body);margin-top:11px}
.scard ul{list-style:none;margin-top:16px;display:flex;flex-direction:column;gap:10px}
.scard li{font-size:13.5px;line-height:1.5;padding-left:24px;position:relative;color:var(--body)}
.scard.out li::before{content:"✕";position:absolute;left:0;color:#A8291A;font-weight:900;font-size:12px}
.scard.in li::before{content:"✓";position:absolute;left:0;color:#215E59;font-weight:900;font-size:12px}
.scard li b{color:var(--ink)}

/* --- v26: article cards with imagery ---
   padding:0 applies only to image-led cards; plain cards keep their padding. */
.art{overflow:hidden}
.art.art--img{padding:0}
.artimg{position:relative;aspect-ratio:16/9;overflow:hidden;background:#0C2624;display:block}
.artimg img,.artimg span[role=img]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  background-size:cover;background-position:center;transition:transform .6s var(--ease)}
.art:hover .artimg img{transform:scale(1.06)}
.artimg .phbox{position:absolute;inset:0;padding:14px}
.artimg .aico{position:absolute;left:12px;bottom:12px;z-index:4;width:40px;height:40px;border-radius:11px;
  display:flex;align-items:center;justify-content:center;color:var(--gold-lt);
  background:rgba(7,23,22,.78);border:1px solid rgba(162,142,115,.45);backdrop-filter:blur(4px)}
.artimg .aico svg{width:21px;height:21px}
.artbody{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.art .artico{display:none}
.artsec{margin-top:52px}
.artsec:first-of-type{margin-top:0}
.artsec-head{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.artsec-head h3{font-family:var(--sans);font-size:22px;font-weight:700;letter-spacing:-.018em;white-space:nowrap}
.artsec-head span{font-family:var(--mono);font-size:11.5px;color:var(--stone);white-space:nowrap}
.artsec-head::after{content:"";flex:1;height:1px;background:var(--line)}
.artindex{grid-template-columns:repeat(3,1fr);gap:30px 32px;align-items:start}
.idxcol a{display:flex;align-items:flex-start;gap:11px;padding:11px 0;border-bottom:1px solid var(--line);
  text-decoration:none;color:var(--ink);transition:.2s}
.idxcol a:hover{color:var(--emerald)}
.idxcol a i{width:24px;height:24px;flex:none;color:var(--gold-deep);display:flex;align-items:center;justify-content:center}
.idxcol a i svg{width:18px;height:18px}
.idxcol a b{font-size:14px;font-weight:600;line-height:1.35}
@media(max-width:900px){
  .artindex{grid-template-columns:1fr;gap:26px}
  .artsec-head h3{white-space:normal}
  .artsec-head span{white-space:normal}
}
@media(max-width:600px){.mfilters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px}}

/* ==========================================================================
   v27 — HOMEPAGE HERO ON DEEP EMERALD (index only, via .hero--dark)
   ========================================================================== */
.hero--dark{position:relative;overflow:hidden;
  background:
    radial-gradient(48% 62% at 88% -6%, rgba(162,142,115,.20), transparent 62%),
    radial-gradient(52% 68% at 4% 104%, rgba(32,83,79,.28), transparent 66%),
    linear-gradient(168deg,#13443F 0%,#0C2C29 52%,#071918 100%)}
.hero--dark::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background:repeating-linear-gradient(135deg,rgba(255,255,255,.016) 0 12px,transparent 12px 24px)}
.hero--dark::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;
  background:linear-gradient(90deg,var(--emerald),var(--gold) 55%,var(--gold-lt))}
.hero--dark .inner{position:relative;z-index:2}

.hero--dark .kicker{color:var(--gold)}
.hero--dark .kicker::before{background:var(--gold)}
.hero--dark h1{color:#FEFCFA}
.hero--dark h1 em{color:var(--gold-lt);background:none;-webkit-text-fill-color:currentColor}
.hero--dark .sub{color:rgba(237,234,227,.84)}
.hero--dark .proofline{color:var(--gold-lt);font-weight:650}

.hero--dark .avail{background:rgba(162,142,115,.14);border-color:rgba(162,142,115,.42);color:var(--gold-lt)}
.hero--dark .avail i{background:var(--gold-lt);box-shadow:0 0 0 4px rgba(162,142,115,.22)}

.hero--dark .btn-line{color:#FEFCFA;border-color:rgba(237,234,227,.34);background:rgba(255,255,255,.04)}
.hero--dark .btn-line:hover{border-color:var(--gold-lt);color:var(--gold-lt);background:rgba(162,142,115,.1)}

.hero--dark .byline{border-top:1px solid rgba(237,234,227,.2)}
.hero--dark .byline b{color:#FEFCFA}
.hero--dark .byline span span{color:rgba(237,234,227,.72)}
.hero--dark .byline-lg img{
  box-shadow:0 4px 10px rgba(0,0,0,.3),0 20px 40px -18px rgba(0,0,0,.6),
             0 0 0 2px rgba(162,142,115,.75),0 0 0 5px rgba(255,255,255,.07)}

/* the white consult card carries the contrast */
.hero--dark .consult{border:0;
  box-shadow:0 8px 20px rgba(0,0,0,.24),0 44px 80px -34px rgba(0,0,0,.6),0 0 0 1px rgba(162,142,115,.28)}
.hero--dark .consult .cfree{background:rgba(32,83,79,.12);border-color:rgba(32,83,79,.36);color:var(--forest)}

@media(max-width:900px){.hero--dark::before{display:none}}

/* ==========================================================================
   v28 — WORDMARK
   The official lockup is a light geometric sans with wide tracking, not a
   serif. Jost is the closest Google-hosted match to the printed mark.
   ========================================================================== */
.logo .w1{font-family:"Jost",system-ui,sans-serif;font-size:21px;font-weight:300;
  letter-spacing:.235em;text-transform:uppercase;color:var(--forest);
  text-indent:.235em;line-height:1}
.logo .w2{font-family:"Jost",system-ui,sans-serif;font-size:9px;font-weight:400;
  letter-spacing:.34em;text-indent:.34em;color:var(--gold-deep);text-transform:uppercase}
.logo .word{gap:5px}
.hero--dark .logo .w1,.ihero .logo .w1{color:#FEFCFA}
footer .logo .w1{color:#FEFCFA}
footer .logo .w2{color:var(--gold)}
@media(max-width:640px){.logo .w1{font-size:18px;letter-spacing:.18em;text-indent:.18em}}
.iportrait.imedia{background:#0C2624}
.iportrait.imedia .phbox{position:absolute;inset:0;padding:22px}

/* ==========================================================================
   v29 — TESTING FINDER + ADVISOR
   ========================================================================== */
.finder{display:grid;grid-template-columns:1fr 460px;gap:38px;align-items:start;margin-top:44px}
@media(max-width:1000px){.finder{grid-template-columns:1fr;gap:28px}}

.advisor{background:#fff;border-radius:22px;overflow:hidden;position:sticky;top:150px;
  box-shadow:0 6px 14px rgba(20,30,26,.08),0 46px 84px -40px rgba(20,30,26,.5)}
@media(max-width:1000px){.advisor{position:static}}
.adv-top{padding:22px 26px;background:linear-gradient(160deg,#13443F,#071918);color:var(--cream);
  display:flex;align-items:center;gap:14px}
.adv-top .aico{width:44px;height:44px;border-radius:12px;flex:none;display:flex;align-items:center;
  justify-content:center;color:var(--gold-lt);background:rgba(162,142,115,.16);border:1px solid rgba(162,142,115,.42)}
.adv-top .aico svg{width:23px;height:23px}
.adv-top b{display:block;font-family:var(--sans);font-size:18px;font-weight:700;color:#fff;letter-spacing:-.014em}
.adv-top span{display:block;font-size:12px;color:rgba(237,234,227,.72);margin-top:4px}
.adv-body{padding:26px}
.adv-prog{display:flex;gap:6px;margin-bottom:20px}
.adv-prog i{height:4px;flex:1;border-radius:3px;background:var(--line);transition:background .3s}
.adv-prog i.on{background:var(--gold)}
.adv-q{font-family:var(--sans);font-size:20px;font-weight:700;letter-spacing:-.016em;line-height:1.3;color:var(--ink)}
.adv-opts{display:flex;flex-direction:column;gap:9px;margin-top:18px}
.adv-opt{text-align:left;font:inherit;font-size:14.5px;font-weight:600;color:var(--ink);background:var(--bone);
  border:1.5px solid var(--line);border-radius:12px;padding:14px 16px;cursor:pointer;transition:.2s var(--ease);
  display:flex;align-items:center;gap:12px}
.adv-opt:hover{border-color:var(--gold);background:#fff;transform:translateX(3px)}
.adv-opt i{width:9px;height:9px;border-radius:50%;background:var(--gold);flex:none}
.adv-back{margin-top:16px;font-size:12.5px;color:var(--stone);background:none;border:0;cursor:pointer;
  font-family:inherit;padding:0;text-decoration:underline}
.adv-back:hover{color:var(--emerald)}

.adv-result{display:none}
.adv-result.show{display:block;animation:fadeUp .4s var(--ease)}
.adv-rec{background:linear-gradient(160deg,#FDFAF6,#F6F2EC);border:1.5px solid rgba(162,142,115,.5);
  border-radius:14px;padding:20px}
.adv-rec .arlab{font-size:10px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--gold-deep)}
.adv-rec h4{font-family:var(--sans);font-size:24px;font-weight:800;letter-spacing:-.02em;color:var(--forest);margin-top:8px}
.adv-rec .arprice{font-family:var(--mono);font-size:14px;color:var(--gold-deep);margin-top:6px;font-weight:600}
.adv-rec p{font-size:14px;line-height:1.6;color:var(--body);margin-top:12px}
.adv-add{margin-top:16px;padding-top:16px;border-top:1px solid rgba(162,142,115,.4)}
.adv-add b{display:block;font-size:10.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--gold-deep)}
.adv-add ul{list-style:none;margin-top:10px;display:flex;flex-direction:column;gap:8px}
.adv-add li{font-size:13.5px;color:var(--body);padding-left:20px;position:relative;line-height:1.45}
.adv-add li::before{content:"+";position:absolute;left:0;color:var(--gold-deep);font-weight:900}
.adv-note{font-size:12px;color:var(--stone);line-height:1.55;margin-top:14px}

/* additional testing cards */
.testgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
@media(max-width:700px){.testgrid{grid-template-columns:1fr}}
.testcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;display:flex;
  flex-direction:column;transition:transform .28s var(--ease),border-color .25s,box-shadow .28s var(--ease);
  box-shadow:0 2px 4px rgba(20,30,26,.03),0 20px 42px -30px rgba(20,30,26,.3)}
.testcard:hover{transform:translateY(-5px);border-color:var(--gold);box-shadow:0 30px 58px -32px rgba(20,30,26,.4)}
.testcard .tcico{width:48px;height:48px;border-radius:13px;display:flex;align-items:center;justify-content:center;
  color:var(--gold-lt);background:linear-gradient(155deg,#1B615B,#0F3330);margin-bottom:16px;
  box-shadow:0 10px 20px -10px rgba(15,51,48,.55)}
.testcard .tcico svg{width:25px;height:25px}
.testcard h3{font-family:var(--sans);font-size:20px;font-weight:700;letter-spacing:-.018em;line-height:1.22}
.testcard .tcwhen{font-size:11px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--gold-deep);margin-top:9px}
.testcard p{font-size:14px;line-height:1.6;color:var(--body);margin-top:11px;flex:1}
.testcard .tcmk{display:block;font-family:var(--mono);font-size:11px;color:var(--stone);margin-top:14px;
  padding-top:12px;border-top:1px solid var(--line);line-height:1.5}

/* ==========================================================================
   v30 — NUTRITION PLAN, REBUILT AS A REAL DOCUMENT
   ========================================================================== */
.plandoc{background:#fff;border-radius:24px;overflow:hidden;margin-top:44px;
  box-shadow:0 8px 16px rgba(20,30,26,.07),0 56px 96px -40px rgba(20,30,26,.48)}

/* cover */
.pd-cover{position:relative;padding:38px 40px;color:var(--cream);
  background:radial-gradient(60% 90% at 88% 0%, rgba(162,142,115,.22), transparent 62%),
             linear-gradient(160deg,#13443F,#071918)}
.pd-cover .pdmark{font-family:"Jost",sans-serif;font-size:11px;font-weight:300;letter-spacing:.32em;
  text-transform:uppercase;color:var(--gold)}
.pd-cover h3{font-family:var(--sans);font-size:32px;font-weight:800;letter-spacing:-.022em;color:#fff;margin-top:12px;line-height:1.08}
.pd-cover .pdfor{font-size:13.5px;color:rgba(237,234,227,.76);margin-top:10px;line-height:1.55}
.pdchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.pdchips span{font-family:var(--mono);font-size:11px;color:var(--gold-lt);
  background:rgba(162,142,115,.14);border:1px solid rgba(162,142,115,.4);padding:6px 12px;border-radius:999px}
@media(max-width:760px){.pd-cover{padding:26px 20px}.pd-cover h3{font-size:24px}}

.pd-sec{padding:32px 40px;border-bottom:1px solid var(--line)}
.pd-sec:last-child{border-bottom:0}
@media(max-width:760px){.pd-sec{padding:24px 20px}}
.pd-head{display:flex;align-items:baseline;gap:14px;margin-bottom:20px;flex-wrap:wrap}
.pd-head i{width:26px;height:26px;border-radius:8px;background:var(--forest);color:var(--gold-lt);flex:none;
  display:flex;align-items:center;justify-content:center;font-style:normal;font-family:var(--sans);
  font-size:12px;font-weight:800;align-self:center}
.pd-head h4{font-family:var(--sans);font-size:21px;font-weight:700;letter-spacing:-.018em}
.pd-head span{font-size:13px;color:var(--stone);margin-left:auto}
@media(max-width:640px){.pd-head span{margin-left:0;width:100%}}

/* day strip — horizontal, readable, one row per meal */
.daystrip{border:1px solid var(--line);border-radius:14px;overflow:hidden}
.dayrow{display:grid;grid-template-columns:74px 1fr 1fr 1fr;border-bottom:1px solid var(--line)}
.dayrow:last-child{border-bottom:0}
.dayrow.head{background:var(--forest);color:#fff}
.dayrow.head div{font-family:var(--sans);font-size:11px;font-weight:800;letter-spacing:1.1px;
  text-transform:uppercase;padding:12px 14px;color:rgba(255,255,255,.9)}
.dayrow.head div:first-child{color:var(--gold-lt)}
.dayname{background:var(--bone);padding:14px;display:flex;align-items:center;justify-content:center;
  font-family:var(--sans);font-size:13px;font-weight:800;color:var(--forest);letter-spacing:.05em;
  border-right:1px solid var(--line)}
.dcell{padding:13px 14px;border-right:1px solid var(--line)}
.dcell:last-child{border-right:0}
.dcell b{display:block;font-size:13.5px;font-weight:650;color:var(--ink);line-height:1.4}
.dcell em{font-style:normal;display:inline-block;font-family:var(--mono);font-size:10px;color:#215E59;
  background:#EFF6F2;border:1px solid #CBE3D6;border-radius:5px;padding:3px 7px;margin-top:7px;line-height:1.3}
@media(max-width:820px){
  .dayrow{grid-template-columns:1fr}
  .dayrow.head{display:none}
  .dayname{justify-content:flex-start;border-right:0;border-bottom:1px solid var(--line)}
  .dcell{border-right:0;border-bottom:1px solid var(--line)}
  .dcell::before{content:attr(data-m);display:block;font-size:9.5px;font-weight:800;letter-spacing:1px;
    text-transform:uppercase;color:var(--gold-deep);margin-bottom:5px}
}

/* supplement schedule table */
.suptable{border:1px solid var(--line);border-radius:14px;overflow:hidden}
.suprow{display:grid;grid-template-columns:1.5fr 90px 1fr 1.4fr;align-items:center;border-bottom:1px solid var(--line)}
.suprow:last-child{border-bottom:0}
.suprow.head{background:var(--forest)}
.suprow.head div{font-family:var(--sans);font-size:10.5px;font-weight:800;letter-spacing:1.1px;
  text-transform:uppercase;color:rgba(255,255,255,.9);padding:12px 16px}
.suprow > div{padding:14px 16px;font-size:13.5px;color:var(--body)}
.suprow .sname{display:flex;align-items:center;gap:12px}
.suprow .sname i{width:34px;height:34px;border-radius:10px;flex:none;display:flex;align-items:center;
  justify-content:center;color:var(--gold-lt);background:linear-gradient(155deg,#1B615B,#0F3330)}
.suprow .sname i svg{width:18px;height:18px}
.suprow .sname b{font-size:14px;font-weight:700;color:var(--ink);line-height:1.25}
.suprow .sdo{font-family:var(--mono);font-size:13px;color:var(--forest);font-weight:600}
.suprow .swhen{font-family:var(--mono);font-size:11.5px;color:var(--stone)}
.suprow .swhy{font-size:12.5px;line-height:1.5}
.suprow .swhy b{color:var(--gold-deep);font-weight:700}
.suprow:nth-child(even){background:var(--bone)}
@media(max-width:820px){
  .suprow{grid-template-columns:1fr 1fr}
  .suprow.head{display:none}
  .suprow .sname{grid-column:1 / -1}
  .suprow .swhy{grid-column:1 / -1;padding-top:0}
}

/* ==========================================================================
   v31 — REPORT COMPONENTS MODELLED ON THE REAL DELIVERABLES
   ========================================================================== */

/* --- headline stats on the cover --- */
.rstats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:26px;
  border-top:1px solid rgba(162,142,115,.35);padding-top:22px}
@media(max-width:620px){.rstats{grid-template-columns:1fr;gap:16px}}
.rstat{padding-right:22px;border-right:1px solid rgba(237,234,227,.16)}
.rstat:last-child{border-right:0}
@media(max-width:620px){.rstat{border-right:0;padding-right:0}}
.rstat b{display:block;font-family:var(--serif);font-size:40px;font-weight:600;color:var(--gold-lt);line-height:1;letter-spacing:-.02em}
.rstat b small{font-size:17px;font-weight:500}
.rstat span{display:block;font-size:9.5px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;
  color:rgba(237,234,227,.62);margin-top:9px}

/* --- CHI dial + bio-age panel --- */
.chirow{display:grid;grid-template-columns:1fr 1.25fr;gap:16px}
@media(max-width:820px){.chirow{grid-template-columns:1fr}}
.chibox{background:var(--cream);border-radius:16px;padding:24px;display:flex;align-items:center;gap:20px}
.chidial{width:104px;height:104px;border-radius:50%;flex:none;position:relative;display:flex;align-items:center;justify-content:center;
  background:conic-gradient(#215E59 0 81%,#DFDACD 81% 100%)}
.chidial::before{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--cream)}
.chidial b{position:relative;font-family:var(--serif);font-size:36px;font-weight:600;color:var(--forest);letter-spacing:-.02em}
.chibox h4{font-family:var(--serif);font-size:24px;font-weight:600;color:var(--ink);letter-spacing:-.015em}
.chibox p{font-size:13px;line-height:1.55;color:var(--body);margin-top:8px}

.agebox{background:linear-gradient(160deg,#113E3A,#0A211F);border-radius:16px;padding:24px;color:var(--cream)}
.agebox .albl{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:rgba(237,234,227,.62)}
.agenums{display:flex;align-items:flex-end;gap:22px;margin-top:12px;flex-wrap:wrap}
.agenums div{position:relative}
.agenums div+div::before{content:"";position:absolute;left:-12px;top:4px;bottom:16px;width:1px;background:rgba(237,234,227,.25)}
.agenums b{display:block;font-family:var(--serif);font-size:46px;font-weight:500;line-height:1;letter-spacing:-.02em}
.agenums .bio b{color:var(--gold-lt)}
.agenums .chron b{color:rgba(237,234,227,.6)}
.agenums span{display:block;font-size:9.5px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;
  color:rgba(237,234,227,.6);margin-top:8px}
.agepill{margin-left:auto;align-self:flex-start;font-size:11.5px;font-weight:700;background:rgba(33,94,89,.55);
  border:1px solid rgba(111,187,180,.5);color:#BFE8D2;padding:6px 12px;border-radius:999px;white-space:nowrap}
.agescale{margin-top:20px;position:relative;height:26px}
.agetrack{position:absolute;left:0;right:0;top:9px;height:5px;border-radius:3px;
  background:linear-gradient(90deg,#317B75,#AD916A 55%,#B85A4B)}
.agedot{position:absolute;top:4px;width:15px;height:15px;border-radius:50%;background:#fff;
  border:3px solid var(--forest);transform:translateX(-50%);box-shadow:0 2px 6px rgba(0,0,0,.4)}
.agetick{position:absolute;top:2px;width:3px;height:19px;border-radius:2px;background:rgba(237,234,227,.85);transform:translateX(-50%)}
.agescale .amin,.agescale .amax{position:absolute;top:20px;font-family:var(--mono);font-size:9.5px;color:rgba(237,234,227,.55)}
.agescale .amin{left:0}.agescale .amax{right:0}
.agenote{font-size:10.5px;line-height:1.5;color:rgba(237,234,227,.55);margin-top:22px}

/* --- cellular system bars with status --- */
.cellsys{display:flex;flex-direction:column;gap:11px}
.csrow{display:grid;grid-template-columns:220px 1fr 46px;gap:16px;align-items:center}
@media(max-width:700px){.csrow{grid-template-columns:1fr 46px}.csrow .cstrack{grid-column:1 / -1;order:3}}
.csrow .csn b{display:block;font-size:14.5px;font-weight:650;color:var(--ink);line-height:1.25}
.csrow .csn span{display:block;font-size:9.5px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;
  color:#A8291A;margin-top:4px}
.cstrack{height:9px;border-radius:5px;background:#E4E0D6;overflow:hidden}
.cstrack i{display:block;height:100%;border-radius:5px;transition:width 1.2s var(--ease)}
.cstrack i.lo{background:linear-gradient(90deg,#A8291A,#C9584A)}
.cstrack i.mid{background:linear-gradient(90deg,#967341,#BDA078)}
.cstrack i.hi{background:linear-gradient(90deg,#215E59,#40807B)}
.csval{font-family:var(--serif);font-size:24px;font-weight:600;text-align:right;letter-spacing:-.02em}
.csval.lo{color:#A8291A}.csval.mid{color:#967341}.csval.hi{color:var(--forest)}

/* --- key biomarker grid --- */
.kbgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
@media(max-width:820px){.kbgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.kbgrid{grid-template-columns:1fr}}
.kb{padding:16px 18px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.kb:nth-child(3n){border-right:0}
@media(max-width:820px){.kb:nth-child(3n){border-right:1px solid var(--line)}.kb:nth-child(2n){border-right:0}}
.kb .kbtop{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.kb .kbn{font-size:13px;font-weight:700;color:var(--ink);line-height:1.3}
.kb .kbv{font-family:var(--serif);font-size:25px;font-weight:600;letter-spacing:-.02em;white-space:nowrap}
.kb .kbv em{font-style:normal;font-family:var(--sans);font-size:11px;font-weight:600;color:var(--stone)}
.kb .kbr{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}
.kb .kbopt{font-size:11px;color:var(--stone)}

/* --- organ scoreboard --- */
.scoreboard{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:900px){.scoreboard{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.scoreboard{grid-template-columns:1fr}}
.sbcard{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:20px}
.sbtop{display:flex;align-items:center;gap:13px}
.sbdial{width:56px;height:56px;border-radius:50%;flex:none;position:relative;display:flex;align-items:center;justify-content:center}
.sbdial::before{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--paper)}
.sbdial b{position:relative;font-family:var(--serif);font-size:20px;font-weight:600;letter-spacing:-.02em}
.sbtop .sbn{display:flex;align-items:center;gap:8px;font-family:var(--serif);font-size:19px;font-weight:600;letter-spacing:-.015em;color:var(--ink)}
.sbtop .sbn svg{width:19px;height:19px;color:var(--gold-deep)}
.sbdrv{margin-top:16px;padding-top:13px;border-top:1px solid var(--line)}
.sbdrv b{display:block;font-size:9.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--stone)}
.sbdrv p{font-family:var(--mono);font-size:11.5px;line-height:1.6;color:var(--ink);margin-top:8px}
.sbdrv .up{color:#A8291A;font-weight:700}.sbdrv .dn{color:#967341;font-weight:700}
.sbread{font-size:12.5px;line-height:1.55;color:var(--stone);margin-top:11px}

/* --- ranked markers --- */
.ranked{display:grid;grid-template-columns:repeat(2,1fr);gap:0 30px}
@media(max-width:820px){.ranked{grid-template-columns:1fr}}
.rkrow{display:grid;grid-template-columns:30px 1fr auto;gap:13px;align-items:center;
  padding:13px 0;border-bottom:1px solid var(--line)}
.rknum{font-family:var(--serif);font-size:19px;font-weight:600;color:var(--stone);text-align:right}
.rknum i{font-style:normal;display:block;font-size:11px;line-height:1}
.rknum i.up{color:#A8291A}.rknum i.dn{color:#967341}
.rkname b{display:block;font-size:14px;font-weight:700;color:var(--ink);line-height:1.3}
.rkname span{display:block;font-size:11.5px;color:var(--stone);margin-top:3px;line-height:1.4}
.rkval{text-align:right;white-space:nowrap}
.rkval b{font-family:var(--mono);font-size:13px;font-weight:600;color:var(--ink)}
.rkval b em{font-style:normal;color:var(--stone)}

/* --- the cascade --- */
.cascade{display:flex;flex-direction:column;gap:0}
.cinputs{display:grid;grid-template-columns:1fr 40px 1fr;gap:0;align-items:center}
@media(max-width:700px){.cinputs{grid-template-columns:1fr}}
.cinput{background:var(--cream);border:1px solid var(--line);border-radius:13px;padding:17px 19px}
.cinput b{display:block;font-size:14.5px;font-weight:700;color:var(--ink)}
.cinput span{display:block;font-size:12.5px;color:var(--body);margin-top:6px;line-height:1.5}
.cinput em{font-style:normal;display:block;font-family:var(--mono);font-size:11px;color:var(--gold-deep);margin-top:8px}
.cplus{text-align:center;font-family:var(--serif);font-size:26px;color:var(--gold-deep)}
@media(max-width:700px){.cplus{padding:8px 0}}
.cstep{display:grid;grid-template-columns:78px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--line);position:relative}
.cstep:first-of-type{border-top:1px solid var(--line);margin-top:20px}
.cstepn{font-size:9.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--gold-deep);padding-top:3px}
.cstep b{display:block;font-size:15.5px;font-weight:700;color:var(--ink);line-height:1.3}
.cstep p{font-size:13.5px;line-height:1.6;color:var(--body);margin-top:7px}
.cstep .cmap{display:inline-block;font-family:var(--mono);font-size:11px;color:var(--emerald);
  background:#EFF6F2;border:1px solid #CBE3D6;border-radius:6px;padding:4px 9px;margin-top:9px}
.goodnews{background:linear-gradient(160deg,#EEF4F2,#E6F2EB);border:1px solid #BFDFCD;border-left:3px solid #215E59;
  border-radius:13px;padding:20px;margin-top:22px}
.goodnews b{display:block;font-size:10.5px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:#215E59}
.goodnews p{font-size:14px;line-height:1.65;color:var(--body);margin-top:9px}

/* --- 90 day plan table --- */
.plan90{border:1px solid var(--line);border-radius:14px;overflow:hidden}
.p90row{display:grid;grid-template-columns:1fr 1.3fr 1.6fr 1fr;border-bottom:1px solid var(--line)}
.p90row:last-child{border-bottom:0}
.p90row.head{background:var(--forest)}
.p90row.head div{font-size:9.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;
  color:rgba(255,255,255,.9);padding:12px 16px}
.p90row > div{padding:14px 16px;font-size:13px;color:var(--body);line-height:1.5}
.p90row .p90l{font-weight:700;color:var(--ink);font-size:13.5px}
.p90row .p90rt{font-family:var(--mono);font-size:11.5px;color:var(--gold-deep)}
.p90row:nth-child(even){background:var(--bone)}
@media(max-width:860px){
  .p90row{grid-template-columns:1fr 1fr}.p90row.head{display:none}
  .p90row .p90l{grid-column:1 / -1}.p90row > div:nth-child(3){grid-column:1 / -1}
}

/* --- personal note from Dr Axe --- */
.axenote{background:linear-gradient(165deg,#FDFAF6,#F5F0E9);border:1px solid rgba(162,142,115,.5);
  border-radius:18px;padding:30px 32px;display:grid;grid-template-columns:96px 1fr;gap:24px;align-items:start}
@media(max-width:640px){.axenote{grid-template-columns:1fr;gap:16px;padding:24px}}
.axenote img{width:96px;height:96px;border-radius:50%;object-fit:cover;
  box-shadow:0 4px 12px rgba(20,30,26,.18),0 0 0 2px rgba(162,142,115,.6)}
.axenote .anlbl{font-size:10px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--gold-deep)}
.axenote p{font-family:var(--serif);font-size:16.5px;line-height:1.72;color:var(--ink);margin-top:11px}
.axenote .ansig{font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--gold-deep);margin-top:16px}
/* an odd last specialty card spans the row */
.testgrid > .testcard:last-child:nth-child(odd){grid-column:1 / -1}
@media(max-width:700px){.testgrid > .testcard:last-child:nth-child(odd){grid-column:auto}}

/* ==========================================================================
   v32 — NUTRITION PROTOCOL, MODELLED ON THE REAL DELIVERABLE
   ========================================================================== */
.pd-cover .pdmeta{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:26px;
  border-top:1px solid rgba(162,142,115,.35);padding-top:20px}
@media(max-width:760px){.pd-cover .pdmeta{grid-template-columns:repeat(2,1fr);gap:16px 0}}
.pdm{padding-right:20px;border-right:1px solid rgba(237,234,227,.16)}
.pdm:last-child{border-right:0}
.pdm .pdmk{font-size:9px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--gold)}
.pdm b{display:block;font-family:var(--sans);font-size:16px;font-weight:700;color:#fff;margin-top:9px;line-height:1.25}
.pdm span{display:block;font-family:var(--mono);font-size:10.5px;color:rgba(237,234,227,.6);margin-top:6px;line-height:1.5}

.strategy{font-size:15.5px;line-height:1.78;color:var(--body)}
.strategy b{color:var(--ink)}
.strategy + .strategy{margin-top:14px}

.movebox{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
@media(max-width:820px){.movebox{grid-template-columns:1fr}}
.mvb{border-radius:14px;padding:20px 22px;border:1px solid}
.mvb.moves{background:linear-gradient(160deg,#FDFAF6,#F6F2EC);border-color:rgba(162,142,115,.5)}
.mvb.keeps{background:linear-gradient(160deg,#EEF4F2,#E6F2EB);border-color:#BFDFCD}
.mvb b{display:block;font-size:10px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase}
.mvb.moves b{color:var(--gold-deep)}.mvb.keeps b{color:#215E59}
.mvb p{font-size:14px;line-height:1.68;color:var(--body);margin-top:10px}
.mvb p strong{color:var(--ink);font-weight:700}

.onething{background:linear-gradient(160deg,#FDF4F2,#FBE9E6);border:1px solid #EFC7BF;border-left:3px solid #A8291A;
  border-radius:14px;padding:22px 24px;margin-top:20px}
.onething b{display:block;font-size:10px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:#8A3325}
.onething p{font-size:14.5px;line-height:1.7;color:var(--body);margin-top:10px}
.onething p strong{color:#8A3325;font-weight:700}

/* key markers table */
.kmt{border:1px solid var(--line);border-radius:14px;overflow:hidden}
.kmrow{display:grid;grid-template-columns:1.3fr 110px 100px 2.4fr;border-bottom:1px solid var(--line)}
.kmrow:last-child{border-bottom:0}
.kmrow.head{background:var(--forest)}
.kmrow.head div{font-size:9.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;
  color:rgba(255,255,255,.9);padding:12px 16px}
.kmrow > div{padding:14px 16px;font-size:13px;line-height:1.55;color:var(--body)}
.kmrow .kmn{font-weight:700;color:var(--ink);font-size:13.5px}
.kmrow .kmy{font-family:var(--mono);font-size:13px;font-weight:700;color:#A8291A}
.kmrow .kmt2{font-family:var(--mono);font-size:13px;font-weight:700;color:#215E59}
.kmrow:nth-child(even){background:var(--bone)}
@media(max-width:860px){
  .kmrow{grid-template-columns:1fr 90px 90px}.kmrow.head{display:none}
  .kmrow > div:last-child{grid-column:1 / -1;padding-top:0}
}

/* foods by category */
.foodcats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:900px){.foodcats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.foodcats{grid-template-columns:1fr}}
.fcat{background:var(--bone);border:1px solid var(--line);border-radius:13px;padding:18px}
.fcat .fch{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.fcat b{font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--forest)}
.fcat .fmk{font-family:var(--mono);font-size:10.5px;color:var(--gold-deep)}
.fcat ul{list-style:none;margin-top:12px;display:flex;flex-direction:column;gap:6px}
.fcat li{font-size:13px;color:var(--body);padding-left:15px;position:relative;line-height:1.45}
.fcat li::before{content:"";position:absolute;left:0;top:7px;width:5px;height:5px;border-radius:50%;background:var(--gold)}

.avoid{border:1px solid #EFC7BF;border-radius:14px;overflow:hidden}
.avrow{display:grid;grid-template-columns:1fr 2fr;border-bottom:1px solid #F2D8D2}
.avrow:last-child{border-bottom:0}
.avrow.head{background:#8A3325}
.avrow.head div{font-size:9.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:#fff;padding:11px 16px}
.avrow > div{padding:13px 16px;font-size:13px;line-height:1.55;color:var(--body)}
.avrow .avn{font-weight:700;color:#8A3325}
.avrow:nth-child(even){background:#FDF6F4}
@media(max-width:700px){.avrow{grid-template-columns:1fr}.avrow.head{display:none}.avrow>div:last-child{padding-top:0}}

/* protein badge on the meal plan */
.dcell .pg{display:inline-block;font-family:var(--mono);font-size:10px;font-weight:700;color:var(--forest);
  background:#EFF6F2;border:1px solid #CBE3D6;border-radius:5px;padding:2px 6px;margin-left:6px}
.daytotal{font-family:var(--mono);font-size:10px;color:var(--gold-deep);margin-top:4px;display:block}

/* ranked supplements */
.suprank{border:1px solid var(--line);border-radius:14px;overflow:hidden}
.srrow{display:grid;grid-template-columns:38px 1.2fr 1fr 2.2fr;border-bottom:1px solid var(--line);align-items:center}
.srrow:last-child{border-bottom:0}
.srrow.head{background:var(--forest)}
.srrow.head div{font-size:9.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;
  color:rgba(255,255,255,.9);padding:12px 14px}
.srrow > div{padding:14px;font-size:13px;line-height:1.55;color:var(--body)}
.srrow .srn{font-family:var(--serif);font-size:19px;font-weight:600;color:var(--gold-deep);text-align:center}
.srrow .srname{font-weight:700;color:var(--ink);font-size:13.5px}
.srrow .srdose{font-family:var(--mono);font-size:12px;color:var(--forest)}
.srrow:nth-child(even){background:var(--bone)}
@media(max-width:860px){
  .srrow{grid-template-columns:38px 1fr}.srrow.head{display:none}
  .srrow .srdose{grid-column:2}.srrow > div:last-child{grid-column:1 / -1;padding-top:0}
}

/* ==========================================================================
   v33 — 3D DOCUMENT PREVIEW (one page, tilted, page-stack behind)
   ========================================================================== */
.docshow{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;margin-top:44px}
@media(max-width:1000px){.docshow{grid-template-columns:1fr;gap:40px}}
.docstage{perspective:1600px;position:relative;padding:10px 0 34px}
.doc3d{position:relative;transform:rotateY(-9deg) rotateX(2.5deg);transform-style:preserve-3d;
  transition:transform .6s var(--ease)}
.docstage:hover .doc3d{transform:rotateY(-4deg) rotateX(1deg)}
.doc3d::before,.doc3d::after{content:"";position:absolute;inset:0;border-radius:6px;background:#F2EFE7;
  border:1px solid rgba(20,30,26,.1)}
.doc3d::before{transform:translateZ(-14px) translate(15px,13px);opacity:.55}
.doc3d::after{transform:translateZ(-28px) translate(29px,25px);opacity:.3}
.docpage{position:relative;background:#FCFBFA;border-radius:6px;overflow:hidden;aspect-ratio:8.5/11;
  box-shadow:0 3px 8px rgba(20,30,26,.14),0 30px 60px -18px rgba(20,30,26,.45),0 70px 110px -40px rgba(20,30,26,.4);
  border:1px solid rgba(20,30,26,.09);padding:26px 24px;display:flex;flex-direction:column}
@media(max-width:520px){.docpage{padding:16px 14px}}
.dpbrand{font-family:"Jost",sans-serif;font-size:6.5px;font-weight:300;letter-spacing:.28em;text-transform:uppercase;
  color:var(--gold-deep)}
.dph{font-family:var(--sans);font-size:17px;font-weight:800;letter-spacing:-.02em;color:var(--forest);
  margin-top:7px;line-height:1.12}
.dpsub{font-size:7.5px;color:var(--stone);margin-top:5px;line-height:1.5}
.dprule{height:1px;background:var(--line);margin:12px 0}
.dpsec{font-size:6.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:6px}
.dprow{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:4.5px 0;
  border-bottom:1px solid #EEEAE0;font-size:8px}
.dprow b{font-weight:700;color:var(--ink)}
.dprow .dpv{font-family:var(--mono);font-size:7.5px;font-weight:700;color:#A8291A}
.dprow .dpv.ok{color:#215E59}
.dprow .dpt{font-family:var(--mono);font-size:7px;color:var(--stone)}
.dpmeal{display:grid;grid-template-columns:26px 1fr auto;gap:8px;padding:4.5px 0;border-bottom:1px solid #EEEAE0;font-size:8px}
.dpmeal i{font-style:normal;font-weight:800;color:var(--gold-deep);font-size:7px;letter-spacing:.08em}
.dpmeal span{color:var(--body);line-height:1.35}
.dpmeal em{font-style:normal;font-family:var(--mono);font-size:6.5px;color:var(--forest);white-space:nowrap}
.dpnote{margin-top:auto;padding-top:10px;border-top:1px solid var(--line);font-size:7px;color:var(--stone);
  display:flex;justify-content:space-between;gap:10px}
.dpband{background:linear-gradient(160deg,#13443F,#071918);border-radius:5px;padding:9px 11px;margin:10px 0;color:var(--cream)}
.dpband b{display:block;font-size:7px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.dpband span{display:block;font-size:8px;line-height:1.5;color:rgba(237,234,227,.85);margin-top:4px}
.docpages{position:absolute;right:-10px;bottom:14px;z-index:5;background:var(--gold);color:var(--forest-deep);
  font-size:10.5px;font-weight:800;letter-spacing:.06em;padding:8px 14px;border-radius:999px;
  box-shadow:0 8px 20px -6px rgba(20,30,26,.5);white-space:nowrap}

.docwhat h3{font-family:var(--sans);font-size:32px;font-weight:800;letter-spacing:-.022em;line-height:1.12}
.docwhat > p{font-size:16px;line-height:1.72;color:var(--body);margin-top:14px}
.docwhat ul{list-style:none;margin-top:22px;display:flex;flex-direction:column;gap:12px}
.docwhat li{display:flex;gap:13px;align-items:flex-start;font-size:15px;line-height:1.55;color:var(--body)}
.docwhat li i{width:22px;height:22px;border-radius:7px;flex:none;background:var(--gold);color:var(--forest-deep);
  display:flex;align-items:center;justify-content:center;font-style:normal;font-size:11px;font-weight:900;margin-top:1px}
.docwhat li b{color:var(--ink);font-weight:700}
.band-forest .docwhat h3{color:#FEFCFA}
.band-forest .docwhat > p,.band-forest .docwhat li{color:rgba(237,234,227,.86)}
.band-forest .docwhat li b{color:#FEFCFA}

/* compact marker lookup */
.mklookup details{border:1px solid var(--line);border-radius:12px;background:var(--paper);margin-bottom:9px;overflow:hidden}
.mklookup summary{list-style:none;cursor:pointer;padding:15px 18px;display:flex;align-items:center;gap:12px;
  font-family:var(--sans);font-size:15px;font-weight:700;color:var(--ink)}
.mklookup summary::-webkit-details-marker{display:none}
.mklookup summary::after{content:"+";margin-left:auto;font-size:19px;color:var(--gold-deep);font-weight:400;line-height:1}
.mklookup details[open] summary::after{content:"–"}
.mklookup summary i{width:30px;height:30px;border-radius:9px;flex:none;display:flex;align-items:center;justify-content:center;
  color:var(--gold-lt);background:linear-gradient(155deg,#1B615B,#0F3330)}
.mklookup summary i svg{width:16px;height:16px}
.mklookup summary span{font-family:var(--mono);font-size:11px;color:var(--stone);font-weight:400;margin-left:6px}
.mklookup .mkbody{padding:0 18px 16px}
/* compact search-first marker library */
.mempty{text-align:center;font-size:14px;color:var(--stone);padding:26px 0 6px;line-height:1.6}
#library .mtable{max-height:430px;overflow-y:auto;margin-top:16px}
#library .mcount{margin-top:12px}
/* the tilted document can push past the viewport on narrow screens */
@media(max-width:760px){
  .docstage{overflow:hidden;padding:6px 4px 30px}
  .doc3d{transform:none}
  .doc3d::before,.doc3d::after{display:none}
  .docpages{right:6px;bottom:6px;font-size:9.5px;padding:6px 11px}
}

/* --- v34: schedule-bloodwork band + advisor pairing --- */
.schedband{background:linear-gradient(160deg,#13443F,#071918);border-radius:20px;padding:32px 36px;
  display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;color:var(--cream);
  box-shadow:0 30px 62px -34px rgba(10,34,32,.6)}
@media(max-width:860px){.schedband{grid-template-columns:1fr;padding:26px 22px;gap:22px}}
.schedband .sbk{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold)}
.schedband h3{font-family:var(--sans);font-size:30px;font-weight:800;letter-spacing:-.022em;color:#FEFCFA;margin-top:10px;line-height:1.14}
.schedband p{font-size:15.5px;line-height:1.68;color:rgba(237,234,227,.84);margin-top:11px;max-width:62ch}
.schedband .sbfacts{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.schedband .sbfacts span{font-size:12px;font-weight:600;color:var(--gold-lt);background:rgba(162,142,115,.14);
  border:1px solid rgba(162,142,115,.38);padding:7px 13px;border-radius:999px}
.schedband .sbcta{display:flex;flex-direction:column;gap:10px;flex:none;min-width:250px}
@media(max-width:860px){.schedband .sbcta{min-width:0}}

.libpair{display:grid;grid-template-columns:1fr 340px;gap:32px;align-items:start;margin-top:26px}
@media(max-width:960px){.libpair{grid-template-columns:1fr;gap:24px}}
.libadv{background:linear-gradient(160deg,#FDFAF6,#F6F2EC);border:1.5px solid rgba(162,142,115,.5);
  border-radius:18px;padding:26px;text-align:center}
.libadv .laico{width:52px;height:52px;border-radius:14px;margin:0 auto 15px;display:flex;align-items:center;
  justify-content:center;color:var(--gold-lt);background:linear-gradient(155deg,#1B615B,#0F3330);
  box-shadow:0 10px 22px -10px rgba(15,51,48,.6)}
.libadv .laico svg{width:27px;height:27px}
.libadv h3{font-family:var(--sans);font-size:21px;font-weight:800;letter-spacing:-.02em;line-height:1.2}
.libadv p{font-size:14px;line-height:1.6;color:var(--body);margin-top:11px}
.libadv .btn{margin-top:16px}
.libadv small{display:block;font-size:11.5px;color:var(--stone);margin-top:12px;line-height:1.5}

/* ==========================================================================
   v35 — ARTICLE INDEX: searchable, topic-filtered, alphabetical
   ========================================================================== */
.idxwrap{background:var(--paper);border:1px solid var(--line);border-radius:20px;overflow:hidden;margin-top:34px;
  box-shadow:0 2px 4px rgba(20,30,26,.03),0 26px 54px -34px rgba(20,30,26,.3)}
.idxbar{padding:22px 26px;background:linear-gradient(160deg,#F8F6F4,#F3F0E8);border-bottom:1px solid var(--line)}
.idxsearch{position:relative}
.idxsearch input{width:100%;padding:14px 16px 14px 44px;border:1.5px solid var(--line);border-radius:12px;
  font-family:var(--sans);font-size:15px;background:#fff;outline:none}
.idxsearch input:focus{border-color:var(--emerald)}
.idxsearch svg{position:absolute;left:15px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--stone)}
.idxtabs{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}
.idxtab{font:inherit;font-size:13px;font-weight:650;color:var(--body);background:#fff;border:1.5px solid var(--line);
  border-radius:999px;padding:8px 14px;cursor:pointer;transition:.18s var(--ease);white-space:nowrap}
.idxtab:hover{border-color:var(--gold);color:var(--emerald)}
.idxtab.is-on{background:var(--forest);border-color:var(--forest);color:#fff}
.idxtab span{opacity:.6;margin-left:5px;font-family:var(--mono);font-size:11px}
.idxtab.is-on span{opacity:.75}

.idxlist{max-height:520px;overflow-y:auto}
.idxgroup{border-bottom:1px solid var(--line)}
.idxgroup:last-child{border-bottom:0}
.idxletter{position:sticky;top:0;z-index:2;background:var(--cream);padding:9px 26px;font-family:var(--sans);
  font-size:11px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;color:var(--gold-deep);
  border-bottom:1px solid var(--line)}
.idxitem{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:14px 26px;
  text-decoration:none;color:var(--ink);border-bottom:1px solid #F2EFE7;transition:background .16s}
.idxitem:last-child{border-bottom:0}
.idxitem:hover{background:var(--bone)}
.idxitem b{font-size:15px;font-weight:650;line-height:1.4}
.idxitem:hover b{color:var(--emerald)}
.idxitem .idxcat{font-size:10.5px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--gold-deep);
  white-space:nowrap;background:rgba(162,142,115,.12);border:1px solid rgba(162,142,115,.35);padding:5px 10px;border-radius:999px}
@media(max-width:600px){
  .idxitem{grid-template-columns:1fr;gap:7px}
  .idxitem .idxcat{justify-self:start}
  .idxletter,.idxitem{padding-left:18px;padding-right:18px}
}
.idxfoot{padding:14px 26px;background:var(--bone);border-top:1px solid var(--line);
  display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.idxcount{font-family:var(--mono);font-size:12px;color:var(--stone)}
.idxnone{padding:36px 26px;text-align:center;color:var(--stone);font-size:14.5px}

/* --- v36: per-condition testimonial --- */
.ctestim{margin-top:26px;background:linear-gradient(160deg,#F8F6F4,#F4F1E9);border:1px solid var(--line);
  border-left:3px solid var(--gold-deep);border-radius:16px;padding:24px 26px;
  display:grid;grid-template-columns:1fr 250px;gap:26px;align-items:center}
@media(max-width:860px){.ctestim{grid-template-columns:1fr;gap:20px;padding:20px}}
.ctestim .ctlab{display:flex;align-items:center;gap:9px;font-size:10px;font-weight:800;letter-spacing:1.3px;
  text-transform:uppercase;color:var(--gold-deep)}
.ctestim .ctstars{display:flex;gap:2px}
.ctestim .ctstars svg{width:13px;height:13px;color:#BB8D4D}
.ctestim blockquote{font-family:var(--serif);font-size:17.5px;line-height:1.66;color:var(--ink);margin-top:12px}
.ctestim .ctres{display:inline-block;font-family:var(--mono);font-size:11.5px;color:#215E59;background:#EFF6F2;
  border:1px solid #BFDFCD;border-radius:7px;padding:6px 11px;margin-top:14px;line-height:1.4}
.ctestim .ctwho{font-size:12.5px;color:var(--stone);margin-top:12px}
.ctestim .ctwho b{color:var(--ink);font-weight:700}
.ctvid{position:relative;border-radius:13px;overflow:hidden;aspect-ratio:4/3;background:#0C2624;
  border:0;padding:0;cursor:pointer;display:block;width:100%}
.ctvid .phbox{position:absolute;inset:0;padding:14px}
.ctvid .phbox b{font-size:12.5px}
.ctvid .phbox span:not(.phtag){font-size:10px}
.ctvid .ctplay{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);z-index:3;width:44px;height:44px;
  border-radius:50%;background:rgba(162,142,115,.95);display:flex;align-items:center;justify-content:center}
.ctvid .ctplay svg{width:16px;height:16px;color:var(--forest-deep);margin-left:2px}
.ctvid .ctcap{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:20px 12px 10px;
  background:linear-gradient(180deg,rgba(7,23,22,0),rgba(7,23,22,.9));color:#fff;font-size:11.5px;font-weight:650}

/* --- v37: additional quizzes --- */
.quizmenu{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}
@media(max-width:1000px){.quizmenu{grid-template-columns:1fr}}
.qcard{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px 26px;display:flex;
  flex-direction:column;transition:transform .3s var(--ease),border-color .25s,box-shadow .3s var(--ease);
  box-shadow:0 2px 4px rgba(20,30,26,.03),0 24px 50px -32px rgba(20,30,26,.3)}
.qcard:hover{transform:translateY(-6px);border-color:var(--gold);box-shadow:0 34px 64px -32px rgba(20,30,26,.4)}
.qcard .qcico{width:54px;height:54px;border-radius:15px;display:flex;align-items:center;justify-content:center;
  color:var(--gold-lt);background:linear-gradient(155deg,#1B615B,#0F3330);margin-bottom:18px;
  box-shadow:0 10px 22px -10px rgba(15,51,48,.6)}
.qcard .qcico svg{width:27px;height:27px}
.qcard .qctag{font-size:10.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--gold-deep)}
.qcard h3{font-family:var(--sans);font-size:23px;font-weight:800;letter-spacing:-.02em;line-height:1.18;margin-top:9px}
.qcard p{font-size:14.5px;line-height:1.62;color:var(--body);margin-top:11px;flex:1}
.qcard .qcmeta{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.qcard .qcmeta span{font-family:var(--mono);font-size:10.5px;color:var(--gold-deep);background:rgba(162,142,115,.12);
  border:1px solid rgba(162,142,115,.34);padding:5px 10px;border-radius:999px}
.qcard .btn{margin-top:18px}

/* ==========================================================================
   v38 — LONG-FORM ARTICLE
   ========================================================================== */
.artwrap{display:grid;grid-template-columns:250px minmax(0,1fr);gap:56px;align-items:start}
@media(max-width:1000px){.artwrap{grid-template-columns:1fr;gap:30px}}
.arttoc{position:sticky;top:150px}
@media(max-width:1000px){.arttoc{position:static;background:var(--bone);border:1px solid var(--line);
  border-radius:14px;padding:20px}}
.arttoc b{display:block;font-size:10.5px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;
  color:var(--gold-deep);margin-bottom:13px}
.arttoc a{display:block;font-size:13.5px;line-height:1.45;color:var(--stone);text-decoration:none;
  padding:7px 0 7px 13px;border-left:2px solid var(--line);transition:.2s}
.arttoc a:hover{color:var(--emerald);border-left-color:var(--gold)}
.arttoc a.is-on{color:var(--forest);font-weight:650;border-left-color:var(--gold)}

.prose{max-width:none}
.prose h2{font-family:var(--sans);font-size:32px;font-weight:800;letter-spacing:-.022em;line-height:1.16;
  margin-top:52px;scroll-margin-top:150px}
.prose h2:first-child{margin-top:0}
.prose h3{font-family:var(--sans);font-size:21px;font-weight:700;letter-spacing:-.016em;margin-top:32px;line-height:1.25}
.prose p{font-size:17px;line-height:1.78;color:var(--body);margin-top:16px}
.prose p.plead{font-size:19.5px;line-height:1.72;color:var(--ink);max-width:none}
.prose strong{color:var(--ink);font-weight:700}
.prose ul,.prose ol{margin-top:16px;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:11px}
.prose li{font-size:16.5px;line-height:1.7;color:var(--body);padding-left:26px;position:relative}
.prose ul li::before{content:"";position:absolute;left:2px;top:11px;width:7px;height:7px;border-radius:50%;background:var(--gold)}
.prose ol{counter-reset:n}
.prose ol li{counter-increment:n}
.prose ol li::before{content:counter(n);position:absolute;left:0;top:2px;width:19px;height:19px;border-radius:50%;
  background:var(--forest);color:#fff;font-size:10.5px;font-weight:800;display:flex;align-items:center;justify-content:center}
.prose a{color:var(--emerald);font-weight:600}

.keybox{background:linear-gradient(160deg,#FDFAF6,#F5F0E9);border:1.5px solid rgba(162,142,115,.5);
  border-radius:18px;padding:28px 30px;margin-top:8px}
.keybox > b{display:block;font-size:10.5px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--gold-deep)}
.keybox li b{font-weight:700;color:var(--ink)}
.keybox ul{margin-top:14px}
.keybox li{font-size:16px}

.callout{border-radius:16px;padding:24px 26px;margin-top:28px;border:1px solid}
.callout.warn{background:linear-gradient(160deg,#FDF4F2,#FBE9E6);border-color:#EFC7BF;border-left:3px solid #A8291A}
.callout.note{background:linear-gradient(160deg,#EEF4F2,#E6F2EB);border-color:#BFDFCD;border-left:3px solid #215E59}
.callout.axe{background:linear-gradient(160deg,#F8F6F4,#F3F0E8);border-color:var(--line);border-left:3px solid var(--gold-deep)}
.callout > b.clab{display:block;font-size:10.5px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;margin-bottom:9px}
.callout.warn b.clab{color:#8A3325}.callout.note b.clab{color:#215E59}.callout.axe b.clab{color:var(--gold-deep)}
.callout p{margin-top:0;font-size:16px}
.callout p + p{margin-top:12px}

.evtable{margin-top:24px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.evtable table{width:100%;border-collapse:collapse}
.evtable th,.evtable td{padding:14px 16px;text-align:left;font-size:14.5px;border-bottom:1px solid var(--line);vertical-align:top}
.evtable thead th{background:var(--forest);color:rgba(255,255,255,.94);font-size:11px;font-weight:800;
  letter-spacing:1.1px;text-transform:uppercase;border-bottom:0}
.evtable tbody th{font-weight:700;color:var(--ink);width:32%}
.evtable td{color:var(--body);line-height:1.6}
.evtable tr:last-child th,.evtable tr:last-child td{border-bottom:0}
.evtable tbody tr:nth-child(even){background:var(--bone)}
@media(max-width:720px){.evtable{overflow-x:auto}.evtable table{min-width:560px}}

.grade{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.9px;text-transform:uppercase;
  padding:4px 9px;border-radius:999px;white-space:nowrap}
.grade.strong{background:#E6F2EB;color:#215E59;border:1px solid #BFDFCD}
.grade.mixed{background:#F4EEE5;color:#79674F;border:1px solid #DBCCB6}
.grade.early{background:#EFECE4;color:#6A766F;border:1px solid #DFDACD}

.refs{margin-top:20px;border-top:1px solid var(--line);padding-top:22px}
.refs ol{counter-reset:r;list-style:none;padding:0;display:flex;flex-direction:column;gap:11px}
.refs li{counter-increment:r;font-size:13.5px;line-height:1.6;color:var(--stone);padding-left:26px;position:relative}
.refs li::before{content:counter(r) ".";position:absolute;left:0;color:var(--gold-deep);font-weight:700;background:none;
  width:auto;height:auto;border-radius:0}
.refs a{color:var(--emerald);word-break:break-word}

.artmeta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:26px;padding-top:22px;
  border-top:1px solid rgba(237,234,227,.2)}
.artmeta img{width:52px;height:52px;border-radius:50%;object-fit:cover;flex:none;
  box-shadow:0 0 0 2px rgba(162,142,115,.6)}
.artmeta .amtx b{display:block;font-size:14.5px;font-weight:700;color:#FEFCFA}
.artmeta .amtx span{display:block;font-size:12.5px;color:rgba(237,234,227,.72);margin-top:3px}
.artmeta .amdate{margin-left:auto;font-family:var(--mono);font-size:11.5px;color:rgba(237,234,227,.6)}
@media(max-width:620px){.artmeta .amdate{margin-left:0;width:100%}}

.inlinecta{background:linear-gradient(160deg,#13443F,#071918);border-radius:18px;padding:28px 30px;margin-top:36px;
  color:var(--cream);display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}
@media(max-width:760px){.inlinecta{grid-template-columns:1fr;padding:24px 22px}}
.inlinecta b{display:block;font-family:var(--sans);font-size:23px;font-weight:800;letter-spacing:-.02em;color:#FEFCFA;line-height:1.2}
.inlinecta p{font-size:15px;line-height:1.65;color:rgba(237,234,227,.84);margin-top:10px}
/* article tables must scroll inside their own box, not push the page wide */
.evtable{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.evtable table{min-width:0}
@media(max-width:720px){.evtable table{min-width:520px}}
.prose{min-width:0;overflow-wrap:anywhere}
.artwrap{min-width:0}
.artwrap > *{min-width:0}
.refs a{overflow-wrap:anywhere}

/* ==========================================================================
   v39 — TOP 10 RANKED LIST + CHAMBER SHOWCASE
   ========================================================================== */
.rank{display:flex;flex-direction:column;gap:16px;margin-top:32px}
.rankrow{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 28px;
  display:grid;grid-template-columns:64px 1fr;gap:22px;align-items:start;
  box-shadow:0 2px 4px rgba(20,30,26,.03),0 20px 44px -32px rgba(20,30,26,.3);
  transition:transform .28s var(--ease),border-color .25s,box-shadow .28s var(--ease)}
.rankrow:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 30px 58px -32px rgba(20,30,26,.4)}
@media(max-width:620px){.rankrow{grid-template-columns:1fr;gap:14px;padding:22px}}
.rankno{width:64px;height:64px;border-radius:17px;display:flex;flex-direction:column;align-items:center;
  justify-content:center;background:linear-gradient(155deg,#1B615B,#0F3330);color:var(--gold-lt);
  box-shadow:0 10px 22px -10px rgba(15,51,48,.6)}
.rankno b{font-family:var(--serif);font-size:26px;font-weight:600;line-height:1;letter-spacing:-.02em}
.rankno span{font-size:7.5px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;opacity:.72;margin-top:3px}
.rankrow h3{font-family:var(--sans);font-size:24px;font-weight:800;letter-spacing:-.02em;line-height:1.2;margin-top:0}
.rankrow p{font-size:16px;line-height:1.72;color:var(--body);margin-top:11px}
.rankwhy{margin-top:15px;padding-top:14px;border-top:1px solid var(--line);display:flex;gap:10px;flex-wrap:wrap}
.rankwhy span{font-family:var(--mono);font-size:11px;color:var(--gold-deep);background:rgba(162,142,115,.12);
  border:1px solid rgba(162,142,115,.34);padding:6px 11px;border-radius:999px}

.chamber{display:grid;grid-template-columns:1.15fr 1fr;gap:22px;margin-top:32px;align-items:start}
@media(max-width:860px){.chamber{grid-template-columns:1fr}}
.chamber figure{margin:0;border-radius:18px;overflow:hidden;background:#F4F3F1;display:flex;flex-direction:column;
  box-shadow:0 4px 10px rgba(20,30,26,.06),0 30px 60px -34px rgba(20,30,26,.4)}
.chamber img{width:100%;aspect-ratio:5/3;height:auto;object-fit:cover;display:block}
.chamber figcaption{padding:14px 18px;background:#fff;font-size:13px;color:var(--stone);line-height:1.5;
  border-top:1px solid var(--line)}
.chamber figcaption b{color:var(--ink);font-weight:700}
.chamspec{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:22px;
  border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}
@media(max-width:700px){.chamspec{grid-template-columns:repeat(2,1fr)}}
.chamspec div{padding:18px 16px;border-right:1px solid var(--line)}
.chamspec div:last-child{border-right:0}
@media(max-width:700px){.chamspec div:nth-child(2n){border-right:0}
  .chamspec div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
.chamspec b{display:block;font-family:var(--serif);font-size:24px;font-weight:600;color:var(--forest);letter-spacing:-.02em}
.chamspec span{display:block;font-size:10.5px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;
  color:var(--stone);margin-top:7px;line-height:1.4}

.storyquote{border-left:3px solid var(--gold-deep);padding:6px 0 6px 26px;margin-top:26px}
.storyquote p{font-family:var(--serif);font-size:22px;line-height:1.6;color:var(--ink);font-style:italic;margin-top:0}
@media(max-width:620px){.storyquote{padding-left:18px}.storyquote p{font-size:19px}}

/* --- v40: article hero with image --- */
.ihero.arthero{padding:40px 0 36px}
.ihero.arthero .wrap{display:grid;grid-template-columns:1.06fr .94fr;gap:40px;align-items:center}
@media(max-width:940px){.ihero.arthero .wrap{grid-template-columns:1fr;gap:26px}}
.ihero.arthero h1{font-size:40px;max-width:none;line-height:1.1}
@media(max-width:760px){.ihero.arthero h1{font-size:29px}}
.ihero.arthero .isub{font-size:17px;line-height:1.62;margin-top:14px}
.ihero.arthero .imeta{margin-top:18px}
.ihero.arthero .imeta span{font-size:11.5px;padding:6px 12px}
.artheroimg{border-radius:18px;overflow:hidden;background:#0A2523;
  box-shadow:0 6px 14px rgba(0,0,0,.22),0 34px 64px -28px rgba(0,0,0,.55);
  outline:1px solid rgba(162,142,115,.36);outline-offset:-1px}
.artheroimg img{width:100%;height:auto;aspect-ratio:5/3;object-fit:cover;display:block}
.artheroimg figcaption{padding:12px 15px;background:#0A2523;font-size:11.5px;
  color:rgba(237,234,227,.86);line-height:1.45;border-top:1px solid rgba(162,142,115,.28)}
.artheroimg figcaption b{color:var(--gold-lt);font-weight:700}
@media(max-width:940px){.artheroimg{max-width:440px}}

/* --- v41: how-it-works mechanism diagram --- */
.mechbox{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;margin-top:28px;
  box-shadow:0 3px 6px rgba(20,30,26,.04),0 30px 60px -36px rgba(20,30,26,.35)}
@media(max-width:640px){.mechbox{padding:20px 16px}}
.mechbox svg{width:100%;height:auto;display:block}
.mechlab{font-family:var(--sans);font-size:15.7px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.mechttl{font-family:var(--sans);font-size:20.9px;font-weight:750}
.mechsub{font-family:var(--sans);font-size:17.4px}
.mechfootnote{font-family:var(--sans);font-size:19.1px}
.mechnum{font-family:var(--serif);font-size:25.5px;font-weight:600}
.mechfoot{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:24px;padding-top:22px;
  border-top:1px solid var(--line)}
@media(max-width:800px){.mechfoot{grid-template-columns:repeat(2,1fr);gap:18px 0}}
.mechfoot div{padding:0 18px;border-right:1px solid var(--line)}
.mechfoot div:last-child{border-right:0}
@media(max-width:800px){.mechfoot div:nth-child(2n){border-right:0}}
.mechfoot b{display:block;font-family:var(--sans);font-size:14px;font-weight:700;color:var(--forest);line-height:1.25}
.mechfoot span{display:block;font-size:12.5px;color:var(--body);margin-top:7px;line-height:1.5}
/* two chamber views: exterior and interior */
.chamber{grid-template-columns:repeat(2,1fr)}
@media(max-width:640px){.chamber{grid-template-columns:1fr}}
/* the single-file build converts duplicate images to background spans — style both */
.chamber figure img,.chamber figure span[role=img]{width:100%;height:auto;aspect-ratio:5/3;
  object-fit:cover;display:block;background-size:cover;background-position:center}
.artheroimg span[role=img]{width:100%;height:auto;aspect-ratio:5/3;display:block;
  background-size:cover;background-position:center}
/* numbered downstream effects */
.mechfoot-h{margin-top:26px;padding-top:22px;border-top:1px solid var(--line);
  font-size:11px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--gold-deep)}
.mechfoot{margin-top:18px;padding-top:0;border-top:0;gap:0}
.mechfoot div{padding:0 16px}
.mechfoot div:first-child{padding-left:0}
.mechfoot div i{display:inline-flex;width:21px;height:21px;border-radius:50%;background:var(--gold);
  color:var(--forest-deep);font-style:normal;font-size:11px;font-weight:900;
  align-items:center;justify-content:center;vertical-align:middle;margin-right:8px}
.mechfoot div b{display:inline;font-size:15px;vertical-align:middle}
.mechfoot div span{display:block;margin-top:8px;font-size:13.5px;line-height:1.55}
@media(max-width:800px){.mechfoot div{padding:0 12px}.mechfoot div:first-child{padding-left:0}}

/* ==========================================================================
   v42 — WAVELENGTH PENETRATION DIAGRAM
   ========================================================================== */
.wavebox{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;margin-top:28px;
  box-shadow:0 3px 6px rgba(20,30,26,.04),0 30px 60px -36px rgba(20,30,26,.35)}
@media(max-width:640px){.wavebox{padding:20px 14px}}
.wavebox svg{width:100%;height:auto;display:block}
.wvlab{font-family:var(--sans);font-size:15.1px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.wvnm{font-family:var(--mono);font-size:17.4px;font-weight:600}
.wvtis{font-family:var(--sans);font-size:16.8px;font-weight:700}
.wvsub{font-family:var(--sans);font-size:15.7px}
.wvfoot{font-family:var(--sans);font-size:18.6px}
.wavekey{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:24px;padding-top:22px;
  border-top:1px solid var(--line)}
@media(max-width:900px){.wavekey{grid-template-columns:repeat(2,1fr);gap:18px 0}}
@media(max-width:480px){.wavekey{grid-template-columns:1fr}}
.wavekey div{padding:0 14px;border-right:1px solid var(--line)}
.wavekey div:last-child{border-right:0}
@media(max-width:900px){.wavekey div{border-right:0}}
.wavekey i{display:inline-block;width:13px;height:13px;border-radius:4px;vertical-align:middle;margin-right:8px}
.wavekey b{font-family:var(--mono);font-size:13.5px;font-weight:700;color:var(--ink);vertical-align:middle}
.wavekey span{display:block;font-size:12.5px;color:var(--body);margin-top:8px;line-height:1.5}

/* --- v43: image laid alongside copy, not floating in white space --- */
.figsplit{display:grid;grid-template-columns:400px minmax(0,1fr);gap:30px;align-items:start;margin-top:24px}
.figsplit--rev{grid-template-columns:minmax(0,1fr) 400px}
@media(max-width:900px){
  .figsplit,.figsplit--rev{grid-template-columns:1fr;gap:22px}
  .figsplit--rev > *:first-child{order:2}
  .figsplit--rev > *:last-child{order:1}
}
.figsplit > div > p:first-child,.figsplit > div > ol:first-child,
.figsplit > div > ul:first-child{margin-top:0}
.figsplit .devicefig{margin:0;max-width:none}

.devicefig{margin:26px 0 0;border-radius:16px;overflow:hidden;background:#111;
  box-shadow:0 4px 10px rgba(20,30,26,.1),0 26px 50px -30px rgba(20,30,26,.5)}
.devicefig img,.devicefig span[role=img]{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;
  background-size:cover;background-position:center}
.devicefig.tall img,.devicefig.tall span[role=img]{aspect-ratio:4/3}
.devicefig figcaption{padding:13px 16px;background:#fff;border-top:1px solid var(--line);
  font-size:12.5px;color:var(--stone);line-height:1.5}
.devicefig figcaption b{color:var(--ink);font-weight:700}

.vscard{margin-top:26px;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.vsrow{display:grid;grid-template-columns:1.15fr 1fr 1fr;border-bottom:1px solid var(--line)}
.vsrow:last-child{border-bottom:0}
.vsrow.head{background:var(--forest)}
.vsrow.head div{padding:13px 16px;font-size:10.5px;font-weight:800;letter-spacing:1.1px;
  text-transform:uppercase;color:rgba(255,255,255,.92)}
.vsrow.head div:last-child{background:rgba(162,142,115,.24);color:var(--gold-lt)}
.vsrow > div{padding:14px 16px;font-size:14px;color:var(--body);line-height:1.5}
.vsrow .vslab{font-weight:700;color:var(--ink)}
.vsrow div:last-child{background:rgba(162,142,115,.07);font-weight:650;color:var(--forest)}
.vsrow:nth-child(even){background:var(--bone)}
.vsrow:nth-child(even) div:last-child{background:rgba(162,142,115,.11)}
@media(max-width:700px){
  .vscard{overflow-x:auto}.vsrow{grid-template-columns:1.1fr 1fr 1fr;min-width:520px}
}
/* spec strip stacked under the photo inside a narrow column */
.chamspec.spec2{grid-template-columns:repeat(2,1fr);margin-top:14px}
.chamspec.spec2 div{padding:14px 12px;border-right:1px solid var(--line)}
.chamspec.spec2 div:nth-child(2n){border-right:0}
.chamspec.spec2 div:nth-child(-n+2){border-bottom:1px solid var(--line)}
.chamspec.spec2 b{font-size:21px}
.chamspec.spec2 span{font-size:9.5px;margin-top:5px}
.figsplit .figcol{display:flex;flex-direction:column}

/* ==========================================================================
   v44 — EBOO CIRCUIT DIAGRAM
   ========================================================================== */
.circbox{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;margin-top:28px;
  box-shadow:0 3px 6px rgba(20,30,26,.04),0 30px 60px -36px rgba(20,30,26,.35)}
@media(max-width:640px){.circbox{padding:20px 14px}}
.circbox svg{width:100%;height:auto;display:block}
.cbnum{font-family:var(--serif);font-size:23.2px;font-weight:600}
.cbttl{font-family:var(--sans);font-size:19.1px;font-weight:750}
.cbsub{font-family:var(--sans);font-size:16.2px}
.cbfoot{font-family:var(--sans);font-size:18.6px}
.cbvol{font-family:var(--mono);font-size:16.8px;font-weight:600}

/* volume comparison bars */
.volcmp{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.volrow{display:grid;grid-template-columns:150px minmax(0,1fr) 96px;gap:14px;align-items:center;padding:9px 0}
@media(max-width:620px){.volrow{grid-template-columns:110px minmax(0,1fr) 74px;gap:10px}}
.volrow b{font-size:14px;font-weight:700;color:var(--ink);line-height:1.3}
.volrow .vbar{height:22px;border-radius:6px;background:#E4E0D6;overflow:hidden}
.volrow .vbar i{display:block;height:100%;border-radius:6px}
.volrow .vnum{font-family:var(--mono);font-size:13px;font-weight:700;text-align:right;color:var(--forest)}
/* portrait device photo — own modifier; .portrait is an existing component with a multiply blend */
.devicefig.is-portrait img,.devicefig.is-portrait span[role=img]{aspect-ratio:5/6;mix-blend-mode:normal}
/* hero photo that should not be cropped at all */
.artheroimg.natural img,.artheroimg.natural span[role=img]{aspect-ratio:auto;height:auto}

/* ==========================================================================
   v45 — HOCATT SESSION TIMELINE
   ========================================================================== */
.timebox{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;margin-top:28px;
  box-shadow:0 3px 6px rgba(20,30,26,.04),0 30px 60px -36px rgba(20,30,26,.35)}
@media(max-width:640px){.timebox{padding:20px 14px}}
.timebox svg{width:100%;height:auto;display:block}
.tlname{font-family:var(--sans);font-size:17.4px;font-weight:700}
.tlsub{font-family:var(--sans);font-size:15.1px}
.tlaxis{font-family:var(--mono);font-size:14.5px}
.tlhead{font-family:var(--sans);font-size:14.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.tlfoot{font-family:var(--sans);font-size:18.6px}

.modgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:24px;padding-top:22px;
  border-top:1px solid var(--line)}
@media(max-width:900px){.modgrid{grid-template-columns:repeat(2,1fr);gap:18px 0}}
@media(max-width:480px){.modgrid{grid-template-columns:1fr}}
.modgrid div{padding:0 14px;border-right:1px solid var(--line)}
.modgrid div:last-child{border-right:0}
@media(max-width:900px){.modgrid div{border-right:0}}
.modgrid b{display:block;font-family:var(--sans);font-size:13.5px;font-weight:700;color:var(--forest);line-height:1.3}
.modgrid span{display:block;font-size:12.5px;color:var(--body);margin-top:7px;line-height:1.5}

/* ==========================================================================
   v46 — IV: ORAL vs IV ABSORPTION + FORMULARY CARDS
   ========================================================================== */
.absbox{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;margin-top:28px;
  box-shadow:0 3px 6px rgba(20,30,26,.04),0 30px 60px -36px rgba(20,30,26,.35)}
@media(max-width:640px){.absbox{padding:20px 14px}}
.absbox svg{width:100%;height:auto;display:block}
.abttl{font-family:var(--sans);font-size:19px;font-weight:800;letter-spacing:-.01em}
.absub{font-family:var(--sans);font-size:15px}
.absubb{font-family:var(--sans);font-size:15.5px;font-weight:700}
.ablbl{font-family:var(--sans);font-size:15.5px;font-weight:700}
.abnum{font-family:var(--serif);font-size:30px;font-weight:600;letter-spacing:-.02em}
.abunit{font-family:var(--mono);font-size:15px;font-weight:700}
.abfoot{font-family:var(--sans);font-size:16.5px}
.abfootb{font-family:var(--sans);font-size:18px;font-weight:800}

.ivgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:32px}
@media(max-width:820px){.ivgrid{grid-template-columns:1fr}}
.ivcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;display:flex;flex-direction:column;
  box-shadow:0 2px 4px rgba(20,30,26,.03),0 20px 44px -32px rgba(20,30,26,.3);
  transition:transform .28s var(--ease),border-color .25s,box-shadow .28s var(--ease)}
.ivcard:hover{transform:translateY(-5px);border-color:var(--gold);box-shadow:0 30px 58px -32px rgba(20,30,26,.4)}
.ivcard .ivico{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;
  color:var(--gold-lt);background:linear-gradient(155deg,#1B615B,#0F3330);margin-bottom:15px;
  box-shadow:0 10px 20px -10px rgba(15,51,48,.55)}
.ivcard .ivico svg{width:24px;height:24px}
.ivcard h3{font-family:var(--sans);font-size:20px;font-weight:750;letter-spacing:-.018em;line-height:1.22}
.ivcard .ivfor{font-size:11px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--gold-deep);margin-top:8px}
.ivcard p{font-size:14.5px;line-height:1.62;color:var(--body);margin-top:11px;flex:1}
.ivcard .ivmk{display:block;font-family:var(--mono);font-size:11px;color:var(--stone);margin-top:14px;
  padding-top:12px;border-top:1px solid var(--line);line-height:1.5}

/* ==========================================================================
   v47 — CONDITION CASCADE DIAGRAM + PHENOTYPE CARDS
   ========================================================================== */
.cascbox{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;margin-top:28px;
  box-shadow:0 3px 6px rgba(20,30,26,.04),0 30px 60px -36px rgba(20,30,26,.35)}
@media(max-width:640px){.cascbox{padding:20px 14px}}
.cascbox svg{width:100%;height:auto;display:block}
.csttl{font-family:var(--sans);font-size:20.3px;font-weight:800;letter-spacing:-.01em}
.cssub{font-family:var(--sans);font-size:17.4px}
.cslbl{font-family:var(--sans);font-size:15.1px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.csfoot{font-family:var(--sans);font-size:19.7px}

.phen{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:30px}
@media(max-width:820px){.phen{grid-template-columns:1fr}}
.phcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;
  box-shadow:0 2px 4px rgba(20,30,26,.03),0 20px 44px -32px rgba(20,30,26,.3);
  transition:transform .28s var(--ease),border-color .25s}
.phcard:hover{transform:translateY(-5px);border-color:var(--gold)}
.phcard .phtag2{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;
  color:var(--forest-deep);background:var(--gold);padding:5px 11px;border-radius:999px}
.phcard h3{font-family:var(--sans);font-size:20px;font-weight:800;letter-spacing:-.018em;line-height:1.22;margin-top:12px}
.phcard p{font-size:14.5px;line-height:1.62;color:var(--body);margin-top:10px}
.phcard .phlev{display:block;font-family:var(--mono);font-size:11.5px;color:var(--gold-deep);margin-top:14px;
  padding-top:12px;border-top:1px solid var(--line);line-height:1.55}

.labtable{margin-top:26px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.labrow{display:grid;grid-template-columns:1.1fr 1fr 2fr;border-bottom:1px solid var(--line)}
.labrow:last-child{border-bottom:0}
.labrow.head{background:var(--forest)}
.labrow.head div{padding:12px 16px;font-size:10.5px;font-weight:800;letter-spacing:1.1px;
  text-transform:uppercase;color:rgba(255,255,255,.92)}
.labrow > div{padding:14px 16px;font-size:13.5px;line-height:1.55;color:var(--body)}
.labrow .lbn{font-weight:700;color:var(--ink)}
.labrow .lbv{font-family:var(--mono);font-size:12.5px;color:var(--gold-deep);font-weight:600}
.labrow:nth-child(even){background:var(--bone)}
@media(max-width:760px){
  .labtable{overflow-x:auto}.labrow{grid-template-columns:1fr 1fr 1.6fr;min-width:600px}
}

/* ==========================================================================
   v48 — TOPICAL CLUSTER: related pillar articles
   ========================================================================== */
.cluster{margin-top:44px;padding-top:34px;border-top:1px solid var(--line)}
.cluster > b{display:block;font-size:11px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;
  color:var(--gold-deep);margin-bottom:6px}
.cluster > p{font-size:15.5px;line-height:1.6;color:var(--stone);margin:0 0 22px}
.clgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:900px){.clgrid{grid-template-columns:1fr}}
.clcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;
  padding:22px;text-decoration:none;color:var(--ink);
  box-shadow:0 2px 4px rgba(20,30,26,.03),0 18px 40px -30px rgba(20,30,26,.3);
  transition:transform .26s var(--ease),border-color .22s,box-shadow .26s var(--ease)}
.clcard:hover{transform:translateY(-5px);border-color:var(--gold);box-shadow:0 28px 54px -30px rgba(20,30,26,.4)}
.clcard .clico{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;
  color:var(--gold-lt);background:linear-gradient(155deg,#1B615B,#0F3330);margin-bottom:13px}
.clcard .clico svg{width:21px;height:21px}
.clcard .clkick{font-size:10px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--gold-deep)}
.clcard b{display:block;font-family:var(--sans);font-size:17px;font-weight:750;letter-spacing:-.015em;
  line-height:1.28;margin-top:7px}
.clcard span{display:block;font-size:14px;line-height:1.55;color:var(--body);margin-top:9px;flex:1}
.clcard i{font-style:normal;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;
  color:var(--emerald);margin-top:14px}
.clcard:hover i{color:var(--forest)}
/* six-up pillar strip */
#guides .clgrid{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){#guides .clgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){#guides .clgrid{grid-template-columns:1fr}}

/* --- v49: peptide category chart --- */
.pepcat{margin-top:26px;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.pcrow{display:grid;grid-template-columns:1fr 1.25fr 1.5fr;border-bottom:1px solid var(--line)}
.pcrow:last-child{border-bottom:0}
.pcrow.head{background:var(--forest)}
.pcrow.head div{padding:13px 16px;font-size:11px;font-weight:800;letter-spacing:1.1px;
  text-transform:uppercase;color:rgba(255,255,255,.93)}
.pcrow > div{padding:15px 16px;font-size:14.5px;line-height:1.55;color:var(--body)}
.pcrow .pcgoal{font-weight:750;color:var(--ink);font-size:15px}
.pcrow .pcpep{font-family:var(--mono);font-size:13.5px;font-weight:600;color:var(--forest)}
.pcrow:nth-child(even){background:var(--bone)}
@media(max-width:820px){.pepcat{overflow-x:auto}.pcrow{grid-template-columns:1fr 1.1fr 1.4fr;min-width:660px}}

/* --- v50: thyroid conversion diagram --- */
.thybox{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;margin-top:28px;
  box-shadow:0 3px 6px rgba(20,30,26,.04),0 30px 60px -36px rgba(20,30,26,.35)}
@media(max-width:640px){.thybox{padding:20px 14px}}
.thybox svg{width:100%;height:auto;display:block}
.tyttl{font-family:var(--sans);font-size:19px;font-weight:800;letter-spacing:-.01em}
.tysub{font-family:var(--sans);font-size:15.5px}
.tylbl{font-family:var(--sans);font-size:13.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.tynut{font-family:var(--mono);font-size:15px;font-weight:700}
.tyfoot{font-family:var(--sans);font-size:17px}

/* --- v51: hormone cascade diagram --- */
.hormbox{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;margin-top:28px;
  box-shadow:0 3px 6px rgba(20,30,26,.04),0 30px 60px -36px rgba(20,30,26,.35)}
@media(max-width:640px){.hormbox{padding:20px 14px}}
.hormbox svg{width:100%;height:auto;display:block}
.hmttl{font-family:var(--sans);font-size:18px;font-weight:800;letter-spacing:-.01em}
.hmsub{font-family:var(--sans);font-size:15px}
.hmlbl{font-family:var(--sans);font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.hmnut{font-family:var(--mono);font-size:14.5px;font-weight:700}


.rankp{margin-top:34px;border-top:1px solid var(--line)}
.rpitem{display:grid;grid-template-columns:78px minmax(0,1fr);gap:26px;padding:32px 0;border-bottom:1px solid var(--line)}
@media(max-width:700px){.rpitem{grid-template-columns:50px minmax(0,1fr);gap:16px;padding:24px 0}}
.rpnum{font-family:var(--serif);font-size:46px;font-weight:500;line-height:1;letter-spacing:-.03em;color:var(--gold);padding-top:2px}
@media(max-width:700px){.rpnum{font-size:31px}}
.rpitem h3{font-family:var(--sans);font-size:23px;font-weight:750;letter-spacing:-.02em;line-height:1.22;color:var(--ink);margin:0}
@media(max-width:700px){.rpitem h3{font-size:19px}}
.rpitem p{font-size:16px;line-height:1.68;color:var(--body);margin:12px 0 0}
.rpitem .rpev{display:block;margin-top:15px;padding:15px 19px;background:var(--bone);border-left:3px solid var(--gold);border-radius:0 10px 10px 0;font-size:14.5px;line-height:1.62;color:var(--forest)}
.rpitem .rpev b{font-family:var(--sans);font-size:10.5px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--gold-deep);display:block;margin-bottom:7px}
.rptags{display:block;margin-top:13px;font-family:var(--mono);font-size:12px;letter-spacing:.02em;color:var(--stone)}
.rptags i{font-style:normal;color:var(--gold-deep)}