/* GEO page styles.
   Scoped: every selector is prefixed .geo- so nothing leaks into other pages.
   Depends on tokens from wldm.css. Built 7 Sep 2026. */

/* ============================================================ HERO */

.geo-hero-top{text-align:center;max-width:820px;margin:0 auto}
.geo-hero-top .eyebrow{justify-content:center}
.geo-hero-top .h1{max-width:19ch;margin-left:auto;margin-right:auto}
.geo-hero-top .lead{margin-left:auto;margin-right:auto;max-width:56ch}
.geo-hero-top .accent-bar{margin-left:auto;margin-right:auto}
.geo-hero-top .btn-row{justify-content:center}

/* ------------------------------------------------ island: geo-funnel */

.geo-funnel{margin-top:clamp(46px,6vw,72px)}
.geo-funnel .gf-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:var(--s4)}
.geo-funnel .gf-head .card-label{margin:0}
.geo-funnel .gf-head .gf-note{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-dark);margin:0}

.geo-funnel .gf-phases{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}
.geo-funnel .gf-phase{grid-column:span 1;font-family:var(--mono);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);border-top:1.5px solid var(--ink);padding-top:9px}
.geo-funnel .gf-phase--explore{grid-column:span 2}
.geo-funnel .gf-phase b{font-weight:400;color:var(--ink)}

.geo-funnel .gf-plot{display:block;width:100%;height:clamp(126px,14vw,170px)}
.geo-funnel .gf-flow{fill:var(--ink)}
.geo-funnel .gf-cap{fill:var(--ny)}
.geo-funnel .gf-drop{fill:rgba(42,43,41,.35)}
.geo-funnel .gf-line{stroke:rgba(42,43,41,.34);stroke-width:1.6;stroke-dasharray:4 5}

.geo-funnel .gf-modes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:var(--surface)}
.geo-funnel .gf-mode{padding:20px 20px 22px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:9px;background:var(--surface)}
.geo-funnel .gf-mode:last-child{border-right:none}
.geo-funnel .gf-n{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;color:var(--accent-dark)}
.geo-funnel .gf-t{font-family:var(--sans);font-weight:400;font-size:var(--fs-body);line-height:1.3;letter-spacing:0;color:var(--ink)}
.geo-funnel .gf-s{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);line-height:1.45}

/* load sequence: steps are visible by default, JS arms then lights them */
.geo-funnel .gf-step{transition:opacity .5s cubic-bezier(.2,.7,.2,1),transform .5s cubic-bezier(.2,.7,.2,1)}
.geo-funnel.is-armed .gf-step{opacity:0}
.geo-funnel.is-armed .gf-mode.gf-step{transform:translateY(10px)}
.geo-funnel.is-armed .gf-step.is-lit{opacity:1;transform:none}

/* ------------------------------------------------ hero answer demo */

