/* ============================================================
   QUANTIVERSE · practice pages
   Loaded after chrome.css. The homepage system carried into the
   inner pages: Inter set large and tight, Playfair reserved for
   figures, which carry the red. Infographics are ink and grey,
   with red for the one mark that matters; every exhibit draws
   itself in as it arrives and answers the cursor.
   ============================================================ */
:root{--sec:clamp(84px,9vw,140px)}
html{scroll-padding-top:calc(var(--sub) + 16px)}
.wrap--s{max-width:1120px}
.sec{padding-block:var(--sec)}
.grey{background:var(--g1)}
main{counter-reset:sec}

/* ---------------- type ---------------- */
.label{display:block;font-weight:500;font-size:12px;line-height:1;letter-spacing:.02em;text-transform:uppercase;color:var(--muted);font-variant-numeric:tabular-nums}
.statement{font-weight:500;font-size:clamp(28px,3.4vw,48px);line-height:1.06;letter-spacing:-.032em;text-wrap:balance}
.body{font-size:16px;line-height:1.62;color:var(--ink-soft);max-width:54ch}
.body + .body{margin-top:14px}
.body b{color:var(--ink);font-weight:500}
.num{font-family:var(--serif);font-weight:500;font-size:clamp(44px,5vw,68px);line-height:.95;letter-spacing:-.05em;color:var(--red);font-variant-numeric:lining-nums proportional-nums;white-space:nowrap}

/* ---------------- split-text primitives (shared with the homepage) ---------------- */
.ln{display:block;overflow:hidden;padding:.06em 0 .24em;margin:-.06em 0 -.24em}
.ln > i{display:block;font-style:inherit;transform:translateY(105%);transition:transform 1.05s var(--e)}
.in .ln > i,.ln.in > i{transform:none}
.wd{display:inline-block;clip-path:inset(0 0 105%);transform:translateY(105%);transition:clip-path .85s var(--e),transform .85s var(--e)}
.in .wd{clip-path:inset(0 0 -5%);transform:none}
.ch{display:inline-block;color:inherit;opacity:.08}

/* ---------------- hero ---------------- */
.phero{position:relative;margin-top:var(--hdr);padding-top:clamp(34px,4.6vw,64px);overflow:hidden}
.phero__in{position:relative;z-index:2}
.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:clamp(26px,3.4vw,46px)}
.crumb a,.crumb span{font-size:12px;letter-spacing:.02em;text-transform:uppercase;font-weight:500;color:var(--muted);transition:color .25s}
.crumb a:hover{color:var(--red)}
.crumb i{width:14px;height:1px;background:var(--g3)}
.crumb [aria-current]{color:var(--ink)}
.phero__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,4vw,72px);align-items:stretch;min-height:min(60vh,580px)}
.phero__copy{display:flex;flex-direction:column;justify-content:center;padding-bottom:12px}
.ptitle{font-weight:500;font-size:clamp(50px,8.2vw,126px);line-height:.94;letter-spacing:-.048em}
.ptitle .ln{padding:.04em 0 .16em;margin:-.04em 0 -.16em}
.plead{margin-top:clamp(24px,2.8vw,38px);font-size:clamp(18px,1.6vw,22px);line-height:1.38;letter-spacing:-.02em;color:var(--ink-soft);max-width:36ch}
.phero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}

/* the signal field: a dot-matrix universe in which signals light, and some become conversations */
.phero__viz{position:relative;min-height:440px}
.fld{position:absolute;inset:0}
.fld canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.fld__tl{position:absolute;left:0;top:6px;display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.fld__tl i{width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 0 0 rgba(228,22,19,.5);animation:dotPulse 2s var(--e) infinite}
.fld__key{position:absolute;left:0;right:0;bottom:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;font-size:11px;color:var(--ink-soft)}
.fld__key span{display:inline-flex;align-items:center;gap:7px}
.fld__key i{width:8px;height:8px;border-radius:50%;flex:none}
.fld__tag{margin-left:auto;padding:3px 7px;border:1px solid var(--line);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.k-g{background:var(--g4)}.k-s{background:var(--red)}.k-c{border:1.2px solid var(--red);width:12px!important;height:12px!important}
@keyframes dotPulse{0%{box-shadow:0 0 0 0 rgba(228,22,19,.45)}80%,100%{box-shadow:0 0 0 9px rgba(228,22,19,0)}}

/* hub hero: the field fills an ink stage */
.phero--dark{background:var(--ink);color:var(--white);padding-top:clamp(40px,5vw,76px)}
.phero--dark .fld{z-index:0}
.phero--dark .crumb a,.phero--dark .crumb span{color:rgba(255,255,255,.5)}
.phero--dark .crumb [aria-current]{color:var(--white)}
.phero--dark .crumb i{background:rgba(255,255,255,.25)}
.phero--dark .phero__copy{min-height:min(52vh,520px);max-width:900px;justify-content:center}
.phero--dark .plead{color:rgba(255,255,255,.7)}
.phero--dark .btn{background:var(--white);color:var(--ink)}
.phero--dark .btn:hover{color:var(--white)}
.phero--dark .btn--line{background:transparent;color:var(--white);box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)}
.phero--dark .btn--line::before{background:var(--white)}
.phero--dark .btn--line:hover{color:var(--ink)}
.phero__foot{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:26px 0 0}
.phero__foot .fld__key{position:static;color:rgba(255,255,255,.66)}
.phero__foot .fld__tag{margin-left:8px;border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.5)}
.phero--dark .k-g{background:rgba(255,255,255,.35)}
.phero__scroll{display:inline-flex;align-items:center;gap:10px;font-size:12px;color:rgba(255,255,255,.55);white-space:nowrap}
.phero__scroll i{position:relative;width:1px;height:34px;background:rgba(255,255,255,.2);overflow:hidden}
.phero__scroll i::after{content:"";position:absolute;left:0;top:0;width:1px;height:12px;background:var(--red);animation:drip 1.8s var(--e) infinite}
@keyframes drip{0%{transform:translateY(-12px)}100%{transform:translateY(34px)}}

