﻿:root{
  --green:#1D9E75;--gl:#E1F5EE;--gm:#9FE1CB;--gd:#085041;--gdp:#0F6E56;
  --amber:#FAEEDA;--at:#633806;--am:#FAC775;--ab:#854F0B;
  --pl:#EEEDFE;--pt:#3C3489;--pm:#534AB7;
  --bl:#E6F1FB;--bt:#0C447C;--bm:#378ADD;
  --g50:#F7F6F3;--g100:#EEEDE8;--g200:#D3D1C7;--g400:#888780;
  --tx:#1A1A18;--ts:#5F5E5A;--tt:#888780;
  --bd:rgba(26,26,24,0.10);--bdm:rgba(26,26,24,0.18);
  --rl:14px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;background:#FAFAF8;color:var(--tx);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;}
[id]{scroll-margin-top:80px;}

nav{position:sticky;top:0;z-index:100;background:rgba(250,250,248,0.93);backdrop-filter:blur(12px);border-bottom:1px solid var(--bd);display:flex;align-items:center;justify-content:space-between;padding:0 40px;height:60px;}
.nav-logo{display:flex;align-items:center;gap:5px;font-size:16px;font-weight:500;color:var(--tx);text-decoration:none;letter-spacing:-.01em;}
.lmk{width:30px;height:30px;background:var(--green);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.nav-links{display:flex;align-items:center;gap:28px;font-size:13px;color:var(--ts);list-style:none;}
.nav-links a{color:inherit;text-decoration:none;transition:color .15s;}
.nav-links a:hover{color:var(--tx);}
.btn-n{font-size:13px;font-weight:500;padding:7px 18px;border-radius:8px;cursor:pointer;font-family:inherit;border:1px solid var(--bdm);background:transparent;color:var(--ts);transition:all .15s;}
.btn-np{background:var(--green);color:#fff;border-color:var(--green);}
.btn-np:hover{background:var(--gdp);}

.page-outer{display:grid;grid-template-columns:210px 1fr;max-width:980px;margin:0 auto;padding:0 40px;}
.sidebar{padding:40px 28px 80px 0;position:sticky;top:60px;height:calc(100vh - 60px);overflow-y:auto;}
.sidebar-title{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--tt);font-family:'DM Mono',monospace;margin-bottom:14px;}
.snav a{display:block;font-size:12px;color:var(--tt);text-decoration:none;padding:5px 0;border-left:2px solid var(--bd);padding-left:12px;line-height:1.4;margin-bottom:2px;}
.snav a:hover{color:var(--tx);border-left-color:var(--gm);}
.snav a.active{color:var(--gdp);border-left-color:var(--green);font-weight:500;}

/* PAGE */
.page-wrap{max-width:680px;margin:0 auto;padding:80px 40px 112px;}
.main-content{padding-left:40px;border-left:1px solid var(--bd);max-width:none;}

/* HEADER */
.ey{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--gdp);margin-bottom:16px;}
.page-h{font-size:42px;font-weight:300;line-height:1.06;color:var(--tx);letter-spacing:-.03em;margin-bottom:20px;}
.page-h strong{font-weight:500;}
.byline{display:flex;align-items:center;gap:10px;margin-bottom:56px;}
.byline-text{font-size:12px;color:var(--tt);}
.byline-dot{width:3px;height:3px;border-radius:50%;background:var(--g200);}

/* LEAD */
.lead{font-size:19px;font-weight:300;color:var(--ts);line-height:1.7;margin-bottom:48px;letter-spacing:-.01em;}
.lead em{font-style:italic;color:var(--tx);}

/* CHAPTER MARKERS */
.chapter{display:flex;align-items:center;gap:14px;margin:56px 0 28px;}
.chapter-num{font-size:10px;font-weight:500;color:var(--green);font-family:'DM Mono',monospace;letter-spacing:.06em;}
.chapter-line{flex:1;height:1px;background:var(--bd);}
.chapter-title{font-size:22px;font-weight:400;color:var(--tx);letter-spacing:-.015em;margin:0 0 4px;}
.chapter-sub{font-size:13px;color:var(--tt);margin-bottom:28px;}

/* PROSE */
.prose p{font-size:15px;color:var(--ts);line-height:1.85;margin-bottom:22px;}
.prose p:last-child{margin-bottom:0;}
.prose strong{font-weight:500;color:var(--tx);}
.prose em{font-style:italic;}
.prose a{color:var(--green);text-decoration:none;font-weight:500;}

/* PULL QUOTES */
.pq{margin:36px 0;padding:22px 0 22px 28px;border-left:2px solid var(--green);}
.pq p{font-size:18px;font-weight:300;color:var(--tx);line-height:1.6;font-style:italic;margin:0;}

/* SCENARIO — the vivid story box */
.scenario{background:var(--g50);border:1px solid var(--bd);border-radius:var(--rl);padding:24px 28px;margin:28px 0;}
.scenario-label{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--tt);font-family:'DM Mono',monospace;margin-bottom:14px;}
.scenario p{font-size:13px;color:var(--ts);line-height:1.8;margin-bottom:12px;}
.scenario p:last-child{margin-bottom:0;}
.scenario strong{font-weight:500;color:var(--tx);}
.scenario em{font-style:italic;}

