/* ══════════════════════════════════════════════════════════════
   PRAXIS · Health-Check question pages
   Self-contained: tokens + base + sections.
   Extends the shared cnp-seo-praxis system with question-page
   components: .stat-band, .mlevels, .tracks, .benchmark.
   ══════════════════════════════════════════════════════════════ */
:root{
  --orange:#C75B22; --orange-bright:#E2761A; --orange-faint:rgba(199,91,34,0.10);
  --red:#D11F4B; --green:#1C7A57;
  --ink:#1A1714; --ink-2:#4A4138; --muted:#756859; --muted-2:#9A8E7E;
  --paper:#F3EEE4; --paper-2:#EDE6D8; --surface:#FBF9F3;
  --line:#DCD3C2; --line-2:#C9BEAA;
  --night:#1A1714; --night-2:#211D17; --night-line:rgba(255,255,255,0.12);
}
.hc-scope *, .hc-scope *::before, .hc-scope *::after{ box-sizing:border-box; }
.hc-scope{ margin:0; padding:0; }
.hc-scope{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
.hc-scope{
  font-family:'Hanken Grotesk',system-ui,-apple-system,sans-serif;
  background:var(--paper); color:var(--ink-2);
  font-size:17px; line-height:1.65;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
.hc-scope ::selection{ background:var(--orange); color:#fff; }
.hc-scope .serif{ font-family:'Newsreader',Georgia,serif; font-weight:400; }
.hc-scope .mono{ font-family:'IBM Plex Mono',ui-monospace,monospace; }
.hc-scope a{ color:var(--ink); text-decoration:none; }
.hc-scope a:hover{ color:var(--orange); }
.hc-scope img{ max-width:100%; height:auto; display:block; }

.hc-scope .wrap{ max-width:1240px; margin:0 auto; padding:0 40px; }
.hc-scope .wrap-narrow{ max-width:940px; margin:0 auto; padding:0 40px; }
@media(max-width:740px){ .hc-scope .wrap, .hc-scope .wrap-narrow{ padding:0 22px; } }

.hc-scope h1, .hc-scope h2, .hc-scope h3, .hc-scope h4{ font-family:'Newsreader',Georgia,serif; font-weight:400; color:var(--ink); letter-spacing:-0.018em; margin:0; text-wrap:balance; }
.hc-scope h1{ font-size:clamp(36px,4.6vw,60px); line-height:1.05; letter-spacing:-0.022em; }
.hc-scope h2{ font-size:clamp(28px,3.4vw,44px); line-height:1.12; }
.hc-scope h3{ font-size:clamp(21px,2.1vw,27px); line-height:1.2; font-weight:500; }
.hc-scope h1 em, .hc-scope h2 em, .hc-scope h3 em{ font-style:italic; color:var(--orange); }
.hc-scope p{ margin:0; } .hc-scope p + p{ margin-top:1.1em; }
.hc-scope strong{ color:var(--ink); font-weight:600; }

.hc-scope .eyebrow{
  display:inline-flex; align-items:center; gap:12px;
  font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500;
  letter-spacing:0.18em; text-transform:uppercase; color:var(--muted);
}
.hc-scope .eyebrow::before{ content:''; width:26px; height:1px; background:var(--orange); }
.hc-scope .eyebrow.dark{ color:rgba(255,255,255,0.55); }

.hc-scope .section{ padding:96px 0; }
.hc-scope .section-dark{ background:var(--night); color:rgba(255,255,255,0.86); }
.hc-scope .section-dark h2, .hc-scope .section-dark h3{ color:#fff; }
.hc-scope .section-paper-2{ background:var(--paper-2); }
.hc-scope .section + .section{ border-top:1px solid var(--line); }
.hc-scope .section-dark + .section, .hc-scope .section + .section-dark, .hc-scope .section-dark{ border-top:0; }
@media(max-width:740px){ .hc-scope .section{ padding:64px 0; } }

.hc-scope .lede{ font-size:19px; line-height:1.62; color:var(--ink-2); max-width:62ch; }
.hc-scope .section-head{ margin-bottom:52px; }
.hc-scope .section-head h2{ margin-top:18px; max-width:24ch; }
.hc-scope .section-head .sub{ margin-top:16px; max-width:62ch; color:var(--muted); font-size:17px; }
.hc-scope .prose p{ font-size:18px; line-height:1.78; color:var(--ink-2); max-width:68ch; }
.hc-scope .prose p + p{ margin-top:22px; }

.hc-scope .btn{
  display:inline-flex; align-items:center; gap:10px;
  padding:15px 24px; font-family:'Hanken Grotesk',sans-serif;
  font-size:14.5px; font-weight:600; border-radius:2px; border:1px solid transparent;
  cursor:pointer; text-decoration:none; white-space:nowrap;
  transition:background .22s,color .22s,border-color .22s;
}
.hc-scope .btn-primary{ background:var(--orange); color:#fff; border-color:var(--orange); }
.hc-scope .btn-primary:hover{ background:#A8481A; border-color:#A8481A; color:#fff; }
.hc-scope .btn-ghost{ background:transparent; color:var(--ink); border-color:var(--line-2); }
.hc-scope .btn-ghost:hover{ background:var(--ink); color:#fff; border-color:var(--ink); }
.hc-scope .btn-ghost-dark{ background:transparent; color:#fff; border-color:rgba(255,255,255,0.25); }
.hc-scope .btn-ghost-dark:hover{ background:#fff; color:var(--ink); border-color:#fff; }

/* ─── NAV (Praxis chrome) ─────────────────────────────────── */
.hc-scope .nav{
  position:fixed; top:0; left:0; right:0; z-index:50;
  background:rgba(243,238,228,0.82); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid transparent; transition:border-color .25s, background .25s;
}
.hc-scope .nav.solid{ border-bottom-color:var(--line); background:rgba(243,238,228,0.94); }
.hc-scope .nav-inner{ display:flex; align-items:center; justify-content:space-between; gap:40px; max-width:1240px; margin:0 auto; padding:16px 40px; }
.hc-scope .nav-logo{ font-family:'Newsreader',serif; font-weight:500; font-size:19px; color:var(--ink); display:inline-flex; align-items:center; gap:9px; }
.hc-scope .nav-logo .dot{ width:7px; height:7px; border-radius:50%; background:var(--orange); display:inline-block; }
.hc-scope .nav-links{ display:flex; align-items:center; gap:26px; }
.hc-scope .nav-links a{ font-size:14px; color:var(--ink-2); white-space:nowrap; }
.hc-scope .nav-links a:hover{ color:var(--orange); }
.hc-scope .nav-lang{ display:flex; gap:2px; font-family:'IBM Plex Mono',monospace; font-size:12px; letter-spacing:0.06em; align-items:center; }
.hc-scope .nav-lang a{ color:var(--muted-2); padding:3px 6px; border-radius:3px; }
.hc-scope .nav-lang a.active{ color:var(--orange); }
.hc-scope .nav-lang a:hover{ color:var(--ink); }
@media(max-width:920px){ .hc-scope .nav-links a:not(.btn), .hc-scope .nav-lang{ display:none; } }
@media(max-width:740px){ .hc-scope .nav-inner{ padding:14px 22px; } }

.hc-scope .crumb{ font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:0.13em; text-transform:uppercase; color:var(--muted); padding:22px 0 0; }
.hc-scope .crumb a{ color:var(--muted); }
.hc-scope .crumb a:hover{ color:var(--orange); }
.hc-scope .crumb .sep{ margin:0 11px; color:var(--line-2); }

/* ─── HERO  (.q-hero) ─────────────────────────────────────── */
.hc-scope .q-hero{ padding:118px 0 90px; border-bottom:1px solid var(--line); }
.hc-scope .q-hero .grid{ display:grid; grid-template-columns:1.12fr 0.88fr; gap:64px; align-items:center; }
.hc-scope .q-hero h1{ margin-top:24px; }
.hc-scope .q-hero .lede{ margin-top:24px; }
.hc-scope .q-panel{
  margin-top:34px; background:var(--surface); border:1px solid var(--line);
  border-left:3px solid var(--orange); border-radius:3px; padding:24px 28px;
}
.hc-scope .q-panel .q-tag{ font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--orange); }
.hc-scope .q-panel .q-text{ font-family:'Newsreader',Georgia,serif; font-style:italic; font-size:22px; line-height:1.4; color:var(--ink); margin-top:12px; }
.hc-scope .q-panel .q-dim{ margin-top:16px; font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:var(--muted); }
.hc-scope .q-hero .fig{ border:1px solid var(--line); background:var(--surface); border-radius:3px; padding:28px 30px 22px; }
.hc-scope .q-hero .fig .cap{ margin-top:18px; display:flex; justify-content:space-between; font-family:'IBM Plex Mono',monospace; font-size:10.5px; letter-spacing:0.14em; text-transform:uppercase; color:var(--muted-2); }
@media(max-width:980px){ .hc-scope .q-hero{ padding:104px 0 64px; } .hc-scope .q-hero .grid{ grid-template-columns:1fr; gap:44px; } .hc-scope .q-hero .fig{ max-width:560px; } }

/* ─── STAT BAND  (.stat-band) ─────────────────────────────── */
.hc-scope .stat-band{ display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); border-radius:3px; overflow:hidden; background:var(--surface); }
.hc-scope .stat{ padding:38px 32px; border-left:1px solid var(--line); }
.hc-scope .stat:first-child{ border-left:0; }
.hc-scope .stat .s-num{ font-family:'Newsreader',Georgia,serif; font-size:clamp(40px,5vw,58px); line-height:1; color:var(--orange); letter-spacing:-0.02em; }
.hc-scope .stat .s-label{ margin-top:16px; font-size:15px; line-height:1.5; color:var(--ink-2); max-width:26ch; }
.hc-scope .stat .s-source{ margin-top:14px; font-family:'IBM Plex Mono',monospace; font-size:10.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted-2); }
@media(max-width:760px){ .hc-scope .stat-band{ grid-template-columns:1fr; } .hc-scope .stat{ border-left:0; border-top:1px solid var(--line); } .hc-scope .stat:first-child{ border-top:0; } }

/* ─── GEO "In short" box (citable Q&A) ────────────────────── */
.hc-scope .geo{ background:var(--surface); border:1px solid var(--line); border-left:3px solid var(--green); border-radius:3px; padding:32px 36px; max-width:980px; }
.hc-scope .geo .g-label{ font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--green); display:inline-flex; align-items:center; gap:10px; }
.hc-scope .geo .g-label::before{ content:''; width:22px; height:1px; background:var(--green); }
.hc-scope .geo .g-q{ font-family:'Newsreader',Georgia,serif; font-size:clamp(22px,2.4vw,27px); line-height:1.28; color:var(--ink); margin-top:16px; }
.hc-scope .geo .g-a{ font-size:17px; line-height:1.7; color:var(--ink-2); margin-top:16px; max-width:74ch; }
.hc-scope .geo .g-a strong{ color:var(--ink); }
@media(max-width:740px){ .hc-scope .geo{ padding:26px 22px; } }

/* ─── DIAGRAM CARD (holds dark-labelled SVG on light surface) ─ */
.hc-scope .dgram{ background:var(--surface); border:1px solid var(--line); border-radius:3px; padding:34px 38px 26px; }
.hc-scope .dgram .hc-diagram{ width:100%; }
.hc-scope .dgram .d-cap{ margin-top:18px; padding-top:16px; border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; font-family:'IBM Plex Mono',monospace; font-size:10.5px; letter-spacing:0.12em; text-transform:uppercase; color:var(--muted-2); }
@media(max-width:740px){ .hc-scope .dgram{ padding:22px 18px 18px; } }

/* ─── MATURITY (rich stacked)  (.mlevels) ─────────────────── */
.hc-scope .mlevels{ border-top:1px solid var(--night-line); }
.hc-scope .m-row{ display:grid; grid-template-columns:200px 1fr; gap:48px; padding:46px 0; border-bottom:1px solid var(--night-line); }
.hc-scope .m-aside .m-badge{ font-family:'IBM Plex Mono',monospace; font-size:11px; font-weight:500; letter-spacing:0.16em; text-transform:uppercase; color:rgba(255,255,255,0.45); }
.hc-scope .m-aside .m-num{ font-family:'IBM Plex Mono',monospace; font-size:64px; font-weight:300; line-height:1; color:rgba(255,255,255,0.16); margin-top:14px; }
.hc-scope .m-aside .m-ticks{ display:flex; gap:5px; margin-top:24px; max-width:150px; }
.hc-scope .m-aside .m-ticks i{ height:4px; flex:1; background:rgba(255,255,255,0.12); border-radius:1px; }
.hc-scope .m-row[data-level="1"] .m-ticks i:nth-child(-n+1), .hc-scope .m-row[data-level="2"] .m-ticks i:nth-child(-n+2), .hc-scope .m-row[data-level="3"] .m-ticks i:nth-child(-n+3), .hc-scope .m-row[data-level="4"] .m-ticks i:nth-child(-n+4){ background:var(--orange-bright); }
.hc-scope .m-row[data-level="4"] .m-aside .m-num{ color:rgba(226,118,26,0.55); }
.hc-scope .m-row[data-level="4"] .m-aside .m-badge{ color:var(--orange-bright); }
.hc-scope .m-name{ font-family:'Newsreader',Georgia,serif; font-size:27px; color:#fff; }
.hc-scope .m-answer{ margin-top:16px; font-family:'Newsreader',Georgia,serif; font-style:italic; font-size:20px; line-height:1.45; color:rgba(255,255,255,0.92); border-left:2px solid var(--orange); padding-left:20px; }
.hc-scope .m-desc{ margin-top:18px; font-size:15.5px; line-height:1.68; color:rgba(255,255,255,0.66); max-width:64ch; }
.hc-scope .m-example{ margin-top:20px; background:rgba(255,255,255,0.04); border:1px solid var(--night-line); border-radius:3px; padding:18px 20px; font-size:14.5px; line-height:1.6; color:rgba(255,255,255,0.72); max-width:66ch; }
.hc-scope .m-example .ex-label{ font-family:'IBM Plex Mono',monospace; font-size:10px; letter-spacing:0.14em; text-transform:uppercase; color:var(--orange-bright); display:block; margin-bottom:8px; }
.hc-scope .m-flags{ list-style:none; margin:22px 0 0; padding:0; }
.hc-scope .m-flags li{ position:relative; padding-left:22px; font-size:14.5px; line-height:1.55; color:rgba(255,255,255,0.6); margin-bottom:8px; }
.hc-scope .m-flags li::before{ content:''; position:absolute; left:0; top:9px; width:7px; height:7px; border:1.5px solid var(--orange-bright); transform:rotate(45deg); }
.hc-scope .m-flags-label{ font-family:'IBM Plex Mono',monospace; font-size:10px; letter-spacing:0.14em; text-transform:uppercase; color:rgba(255,255,255,0.4); margin-top:24px; display:block; }
@media(max-width:820px){ .hc-scope .m-row{ grid-template-columns:1fr; gap:22px; padding:38px 0; } .hc-scope .m-aside{ display:flex; align-items:baseline; gap:20px; } .hc-scope .m-aside .m-num{ margin-top:0; } .hc-scope .m-aside .m-ticks{ display:none; } }

/* ─── IMPROVEMENT TRACKS  (.tracks) ───────────────────────── */
.hc-scope .tracks{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.hc-scope .track{ background:var(--surface); border:1px solid var(--line); border-top:3px solid var(--orange); border-radius:3px; padding:30px 28px 32px; display:flex; flex-direction:column; }
.hc-scope .track .t-time{ font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:0.12em; text-transform:uppercase; color:var(--muted); }
.hc-scope .track .t-title{ font-family:'Newsreader',Georgia,serif; font-size:24px; color:var(--ink); margin-top:12px; line-height:1.2; }
.hc-scope .track ul{ list-style:none; margin:22px 0 0; padding:0; }
.hc-scope .track li{ position:relative; padding-left:24px; font-size:15px; line-height:1.6; color:var(--ink-2); margin-bottom:14px; }
.hc-scope .track li::before{ content:''; position:absolute; left:0; top:9px; width:8px; height:1.5px; background:var(--orange); }
@media(max-width:920px){ .hc-scope .tracks{ grid-template-columns:1fr; } }

/* ─── BENCHMARK TABLE  (.benchmark) ───────────────────────── */
.hc-scope .benchmark{ width:100%; border-collapse:collapse; }
.hc-scope .benchmark thead th{ font-family:'IBM Plex Mono',monospace; font-size:11.5px; font-weight:500; letter-spacing:0.13em; text-transform:uppercase; color:var(--muted); border-bottom:1px solid var(--line-2); padding:18px 22px; text-align:left; }
.hc-scope .benchmark tbody tr{ border-bottom:1px solid var(--line); }
.hc-scope .benchmark tbody tr:hover{ background:var(--surface); }
.hc-scope .benchmark tbody th{ font-family:'Newsreader',Georgia,serif; font-size:20px; font-weight:400; color:var(--ink); text-align:left; padding:22px; white-space:nowrap; vertical-align:top; }
.hc-scope .benchmark tbody td{ padding:22px; font-size:15.5px; line-height:1.6; color:var(--ink-2); vertical-align:top; }
.hc-scope .benchmark .b-var{ font-family:'IBM Plex Mono',monospace; font-size:14px; color:var(--orange); white-space:nowrap; }
.hc-scope .benchmark-wrap{ overflow-x:auto; }
@media(max-width:740px){ .hc-scope .benchmark thead{ display:none; } .hc-scope .benchmark tbody th, .hc-scope .benchmark tbody td{ display:block; padding:6px 0; white-space:normal; } .hc-scope .benchmark tbody tr{ padding:22px 0; } .hc-scope .benchmark tbody th{ font-size:22px; } }

/* ─── RELATED  (.related) ─────────────────────────────────── */
.hc-scope .related{ display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.hc-scope .rel-card{ display:flex; flex-direction:column; gap:18px; background:var(--surface); border:1px solid var(--line); border-radius:3px; padding:26px; transition:border-color .2s, transform .2s; }
.hc-scope .rel-card:hover{ border-color:var(--orange); transform:translateY(-2px); color:inherit; }
.hc-scope .rel-card .r-idx{ font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:var(--muted-2); }
.hc-scope .rel-card .r-name{ font-family:'Newsreader',Georgia,serif; font-size:22px; color:var(--ink); display:flex; align-items:center; justify-content:space-between; gap:14px; }
.hc-scope .rel-card .r-dim{ font-size:14px; color:var(--muted); margin-top:-8px; }
.hc-scope .rel-card .r-name svg{ flex:0 0 auto; color:var(--orange); transition:transform .2s; }
.hc-scope .rel-card:hover .r-name svg{ transform:translateX(4px); }
@media(max-width:680px){ .hc-scope .related{ grid-template-columns:1fr; } }

/* ─── CTA band ────────────────────────────────────────────── */
.hc-scope .cta-band{ background:var(--night); color:#fff; position:relative; overflow:hidden; padding:104px 0; }
.hc-scope .cta-band::before{ content:''; position:absolute; top:-180px; right:-180px; width:520px; height:520px; background:radial-gradient(circle, rgba(226,118,26,0.30) 0%, rgba(226,118,26,0) 60%); pointer-events:none; }
.hc-scope .cta-band .wrap{ position:relative; z-index:2; }
.hc-scope .cta-band h2{ color:#fff; max-width:24ch; }
.hc-scope .cta-band h2 em{ color:var(--orange-bright); font-style:italic; }
.hc-scope .cta-band p{ color:rgba(255,255,255,0.7); margin-top:22px; max-width:56ch; font-size:18px; }
.hc-scope .cta-band .cta-row{ margin-top:38px; display:flex; gap:14px; flex-wrap:wrap; }

/* ─── FOOTER (Praxis chrome) ──────────────────────────────── */
.hc-scope .footer{ background:#14110D; color:rgba(255,255,255,0.6); padding:48px 0 40px; font-size:13px; }
.hc-scope .footer .row{ display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap; }
.hc-scope .footer .brand{ font-family:'Newsreader',serif; font-size:18px; color:#fff; display:inline-flex; align-items:center; gap:8px; }
.hc-scope .footer .brand .dot{ width:7px; height:7px; border-radius:50%; background:var(--orange-bright); }
.hc-scope .footer .f-links{ display:flex; gap:22px; flex-wrap:wrap; }
.hc-scope .footer .f-links a{ color:rgba(255,255,255,0.6); }
.hc-scope .footer .f-links a:hover{ color:#fff; }
.hc-scope .footer .powered{ font-family:'IBM Plex Mono',monospace; font-size:11px; letter-spacing:0.08em; color:rgba(255,255,255,0.4); }
.hc-scope .footer .powered a{ color:rgba(255,255,255,0.55); }
.hc-scope .footer .powered a:hover{ color:#fff; }

.hc-scope [id]{ scroll-margin-top:90px; }

/* ─── reveal on scroll ────────────────────────────────────── */
.hc-scope .reveal{ opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease; }
.hc-scope .reveal.in{ opacity:1; transform:none; }
@media(prefers-reduced-motion:reduce){ .hc-scope .reveal{ opacity:1; transform:none; transition:none; } }