/* facts: a strip of four, each with a red rule that draws on hover */
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(36px,4.4vw,64px);border-top:1px solid var(--ink)}
.facts > div{position:relative;padding:20px 20px 28px 0;border-right:1px solid var(--line);transition-delay:calc(var(--i) * 80ms + 300ms)}
.facts > div + div{padding-left:20px}
.facts > div:last-child{border-right:0}
.facts > div::after{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:right;transition:transform .55s var(--e)}
.facts > div:hover::after{transform:scaleX(1);transform-origin:left}
.facts dt{display:flex;gap:10px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.facts dt i{font-style:normal;color:var(--red);font-variant-numeric:tabular-nums}
.facts dd{font-size:clamp(15px,1.3vw,19px);font-weight:500;letter-spacing:-.02em;line-height:1.28}
.facts--dark{border-top-color:rgba(255,255,255,.5)}
.facts--dark > div{border-right-color:var(--line-d)}
.facts--dark dt{color:rgba(255,255,255,.45)}
.phero--dark .facts{margin-top:clamp(26px,3vw,44px)}
@media(max-width:960px){
  .phero__grid{grid-template-columns:1fr;min-height:0}
  .phero__viz{min-height:320px;margin-top:14px}
  .facts{grid-template-columns:1fr 1fr}
  .facts > div:nth-child(n){padding-left:0;padding-right:16px;border-right:0;border-bottom:1px solid var(--line)}
  .facts > div:nth-child(even){padding-left:16px;padding-right:0;border-left:1px solid var(--line)}
  .facts--dark > div:nth-child(n){border-color:var(--line-d)}
  .phero__foot{flex-direction:column;align-items:flex-start}
  .phero__scroll{display:none}
}
@media(max-width:520px){.facts{grid-template-columns:1fr}.facts > div:nth-child(n){padding-left:0;border-left:0}.phero__viz{min-height:280px}.fld__tag{margin-left:0}}

/* ---------------- centred statement with character fill ---------------- */
.lead{padding-block:clamp(96px,11vw,170px);text-align:center}
.lead .label{display:flex;flex-direction:column;align-items:center;gap:22px;margin-bottom:30px}
.lead .label::before{content:"";width:1px;height:56px;background:linear-gradient(var(--line),var(--red));transform:scaleY(0);transform-origin:top;transition:transform 1s var(--e) .1s}
.lead .label.in::before{transform:none}
.lead .statement{max-width:24ch;margin-inline:auto;font-size:clamp(30px,4.2vw,60px);line-height:1.03}
.lead__note{margin:30px auto 0;max-width:60ch;font-size:15px;line-height:1.6;color:var(--ink-soft)}

/* ---------------- section head: a numbered ledger, then two columns ---------------- */
.ledger{position:relative;padding-top:16px;margin-bottom:clamp(26px,3vw,40px)}
.ledger::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:rgba(43,43,43,.18);transform:scaleX(0);transform-origin:left;transition:transform 1.2s var(--e)}
.ledger::before{content:"";position:absolute;left:0;top:0;width:2px;height:11px;background:var(--red);transform:scaleY(0);transform-origin:top;transition:transform .5s var(--e) .7s}
.ledger.in::after{transform:scaleX(1)}
.ledger.in::before{transform:none}
.sec[id] .ledger::before{counter-increment:sec}
.sec[id] .ledger .label{display:flex;gap:12px}
.sec[id] .ledger .label::before{content:counter(sec,decimal-leading-zero);color:var(--red)}
.head2{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,90px);align-items:start;margin-bottom:clamp(38px,4.6vw,66px)}
.head2 .statement{font-size:clamp(28px,3.1vw,46px);max-width:18ch}
@media(max-width:900px){.head2{grid-template-columns:1fr;gap:22px}}

/* ---------------- figures: count up, then invert on hover ---------------- */
.figs{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.fig{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:30px;min-height:270px;padding:22px 24px 26px;border-right:1px solid var(--line);isolation:isolate;transition:opacity .8s var(--e),transform .8s var(--e),color .45s var(--e);transition-delay:calc(var(--i) * 90ms),calc(var(--i) * 90ms),0s}
.fig:last-child{border-right:0}
.fig::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--ink);transform:scaleY(0);transform-origin:bottom;transition:transform .55s var(--e)}
.fig::after{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform 1.1s var(--e) calc(var(--i) * 120ms + .2s)}
.fig.in::after{transform:scaleX(1)}
.fig:hover{color:var(--white)}
.fig:hover::before{transform:none;transform-origin:top}
.fig__i{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.04em}
.fig .num{margin-top:auto}
.fig__l{font-size:15px;font-weight:500;line-height:1.34;max-width:26ch;transition:color .45s var(--e)}
.fig:hover .fig__l{color:rgba(255,255,255,.88)}
@media(max-width:1000px){.figs{grid-template-columns:1fr 1fr}.fig:nth-child(2n){border-right:0}.fig:nth-child(n+3){border-top:1px solid var(--line)}}
@media(max-width:560px){.figs{grid-template-columns:1fr}.fig{border-right:0;min-height:0;gap:22px}.fig:nth-child(n+2){border-top:1px solid var(--line)}}