.geo-answer{margin-top:clamp(34px,4vw,52px);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:hidden;box-shadow:var(--shadow-lift)}
.geo-answer .ga-top{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.geo-answer .ga-top .r{display:inline-flex;align-items:center;gap:9px;letter-spacing:.14em;color:var(--accent-dark)}
.geo-answer .ga-top .r i{width:6px;height:6px;border-radius:50%;background:var(--accent-light);display:block;animation:wl-pulse 2.4s ease-in-out infinite}
.geo-answer .ga-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.geo-answer .ga-l{padding:clamp(24px,3vw,34px);border-right:1px solid var(--line)}
.geo-answer .ga-r{padding:clamp(24px,3vw,34px);background:var(--bg)}
.geo-answer .ga-prompt{margin:0 0 20px;padding:14px 18px;border-radius:var(--r-sm);background:rgba(42,43,41,.05);font-size:var(--fs-small);font-weight:300;line-height:1.5;color:var(--ink)}
.geo-answer .ga-ans{margin:0;font-size:var(--fs-small);font-weight:300;line-height:1.7;color:var(--ink-soft)}
.geo-answer .ga-ans strong{font-weight:400;color:var(--ink)}
.geo-answer .ga-ans sup{color:var(--accent-dark);font-family:var(--mono);font-size:10.5px}
.geo-answer .ga-src{display:flex;flex-direction:column;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;margin-top:14px}
.geo-answer .ga-src .row{background:var(--surface);padding:13px 15px;display:flex;align-items:center;gap:13px}
.geo-answer .ga-src .row.is-out{background:rgba(42,43,41,.05)}
.geo-answer .ga-src .n{font-family:var(--mono);font-size:11.5px;color:var(--accent-dark);width:14px;flex:none}
.geo-answer .ga-src .is-out .n{color:var(--muted)}
.geo-answer .ga-src .d{flex:1;font-family:var(--mono);font-size:14px;color:var(--ink);word-break:break-all}
.geo-answer .ga-src .is-out .d{color:var(--muted);text-decoration:line-through}
.geo-answer .ga-src .s{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;background:var(--ny);color:var(--ink);padding:4px 10px;border-radius:var(--r-pill);white-space:nowrap;flex:none}
.geo-answer .ga-src .is-out .s{background:rgba(42,43,41,.09);color:var(--muted)}
.geo-answer .ga-kick{margin:0;padding:18px clamp(24px,3vw,34px);border-top:1px solid var(--line);background:rgba(184,211,216,.45);font-size:var(--fs-body);line-height:1.5;color:var(--ink);font-weight:400}

/* ============================================================ INK CALLOUTS */

.geo-ink .kicker{color:var(--on-ink-label)}
.geo-ink .kicker b{color:var(--ny)}
.geo-ink .card-label{color:var(--on-ink-label)}
.geo-ink .card-label.lime{color:var(--ny)}
.geo-close blockquote.brand.block-lg{margin-top:var(--s6)}
.geo-ink blockquote.brand{color:var(--wh);border-left-color:var(--ny)}
.geo-ink blockquote.brand cite{color:var(--on-ink-label)}
.geo-close .h2{max-width:30ch}
.geo-close .btn-row{margin-top:var(--s6)}

.acc-body code{font-family:var(--mono);font-size:14px;background:rgba(42,43,41,.07);border-radius:var(--r-xs);padding:2px 6px;word-break:break-word}

/* ============================================================ 01 PIPELINE COMPARISON */

.geo-pipes{display:grid;grid-template-columns:minmax(88px,auto) repeat(3,minmax(0,1fr));gap:10px 14px;align-items:center;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:clamp(22px,2.6vw,32px)}
.geo-pipes .gp-label{font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0}
.geo-pipes .gp-label.is-ai{color:var(--accent-dark)}
.geo-pipes .gp-node{position:relative;display:block;text-align:center;padding:16px 12px;border-radius:var(--r-sm);border:1px dashed var(--hair-strong);background:var(--bg);font-family:var(--sans);font-weight:400;font-size:var(--fs-body);letter-spacing:0;color:var(--ink-soft)}
.geo-pipes .gp-node.is-ai{border-style:solid;border-color:var(--hair-strong);background:rgba(225,255,1,.22);color:var(--ink)}
.geo-pipes .gp-node.is-end::after{content:none}
.geo-pipes .gp-node::after{content:"\2192";position:absolute;right:-16px;top:50%;transform:translateY(-50%);font-family:var(--mono);font-size:14px;color:var(--accent-dark);line-height:1}
.geo-pipes .gp-eq{display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:18px;color:var(--accent-dark);min-height:28px;position:relative}
.geo-pipes .gp-eq::before,.geo-pipes .gp-eq::after{content:"";position:absolute;left:50%;width:1px;height:7px;background:rgba(42,43,41,.24)}
.geo-pipes .gp-eq::before{top:0}
.geo-pipes .gp-eq::after{bottom:0}
.geo-pipes .gp-spacer{display:block;min-height:1px}

.geo-punch{font-family:var(--serif);font-size:var(--fs-h2);line-height:1.2;letter-spacing:-.015em;color:var(--accent-dark);max-width:40ch;margin:0}
.geo-punch.block{margin-top:var(--s5)}
.geo-punch.block-lg{margin-top:var(--s6)}

/* ============================================================ 02 FAILURE MODE SELECTOR */

.geo-modes{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--surface)}
.geo-modes .gm-top{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:15px 22px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.geo-modes .gm-top .r{color:var(--accent-dark)}
.geo-modes .gm-split{display:grid;grid-template-columns:minmax(220px,.82fr) minmax(0,2fr)}
.geo-modes .gm-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none;border-right:1px solid var(--line);background:var(--bg)}
.geo-modes .gm-tab{display:block;width:100%;text-align:left;padding:20px 22px;background:transparent;border:none;border-bottom:1px solid var(--line);border-left:3px solid transparent;cursor:pointer;min-height:44px;transition:background .25s,border-color .25s}
.geo-modes .gm-tab:last-child{border-bottom:none}
.geo-modes .gm-tab:hover{background:rgba(42,43,41,.05)}
.geo-modes .gm-tab[aria-selected="true"]{background:rgba(225,255,1,.22);border-left-color:var(--accent-dark)}
.geo-modes .gm-tab .n{display:block;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;color:var(--muted);margin-bottom:9px}
.geo-modes .gm-tab .t{display:block;font-family:var(--sans);font-weight:400;font-size:var(--fs-body);line-height:1.3;letter-spacing:0;color:var(--muted)}
.geo-modes .gm-tab[aria-selected="true"] .n{color:var(--accent-dark)}
.geo-modes .gm-tab[aria-selected="true"] .t{color:var(--ink)}
.geo-modes .gm-panels{min-width:0}
.geo-modes .gm-panel{padding:clamp(26px,3.2vw,42px)}
.geo-modes .gm-panel+.gm-panel{border-top:1px solid var(--line)}
.geo-modes .gm-panel[hidden]{display:none}
.geo-modes .gm-panel .h3{max-width:24ch}
.geo-modes .gm-panel .body{font-size:var(--fs-small);font-weight:300;line-height:1.65;color:var(--ink-soft);max-width:56ch}