/* NUMBER CALLOUT */
.num-callout{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0;}
.nc{background:#fff;border:1px solid var(--bd);border-radius:10px;padding:16px 18px;text-align:center;}
.nc-val{font-size:28px;font-weight:300;color:var(--green);letter-spacing:-.02em;line-height:1;margin-bottom:6px;font-family:'DM Mono',monospace;}
.nc-label{font-size:11px;color:var(--ts);line-height:1.4;}

/* MARKET CARDS */
.market-card{border-radius:var(--rl);border:1px solid var(--bd);overflow:hidden;margin-bottom:16px;}
.market-header{padding:16px 22px 12px;border-bottom:1px solid var(--bd);}
.market-flag{font-size:11px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--tt);font-family:'DM Mono',monospace;margin-bottom:4px;}
.market-title{font-size:17px;font-weight:500;color:var(--tx);}
.market-body{padding:18px 22px;}
.market-body p{font-size:13px;color:var(--ts);line-height:1.8;margin-bottom:14px;}
.market-body p:last-child{margin-bottom:0;}
.market-body strong{font-weight:500;color:var(--tx);}
.market-body em{font-style:italic;}
.market-insight{display:flex;align-items:flex-start;gap:10px;background:var(--gl);border-radius:8px;padding:12px 14px;margin-top:6px;}
.mi-dot{width:4px;height:4px;border-radius:50%;background:var(--green);flex-shrink:0;margin-top:6px;}
.mi-text{font-size:12px;color:var(--gdp);line-height:1.6;}
.mi-text strong{font-weight:500;color:var(--gd);}

/* DECISION TABLE */
.decision{margin:28px 0;}
.decision-row{display:grid;grid-template-columns:180px 1fr 1fr;gap:0;border-bottom:1px solid var(--bd);}
.decision-row:first-child{border-top:1px solid var(--bd);background:var(--g50);}
.decision-row:last-child{border-bottom:none;}
.dc{padding:12px 16px;font-size:12px;color:var(--ts);line-height:1.55;border-right:1px solid var(--bd);}
.dc:last-child{border-right:none;}
.dc strong{font-weight:500;color:var(--tx);}
.dc.label{font-size:10px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--tt);font-family:'DM Mono',monospace;}
.dc.param{font-weight:500;color:var(--tx);font-size:13px;}
.dc.tension{color:var(--at);background:rgba(250,238,218,.3);}

/* UNCOMFORTABLE TRUTH */
.truth{background:#0C1712;border-radius:var(--rl);padding:28px 32px;margin:36px 0;}
.truth-label{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:rgba(159,225,203,.5);font-family:'DM Mono',monospace;margin-bottom:14px;}
.truth p{font-size:16px;font-weight:300;color:#E1F5EE;line-height:1.75;font-style:italic;}
.truth strong{font-weight:400;color:#9FE1CB;}

/* CTA */
.end-cta{border-top:1px solid var(--bd);padding-top:48px;margin-top:64px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.end-cta-text h3{font-size:17px;font-weight:500;color:var(--tx);margin-bottom:5px;}
.end-cta-text p{font-size:13px;color:var(--ts);}
.btn-p{font-family:inherit;font-size:13px;font-weight:500;padding:11px 22px;border-radius:8px;cursor:pointer;background:var(--green);color:#fff;border:none;transition:all .15s;white-space:nowrap;}
.btn-p:hover{background:var(--gdp);}

footer{border-top:1px solid var(--bd);padding:20px 40px;display:flex;align-items:center;justify-content:space-between;}
.flinks{display:flex;gap:20px;}
.flinks a{font-size:12px;color:var(--tt);text-decoration:none;transition:color .15s;}
.flinks a:hover{color:var(--tx);}
.fcopy{font-size:12px;color:var(--tt);}

@media(max-width:680px){
  nav{padding:0 20px;}
  .page-outer{grid-template-columns:1fr;padding:0 20px;}
  .sidebar{display:none;}
  .page-wrap{padding:48px 0 80px;}
  .main-content{padding-left:0;border-left:none;}
  .page-h{font-size:30px;}
  .lead{font-size:16px;}
  .num-callout{grid-template-columns:1fr;}
  .decision-row{grid-template-columns:1fr;}
  .dc{border-right:none;border-bottom:1px solid var(--bd);}
  .decision-row:first-child .dc{display:none;}
  footer{flex-direction:column;gap:12px;padding:20px;}
}