/* ---------------- exhibits: the infographic frame ---------------- */
.ex{position:relative;padding-top:18px}
.ex::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform 1.3s var(--e)}
.ex.in::before{transform:none}
.ex__h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;margin-bottom:clamp(24px,2.8vw,38px)}
.ex__t{display:inline-flex;align-items:baseline;gap:12px;font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}
.ex__t em{flex:none;padding:3px 6px 2px;background:var(--red);color:var(--white);font-style:normal;font-size:10px;letter-spacing:.08em}
.ex__k{font-size:12px;color:var(--muted)}
.ex + .ex{margin-top:clamp(60px,6vw,96px)}
.sec--tight{padding-block:clamp(44px,5vw,76px)}
.ex__split{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,80px);align-items:start}
.ex__split > .ex + .ex{margin-top:0}
@media(max-width:960px){.ex__split{grid-template-columns:1fr}.ex__split > .ex + .ex{margin-top:clamp(48px,6vw,72px)}}

/* wide tables fade at the edge while there is more to scroll */
@media(max-width:1000px){.sx{scrollbar-width:thin}.sx--more{-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent)}}

/* horizontal bars: they draw in turn; hover one and the rest step back */
.bars{display:grid;gap:14px}
.bar{display:grid;grid-template-columns:minmax(120px,15em) minmax(0,1fr);gap:18px;align-items:center;transition:opacity .3s var(--e)}
.bars:hover .bar:not(:hover){opacity:.32}
.bar__l{font-size:14px;line-height:1.3}
.bar__l small{display:block;font-size:12px;color:var(--muted)}
.bar__t{position:relative;height:24px;background:linear-gradient(90deg,var(--g2),var(--g2)) left center/100% 1px no-repeat}
.bar__f{position:absolute;left:0;top:0;bottom:0;width:var(--w);background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform 1.2s var(--e) calc(var(--i,0) * 80ms)}
.bar:hover .bar__f{background:var(--red)}
.bar--hi .bar__f{background:var(--red)}
.bar--lo .bar__f{background:var(--g4)}
.bar__v{position:absolute;top:50%;left:calc(var(--w) + 10px);transform:translateY(-50%);font-size:13px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap;opacity:0;transition:opacity .5s var(--e) calc(.7s + var(--i,0) * 80ms)}
.bar__v.inside{left:auto;right:calc(100% - var(--w) + 8px);color:var(--white)}
.in .bar__f{transform:none}
.in .bar__v{opacity:1}
.bars__axis{display:grid;grid-template-columns:minmax(120px,15em) minmax(0,1fr);gap:18px;margin-top:6px}
.bars__axis div{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;border-top:1px solid var(--line);padding-top:6px}
@media(max-width:620px){.bar,.bars__axis{grid-template-columns:1fr;gap:6px}.bars__axis > span{display:none}}

/* columns over time */
.cols{display:flex;align-items:flex-end;gap:clamp(6px,1.2vw,18px);height:280px;border-bottom:1px solid var(--ink);padding-top:28px}
.col{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;position:relative;min-width:0;transition:opacity .3s}
.cols:hover .col:not(:hover){opacity:.35}
.col__f{width:min(100%,46px);height:var(--h);background:var(--ink);transform:scaleY(0);transform-origin:bottom;transition:transform 1.1s var(--e) calc(var(--i,0) * 70ms),background .3s}
.col:hover .col__f{background:var(--red)}
.col--hi .col__f{background:var(--red)}
.col--lo .col__f{background:var(--g4)}
.col__v{position:absolute;bottom:calc(var(--h) + 6px);font-size:12px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap;opacity:0;transition:opacity .5s var(--e) calc(.7s + var(--i,0) * 70ms)}
.in .col__f{transform:none}
.in .col__v{opacity:1}
.cols__x{display:flex;gap:clamp(6px,1.2vw,18px);margin-top:8px}
.cols__x span{flex:1;text-align:center;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;min-width:0}

/* the window: a Gantt of when each channel first sees the opportunity */
.win{position:relative;overflow-x:auto}
.win__in{min-width:760px}
.win__phases{display:grid;grid-template-columns:200px repeat(5,1fr);border-bottom:1px solid var(--ink)}
.win__phases div{padding:0 12px 12px;font-size:11px;line-height:1.35;color:var(--muted);border-left:1px solid var(--line)}
.win__phases div:first-child{border-left:0;padding-left:0}
.win__phases b{display:block;font-size:13px;font-weight:500;color:var(--ink);letter-spacing:-.01em;margin-bottom:3px}
.win__row{display:grid;grid-template-columns:200px 1fr;align-items:center;min-height:56px;border-bottom:1px solid var(--line);transition:opacity .3s var(--e),background .3s}
.win__in:hover .win__row:not(:hover){opacity:.35}
.win__row > span{font-size:14px;font-weight:500;padding-right:16px;line-height:1.25}
.win__row > span small{display:block;font-size:12px;font-weight:400;color:var(--muted)}
.win__track{position:relative;height:56px;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(20% - 1px),var(--line) calc(20% - 1px),var(--line) 20%)}
.win__seg{position:absolute;top:50%;height:10px;margin-top:-5px;left:var(--a);width:var(--b);background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform 1.3s var(--e) calc(var(--i,0) * 110ms)}
.win__seg::before{content:"";position:absolute;left:-1px;top:-5px;width:2px;height:20px;background:inherit}
.win__row--hi .win__seg{background:var(--red)}
.win__row--hi .win__seg::after{content:"";position:absolute;left:-5px;top:50%;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:var(--red);animation:dotPulse 2s var(--e) infinite}
.win__row--hi > span{color:var(--red)}
.win__row--lo .win__seg{background:var(--g3)}
.win__row--lo > span{color:var(--ink-soft)}
.in .win__seg{transform:none}
.win__note{position:absolute;top:50%;transform:translateY(-50%);left:calc(var(--a) + var(--b) + 10px);font-size:12px;color:var(--muted);white-space:nowrap;opacity:0;transition:opacity .6s var(--e) calc(1.1s + var(--i,0) * 110ms)}
.in .win__note{opacity:1}