.geo-mfunnel{margin-top:var(--s6);padding-top:var(--s5);border-top:1px solid var(--line)}
.geo-mfunnel .mf-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:var(--s4)}
.geo-mfunnel .mf-head p{margin:0}
.geo-mfunnel .mf-row+.mf-row{margin-top:16px}
.geo-mfunnel .mf-top{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:8px}
.geo-mfunnel .mf-stage{font-size:var(--fs-small);font-weight:300;color:var(--ink-soft)}
.geo-mfunnel .mf-status{font-family:var(--mono);font-size:12.5px;letter-spacing:.08em;color:var(--muted)}
.geo-mfunnel .mf-track{height:7px;border-radius:var(--r-pill);background:var(--line);overflow:hidden}
.geo-mfunnel .mf-fill{display:block;height:100%;width:0;border-radius:var(--r-pill);background:rgba(42,43,41,.3);transition:width .5s cubic-bezier(.2,.7,.2,1)}
.geo-mfunnel .is-pass .mf-fill{width:100%}
.geo-mfunnel .is-fail .mf-fill{width:22%;background:linear-gradient(90deg,var(--accent-light),var(--bl))}
.geo-mfunnel .is-fail .mf-stage,.geo-mfunnel .is-fail .mf-status{color:var(--accent-dark)}
.geo-mfunnel .is-out .mf-stage,.geo-mfunnel .is-out .mf-status{color:var(--muted)}

/* ============================================================ 03 SCORECARD */

.geo-scorecard{min-width:720px}
.geo-scorecard td.gate{white-space:normal}
.geo-gatechip{display:inline-block;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;background:var(--ink);color:var(--ny);padding:5px 11px;border-radius:var(--r-pill);white-space:nowrap;margin:0 6px 6px 0}
.geo-scorecard td.mode{font-family:var(--sans);font-weight:400;font-size:var(--fs-body);letter-spacing:0;color:var(--ink);width:20%}
.geo-scorecard tbody tr{transition:background .25s}
.geo-scorecard tbody tr:hover{background:rgba(225,255,1,.13)}

