/* Secondary pages (methodology, sample report, teardowns, legal, industries, thank-you, 404) — extends elite.css + funnel.css.
   Reading pages: paper ground, one white "document" per page, figures in Plex Mono, gold only on the next decision. */

.page-hero h1 em, .final h2 em{ font-style:italic; color:var(--gold); }
.page-hero .hero-actions{ margin-top:30px; }
.crumbs{ display:flex; flex-wrap:wrap; gap:8px; font:500 12px/1.4 var(--mono); letter-spacing:.06em; text-transform:uppercase; color:var(--muted-inv); margin-bottom:18px; }
.crumbs a{ color:var(--muted-inv); text-decoration:none; }
.crumbs a:hover{ color:var(--text-inv); }
.crumbs span[aria-hidden]{ opacity:.5; }
.facts-strip{ display:flex; flex-wrap:wrap; gap:0; margin-top:34px; border-top:1px solid var(--line-ink); }
.facts-strip div{ padding:16px 28px 0 0; margin-right:28px; border-right:1px solid var(--line-ink); }
.facts-strip div:last-child{ border-right:0; margin-right:0; }
.facts-strip b{ display:block; font:600 26px/1.1 var(--mono); color:var(--text-inv); }
.facts-strip span{ font-size:13.5px; color:var(--muted-inv); }
@media (max-width:640px){ .facts-strip div{ border-right:0; margin-right:0; width:50%; } }

.doc{ max-width:820px; margin:0 auto; }
.note{ background:var(--card); border:1px solid var(--line); border-radius:var(--r); padding:18px 22px; font-size:15px; color:var(--muted); line-height:1.7; }
.note b, .note strong{ color:var(--text); font-weight:600; }
.note .eyebrow{ display:block; margin-bottom:6px; }
.sub-head{ display:flex; flex-direction:column; gap:8px; margin:0 0 26px; }
.sub-head h2{ font-size:clamp(26px,3vw,34px); }
.sub-head p{ color:var(--muted); font-size:16px; max-width:40.4em; }

/* ---------- methodology ---------- */
.family{ display:grid; grid-template-columns:260px minmax(0,1fr); gap:40px; padding:40px 0; border-top:1px solid var(--line); }
.family:first-child{ border-top:0; padding-top:0; }
.family-label{ position:sticky; top:96px; align-self:start; display:flex; flex-direction:column; gap:8px; }
.family-label h2{ font-size:28px; }
.family-label .mono{ font-size:12.5px; color:var(--muted); letter-spacing:.06em; text-transform:uppercase; }
.fw-rows{ display:flex; flex-direction:column; }
.fw-row{ display:grid; grid-template-columns:52px minmax(0,1fr); gap:14px; padding:18px 0; border-bottom:1px solid var(--line); }
.fw-row:first-child{ padding-top:4px; }
.fw-row .code{ font:500 13px/1.7 var(--mono); color:var(--gold-ink); }
.fw-row h3{ font-size:20px; margin-bottom:5px; }
.fw-row p{ color:var(--muted); font-size:15.5px; }
@media (max-width:860px){ .family{ grid-template-columns:1fr; gap:18px; } .family-label{ position:static; } }
.anatomy{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--line); border-radius:var(--r-lg); background:var(--card); overflow:hidden; }
.anatomy div{ padding:22px; border-left:1px solid var(--line); }
.anatomy div:first-child{ border-left:0; }
.anatomy b{ display:block; font-family:var(--display); font-size:20px; font-weight:600; margin-bottom:6px; }
.anatomy span{ font-size:14.5px; color:var(--muted); }
@media (max-width:820px){ .anatomy{ grid-template-columns:1fr 1fr; } .anatomy div:nth-child(3){ border-left:0; } .anatomy div:nth-child(n+3){ border-top:1px solid var(--line); } }
@media (max-width:480px){ .anatomy{ grid-template-columns:1fr; } .anatomy div{ border-left:0; } .anatomy div + div{ border-top:1px solid var(--line); } }