/* signal ledger, with an optional client filter */
.chips{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:22px}
.chips__l{font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.chips__b{display:flex;flex-wrap:wrap;gap:6px}
.chip{position:relative;height:32px;padding:0 13px;font-size:12px;font-weight:500;color:var(--ink);background:var(--white);box-shadow:inset 0 0 0 1px var(--g3);overflow:hidden;isolation:isolate;transition:color .3s var(--e),box-shadow .3s}
.chip::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--ink);transform:scaleY(0);transform-origin:bottom;transition:transform .4s var(--e)}
.chip:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.chip.on{color:var(--white);box-shadow:inset 0 0 0 1px var(--ink)}
.chip.on::before{transform:none}
.chips__c{margin-left:auto;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.chips__c b{color:var(--red);font-weight:500}
.sig{width:100%;border-collapse:collapse}
.sig-wrap{overflow-x:auto}
.sig th{padding:0 16px 12px 0;text-align:left;font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--ink);white-space:nowrap}
.sig td{padding:18px 16px 18px 0;vertical-align:top;border-bottom:1px solid var(--line);font-size:14px;line-height:1.45;color:var(--ink-soft);transition:opacity .4s var(--e),color .3s}
.sig td:first-child{position:relative;color:var(--ink);font-weight:500;font-size:15px;letter-spacing:-.015em;min-width:190px;padding-left:0;transition:padding .35s var(--e),color .3s,opacity .4s}
.sig td:first-child::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:2px;background:var(--red);transform:scaleY(0);transition:transform .35s var(--e)}
.sig tbody tr{transition:background .3s}
.sig tbody tr:hover{background:var(--g1)}
.grey .sig tbody tr:hover{background:var(--white)}
.sig tbody tr:hover td:first-child{padding-left:14px}
.sig tbody tr:hover td:first-child::before{transform:none}
.sig tr.hi td:first-child{color:var(--red)}
.sig td:nth-child(2){min-width:170px}
.sig td:nth-child(3){min-width:240px}
.sig .lt{min-width:170px}
.lt__bar{display:block;height:6px;margin-top:6px;background:var(--g2);position:relative;overflow:hidden}
.lt__bar i{position:absolute;top:0;bottom:0;left:var(--a);width:var(--b);background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform 1s var(--e) calc(var(--i,0) * 60ms + .2s),background .3s}
.sig-wrap.in .lt__bar i{transform:none}
.sig tr.hi .lt__bar i,.sig tbody tr:hover .lt__bar i{background:var(--red)}
.lt__v{font-size:12px;color:var(--ink);font-weight:500;font-variant-numeric:tabular-nums}
.sig tr.off td{opacity:.18}
.sig tr.off .lt__bar i{background:var(--g4)}

/* funnel: one lane, one month, narrowing to the line that matters */
.fun{display:grid;gap:8px}
.fun__r{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:16px;align-items:center;transition:opacity .3s}
.fun:hover .fun__r:not(:hover){opacity:.4}
.fun__c{display:flex;justify-content:center}
.fun__b{height:46px;min-width:8px;background:var(--g2);position:relative;display:flex;align-items:center;justify-content:center;padding:0 14px;font-size:13px;font-weight:500;white-space:nowrap;transform:scaleX(0);transition:transform 1.1s var(--e) calc(var(--i,0) * 100ms)}
.fun__b span{position:relative;z-index:1}
.fun__r:nth-child(n+3) .fun__b{background:var(--g3)}
.fun__r:nth-child(n+5) .fun__b{background:var(--ink);color:var(--white)}
.fun__r--hi .fun__b{background:var(--red)!important;color:var(--white)}
.fun__n{font-family:var(--serif);font-size:30px;font-weight:500;letter-spacing:-.04em;font-variant-numeric:lining-nums;text-align:right;line-height:1}
.fun__r--hi .fun__n{color:var(--red)}
.in .fun__b{transform:none}
.fun__b.out{justify-content:flex-start}
.fun__b.out span{position:absolute;left:calc(100% + 12px);color:var(--ink)}
@media(max-width:620px){.fun__r{grid-template-columns:minmax(0,1fr) 72px}.fun__n{font-size:22px}.fun__b{font-size:12px}.fun__c{justify-content:flex-start}}

/* comparison matrix: the Quantiverse column in ink; the hovered column and row light */
.cmp-wrap{overflow-x:auto}
.cmp{width:100%;min-width:840px;border-collapse:collapse;table-layout:fixed}
.cmp th,.cmp td{padding:16px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top;transition:background .25s}
.cmp thead th{font-size:12px;font-weight:500;line-height:1.3;border-bottom:1px solid var(--ink);vertical-align:bottom}
.cmp thead th small{display:block;font-weight:400;color:var(--muted);margin-top:3px}
.cmp thead th.q{background:var(--ink);color:var(--white);box-shadow:inset 0 3px 0 var(--red)}
.cmp thead th.q small{color:rgba(255,255,255,.6)}
.cmp tbody th{font-size:14px;font-weight:500;letter-spacing:-.01em;width:24%}
.cmp td{font-size:13px;color:var(--ink-soft);line-height:1.4}
.cmp td.q{background:var(--g1);color:var(--ink)}
.grey .cmp td.q{background:var(--white)}
.cmp tbody tr:hover th,.cmp tbody tr:hover td{background:var(--g2)}
.cmp td.hc{background:var(--g2)}
.cmp thead th.hc:not(.q){background:var(--g2)}
.dot{display:inline-flex;align-items:center;gap:8px}
.dot::before{content:"";width:9px;height:9px;border-radius:50%;border:1.5px solid var(--ink);flex:none;transition:transform .5s var(--spring) var(--d,0ms)}
.cmp-wrap .dot::before{transform:scale(0)}
.cmp-wrap.in .dot::before{transform:none}
.dot--y::before{background:var(--ink)}
.dot--p::before{background:linear-gradient(90deg,var(--ink) 50%,transparent 50%)}
.dot--n::before{border-color:var(--g4)}
.q .dot--y::before{background:var(--red);border-color:var(--red)}
.cmp__key{display:flex;flex-wrap:wrap;gap:18px;font-size:12px;color:var(--muted)}

