/* ════════════════════════════════════════════════════════════════════
   METRA HEALTHCARE INTELLIGENCE — DOCTRINE PAGE STYLE SHEET
   Publication-grade typography. Editorial discipline.
   ════════════════════════════════════════════════════════════════════ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Inter',system-ui,-apple-system,sans-serif;background:#06090e;color:#fff;line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button{font-family:inherit;cursor:pointer;border:none;background:none}

:root{
  --bg:#06090e;
  --surface:#0a0f18;
  --card:#0d1420;
  --border:rgba(255,255,255,.07);
  --border-mid:rgba(255,255,255,.12);
  --text:#ffffff;
  --text-2:rgba(255,255,255,.72);
  --text-3:rgba(255,255,255,.42);
  --brand:#20c583;
  --brand-dark:#178f5c;
  --brand-dim:rgba(32,197,131,.12);
  --brand-border:rgba(32,197,131,.25);
  --amber:#f59e0b;
  --red:#ef4444;
  --pad-x:clamp(1.5rem,5vw,5rem);
  --radius:14px;
  --radius-sm:9px;
}

/* ── NAV ── */
nav.site-nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(5,8,16,.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);padding:.9rem var(--pad-x)}
.nav-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.nav-logo{display:flex;align-items:center;gap:.6rem;font-size:1.15rem;font-weight:800;letter-spacing:-.02em;color:#fff}
.nav-logo .dot{width:9px;height:9px;border-radius:50%;background:var(--brand)}
.nav-links{display:flex;align-items:center;gap:1.75rem}
.nav-links a{font-size:.83rem;font-weight:500;color:var(--text-2);transition:color .2s}
.nav-links a:hover{color:#fff}
.nav-links a.active{color:var(--brand)}
.nav-ctas{display:flex;align-items:center;gap:.75rem}
.btn-ghost{font-size:.82rem;font-weight:600;color:var(--text-2);padding:.45rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--border-mid);transition:all .2s}
.btn-ghost:hover{color:#fff;border-color:rgba(255,255,255,.25)}
.btn-primary{font-size:.82rem;font-weight:700;color:#fff;padding:.5rem 1.1rem;border-radius:var(--radius-sm);background:var(--brand);transition:all .2s}
.btn-primary:hover{background:var(--brand-dark);transform:translateY(-1px)}
.nav-mobile-toggle{display:none;flex-direction:column;gap:4px;padding:4px;cursor:pointer}
.nav-mobile-toggle span{display:block;width:22px;height:2px;background:var(--text-2);border-radius:2px}
@media(max-width:900px){.nav-links{display:none}.nav-ctas .btn-ghost{display:none}.nav-mobile-toggle{display:flex}}

/* ── BREADCRUMB ── */
.crumb{padding:7rem var(--pad-x) 0;max-width:780px;margin:0 auto;font-size:.78rem;color:var(--text-3);letter-spacing:.02em}
.crumb a{color:var(--text-2);transition:color .2s}
.crumb a:hover{color:#fff}
.crumb .sep{margin:0 .5rem;color:var(--text-3)}

/* ── ARTICLE ── */
article{max-width:780px;margin:0 auto;padding:2rem var(--pad-x) 5rem}
.eyebrow{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brand);background:var(--brand-dim);border:1px solid var(--brand-border);padding:.35rem .85rem;border-radius:100px;margin-bottom:1.5rem}
article h1{font-family:'Fraunces','Inter',Georgia,serif;font-size:clamp(2rem,4.2vw,3.25rem);font-weight:600;line-height:1.12;letter-spacing:-.025em;color:#fff;margin-bottom:1.25rem}
.deck{font-size:clamp(1.05rem,1.5vw,1.2rem);color:var(--text-2);line-height:1.65;font-weight:300;margin-bottom:2rem;font-family:'Fraunces',Georgia,serif;font-style:italic}
.meta{display:flex;align-items:center;gap:1rem;font-size:.78rem;color:var(--text-3);padding-bottom:2.5rem;border-bottom:1px solid var(--border);margin-bottom:3rem;flex-wrap:wrap}
.meta .sep{color:var(--border-mid)}
.meta strong{color:var(--text-2);font-weight:600}

article h2{font-family:'Fraunces','Inter',Georgia,serif;font-size:clamp(1.45rem,2.4vw,1.85rem);font-weight:600;line-height:1.25;letter-spacing:-.015em;color:#fff;margin:3rem 0 1.25rem}
article h3{font-size:1.1rem;font-weight:700;color:#fff;margin:2rem 0 .85rem;letter-spacing:-.01em}
article p{font-size:1.02rem;color:var(--text-2);line-height:1.8;margin-bottom:1.4rem;font-weight:300}
article p strong{color:#fff;font-weight:600}
article p em{color:#fff;font-style:italic}
article ul,article ol{margin:1.25rem 0 1.5rem 1.25rem;padding-left:.85rem}
article li{font-size:1.02rem;color:var(--text-2);line-height:1.75;margin-bottom:.65rem;font-weight:300}
article li strong{color:#fff;font-weight:600}

article blockquote{margin:2.25rem 0;padding:1.5rem 1.75rem;background:var(--card);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-family:'Fraunces',Georgia,serif;font-size:1.15rem;font-style:italic;font-weight:300;color:#fff;line-height:1.55;letter-spacing:-.005em}

.callout{margin:2.5rem 0;padding:1.75rem 2rem;background:var(--brand-dim);border:1px solid var(--brand-border);border-radius:var(--radius)}
.callout-label{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand);margin-bottom:.6rem}
.callout p{font-size:1rem;color:#fff;line-height:1.7;margin-bottom:0;font-weight:400}

.figure{margin:2.5rem 0;padding:1.75rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}
.fig-label{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);margin-bottom:1rem}
.fig-rows{display:grid;gap:.65rem}
.fig-row{display:flex;justify-content:space-between;align-items:baseline;padding:.65rem .85rem;background:var(--surface);border-radius:var(--radius-sm);font-size:.92rem}
.fig-k{color:var(--text-2)}
.fig-v{font-weight:700;color:#fff;font-variant-numeric:tabular-nums}
.fig-v.brand{color:var(--brand)}
.fig-v.amber{color:var(--amber)}
.fig-v.red{color:var(--red)}

.references{margin-top:4rem;padding-top:2rem;border-top:1px solid var(--border)}
.references-h{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-bottom:1rem}
.references ol{margin:0 0 0 1.25rem;padding-left:.5rem}
.references li{font-size:.85rem;color:var(--text-3);line-height:1.7;margin-bottom:.55rem;font-weight:300}
.references li strong{color:var(--text-2);font-weight:600}

/* ── ASSUMPTIONS BOX ── */
.assumptions{margin:2.5rem 0;padding:1.75rem 2rem;background:var(--surface);border:1px dashed var(--border-mid);border-radius:var(--radius)}
.assumptions h3{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);margin-bottom:1rem;margin-top:0}
.assumptions p,.assumptions li{font-size:.88rem;color:var(--text-2);line-height:1.7;margin-bottom:.65rem}

/* ── CLOSER / CTA ── */
.closer{margin-top:4rem;padding:2.75rem 2.25rem;background:linear-gradient(135deg,rgba(32,197,131,.08) 0%,rgba(32,197,131,.02) 100%);border:1px solid var(--brand-border);border-radius:var(--radius);text-align:left}
.closer-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--brand);margin-bottom:.85rem}
.closer h3{font-family:'Fraunces',Georgia,serif;font-size:1.55rem;font-weight:600;color:#fff;line-height:1.25;margin-bottom:.85rem;letter-spacing:-.015em}
.closer p{font-size:.98rem;color:var(--text-2);line-height:1.7;margin-bottom:1.5rem;font-weight:300}
.closer-row{display:flex;flex-wrap:wrap;gap:.85rem}
.btn-cta{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;color:#fff;background:var(--brand);padding:.85rem 1.5rem;border-radius:var(--radius-sm);transition:all .25s;box-shadow:0 0 24px rgba(32,197,131,.2)}
.btn-cta:hover{background:var(--brand-dark);transform:translateY(-1px);box-shadow:0 0 32px rgba(32,197,131,.35)}
.btn-cta-ghost{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--text-2);background:transparent;border:1px solid var(--border-mid);padding:.85rem 1.5rem;border-radius:var(--radius-sm);transition:all .25s}
.btn-cta-ghost:hover{color:#fff;border-color:rgba(255,255,255,.3)}

/* ── VIDEO BLOCK ── */
.briefing-block{margin-top:3rem;padding:2.25rem 2rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}
.briefing-block .briefing-label{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand);margin-bottom:.55rem}
.briefing-block h3{font-family:'Fraunces',Georgia,serif;font-size:1.35rem;font-weight:600;color:#fff;margin-bottom:.55rem;line-height:1.25}
.briefing-block p{font-size:.9rem;color:var(--text-2);line-height:1.65;margin-bottom:1.25rem;font-weight:300}
.briefing-block video{width:100%;height:auto;display:block;border-radius:var(--radius-sm);background:#000}

/* ── PRINT / PDF EXPORT ─────────────────────────────────────────────
   When rendered to PDF (chromium --print-to-pdf), flip to a light
   editorial layout: white page, black serif body, generous margins,
   no navigation, no video, no CTAs, no related cards. Keeps the
   article prose, deck, meta, callouts, figures, and references. */
@media print {
  @page { size: Letter; margin: 0.85in 0.9in 1in 0.9in; }
  *,*::before,*::after { background: transparent !important; box-shadow: none !important; text-shadow: none !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  html, body { background: #fff !important; color: #111 !important; font-family: 'Fraunces','Georgia',serif !important; font-size: 11.5pt; line-height: 1.55; overflow: visible !important; }
  nav.site-nav, nav.crumb, .briefing-block, .closer, .related, footer, .nav-mobile-toggle { display: none !important; }
  article { max-width: 100% !important; margin: 0 !important; padding: 0 !important; }
  .eyebrow { display: inline-block !important; color: #178f5c !important; background: transparent !important; border: 1px solid #178f5c !important; padding: 2pt 8pt !important; font-family: 'Inter',sans-serif !important; font-size: 8pt !important; letter-spacing: 0.14em !important; text-transform: uppercase !important; margin-bottom: 14pt !important; border-radius: 100px !important; }
  article h1 { font-family: 'Fraunces','Georgia',serif !important; color: #0a0f18 !important; font-size: 28pt !important; line-height: 1.12 !important; font-weight: 600 !important; letter-spacing: -0.015em !important; margin: 0 0 12pt 0 !important; page-break-after: avoid; }
  article h2 { font-family: 'Fraunces','Georgia',serif !important; color: #0a0f18 !important; font-size: 15pt !important; font-weight: 600 !important; margin: 22pt 0 8pt 0 !important; page-break-after: avoid; }
  article h3 { font-family: 'Inter',sans-serif !important; color: #0a0f18 !important; font-size: 11pt !important; font-weight: 700 !important; margin: 14pt 0 6pt 0 !important; page-break-after: avoid; }
  article p, article li { color: #1d2330 !important; font-family: 'Fraunces','Georgia',serif !important; font-size: 11pt !important; line-height: 1.6 !important; orphans: 3; widows: 3; }
  article p { margin: 0 0 10pt 0 !important; }
  article p strong, article li strong { color: #0a0f18 !important; }
  .deck { font-style: italic !important; color: #2a3140 !important; font-size: 13pt !important; line-height: 1.55 !important; margin: 0 0 18pt 0 !important; padding: 0 !important; }
  .meta { font-family: 'Inter',sans-serif !important; color: #555 !important; font-size: 8.5pt !important; padding: 0 0 14pt 0 !important; margin: 0 0 22pt 0 !important; border-bottom: 1px solid #d6d6d6 !important; gap: 10pt !important; }
  .meta strong { color: #111 !important; }
  .meta .sep { color: #999 !important; }
  article blockquote { background: #f7f5f0 !important; border-left: 3px solid #178f5c !important; color: #0a0f18 !important; font-style: italic !important; padding: 12pt 16pt !important; margin: 16pt 0 !important; page-break-inside: avoid; border-radius: 0 !important; font-size: 12pt !important; }
  .callout { background: #f1f8f4 !important; border: 1px solid #178f5c !important; padding: 14pt 16pt !important; margin: 18pt 0 !important; page-break-inside: avoid; border-radius: 0 !important; }
  .callout-label { color: #178f5c !important; font-family: 'Inter',sans-serif !important; font-size: 8pt !important; font-weight: 700 !important; letter-spacing: 0.12em !important; margin-bottom: 6pt !important; }
  .callout p { color: #0a0f18 !important; font-size: 10.5pt !important; margin: 0 !important; }
  .figure { background: #fafafa !important; border: 1px solid #e0e0e0 !important; padding: 12pt 14pt !important; margin: 16pt 0 !important; page-break-inside: avoid; border-radius: 0 !important; }
  .fig-label { color: #555 !important; font-family: 'Inter',sans-serif !important; font-size: 8pt !important; letter-spacing: 0.12em !important; margin-bottom: 8pt !important; }
  .fig-row { background: #fff !important; border-bottom: 1px solid #ececec !important; padding: 5pt 6pt !important; font-size: 10pt !important; border-radius: 0 !important; }
  .fig-k { color: #333 !important; }
  .fig-v { color: #0a0f18 !important; }
  .fig-v.brand { color: #178f5c !important; }
  .assumptions { background: #fafafa !important; border: 1px dashed #b8b8b8 !important; padding: 12pt 14pt !important; margin: 16pt 0 !important; page-break-inside: avoid; border-radius: 0 !important; }
  .assumptions h3 { color: #555 !important; font-family: 'Inter',sans-serif !important; font-size: 8pt !important; letter-spacing: 0.12em !important; margin: 0 0 8pt 0 !important; }
  .assumptions p, .assumptions li { color: #333 !important; font-size: 9.5pt !important; line-height: 1.55 !important; }
  .references { margin-top: 24pt !important; padding-top: 14pt !important; border-top: 1px solid #d6d6d6 !important; page-break-before: auto; }
  .references-h { color: #555 !important; font-family: 'Inter',sans-serif !important; font-size: 8pt !important; letter-spacing: 0.14em !important; margin-bottom: 10pt !important; }
  .references li { color: #444 !important; font-size: 9pt !important; line-height: 1.5 !important; margin-bottom: 6pt !important; }
  .references li strong { color: #111 !important; }
  a { color: #178f5c !important; text-decoration: none !important; }
}

/* ── RELATED READING ── */
.related{margin-top:4rem;padding-top:2.5rem;border-top:1px solid var(--border)}
.related-h{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-bottom:1.25rem}
.related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.85rem}
.related-card{display:block;padding:1.25rem 1.4rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .2s,transform .2s}
.related-card:hover{border-color:var(--brand-border);transform:translateY(-2px)}
.related-card .rk{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--brand);margin-bottom:.4rem}
.related-card .rt{font-size:.95rem;font-weight:600;color:#fff;line-height:1.4}

/* ── FOOTER ── */
footer{background:var(--bg);border-top:1px solid var(--border);padding:2.5rem var(--pad-x)}
.foot-inner{max-width:1280px;margin:0 auto}
.foot-top{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border);flex-wrap:wrap}
.foot-logo{display:flex;align-items:center;gap:.6rem;font-size:1.05rem;font-weight:800}
.foot-logo .dot{width:8px;height:8px;border-radius:50%;background:var(--brand)}
.foot-nav{display:flex;flex-wrap:wrap;gap:1.5rem}
.foot-nav a{font-size:.8rem;color:var(--text-3);transition:color .2s}
.foot-nav a:hover{color:#fff}
.foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.5rem}
.foot-copy{font-size:.75rem;color:var(--text-3)}
.foot-addr{font-size:.72rem;color:var(--text-3)}
.foot-addr a{color:var(--text-3)}
.foot-disclaimer{margin-top:1.25rem;font-size:.66rem;color:rgba(255,255,255,.22);line-height:1.7;max-width:760px}

/* ── INDEX (Healthcare Intelligence landing) ── */
.idx-hero{padding:8rem var(--pad-x) 4rem;max-width:1100px;margin:0 auto}
.idx-hero h1{font-family:'Fraunces',Georgia,serif;font-size:clamp(2.4rem,5vw,4rem);font-weight:600;line-height:1.1;letter-spacing:-.025em;color:#fff;margin-bottom:1.25rem;max-width:880px}
.idx-hero p{font-size:clamp(1rem,1.5vw,1.2rem);color:var(--text-2);line-height:1.7;font-weight:300;max-width:680px}
.idx-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.25rem;padding:0 var(--pad-x) 5rem;max-width:1280px;margin:0 auto}
.idx-card{display:flex;flex-direction:column;padding:2rem 2.25rem;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .25s,transform .25s}
.idx-card:hover{border-color:var(--brand-border);transform:translateY(-3px)}
.idx-card .num{font-family:'Fraunces',Georgia,serif;font-size:1.1rem;font-weight:600;color:var(--brand);margin-bottom:.85rem}
.idx-card h2{font-family:'Fraunces',Georgia,serif;font-size:1.4rem;font-weight:600;line-height:1.3;color:#fff;margin-bottom:.85rem;letter-spacing:-.015em}
.idx-card p{font-size:.92rem;color:var(--text-2);line-height:1.65;font-weight:300;margin-bottom:1.25rem}
.idx-card .read{font-size:.8rem;font-weight:700;color:var(--brand);letter-spacing:.04em}
.idx-card .card-actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:.6rem;padding-top:.25rem}
.idx-card .card-actions a{font-size:.78rem;font-weight:700;letter-spacing:.04em;padding:.6rem .95rem;border-radius:var(--radius-sm);transition:all .2s;display:inline-flex;align-items:center;gap:.4rem}
.idx-card .card-actions .act-read{color:var(--brand);background:var(--brand-dim);border:1px solid var(--brand-border)}
.idx-card .card-actions .act-read:hover{background:var(--brand);color:#fff}
.idx-card .card-actions .act-download{color:var(--text-2);background:transparent;border:1px solid var(--border-mid)}
.idx-card .card-actions .act-download:hover{color:#fff;border-color:rgba(255,255,255,.3)}