/* ---------- the document sheet (sample report + teardowns) ---------- */
.sheet{ background:var(--card); border:1px solid var(--line); border-radius:var(--r-lg); box-shadow:var(--shadow); overflow:hidden; }
.sheet-top{ display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; padding:14px 26px; border-bottom:1px solid var(--line); background:#FAFBFC; }
.sheet-top .mono{ font-size:11.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
.sheet-body{ padding:clamp(22px,4vw,40px); }
.exec{ display:grid; grid-template-columns:auto minmax(0,1fr); gap:26px; align-items:center; }
.exec h2{ font-size:clamp(24px,2.8vw,30px); margin:8px 0 10px; }
.exec p{ color:var(--muted); font-size:16px; }
.exec p b{ color:var(--text); }
.score{ position:relative; width:112px; height:112px; }
.score svg{ width:112px; height:112px; transform:rotate(-90deg); }
.score .track{ fill:none; stroke:var(--line); stroke-width:8; }
.score .bar{ fill:none; stroke-width:8; stroke-linecap:round; }
.score .val{ position:absolute; inset:0; display:grid; place-content:center; text-align:center; font:600 30px/1 var(--mono); }
.score .val small{ display:block; font:500 10.5px/1.4 var(--mono); letter-spacing:.08em; color:var(--muted); margin-top:4px; }
@media (max-width:560px){ .exec{ grid-template-columns:1fr; } }
.sheet h3.part{ font:500 12.5px/1.3 var(--mono); letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin:36px 0 4px; padding-top:26px; border-top:1px solid var(--line); }
.finding{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 26px; padding:22px 0; border-bottom:1px solid var(--line); }
.finding:last-of-type{ border-bottom:0; }
.finding .chip{ grid-column:1 / -1; justify-self:start; font:600 11px/1 var(--mono); letter-spacing:.06em; text-transform:uppercase; padding:6px 9px; border-radius:6px; background:var(--leak-wash); color:var(--leak); }
.finding .chip.p2{ background:var(--gold-wash); color:var(--gold-ink); }
.finding h4{ margin:0; font-family:var(--display); font-size:21px; font-weight:600; line-height:1.3; }
.finding .impact{ font:600 16px/1.3 var(--mono); color:var(--leak); text-align:right; white-space:nowrap; }
.finding .impact.soft{ color:var(--text); white-space:normal; max-width:13.2em; font-size:14px; }
.finding .body{ grid-column:1 / -1; display:flex; flex-direction:column; gap:8px; }
.finding .body p{ color:var(--muted); font-size:15.5px; }
.finding .body p.fix{ color:var(--text); }
.finding .body p.fix b{ font-weight:600; }
.finding .conf{ font:500 12.5px/1.5 var(--mono); color:var(--muted); }
@media (max-width:560px){ .finding{ grid-template-columns:1fr; } .finding .impact{ text-align:left; } }
.veil{ position:relative; margin-top:6px; }
.veil ul{ list-style:none; margin:0; padding:0; filter:blur(3px); opacity:.55; user-select:none; }
.veil li{ padding:12px 0; border-bottom:1px solid var(--line); font-size:15px; }
.veil .over{ position:absolute; inset:0; display:grid; place-items:end center; padding-bottom:10px; background:linear-gradient(180deg, rgba(255,255,255,0), #fff 85%); font:600 13px/1.3 var(--mono); letter-spacing:.04em; }
.roadmap{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:14px; }
.roadmap div{ background:var(--paper); border:1px solid var(--line); border-radius:var(--r); padding:16px 18px; }
.roadmap .mono{ font-size:12px; letter-spacing:.06em; text-transform:uppercase; color:var(--gold-ink); }
.roadmap h4{ margin:4px 0 8px; font-size:16px; }
.roadmap ul{ margin:0; padding-left:18px; font-size:14.5px; color:var(--muted); display:flex; flex-direction:column; gap:4px; }
@media (max-width:720px){ .roadmap{ grid-template-columns:1fr; } }
.steal{ background:var(--ink); color:var(--text-inv); border-radius:var(--r-lg); padding:clamp(22px,3.4vw,32px); margin-top:30px; }
.steal .eyebrow{ color:var(--gold); }
.steal p{ margin-top:10px; font-size:16.5px; color:var(--muted-inv); line-height:1.7; }
.steal p b{ color:var(--text-inv); font-weight:600; }

.inc-list{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 44px; border-top:1px solid var(--line); }
.inc-list li{ list-style:none; display:grid; grid-template-columns:40px minmax(0,1fr); gap:10px; padding:18px 0; border-bottom:1px solid var(--line); }
.inc-list .mono{ font-size:13px; color:var(--gold-ink); line-height:1.8; }
.inc-list b{ display:block; font-size:16.5px; font-weight:600; }
.inc-list span{ font-size:15px; color:var(--muted); }
.inc-list{ padding:0; margin:0; }
@media (max-width:760px){ .inc-list{ grid-template-columns:1fr; } }

/* ---------- case studies ---------- */
.td-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.td{ display:flex; flex-direction:column; gap:8px; background:var(--card); border:1px solid var(--line); border-radius:var(--r-lg); padding:22px; text-decoration:none; transition:border-color .15s, transform .15s; }
.td:hover{ border-color:var(--gold-deep); transform:translateY(-2px); }
.td-top{ display:flex; justify-content:space-between; align-items:baseline; gap:10px; }
.td-top .mono{ font-size:11.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
.td-top b{ font:600 24px/1 var(--mono); }
.td-top b small{ font-size:12px; color:var(--muted); font-weight:500; }
.td h3{ font-size:24px; }
.td p{ font-size:15px; color:var(--muted); flex:1; }
.td .textlink{ font-size:15px; }
@media (max-width:900px){ .td-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:600px){ .td-grid{ grid-template-columns:1fr; } }
.composite{ background:var(--card); border:1px solid var(--line); border-radius:var(--r-lg); padding:clamp(22px,3.4vw,32px); }
.composite + .composite{ margin-top:16px; }
.composite-top{ display:flex; flex-wrap:wrap; gap:10px 16px; align-items:center; }
.composite-top .chip{ font:600 11px/1 var(--mono); letter-spacing:.08em; text-transform:uppercase; padding:6px 9px; border-radius:6px; background:var(--gold-wash); color:var(--gold-ink); }
.composite-top span:not(.chip){ font-size:14px; color:var(--muted); }
.composite h3{ font-size:25px; margin:12px 0 18px; }
.lf{ display:grid; grid-template-columns:1fr 1fr; gap:0; border-top:1px solid var(--line); }
.lf div{ padding:18px 22px 4px 0; }
.lf div + div{ padding-left:22px; border-left:1px solid var(--line); }
.lf .mono{ font-size:12px; letter-spacing:.08em; text-transform:uppercase; }
.lf .l .mono{ color:var(--leak); } .lf .f .mono{ color:var(--fix); }
.lf p{ margin-top:6px; font-size:15.5px; color:var(--muted); }
@media (max-width:700px){ .lf{ grid-template-columns:1fr; } .lf div + div{ padding-left:0; border-left:0; border-top:1px solid var(--line); margin-top:14px; } }
.metrics{ display:flex; flex-wrap:wrap; gap:0; margin-top:18px; border:1px solid var(--line); border-radius:var(--r); overflow:hidden; }
.metrics div{ flex:1 1 150px; padding:14px 18px; border-left:1px solid var(--line); }
.metrics div:first-child{ border-left:0; }
.metrics span{ display:block; font:500 11.5px/1.3 var(--mono); letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
.metrics b{ display:block; font:600 22px/1.2 var(--mono); margin-top:4px; }
.metrics b.bad{ color:var(--leak); }
.chips{ display:flex; flex-wrap:wrap; gap:10px; }
.chips a{ font-size:14.5px; font-weight:600; text-decoration:none; padding:9px 14px; border:1px solid var(--line); border-radius:999px; background:var(--card); }
.chips a:hover{ border-color:var(--gold-deep); }

/* ---------- legal ---------- */
.legal-grid{ display:grid; grid-template-columns:220px minmax(0,1fr); gap:56px; align-items:start; }
.toc{ position:sticky; top:96px; display:flex; flex-direction:column; gap:2px; font-size:14px; }
.toc .eyebrow{ margin-bottom:8px; }
.toc a{ text-decoration:none; color:var(--muted); padding:5px 0; }
.toc a:hover{ color:var(--text); }
@media (max-width:900px){ .legal-grid{ grid-template-columns:1fr; gap:24px; } .toc{ position:static; display:none; } }
.prose{ max-width:720px; }
.prose h2{ font-size:26px; margin:46px 0 14px; padding-top:26px; border-top:1px solid var(--line); scroll-margin-top:90px; }
.prose > h2:first-of-type{ margin-top:34px; }
.prose p{ margin:0 0 14px; font-size:16.5px; line-height:1.75; color:#333D4D; }
.prose ul{ margin:0 0 16px; padding-left:22px; font-size:16.5px; line-height:1.7; color:#333D4D; }
.prose li{ margin-bottom:8px; }
.prose li ul{ margin-top:8px; }
.prose strong, .prose b{ color:var(--text); font-weight:600; }
.prose a{ font-weight:600; text-decoration:underline; text-decoration-color:var(--gold-deep); text-underline-offset:3px; }
.prose .note{ margin:0 0 8px; }
.prose .note p{ font-size:15.5px; color:var(--muted); margin:0; }
.updated{ font:500 12.5px/1.4 var(--mono); color:var(--muted-inv); margin-top:16px; letter-spacing:.04em; }

/* ---------- industries ---------- */
.ind-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.ind{ display:flex; flex-direction:column; gap:10px; background:var(--card); border:1px solid var(--line); border-radius:var(--r-lg); padding:24px; text-decoration:none; transition:border-color .15s, transform .15s; }
.ind:hover{ border-color:var(--gold-deep); transform:translateY(-2px); }
.ind .code{ width:max-content; font:600 12px/1 var(--mono); letter-spacing:.08em; background:var(--ink); color:var(--gold); padding:7px 9px; border-radius:6px; }
.ind h2{ font-size:26px; }
.ind p{ color:var(--muted); font-size:15.5px; flex:1; }
.ind .price{ font:500 13.5px/1.4 var(--mono); color:var(--text); padding-top:12px; border-top:1px solid var(--line); }
.ind .textlink{ font-size:15px; }
@media (max-width:900px){ .ind-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:600px){ .ind-grid{ grid-template-columns:1fr; } }

/* ---------- thank-you ---------- */
.seal-big{ width:64px; height:64px; border-radius:50%; background:var(--gold); color:var(--ink); display:grid; place-items:center; font-size:30px; font-weight:700; margin-bottom:22px; }
.seq{ list-style:none; margin:0; padding:0; counter-reset:seq; background:var(--card); border:1px solid var(--line); border-radius:var(--r-lg); }
.seq li{ counter-increment:seq; display:grid; grid-template-columns:52px minmax(0,1fr); gap:10px; padding:22px 26px; border-top:1px solid var(--line); }
.seq li:first-child{ border-top:0; }
.seq li::before{ content:counter(seq,decimal-leading-zero); font:500 13px/1.9 var(--mono); color:var(--gold-ink); }
.seq h3{ font-size:20px; margin-bottom:4px; }
.seq p{ color:var(--muted); font-size:15.5px; }
.links-row{ display:flex; flex-wrap:wrap; gap:10px 24px; justify-content:center; margin-top:28px; font-size:15px; }

/* ---------- 404 ---------- */
.nf{ padding:88px 0 96px; }
.nf-code{ font:600 clamp(72px,14vw,132px)/1 var(--mono); letter-spacing:-.04em; color:var(--gold); }
.nf h1{ margin-top:14px; max-width:11.43em; }
.nf-links{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-top:44px; max-width:860px; }
.nf-links a{ display:block; padding:14px 16px; border:1px solid var(--line-ink); border-radius:var(--r); text-decoration:none; color:var(--text-inv); font-weight:600; font-size:15px; }
.nf-links a span{ display:block; font:500 12px/1.4 var(--mono); color:var(--muted-inv); font-weight:500; margin-top:3px; }
.nf-links a:hover{ border-color:var(--gold); }
@media (max-width:760px){ .nf-links{ grid-template-columns:1fr 1fr; } }

@media print{ .site-head, .sticky-cta, .site-foot, .final, .consent{ display:none!important; } body{ background:#fff; } .page-hero{ background:#fff!important; color:#000!important; } }