/* platform landscape */
.land{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));border-top:1px solid var(--ink)}
.land > div{position:relative;padding:22px 22px 26px 0;border-right:1px solid var(--line);transition:background .35s var(--e)}
.land > div + div{padding-left:22px}
.land > div:last-child{border-right:0;padding-right:0}
.land > div::before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--e)}
.land > div:hover::before{transform:none}
.land__n{display:block;font-size:11px;color:var(--red);font-variant-numeric:tabular-nums;margin-bottom:12px}
.land h3{font-size:19px;font-weight:500;letter-spacing:-.025em;line-height:1.2}
.land__share{display:block;margin-top:6px;font-size:12px;color:var(--muted)}
.land ul{margin:16px 0 18px;display:flex;flex-wrap:wrap;gap:6px}
.land li{font-size:12px;font-weight:500;padding:5px 9px;border:1px solid var(--line);background:var(--white);transition:border-color .25s,transform .35s var(--spring)}
.land li:hover{border-color:var(--ink);transform:translateY(-2px)}
.land dl{display:grid;gap:10px}
.land dt{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.land dd{font-size:13px;line-height:1.45;color:var(--ink-soft)}
.land dd.miss{color:var(--ink)}
@media(max-width:1000px){.land{grid-template-columns:1fr 1fr}.land > div:nth-child(n){padding-left:0;padding-right:22px;border-right:0;border-bottom:1px solid var(--line)}.land > div:nth-child(even){padding-left:22px;padding-right:0;border-left:1px solid var(--line)}}
@media(max-width:620px){.land{grid-template-columns:1fr}.land > div:nth-child(n){padding-left:0;padding-right:0;border-left:0}}

/* positioning map: the points arrive in turn; the Quantiverse quadrant is lit */
.map{position:relative;aspect-ratio:2.1;max-width:100%;border-left:1px solid var(--ink);border-bottom:1px solid var(--ink);margin:10px 0 44px 0;background:linear-gradient(var(--line),var(--line)) 50% 0/1px 100% no-repeat,linear-gradient(var(--line),var(--line)) 0 50%/100% 1px no-repeat}
.map::before{content:"";position:absolute;left:50%;right:0;top:0;bottom:50%;background:var(--red-wash);opacity:0;transition:opacity 1.2s var(--e) .6s}
.map.in::before{opacity:1}
.map__ax{position:absolute;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.map__ax--x{left:0;right:0;bottom:-30px;display:flex;justify-content:space-between}
.map__ax--y{inset:0;pointer-events:none}
.map__ax--y span{position:absolute;left:12px}
.map__ax--y span:first-child{bottom:10px}
.map__ax--y span:last-child{top:6px}
.map__ax--y span:last-child::before{content:"\2191  "}
.map__ax--x span:last-child::after{content:"  \2192"}
.map__pt{position:absolute;left:var(--x);bottom:var(--y);transform:translate(-50%,50%);display:flex;align-items:center;gap:10px;opacity:0;transition:opacity .6s var(--e) calc(var(--i,0) * 120ms + .2s)}
.in .map__pt{opacity:1}
.map__pt i{position:relative;width:12px;height:12px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 3px var(--white);flex:none;transform:scale(0);transition:transform .7s var(--spring) calc(var(--i,0) * 120ms + .2s)}
.in .map__pt i{transform:none}
.map__pt span{font-size:13px;font-weight:500;line-height:1.2;white-space:nowrap;transition:color .25s}
.map__pt span small{display:block;font-weight:400;font-size:11px;color:var(--muted)}
.map__pt:hover span{color:var(--red)}
.map__pt--l{flex-direction:row-reverse;transform:translate(calc(-100% + 6px),50%)}
.map__pt--q i{width:16px;height:16px;background:var(--red)}
.map__pt--q i::before,.map__pt--q i::after{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid var(--red);animation:ping 2.6s var(--e) infinite}
.map__pt--q i::after{animation-delay:1.3s}
.map__pt--q span{color:var(--red)}
@media(max-width:620px){.map{aspect-ratio:.9}
  .map__pt--q{flex-direction:row-reverse;transform:translate(calc(-100% + 8px),50%)}.map__pt--q span{text-align:right}
  .map__ax--x{gap:16px}.map__ax--x span{white-space:normal}.map__ax--x span:last-child{text-align:right}.map__pt span small{display:none}.map__pt span{font-size:12px;white-space:normal;max-width:9em}}

/* allocator matrix (capital formation) */
.amx-wrap{overflow-x:auto}
.amx{width:100%;min-width:780px;border-collapse:collapse}
.amx th{padding:0 14px 12px 0;text-align:left;font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--ink);white-space:nowrap}
.amx td{padding:16px 14px 16px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.45;color:var(--ink-soft);vertical-align:top;transition:padding .35s var(--e)}
.amx td:first-child{font-size:15px;font-weight:500;color:var(--ink);letter-spacing:-.015em;min-width:170px}
.amx td:first-child small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:2px}
.amx tbody tr{transition:background .3s}
.amx tbody tr:hover{background:var(--white)}
.amx tbody tr:hover td:first-child{padding-left:12px}
.pips{display:inline-flex;gap:3px;vertical-align:middle;margin-right:8px}
.pips i{width:14px;height:8px;background:var(--g3);transition:background .4s var(--e) var(--d,0ms)}
.amx-wrap.in .pips i.on{background:var(--ink)}
.amx-wrap.in tr.hi .pips i.on{background:var(--red)}
.pips + b{font-weight:500;color:var(--ink);font-size:12px}