.geo-gate{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:clamp(24px,2.8vw,34px);position:relative;overflow:hidden}
.geo-gate::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--ny)}
.geo-gate .card-label{margin-bottom:14px}
.geo-gate .h3{margin-bottom:14px;max-width:24ch}
.geo-gate p{font-size:var(--fs-small);font-weight:300;line-height:1.6;color:var(--ink-soft);max-width:46ch;margin:0}
.geo-gate .src{margin-top:14px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

/* ============================================================ 04 FIVE STEPS */

.geo-steps5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.geo-steps5 .step{background:var(--bg);padding:clamp(22px,2.4vw,30px) clamp(18px,2vw,24px);transition:background .25s}
.geo-steps5 .step:hover{background:var(--surface)}
.geo-steps5 .step .n{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;color:var(--accent-dark);margin:0 0 16px}
.geo-steps5 .step p{font-size:var(--fs-small);font-weight:300;line-height:1.6;color:var(--ink-soft);margin:0}

/* ============================================================ 05 HALLUCINATION RISK SCORE */

.geo-measure{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,3.4vw,52px);align-items:start}
.geo-method{list-style:none;margin:0;padding:0;counter-reset:gm}
.geo-method li{position:relative;padding-left:52px;font-size:var(--fs-body);line-height:1.6;color:var(--ink-soft)}
.geo-method li+li{margin-top:20px}
.geo-method li::before{counter-increment:gm;content:"0" counter(gm);position:absolute;left:0;top:2px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;color:var(--accent-dark);border:1px solid var(--line);border-radius:var(--r-pill);padding:4px 9px;background:var(--surface)}

.geo-hrs{border:1px solid var(--ink);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}
.geo-hrs .hrs-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 20px;background:var(--ink);color:var(--on-ink);font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.geo-hrs .hrs-top .r{color:var(--ny);letter-spacing:.12em}
.geo-hrs .hrs-rows{display:flex;flex-direction:column;gap:1px;background:var(--line)}
.geo-hrs .hrs-row{background:var(--surface);padding:17px 20px;display:flex;align-items:center;gap:16px}
.geo-hrs .hrs-row .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-dark);flex:none;width:96px}
.geo-hrs .hrs-row .v{font-size:var(--fs-small);font-weight:300;line-height:1.5;color:var(--ink-soft)}
.geo-hrs .hrs-foot{padding:18px 20px;border-top:1px solid var(--line);background:var(--bg);font-size:var(--fs-small);font-weight:300;line-height:1.6;color:var(--muted);margin:0}

/* ============================================================ 06 DARK RESEARCH BAND */

.geo-band{background:var(--ink-deep);color:var(--on-ink);position:relative;overflow:hidden}
.geo-band::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(243,240,230,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(243,240,230,.04) 1px,transparent 1px);background-size:64px 64px;pointer-events:none}
.geo-band .brx-container{position:relative}
.geo-band .h2,.geo-band .h3{color:var(--wh)}
.geo-band .kicker{color:var(--on-ink-label)}
.geo-band .kicker b{color:var(--ny)}
.geo-band .lead,.geo-band .body{color:var(--on-ink-lead)}
.geo-band .caption{color:var(--on-ink-label)}
.geo-band .statstrip{border-color:var(--hair-strong);background:rgba(243,240,230,.2)}
.geo-band .stat{background:var(--ink-deep)}
.geo-pullquote{margin:0;text-align:center;max-width:min(680px,100%);margin-left:auto;margin-right:auto}
.geo-pullquote.block-lg{margin-top:var(--s6)}
.geo-pullquote p{font-family:var(--serif);font-size:var(--fs-h2);line-height:1.2;letter-spacing:-.025em;color:var(--wh);margin:0}
.geo-pullquote p em{font-style:italic;color:var(--ny)}

/* ============================================================ 07 CASE STATS */