/* allocator / owner record: what a delivered row looks like */
.rec{border:1px solid var(--ink);background:var(--white);box-shadow:0 30px 60px -40px rgba(31,31,31,.35)}
.rec__h{display:flex;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.rec__h b{color:var(--ink);font-weight:500}
.rec__b{padding:6px 18px 4px}
.rec__r{display:grid;grid-template-columns:118px minmax(0,1fr);gap:14px;padding:11px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.45;opacity:0;transform:translateX(-10px);transition:opacity .5s var(--e) calc(var(--i,0) * 110ms + .25s),transform .6s var(--e) calc(var(--i,0) * 110ms + .25s)}
.rec.in .rec__r{opacity:1;transform:none}
.rec__r:last-child{border-bottom:0}
.rec__r > span{font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);padding-top:2px}
.rec__r > div{color:var(--ink)}
.rec__ev{display:grid;gap:8px}
.rec__ev p{display:grid;grid-template-columns:76px minmax(0,1fr);gap:10px}
.rec__ev time{font-variant-numeric:tabular-nums;color:var(--red);font-weight:500}
.rec__ev small{display:block;color:var(--muted);font-size:12px}
.rec__f{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;background:var(--ink);color:var(--white);font-size:12px}
.rec__f b{font-weight:500}
.rec__f i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);margin-right:9px;vertical-align:1px;animation:dotPulse 2s var(--e) infinite}
.rec__tag{font-size:11px;color:var(--muted);margin-top:10px}

/* the engine: five steps, joined; a red rule runs along them as the page passes */
.steps{display:grid;grid-template-columns:repeat(var(--n,5),minmax(0,1fr));border-top:1px solid var(--g3)}
.step{padding:26px 22px 34px 0;border-right:1px solid var(--g3);transition-delay:calc(var(--i,0) * 70ms)}
.step:nth-child(n+3){padding-left:22px}
.step:last-child{border-right:0;padding-right:0}
.step__n{font-family:var(--serif);font-weight:500;font-size:38px;line-height:1;color:var(--red);font-variant-numeric:lining-nums}
.step h3{margin:16px 0 10px;font-size:18px;font-weight:500;letter-spacing:-.025em;line-height:1.18}
.step p{font-size:14px;line-height:1.5;color:var(--ink-soft)}
@media(max-width:1000px){.steps{grid-template-columns:1fr 1fr}.step:nth-child(n){padding:24px 20px 28px 0;border-right:0;border-bottom:1px solid var(--g3)}.step:nth-child(odd){padding-left:20px;padding-right:0;border-left:1px solid var(--g3)}}
@media(max-width:600px){.steps{grid-template-columns:1fr}.step:nth-child(n){padding-left:0;border-left:0}}

/* sources → evidence → introduction: the capital-formation pipeline */
.pipe{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.pipe__c{position:relative;padding:22px 22px 24px;border:1px solid var(--g3);margin-left:-1px;background:var(--white);transition:background .6s var(--e),color .6s var(--e),border-color .6s}
.pipe__c:nth-child(2){margin-left:0}
.pipe__c:last-child{background:var(--ink);color:var(--white);border-color:var(--ink)}
.pipe__c:last-child .label{color:rgba(255,255,255,.55)}
.pipe__c:last-child li{color:rgba(255,255,255,.82);border-color:var(--line-d)}
.pipe__c h3{margin:12px 0 14px;font-size:20px;font-weight:500;letter-spacing:-.025em;line-height:1.15}
.pipe__c li{font-size:13px;line-height:1.4;color:var(--ink-soft);padding:7px 0;border-top:1px solid var(--line);transition:opacity .5s var(--e)}
.pipe__n{position:absolute;right:16px;top:18px;font-family:var(--serif);font-size:24px;color:var(--red);font-variant-numeric:lining-nums}
.pipe__c:not(:last-child)::after{content:"";position:absolute;right:-7px;top:50%;width:12px;height:12px;border-top:1px solid var(--ink);border-right:1px solid var(--ink);background:var(--white);transform:translateY(-50%) rotate(45deg);z-index:2;transition:border-color .4s}
.js-p .pipe__c:not(.on) li{opacity:.45}
.js-p .pipe__c:not(.on) .pipe__n{color:var(--g4)}
.js-p .pipe__c.on:not(:last-child)::after{border-color:var(--red)}
.pipe .steps__track{top:-2px}
@media(max-width:900px){.pipe{grid-template-columns:1fr 1fr}.pipe__c:nth-child(n+4){margin-top:-1px}.pipe__c:nth-child(even){margin-left:0}.pipe__c::after{display:none}}
@media(max-width:560px){.pipe{grid-template-columns:1fr}.pipe__c{margin-left:0!important;margin-top:-1px}}

/* reasons, numbered */
.why{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));border-top:1px solid var(--ink)}
.why > div{position:relative;padding:24px 24px 28px 0;border-right:1px solid var(--line)}
.why > div + div{padding-left:24px}
.why > div:last-child{border-right:0;padding-right:0}
.why > div::before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .9s var(--e) calc(var(--i,0) * 150ms + .3s)}
.why.in > div::before{transform:scaleX(.18)}
.why > div:hover::before{transform:scaleX(1);transition-delay:0s}
.why__n{display:block;font-size:11px;color:var(--red);font-variant-numeric:tabular-nums;margin-bottom:14px}
.why h3{font-size:20px;font-weight:500;letter-spacing:-.025em;line-height:1.18;margin-bottom:12px}
.why p{font-size:14px;line-height:1.55;color:var(--ink-soft)}
@media(max-width:900px){.why{grid-template-columns:1fr}.why > div:nth-child(n){padding-left:0;padding-right:0;border-right:0;border-bottom:1px solid var(--line)}}
.why--stack{grid-template-columns:1fr}
.why--stack > div,.why--stack > div + div{padding:22px 0 24px;border-right:0;border-bottom:1px solid var(--line)}

/* practice index (hub pages): rows that fill with ink */
.idx{border-top:1px solid var(--ink)}
.idx a{position:relative;display:grid;grid-template-columns:44px minmax(0,4fr) minmax(0,5fr) minmax(0,3fr) 48px;gap:clamp(14px,2.4vw,40px);align-items:center;padding:clamp(22px,2.6vw,34px) 0;border-bottom:1px solid var(--line);isolation:isolate;transition:color .45s var(--e),padding .55s var(--e)}
.idx a::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--ink);transform:scaleY(0);transform-origin:bottom;transition:transform .55s var(--e)}
.idx a:hover{color:var(--white);padding-left:22px;padding-right:22px}
.idx a:hover::before{transform:none;transform-origin:top}
.idx__n{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;transition:color .3s}
.idx a:hover .idx__n{color:var(--red)}
.idx h3{font-size:clamp(26px,3vw,42px);font-weight:500;letter-spacing:-.04em;line-height:1}
.idx p{font-size:15px;line-height:1.5;color:var(--ink-soft);transition:color .45s}
.idx a:hover p{color:rgba(255,255,255,.66)}
.idx dl{font-size:12px;color:var(--muted);line-height:1.5}
.idx dl dd{color:inherit;font-weight:500;font-size:13px}
.idx a:hover dl{color:rgba(255,255,255,.5)}
.idx__go{justify-self:end;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--g3);transition:background .35s,box-shadow .35s,transform .45s var(--e)}
.idx__go .arw{width:16px;height:11px}
.idx a:hover .idx__go{background:var(--red);box-shadow:none;transform:rotate(-45deg)}
@media(max-width:900px){.idx a{grid-template-columns:32px minmax(0,1fr) 44px}.idx p,.idx dl{grid-column:2}.idx__go{grid-column:3;grid-row:1}}

/* image band, a marquee riding over it */
.band{position:relative;height:clamp(320px,58vh,620px);overflow:hidden;background:var(--ink)}
.band img{width:100%;height:124%;object-fit:cover;filter:grayscale(1) contrast(1.06) brightness(.78);will-change:transform}
.band::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,31,31,.15),rgba(31,31,31,.55))}

/* FAQ: numbered, opening smoothly */
.faq{border-top:1px solid var(--ink)}
.faq details{position:relative;border-bottom:1px solid var(--line)}
.faq details::before{content:"";position:absolute;left:0;top:-1px;width:100%;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--e)}
.faq details[open]::before{transform:none}
.faq summary{display:grid;grid-template-columns:44px minmax(0,1fr) 28px;gap:12px;align-items:center;padding:24px 0;cursor:pointer;list-style:none;font-size:clamp(17px,1.5vw,21px);font-weight:500;letter-spacing:-.02em;line-height:1.3;transition:color .25s}
.faq summary::-webkit-details-marker{display:none}
.faq__n{font-size:12px;font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:0;transition:color .25s}
.faq details[open] .faq__n,.faq summary:hover .faq__n{color:var(--red)}
.faq summary i{position:relative;width:28px;height:28px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--g3);justify-self:end;transition:background .3s,box-shadow .3s}
.faq summary i::before,.faq summary i::after{content:"";position:absolute;left:8px;right:8px;top:50%;height:1.5px;margin-top:-.75px;background:var(--ink);transition:transform .45s var(--e),background .3s}
.faq summary i::after{transform:rotate(90deg)}
.faq details[open]:not(.shut) summary i::after{transform:rotate(0)}
.faq summary:hover i{background:var(--ink);box-shadow:none}
.faq summary:hover i::before,.faq summary:hover i::after{background:var(--white)}
.faq summary:hover .faq__q{color:var(--red)}
.faq .faq__a{padding:0 0 26px 56px;max-width:calc(72ch + 56px);overflow:hidden}
.faq .faq__a p{font-size:15px;line-height:1.62;color:var(--ink-soft)}
.faq .faq__a p + p{margin-top:10px}
@media(max-width:620px){.faq summary{grid-template-columns:30px minmax(0,1fr) 28px}.faq .faq__a{padding-left:42px}}

/* related practice pages */
.rel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink)}
.rel a{position:relative;display:flex;flex-direction:column;gap:10px;min-height:220px;padding:22px 22px 26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);isolation:isolate;transition:color .45s var(--e)}
.rel a:nth-child(3n+1){padding-left:0}
.rel a:nth-child(3n){border-right:0}
.rel a::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--ink);transform:scaleY(0);transform-origin:bottom;transition:transform .55s var(--e)}
.rel a:hover{color:var(--white)}
.rel a:hover::before{transform:none;transform-origin:top}
.rel a:nth-child(3n+1):hover{padding-left:22px}
.rel a{transition:color .45s var(--e),padding .5s var(--e)}
.rel b{font-size:24px;font-weight:500;letter-spacing:-.035em;line-height:1.1}
.rel span.t{font-size:14px;line-height:1.5;color:var(--ink-soft);transition:color .45s}
.rel a:hover span.t,.rel a:hover .label{color:rgba(255,255,255,.6)}
.rel__go{margin-top:auto;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--g3);transition:background .35s,box-shadow .35s,transform .45s var(--e)}
.rel a:hover .rel__go{background:var(--red);box-shadow:none;transform:rotate(-45deg)}
@media(max-width:900px){.rel{grid-template-columns:1fr}.rel a:nth-child(n){padding-left:0;border-right:0;min-height:0}.rel a:nth-child(n):hover{padding-left:18px}}