.geo-stat3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(243,240,230,.16);border:1px solid var(--ink);border-radius:var(--r-lg);overflow:hidden}
.geo-tile{background:var(--ink);padding:clamp(26px,3vw,36px) clamp(22px,2.4vw,30px);display:flex;flex-direction:column}
.geo-tile .v{font-family:var(--head);font-size:clamp(38px,4.6vw,58px);line-height:1;letter-spacing:-.03em;color:var(--ny);font-variant-numeric:tabular-nums;display:block}
.geo-tile .v::after{content:"";display:block;width:64px;height:5px;border-radius:var(--r-pill);background:transparent;margin-top:12px}
.geo-tile .meter{margin-top:18px;height:8px;border-radius:var(--r-pill);background:rgba(243,240,230,.14);position:relative;overflow:hidden}
.geo-tile .meter i{position:absolute;left:0;top:0;bottom:0;border-radius:var(--r-pill);background:var(--ny);display:block}
.geo-tile .meter i[data-w="89"]{width:89%}
.geo-tile .meter i[data-w="11"]{width:11%}
.geo-tile .meter i[data-w="0"]{width:4px;background:var(--ny);box-shadow:0 0 0 1px rgba(225,255,1,.4)}
.geo-tile .scale{margin-top:9px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;color:var(--on-ink-label)}
.geo-tile .k{margin-top:16px;font-size:var(--fs-small);font-weight:300;line-height:1.55;color:var(--on-ink-lead)}
.geo-tile.is-zero{background:var(--ink-deep)}
.geo-tile.is-zero .v{color:var(--wh)}
.geo-tile.is-zero .v::after{background:var(--ny)}