/* closing */
.close__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,90px);align-items:end}
.close .statement{max-width:16ch;font-size:clamp(34px,4.4vw,64px);line-height:1.02}
.close__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:38px}
.close__side .label{margin-bottom:16px}
.close__list li{display:grid;grid-template-columns:auto 1fr;gap:16px;padding:16px 0;border-top:1px solid var(--line);transition:padding .4s var(--e)}
.close__list li:hover{padding-left:8px}
.close__list li:last-child{border-bottom:1px solid var(--line)}
.close__list .n{font-size:12px;color:var(--red);font-variant-numeric:tabular-nums}
.close__list b{font-weight:500;font-size:16px;letter-spacing:-.02em}
.close__list span{display:block;margin-top:3px;font-size:14px;color:var(--ink-soft)}
@media(max-width:900px){.close__grid{grid-template-columns:1fr;gap:34px}}

/* tooltip */
.tip{position:fixed;z-index:90;max-width:270px;padding:10px 12px;background:var(--ink);color:var(--white);font-size:12px;line-height:1.45;pointer-events:none;opacity:0;transform:translate(-50%,calc(-100% - 14px));transition:opacity .15s}
.tip::after{content:"";position:absolute;left:50%;bottom:-5px;width:10px;height:10px;margin-left:-5px;background:inherit;transform:rotate(45deg)}
.tip.on{opacity:1}
[data-tip]{cursor:default}

/* drive-time radius map (platforms): rings draw, signals arrive, conversations ripple */
.rm svg{display:block;width:100%;height:auto;max-width:1000px;margin-inline:auto}
.rm-ring{fill:none;stroke:var(--g3);stroke-width:1;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.6s var(--e) calc(var(--i,0) * 220ms)}
.rm.in .rm-ring{stroke-dashoffset:0}
.rm-t{font:500 9px var(--sans);fill:var(--muted);letter-spacing:.04em}
.rm-g{fill:var(--g4)}
.rm-s{fill:var(--red);stroke:var(--white);stroke-width:2}
.rm-c{fill:none;stroke:var(--red);stroke-width:1.2}
.rm-h{fill:var(--ink)}
.rm-ht{font:500 10px var(--sans);fill:var(--ink)}
.rm .rm-g{opacity:0;transition:opacity .9s var(--e) .4s}
.rm .rm-s,.rm .rm-c{opacity:0;transition:opacity .5s var(--e) calc(var(--i,0) * 55ms + .9s)}
.rm.in .rm-g,.rm.in .rm-s{opacity:1}
.rm.in .rm-c{opacity:.8}
.rm.in .rm-c{animation:ring 2.8s var(--e) calc(var(--i,0) * 160ms + 2s) infinite;transform-box:fill-box;transform-origin:center}
@keyframes ring{0%{transform:scale(1);opacity:.8}60%{transform:scale(1.7);opacity:0}61%,100%{transform:scale(1);opacity:.8}}
.rm-key{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:14px;font-size:12px;color:var(--ink-soft)}
.rm-key span{display:inline-flex;align-items:center;gap:8px}
.rm-key i{width:9px;height:9px;border-radius:50%;flex:none}

/* ---------------- block reveal ---------------- */
html.js .rv{opacity:0;transform:translateY(22px);transition:opacity .9s var(--e),transform .9s var(--e)}
html.js .rv.in{opacity:1;transform:none}
html.js .facts > .rv{transition-delay:calc(var(--i) * 90ms + 350ms)}
html.js .step.rv{transition-delay:calc(var(--i,0) * 80ms)}

/* everything at rest when motion is off, scripts are off, or a screenshot is being taken */
html:not(.js) .ln > i,html:not(.js) .wd{transform:none;clip-path:none}
html:not(.js) .bar__f,html:not(.js) .col__f,html:not(.js) .win__seg,html:not(.js) .fun__b,html:not(.js) .lt__bar i{transform:none}
html:not(.js) .bar__v,html:not(.js) .col__v,html:not(.js) .map__pt,html:not(.js) .win__note,html:not(.js) .rec__r,html:not(.js) .rm-g,html:not(.js) .rm-s{opacity:1;transform:none}
html:not(.js) .map__pt i,html:not(.js) .cmp-wrap .dot::before{transform:none}
html:not(.js) .rm-ring{stroke-dashoffset:0}
html:not(.js) .rm-c{opacity:.8}
html:not(.js) .ch{opacity:1}
html:not(.js) .pips i.on{background:var(--ink)}
html:not(.js) tr.hi .pips i.on{background:var(--red)}
html:not(.js) .ledger::after,html:not(.js) .ledger::before,html:not(.js) .ex::before,html:not(.js) .fig::after,html:not(.js) .lead .label::before{transform:none}
html:not(.js) .map::before{opacity:1}
@media(prefers-reduced-motion:reduce){
  .fld__tl i,.rec__f i,.win__row--hi .win__seg::after,.map__pt--q i::before,.map__pt--q i::after,.rm-c,.phero__scroll i::after{animation:none!important}
}
html.js .fig.rv{transition:opacity .9s var(--e) calc(var(--i) * 90ms),transform .9s var(--e) calc(var(--i) * 90ms),color .45s var(--e)}