.geo-eb{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:clamp(22px,2.6vw,30px)}
.geo-eb .eb-bar{display:flex;gap:2px;height:34px;margin:var(--s4) 0 var(--s3)}
.geo-eb .eb-bar i{display:block;border-radius:var(--r-cell);min-width:4px}
.geo-eb .eb-a{flex:124;background:var(--ink)}
.geo-eb .eb-b{flex:22;background:var(--accent-light)}
.geo-eb .eb-c{flex:21;background:#C24E1E}
.geo-eb .eb-d{flex:31;background:rgba(42,43,41,.34)}
.geo-eb .eb-e{flex:19;background:rgba(42,43,41,.14)}
.geo-eb .eb-legend{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:0;list-style:none}
.geo-eb .eb-legend li{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.geo-eb .eb-legend .sw{width:11px;height:11px;border-radius:var(--r-cell);flex:none}
.geo-eb .eb-legend .sw-a{background:var(--ink)}
.geo-eb .eb-legend .sw-b{background:var(--accent-light)}
.geo-eb .eb-legend .sw-c{background:#C24E1E}
.geo-eb .eb-legend .sw-d{background:rgba(42,43,41,.34)}
.geo-eb .eb-legend .sw-e{background:rgba(42,43,41,.14)}

.geo-verdict{display:inline-block;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;padding:5px 12px;border-radius:var(--r-pill);font-weight:600;white-space:nowrap;margin-right:12px}
.geo-verdict.is-amber{background:var(--ny);color:var(--ink)}
.geo-verdict.is-red{background:#C24E1E;color:#FFFFFF}

/* ============================================================ 09 DELIVERABLES */

.geo-deliv{min-width:740px}
.geo-deliv td.n{width:56px;font-family:var(--mono);font-size:13px;color:var(--accent-dark);text-align:center}
.geo-deliv td.d{width:29%;font-family:var(--sans);font-weight:400;font-size:var(--fs-body);line-height:1.35;letter-spacing:0;color:var(--ink)}
.geo-deliv tbody tr{transition:background .25s}
.geo-deliv tbody tr:hover{background:rgba(225,255,1,.13)}
.geo-deliv tbody tr.is-flag{background:rgba(225,255,1,.18)}
.geo-deliv tbody tr.is-flag td:first-child{box-shadow:inset 3px 0 0 var(--ink)}
.geo-aside{max-width:560px;margin-left:auto;position:relative}
.geo-aside::before{content:"";position:absolute;top:-26px;right:44px;width:1px;height:26px;background:rgba(42,43,41,.3)}

/* ============================================================ RESPONSIVE */

@media (max-width:1080px){
  .geo-steps5{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:960px){
  .geo-funnel .gf-modes{grid-template-columns:repeat(2,minmax(0,1fr))}
  .geo-funnel .gf-mode:nth-child(2n){border-right:none}
  .geo-funnel .gf-mode:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .geo-answer .ga-body{grid-template-columns:minmax(0,1fr)}
  .geo-answer .ga-l{border-right:none;border-bottom:1px solid var(--line)}
  .geo-modes .gm-split{grid-template-columns:minmax(0,1fr)}
  .geo-modes .gm-list{flex-direction:row;flex-wrap:wrap;border-right:none;border-bottom:1px solid var(--line)}
  .geo-modes .gm-tab{flex:1 1 50%;border-left:none;border-top:3px solid transparent;border-right:1px solid var(--line)}
  .geo-modes .gm-tab[aria-selected="true"]{border-left-color:transparent;border-top-color:var(--accent-dark)}
  .geo-measure{grid-template-columns:minmax(0,1fr)}
  .geo-aside{margin-left:0;max-width:none}
  .geo-aside::before{display:none}
}
@media (max-width:820px){
  .geo-pipes{grid-template-columns:minmax(0,1fr);gap:8px;text-align:center}
  .geo-pipes .gp-eq,.geo-pipes .gp-spacer{display:none}
  .geo-pipes .gp-node::after{content:none}
  .geo-pipes .gp-label{margin-top:12px}
  .geo-pipes .gp-label:first-child{margin-top:0}
  .geo-steps5{grid-template-columns:minmax(0,1fr)}
  .geo-stat3{grid-template-columns:minmax(0,1fr)}
  .geo-funnel .gf-plot{height:112px}
}
@media (max-width:560px){
  .geo-funnel .gf-modes{grid-template-columns:minmax(0,1fr)}
  .geo-funnel .gf-mode{border-right:none;border-bottom:1px solid var(--line)}
  .geo-funnel .gf-mode:last-child{border-bottom:none}
  .geo-funnel .gf-phases{grid-template-columns:repeat(2,minmax(0,1fr))}
  .geo-funnel .gf-phase--explore{grid-column:span 2}
  .geo-hero-top .eyebrow{flex-direction:column;gap:12px}
  .geo-modes .gm-tab{flex:1 1 100%;border-right:none}
  .geo-hrs .hrs-row{flex-direction:column;align-items:flex-start;gap:8px}
  .geo-hrs .hrs-row .k{width:auto}
  .geo-method li{padding-left:0}
  .geo-method li::before{position:static;display:inline-block;margin-bottom:8px}
}

@media (prefers-reduced-motion:reduce){
  .geo-funnel.is-armed .gf-step{opacity:1;transform:none}
}
@media print{
  .geo-funnel.is-armed .gf-step{opacity:1!important;transform:none!important}
  .geo-modes .gm-panel[hidden]{display:block!important}
}

/* ---------------------------------------------------------- dark sections */
.brx-section--ink .geo-funnel .gf-t,
.brx-section--ink .geo-answer .ga-prompt,
.brx-section--ink .geo-answer .ga-ans strong,
.brx-section--ink .geo-answer .ga-src .d,
.brx-section--ink .geo-scorecard td.mode,
.brx-section--ink .geo-deliv td.d{color:var(--on-ink)}
.brx-section--ink .geo-answer .ga-prompt{background:rgba(243,240,230,.06)}
.brx-section--ink .geo-answer .ga-kick{background:rgba(184,211,216,.14);color:var(--on-ink)}
.brx-section--ink .geo-funnel .gf-phase b{color:var(--on-ink)}
.brx-section--ink .geo-funnel .gf-phase{border-top-color:var(--hair-strong)}
.brx-section--ink .geo-pipes .gp-node.is-ai{border-color:var(--hair-strong);color:var(--on-ink)}

/* John Buoye copy pass: one-line intro above the funnel */
.geo-funnel-intro{max-width:62ch;margin:var(--s7) auto var(--s5);text-align:center}
