/* aibio.space investor edition — shared styles. Tokens first. */
@font-face{font-family:"Newsreader";src:url(assets/fonts/newsreader-latin-opsz-normal.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:"Newsreader";src:url(assets/fonts/newsreader-latin-opsz-italic.woff2) format("woff2");font-weight:200 800;font-style:italic;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url(assets/fonts/instrument-sans-latin-wght-normal.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}

:root{
  --sc-canvas:#fffcf6; --sc-surface:#f5efe3; --sc-ink:#1d1a14; --sc-ink-soft:#5a554a;
  --sc-accent:#b55000; --sc-accent-ink:#ffffff;
  --blue:#006091; --yellow:#ffd14d; --yellow-ink:#1d1a14; --line:#e2dacb;
  --sc-font-display:"Newsreader",Georgia,"Times New Roman",serif;
  --sc-font-text:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  /* desk colours: each passes 4.5:1 with white */
  --desk-1:#b55000; --desk-2:#006091; --desk-3:#2f6b3a; --desk-4:#8a2c2c;
  --desk-5:#7a5a00; --desk-6:#3f5a6f; --desk-7:#5b4a2e; --desk-8:#1d1a14;
  --step-small:clamp(.8125rem,.79rem + .1vw,.875rem);
  --step-body:clamp(1.0625rem,1rem + .25vw,1.1875rem);
  --step-lead:clamp(1.25rem,1.1rem + .7vw,1.625rem);
  --step-head:clamp(2rem,1.3rem + 3.2vw,4rem);
  --step-mast:clamp(2.75rem,1.6rem + 6vw,7.5rem);
  --gap:clamp(1rem,.6rem + 1.6vw,2rem);
  --margin:clamp(1rem,.4rem + 2.6vw,3rem);
  --radius:0;
  --dur-fast:160ms; --dur-med:320ms; --dur-slow:1600ms;
  --ease-out:cubic-bezier(.22,1,.36,1);
  --bp-tablet:700px; --bp-desk:1100px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--sc-canvas);color:var(--sc-ink);font-family:var(--sc-font-text);font-size:var(--step-body);line-height:1.5;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--sc-accent)}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
h1,h2,h3,h4{font-family:var(--sc-font-display);font-weight:500;line-height:1.12;letter-spacing:-.01em;margin:0;overflow-wrap:anywhere;text-wrap:balance}
p{margin:0}
.wrap{max-width:1440px;margin:0 auto;padding:0 var(--margin)}
.skip{position:absolute;left:-999px;top:0;background:var(--sc-ink);color:var(--sc-canvas);padding:.75rem 1rem;z-index:50}
.skip:focus{left:var(--margin)}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.num{font-variant-numeric:tabular-nums}

/* utility bar + masthead */
.util{background:var(--sc-ink);color:var(--sc-canvas);font-size:var(--step-small)}
.util .wrap{display:flex;gap:1rem;align-items:center;justify-content:space-between;min-height:40px}
.util a{color:var(--sc-canvas)}
.util .count b{color:var(--yellow);font-weight:600}
.mast{padding:clamp(1rem,2vw,1.75rem) 0 .75rem}
.mast .wrap{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.wordmark{font-family:var(--sc-font-display);font-size:clamp(2.25rem,1.4rem + 3.6vw,4.25rem);font-weight:500;letter-spacing:-.03em;line-height:.9;text-decoration:none}
.wordmark .dot{color:var(--sc-accent)}
.mast .tag{font-size:var(--step-small);color:var(--sc-ink-soft);max-width:34ch}
.nav{border-top:2px solid var(--sc-ink);border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--sc-canvas);z-index:20}
.nav .wrap{display:flex;align-items:center;gap:.25rem;min-height:48px}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:.25rem;flex-wrap:wrap}
.nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 .7rem;text-decoration:none;font-weight:500;font-size:.95rem}
.nav a[aria-current=page]{box-shadow:inset 0 -3px 0 var(--sc-accent)}
.nav .find{margin-left:auto;background:var(--yellow);color:var(--yellow-ink);font-weight:600;border:0;font:inherit;font-weight:600;min-height:40px;padding:0 1rem;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;transition:transform var(--dur-fast) var(--ease-out)}
.nav .find:hover{transform:translateY(-1px);color:var(--yellow-ink)}
.menu-btn{display:none;background:none;border:1px solid var(--sc-ink);font:inherit;min-height:44px;min-width:44px;padding:0 .9rem;cursor:pointer}
@media (max-width:899px){
  .menu-btn{display:inline-flex;align-items:center}
  .nav ul{display:none;position:absolute;left:0;right:0;top:100%;background:var(--sc-canvas);flex-direction:column;padding:.5rem var(--margin) 1rem;border-bottom:2px solid var(--sc-ink)}
  .nav ul.open{display:flex;animation:drop var(--dur-med) var(--ease-out)}
  .nav ul a{width:100%}
}
@keyframes drop{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* kicker + meta */
.kicker{font-size:var(--step-small);font-weight:600;color:var(--sc-accent);letter-spacing:.02em}
.kicker.blue{color:var(--blue)}
.meta{font-size:var(--step-small);color:var(--sc-ink-soft)}
.meta a{color:var(--sc-ink-soft)}
.tick{display:inline-block;font-size:.78rem;font-weight:600;padding:.1rem .4rem;background:var(--sc-surface);color:var(--sc-ink);text-decoration:none;font-variant-numeric:tabular-nums;letter-spacing:.02em}
a.tick:hover{background:var(--yellow);color:var(--yellow-ink)}

/* front page rails */
.front{display:grid;gap:var(--gap);grid-template-columns:1fr;padding:var(--gap) 0}
.front > *{min-width:0}
@media (max-width:699px){.front .lead{order:-1}.front .right{order:-1}.front .lead{order:-2}}
.rail h2{font-family:var(--sc-font-text);font-size:1rem;font-weight:700;margin:0 0 .75rem}
.latest ol{list-style:none;margin:0;padding:0;display:grid;gap:1rem}
.latest li{display:grid;gap:.2rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}
.latest h3{font-size:1.125rem;line-height:1.22}
.latest h3 a{text-decoration:none}
.lead figure{margin:0}
.lead img{width:100%;aspect-ratio:16/9;object-fit:cover}
.lead figcaption{font-size:.8125rem;color:var(--sc-ink-soft);margin-top:.35rem}
.lead h2{font-size:var(--step-head);margin:.6rem 0 .6rem}
.lead h2 a{text-decoration:none}
.lead .dek{font-family:var(--sc-font-display);font-size:var(--step-lead);line-height:1.35;color:var(--sc-ink-soft);max-width:60ch}
.lead .meta{margin-top:.75rem}
.seconds{display:grid;gap:var(--gap);grid-template-columns:1fr;margin-top:var(--gap)}
.story{display:grid;gap:.4rem;align-content:start;min-width:0}
.story img{width:100%;aspect-ratio:3/2;object-fit:cover}
.story h3{font-size:1.375rem}
.story h3 a{text-decoration:none}
.story p{color:var(--sc-ink-soft);font-size:1rem}
@media (min-width:700px){
  .front{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
  .front .lead{grid-column:2;grid-row:1}
  .front .latest{grid-column:1;grid-row:1 / span 2}
  .front .right{grid-column:2}
  .seconds{grid-template-columns:1fr 1fr}
}
@media (min-width:1100px){
  .front{grid-template-columns:minmax(0,1fr) minmax(0,2.3fr) minmax(0,1.05fr)}
  .front .latest{grid-column:1;grid-row:1}
  .front .lead{grid-column:2}
  .front .right{grid-column:3;grid-row:1}
}

/* desk-view feature card in rail (a two-colour print block) */
.deskcard{background:var(--desk,var(--desk-2));color:#fff;padding:1.25rem;display:grid;gap:.6rem;text-decoration:none;transition:transform var(--dur-med) var(--ease-out)}
.deskcard:hover{color:#fff;transform:translateY(-2px)}
.deskcard .dc-plate{line-height:1.5;font-variant-numeric:tabular-nums;font-weight:700;font-size:.85rem;letter-spacing:.04em}
.deskcard h3{font-size:1.6rem;line-height:1.1}
.deskcard p{font-size:.98rem;opacity:.92}
.deskcard .go{font-weight:600;text-decoration:underline;text-underline-offset:4px}
.movers{margin-top:var(--gap)}
.movers ul{list-style:none;padding:0;margin:0;display:grid;gap:.85rem}
.movers li{display:grid;grid-template-columns:auto 1fr;gap:.25rem .75rem;align-items:baseline}
.movers .chg{font-weight:700;font-variant-numeric:tabular-nums;color:var(--desk-4);font-size:1.25rem;grid-row:span 2}
.movers .chg.up{color:var(--desk-3)}
.movers a{font-family:var(--sc-font-display);font-size:1.05rem;line-height:1.25;text-decoration:none}

/* desk finder — a whole yellow page */
.finder{background:var(--yellow);color:var(--yellow-ink);padding:clamp(2.5rem,6vw,5rem) 0}
.finder .grid{display:grid;gap:var(--gap);grid-template-columns:1fr}
.finder .grid > *{min-width:0}
.finder h2{font-size:var(--step-head)}
.finder p.lede{font-size:var(--step-lead);font-family:var(--sc-font-display);margin-top:.75rem;max-width:36ch}
.finder label{display:block;font-weight:600;margin-bottom:.4rem}
.finder input{width:100%;font:inherit;font-size:1.125rem;min-height:54px;padding:0 1rem;border:2px solid var(--sc-ink);background:var(--sc-canvas);color:var(--sc-ink);border-radius:var(--radius)}
.results{list-style:none;margin:.75rem 0 0;padding:0;display:grid;gap:.4rem;max-height:420px;overflow:auto}
.results li a,.results li div{display:grid;grid-template-columns:4.5rem 1fr auto;gap:.75rem;align-items:center;background:var(--sc-canvas);padding:.6rem .8rem;text-decoration:none;min-height:48px;transition:background var(--dur-fast)}
.results li a:hover{background:#fff}
.results .t{font-weight:700;font-variant-numeric:tabular-nums;font-size:.9rem}
.results .n{font-family:var(--sc-font-display);font-size:1.05rem;line-height:1.2;min-width:0}
.results .u{font-size:.8125rem;color:var(--sc-ink-soft);text-align:right}
.results .open{color:var(--blue);font-weight:600}
.finder .hint{font-size:var(--step-small);margin-top:.6rem}
@media (min-width:900px){.finder .grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}}

/* regulatory ledger — banded agenda */
.ledger{padding:clamp(2.5rem,6vw,5rem) 0}
.ledger .head{display:flex;justify-content:space-between;align-items:end;gap:1rem;flex-wrap:wrap;margin-bottom:2rem}
.ledger h2{font-size:var(--step-head)}
.ledger h2 span{color:var(--sc-ink-soft);display:block;font-size:var(--step-lead);margin-top:.5rem;font-weight:400}
.bands{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.band{display:grid;grid-template-columns:1fr;gap:.35rem;background:var(--sc-surface);padding:1rem}
.band:nth-child(even){background:#efe7d8}
.band .d{font-size:1.15rem;font-weight:700;font-variant-numeric:tabular-nums}
.band .w{font-family:var(--sc-font-display);font-size:1.2rem;line-height:1.25}
.band .w a{text-decoration:none}
.band .s{font-size:.9rem;color:var(--sc-ink-soft)}
.band .tag{justify-self:start;font-size:.8rem;font-weight:700;padding:.2rem .5rem;background:var(--desk-3);color:#fff}
.band .tag.pending{background:var(--sc-ink)}
@media (min-width:800px){.band{grid-template-columns:8rem minmax(0,1fr) 9rem;align-items:center;min-height:76px;padding:.6rem 1.25rem}.band .tag{justify-self:end}}

/* section rows */
.row{padding:clamp(2rem,5vw,4rem) 0;border-top:2px solid var(--sc-ink)}
.row .rowhead{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:1.5rem}
.row h2{font-size:clamp(1.75rem,1.2rem + 2vw,2.75rem)}
.row .grid{display:grid;gap:var(--gap);grid-template-columns:1fr}
@media (min-width:700px){.row .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.row .grid{grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr))}.row .grid .story:first-child h3{font-size:1.9rem}}

/* data page — full blue field */
.data{background:var(--blue);color:#fff;padding:clamp(2.5rem,6vw,5rem) 0}
.data .grid{display:grid;gap:var(--gap);grid-template-columns:1fr}
.data .grid > *{min-width:0}
.data h2{font-size:var(--step-head)}
.data .big{font-family:var(--sc-font-display);font-size:clamp(4rem,2rem + 9vw,10rem);line-height:.9;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.data p{max-width:42ch;margin-top:1rem;font-size:var(--step-lead);font-family:var(--sc-font-display)}
.bars{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.bars li{display:grid;grid-template-columns:minmax(7rem,10rem) 1fr 3.5rem;gap:.75rem;align-items:center;font-size:.95rem}
.bars .bar{height:22px;background:rgba(255,255,255,.18);position:relative}
.bars .bar i{position:absolute;inset:0 auto 0 0;width:100%;background:var(--yellow);transform-origin:left;transform:scaleX(var(--v));transition:transform 900ms var(--ease-out)}
.bars .v{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.data .src{font-size:.8125rem;opacity:.85;margin-top:1rem}
@media (min-width:900px){.data .grid{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}}
.js .bars:not(.sc-in) .bar i{transform:scaleX(0)}

/* closing: three photographs, then a field */
.strip{display:grid;grid-template-columns:repeat(3,1fr)}
.strip img{width:100%;height:40svh;min-height:200px;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.field{background:var(--sc-accent);color:#fff;padding:clamp(2.5rem,6vw,4.5rem) 0}
.field p.st{font-family:var(--sc-font-display);font-size:clamp(1.4rem,1rem + 1.6vw,2rem);line-height:1.25;max-width:30ch}
.field a{color:#fff;text-decoration-thickness:4px;text-underline-offset:6px}
.field p.sm{margin-top:1.5rem;font-size:1rem;max-width:56ch;opacity:.95}
@media (max-width:699px){.strip{grid-template-columns:1fr 1fr}.strip img:first-child{grid-column:1 / -1;height:auto;aspect-ratio:4/3}.strip img{height:auto;aspect-ratio:1}}

/* footer */
.foot{background:var(--sc-ink);color:#e9e2d4;padding:2.5rem 0 calc(2.5rem + env(safe-area-inset-bottom));font-size:var(--step-small)}
.foot a{color:#fff}
.foot .grid{display:grid;gap:1.5rem;grid-template-columns:1fr}
.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1.25rem}
.foot ul a{display:inline-flex;min-height:44px;align-items:center}
.foot .disc{max-width:80ch;color:#cfc6b4}
.legal-todo{background:var(--yellow);color:var(--yellow-ink);padding:0 .25rem;font-weight:600}
@media (min-width:900px){.foot .grid{grid-template-columns:1.2fr 1fr}}

/* ===== company desk ===== */
.deskmast{background:var(--desk);color:#fff;position:relative;overflow:hidden}
.deskmast .wrap{position:relative;z-index:2;display:grid;gap:1rem;padding-top:clamp(1.5rem,4vw,3rem);padding-bottom:clamp(1.5rem,4vw,3rem);grid-template-columns:1fr}
.deskmast .wrap > *{min-width:0}
.deskmast .home{font-size:var(--step-small);color:#fff}
.deskmast h1{font-size:var(--step-mast);line-height:.9;letter-spacing:-.035em;font-weight:500}
.deskmast h1 em{font-style:italic;font-weight:400}
.deskmast .sub{font-family:var(--sc-font-display);font-size:var(--step-lead);max-width:40ch;line-height:1.3}
.plate{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.35);align-self:end}
.plate div{background:var(--desk);padding:.75rem 1rem}
.plate dt{font-size:.78rem;opacity:.85}
.plate dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums;font-size:1.05rem}
.plate .sym dd{font-size:1.9rem;font-weight:700;letter-spacing:.02em}
.fade{position:relative;aspect-ratio:4/3;overflow:hidden;background:#0003}
.fade img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity var(--dur-slow) ease;filter:grayscale(1) contrast(1.05)}
.fade img.on{opacity:1}
.fade figcaption{position:absolute;left:0;bottom:0;right:0;font-size:.75rem;background:rgba(0,0,0,.55);padding:.3rem .6rem;color:#fff}
.pause{position:absolute;right:.5rem;top:.5rem;z-index:3;min-width:44px;min-height:44px;background:var(--sc-canvas);color:var(--sc-ink);border:0;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;padding:0 .75rem}
@media (min-width:900px){.deskmast .wrap{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:center;gap:1.5rem 3rem}.deskmast .lead-col{grid-row:span 2;align-self:center}.fade{aspect-ratio:16/10}}
.desknav{border-bottom:1px solid var(--line);background:var(--sc-canvas);position:sticky;top:var(--head-c,56px);z-index:20}
.desknav .wrap{display:flex;align-items:center;gap:.25rem;min-height:52px;overflow-x:auto}
.desknav a{white-space:nowrap;display:inline-flex;align-items:center;min-height:44px;padding:0 .75rem;text-decoration:none;font-weight:500}
.desknav .w{font-family:var(--sc-font-display);font-size:1.25rem;font-weight:500;padding-left:0}
.desknav .w b{color:var(--desk)}
.desknav a[aria-current=page]{box-shadow:inset 0 -3px 0 var(--desk)}

/* desk view verdict page */
.verdict{background:var(--sc-ink);color:var(--sc-canvas);padding:clamp(2.5rem,6vw,5rem) 0}
.verdict .grid{display:grid;gap:var(--gap);grid-template-columns:1fr}
.verdict .grid > *{min-width:0}
.verdict h2{font-size:var(--step-head);color:#fff}
.verdict .label{color:var(--yellow);font-weight:700;font-size:var(--step-small)}
.verdict .read{font-family:var(--sc-font-display);font-size:var(--step-lead);line-height:1.38;margin-top:1rem;max-width:44ch}
.verdict a.more{display:inline-block;margin-top:1.25rem;color:var(--yellow);font-weight:600;text-decoration-thickness:3px}
.score{margin:0;display:grid;gap:4px}
.score div{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1rem;background:#2b2720;padding:.85rem 1rem}
.score dt{font-weight:600;color:#cfc6b4;font-size:.95rem}
.score dd{margin:0;font-size:1rem}
.score dd b{color:#fff}
.verdict .disc{font-size:.8125rem;color:#cfc6b4;margin-top:1.25rem;max-width:70ch}
@media (min-width:900px){.verdict .grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}}
@media (max-width:480px){.score div{grid-template-columns:1fr;gap:.2rem}}

.timeline{list-style:none;margin:0;padding:0;display:grid;gap:0}
.timeline li{display:grid;grid-template-columns:1fr;gap:.3rem;padding:1.1rem 0;border-bottom:1px solid var(--line)}
.timeline time{font-weight:700;font-variant-numeric:tabular-nums;font-size:.95rem}
.timeline h3{font-size:1.35rem}
.timeline h3 a{text-decoration:none}
.timeline p{color:var(--sc-ink-soft);max-width:70ch}
@media (min-width:800px){.timeline li{grid-template-columns:9rem minmax(0,1fr)}.timeline li > :not(time){grid-column:2}}
.pipe{width:100%;border-collapse:collapse;font-size:.98rem}
.pipe th,.pipe td{text-align:left;padding:.75rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}
.pipe th{font-size:.85rem;color:var(--sc-ink-soft);font-weight:600}
.tablewrap{overflow-x:auto}
.two{display:grid;gap:var(--gap);grid-template-columns:1fr}
.two > *{min-width:0}
@media (min-width:1000px){.two{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}}
.aside-box{background:var(--sc-surface);padding:1.25rem;display:grid;gap:.75rem;align-content:start}
.aside-box h2{font-size:1.5rem}

/* article (the 42% axis) */
.article{padding:clamp(2rem,5vw,4rem) 0}
.axis{display:grid;grid-template-columns:1fr;gap:1rem 2rem}
.axis > *{min-width:0}
.axis .side{font-size:var(--step-small);color:var(--sc-ink-soft)}
.axis h1{font-size:clamp(2.2rem,1.3rem + 4vw,4.75rem);line-height:1}
.axis .standfirst{font-family:var(--sc-font-display);font-size:var(--step-lead);line-height:1.35;color:var(--sc-ink-soft);max-width:40ch}
.body{max-width:38em}
.body p{font-family:var(--sc-font-display);font-size:1.22rem;line-height:1.55;margin:0 0 1.1em}
.body h2{font-size:1.75rem;margin:1.6em 0 .5em}
.body a{color:var(--blue)}
.note{font-size:var(--step-small);color:var(--sc-ink-soft);border-left:3px solid var(--desk);padding-left:.75rem}
.opinion-flag{display:inline-block;background:var(--yellow);color:var(--yellow-ink);font-weight:700;font-size:.8rem;padding:.2rem .5rem}
@media (min-width:900px){.axis{grid-template-columns:minmax(0,38fr) minmax(0,62fr)}.axis > :not(.side){grid-column:2}.axis .side{grid-column:1;grid-row:span 6;align-self:start;position:sticky;top:5rem}}

.reveal{opacity:1}
.js .reveal{opacity:0;transform:translateY(14px);transition:opacity 600ms var(--ease-out),transform 600ms var(--ease-out)}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}.js .reveal{opacity:1;transform:none}.js .bars:not(.sc-in) .bar i{transform:scaleX(var(--v))}}
.preview-banner{background:var(--blue);color:#fff;font-size:var(--step-small);padding:.5rem 0}
.preview-banner a{color:#fff}

/* ===== upper bar: fixed, shrinks on scroll (driven by scroll-craft --sc-p, see JS) ===== */
html{scroll-padding-top:calc(var(--head-c,110px) + 12px)}
body{position:relative}
.sc-track{position:absolute;top:0;left:0;width:1px;height:100%;overflow:hidden;pointer-events:none}
.sc-sentinel{position:absolute;top:100vh;left:0;width:1px;height:1000vh}
.site-head{--s:0;--mast-h:clamp(4.5rem,3.4rem + 3vw,6.75rem);--mast-c:3.5rem;--wm-k:.5;
  position:fixed;top:0;left:0;right:0;z-index:30;background:var(--sc-canvas);
  padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);
  box-shadow:0 1px 0 var(--line),0 calc(var(--s) * 6px) calc(var(--s) * 18px) rgba(29,26,20,calc(var(--s) * .08))}
.site-head .collapse{max-height:calc((1 - var(--s)) * var(--col-h,140px));opacity:calc(1 - var(--s) * 1.6);overflow:hidden}
.site-head.is-compact .collapse{visibility:hidden}
.site-head .mast{padding:0}
.site-head .mast .wrap{height:calc(var(--mast-h) * (1 - var(--s)) + var(--mast-c) * var(--s));display:flex;align-items:center;gap:1.25rem;flex-wrap:nowrap}
.site-head .wordmark{transform:scale(calc(1 - var(--wm-k) * var(--s)));transform-origin:left center;white-space:nowrap;flex:none}
.site-head .tag{margin:0;opacity:calc(1 - var(--s) * 2);transform:translateX(calc(var(--s) * -40px));min-width:0}
.site-head.is-compact .tag{visibility:hidden}
.site-head .actions{margin-left:auto;display:flex;align-items:center;gap:.5rem;flex:none}
.site-head .find{background:var(--yellow);color:var(--yellow-ink);font-weight:600;min-height:44px;padding:0 1rem;display:inline-flex;align-items:center;text-decoration:none;transition:transform var(--dur-fast) var(--ease-out)}
.site-head .find:hover{transform:translateY(-1px);color:var(--yellow-ink)}
.menu-open{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border:2px solid var(--sc-ink);background:var(--sc-canvas);color:var(--sc-ink);cursor:pointer;transition:background var(--dur-fast),color var(--dur-fast)}
.menu-open:hover,.menu-open[aria-expanded=true]{background:var(--sc-ink);color:var(--sc-canvas)}
.secnav{border-top:2px solid var(--sc-ink)}
.secnav .wrap{display:flex;align-items:center;min-height:44px}
.secnav ul{list-style:none;margin:0;padding:0;display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.secnav ul::-webkit-scrollbar{display:none}
.secnav a{display:inline-flex;align-items:center;min-height:44px;padding:0 .7rem;text-decoration:none;font-weight:500;font-size:.95rem;white-space:nowrap}
.secnav li:first-child a{padding-left:0}
@media (max-width:899px){
  .site-head{--mast-h:4rem;--mast-c:3.25rem;--wm-k:.25}
  .site-head .tag{display:none}
}
@media (max-width:480px){
  .site-head .find{padding:0 .75rem;font-size:.9rem}
  .util .count{text-align:right}
}

/* ===== app menu ===== */
.appmenu{position:fixed;inset:0 0 0 auto;margin:0;width:min(440px,100vw);height:100dvh;max-height:none;max-width:none;border:0;padding:0;
  background:var(--sc-canvas);color:var(--sc-ink);transform:translateX(100%);transition:transform 300ms var(--ease-out);overflow:auto;overscroll-behavior:contain}
.appmenu.is-open{transform:none}
.appmenu::backdrop{background:rgba(29,26,20,0);transition:background 300ms var(--ease-out)}
.appmenu.is-open::backdrop{background:rgba(29,26,20,.5)}

.am-inner{display:grid;gap:1.75rem;padding:max(1rem,env(safe-area-inset-top)) max(1.25rem,env(safe-area-inset-right)) calc(2rem + env(safe-area-inset-bottom)) 1.5rem}
.am-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.25rem}
.am-wm{font-size:2rem}
.am-close{min-height:48px;padding:0 1rem;border:2px solid var(--sc-ink);background:var(--sc-canvas);color:var(--sc-ink);font:inherit;font-weight:600;cursor:pointer}
.am-close:hover{background:var(--sc-ink);color:var(--sc-canvas)}
.am-search label{display:block;font-weight:600;margin-bottom:.4rem}
.am-search input{width:100%;font:inherit;font-size:1.0625rem;min-height:52px;padding:0 1rem;border:2px solid var(--sc-ink);background:var(--yellow);color:var(--yellow-ink)}
.am-search input::placeholder{color:#5a4a1a}
.am-results{max-height:280px}
.am-results li a,.am-results li div{background:var(--sc-surface)}
.am-h{font-size:var(--step-small);font-weight:700;color:var(--sc-ink-soft);margin-bottom:.5rem}
.am-big,.am-list{list-style:none;margin:0;padding:0;display:grid}
.am-big a{display:flex;align-items:center;min-height:52px;font-family:var(--sc-font-display);font-size:1.75rem;line-height:1.1;text-decoration:none;border-bottom:1px solid var(--line)}
.am-big a:hover{color:var(--sc-accent)}
.am-list a{display:flex;align-items:center;min-height:44px;text-decoration:none;font-weight:500}
.am-small a{font-weight:400;color:var(--sc-ink-soft)}
.am-desk{display:flex;gap:.9rem;align-items:center;background:var(--desk-2);color:#fff;padding:1rem;text-decoration:none;margin-bottom:.5rem;font-family:var(--sc-font-display);font-size:1.3rem;line-height:1.2}
.am-desk:hover{color:#fff;background:var(--desk-3)}
.am-desk .tick{background:var(--yellow);font-family:var(--sc-font-text)}
.am-desk .meta{color:#e6eef3;font-family:var(--sc-font-text)}
@media (max-width:480px){.appmenu{width:100vw}}

/* ===== article page ===== */
.story-page h1{font-size:clamp(2rem,1.2rem + 3.4vw,4rem);line-height:1.04}
.story-page .side{display:grid;gap:.5rem}
.story-fig{margin:.5rem 0 0}
.story-fig img{width:100%;aspect-ratio:16/9;object-fit:cover}
.story-fig figcaption{font-size:.8125rem;color:var(--sc-ink-soft);margin-top:.4rem;max-width:70ch}
.story-page .body{display:block;margin-top:1rem}
.story-page .body h2{font-size:1.6rem;margin:1.6em 0 .5em}
.srcbox{background:var(--sc-surface);padding:1.25rem 1.5rem}
.srcbox p{font-family:var(--sc-font-text);font-size:1rem;margin:0 0 .4rem}
.srclink{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--blue)}
.analysis-slot p{font-size:1.05rem;color:var(--sc-ink-soft)}
.dplates{display:grid;gap:4px;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}
.dplate{background:var(--desk);color:#fff;padding:1rem 1.1rem;display:grid;gap:.15rem;text-decoration:none;min-width:0}
a.dplate:hover{color:#fff;filter:brightness(1.08)}
.dplate .dp-t{font-weight:700;font-size:1.5rem;letter-spacing:.02em;font-variant-numeric:tabular-nums}
.dplate .dp-n{font-family:var(--sc-font-display);font-size:1.2rem;line-height:1.2}
.dplate .dp-x,.dplate .dp-u{font-size:.85rem;opacity:.9}
.dplate .dp-u{margin-top:.4rem;font-weight:600}
.related .rel-grid{grid-template-columns:1fr}
@media (min-width:800px){.related .rel-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.related .story h3{font-size:1.35rem}
/* top bar stays and shrinks */
.site-head .util .wrap{min-height:0;height:calc(40px * (1 - var(--s)) + 28px * var(--s));font-size:calc(.875rem * (1 - var(--s)) + .75rem * var(--s));white-space:nowrap;overflow:hidden}
.site-head .util .cs{display:none}
@media (max-width:560px){.site-head .util .cl{display:none}.site-head .util .cs{display:inline}}
.empty{color:var(--sc-ink-soft);font-family:var(--sc-font-display);font-size:1.2rem;max-width:44ch;margin-top:1rem}
.legal .body h2{font-size:1.5rem}
.legal .body p{font-size:1.12rem}
.body a.dplate,.body a.dplate:hover{color:#fff;text-decoration:none}
@media (max-width:560px){.devbar{transform:scale(.85);transform-origin:right bottom}}

.site-head .tag{font-family:var(--sc-font-display);font-size:clamp(1rem,.9rem + .4vw,1.25rem);color:var(--sc-ink);font-style:italic}
.site-head .u-motto{display:none;font-family:var(--sc-font-display);font-style:italic;font-size:1.05em}
@media (max-width:899px){.site-head .u-date{display:none}.site-head .u-motto{display:inline}}

/* compact = 40% of open height (values set by measure()) */
.site-head .util .wrap{height:calc(40px * (1 - var(--s)) + var(--util-c,22px) * var(--s));font-size:calc(.875rem * (1 - var(--s)) + .72rem * var(--s))}
.site-head .secnav{max-height:calc((1 - var(--s)) * var(--sec-h,48px));opacity:calc(1 - var(--s) * 1.6);overflow:hidden;border-top-width:calc(2px * (1 - var(--s)))}
.site-head.is-compact .secnav{visibility:hidden}
.site-head .menu-open{width:calc(48px * (1 - var(--s)) + 40px * var(--s));height:calc(48px * (1 - var(--s)) + 40px * var(--s))}
.site-head .find{min-height:calc(44px * (1 - var(--s)) + 38px * var(--s))}
.site-head{border-bottom:2px solid var(--sc-ink)}

/* ===== menu button: bars morph to a cross ===== */
.menu-open svg rect{transform-box:fill-box;transform-origin:center;transition:transform 320ms var(--ease-out),opacity 200ms}
.menu-open[aria-expanded=true] .b1{transform:translateY(5px) rotate(45deg)}
.menu-open[aria-expanded=true] .b2{transform:scaleX(0);opacity:0}
.menu-open[aria-expanded=true] .b3{transform:translateY(-5px) rotate(-45deg)}

/* ===== phone + tablet: dropdown from under the upper bar ===== */
.am-scrim{position:fixed;inset:0;z-index:28;background:rgba(29,26,20,.45);opacity:0;pointer-events:none;transition:opacity 300ms var(--ease-out);display:none}
.am-scrim.on{display:block}
.am-scrim.is-open{opacity:1;pointer-events:auto}
.appmenu.am-drop{position:fixed;inset:var(--am-top,64px) 0 auto 0;width:100%;height:auto;max-height:calc(100dvh - var(--am-top,64px));z-index:29;
  transform:none;clip-path:inset(0 0 100% 0);transition:clip-path 420ms var(--ease-out);box-shadow:0 18px 40px rgba(29,26,20,.18);border-bottom:4px solid var(--yellow)}
.appmenu.am-drop.is-open{clip-path:inset(0 0 0 0)}
.appmenu.am-drop:not(.is-open){transition-duration:240ms;transition-timing-function:cubic-bezier(.4,0,1,1)}
.appmenu.am-drop .am-top{display:none}
.appmenu.am-drop .am-inner{padding:1.25rem max(var(--margin),env(safe-area-inset-right)) calc(1.75rem + env(safe-area-inset-bottom)) max(var(--margin),env(safe-area-inset-left));gap:1.5rem}
.appmenu.am-drop .am-inner > *,.appmenu.am-drop .am-big li{opacity:0;transform:translateY(-10px);transition:opacity 260ms var(--ease-out),transform 360ms var(--ease-out);transition-delay:0ms}
.appmenu.am-drop.is-open .am-inner > *,.appmenu.am-drop.is-open .am-big li{opacity:1;transform:none;transition-delay:calc(60ms + var(--i,0) * 32ms)}
.appmenu.am-drop .am-big{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.25rem}
.appmenu.am-drop .am-big a{font-size:1.45rem;min-height:56px}
.appmenu.am-drop .am-small{display:flex;flex-wrap:wrap;column-gap:1.25rem}
@media (min-width:700px){
  .appmenu.am-drop .am-inner{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);column-gap:2.5rem;align-items:start}
  .appmenu.am-drop .am-search{grid-column:1 / -1}
  .appmenu.am-drop .am-big{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (prefers-reduced-motion:reduce){.appmenu.am-drop{clip-path:none}.appmenu.am-drop .am-inner > *,.appmenu.am-drop .am-big li{opacity:1;transform:none}}
/* keep the page the same width when the menu locks scrolling (no scrollbar jump) */
html{scrollbar-gutter:stable}


.appmenu{overscroll-behavior:contain}

/* black motto bar slides up and out as the bar shrinks */
.site-head .util{overflow:hidden}
.site-head .util .wrap{height:calc(40px * (1 - var(--s)));align-items:flex-end;padding-bottom:calc(10px * (1 - var(--s)))}
.site-head .util .wrap > *{transform:translateY(calc(var(--s) * -14px));opacity:calc(1 - var(--s) * 1.2)}
.site-head.is-compact .util{visibility:hidden}
.faq{display:grid;gap:0;max-width:60rem}
.faq .qa{padding:1.1rem 0;border-bottom:1px solid var(--line)}
.faq h3{font-size:1.35rem;margin-bottom:.4rem}
.faq p{color:var(--sc-ink-soft);max-width:70ch}
.faq a{color:var(--blue)}
.dateline{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem 1rem;font-size:var(--step-small);padding-bottom:.6rem;border-bottom:2px solid var(--sc-ink);margin-bottom:.25rem}
.dateline time{color:var(--sc-ink-soft);font-weight:600;font-variant-numeric:tabular-nums}
.movers li{grid-template-columns:auto 1fr}
.movers .chg{grid-row:auto}

/* ===== Companies search bar under the upper bar ===== */
.co-panel{position:absolute;left:0;right:0;top:100%;background:var(--sc-canvas);border-bottom:4px solid var(--yellow);box-shadow:0 14px 30px rgba(29,26,20,.14);
  clip-path:inset(0 0 100% 0);transition:clip-path 320ms var(--ease-out)}
.co-panel.is-open{clip-path:inset(0 0 -40px 0)}
.co-panel .wrap{padding-top:1rem;padding-bottom:1rem}
.co-form{display:flex;gap:.5rem;align-items:stretch}
.co-form input{flex:1;min-width:0;font:inherit;font-size:1.125rem;min-height:52px;padding:0 1rem;border:2px solid var(--sc-ink);background:var(--yellow);color:var(--yellow-ink)}
.co-form input::placeholder{color:#5a4a1a}
.co-close{min-height:52px;padding:0 1rem;border:2px solid var(--sc-ink);background:var(--sc-canvas);color:var(--sc-ink);font:inherit;font-weight:600;cursor:pointer}
.co-close:hover{background:var(--sc-ink);color:var(--sc-canvas)}
.co-results{max-height:min(60vh,440px)}
.co-results:empty{display:none}
.results mark{background:none;color:inherit;font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.results li[aria-selected=true] a{background:#fff;outline:2px solid var(--blue);outline-offset:-2px}
.results li.none div{grid-template-columns:1fr}
.site-head .co-open{border:0;font:inherit;font-weight:600;cursor:pointer}
.site-head .co-open[aria-expanded=true]{background:var(--sc-ink);color:var(--sc-canvas)}

/* menu: two searches side by side on wider screens */
.am-searches{display:grid;gap:1rem}
.am-search input#am-s{background:var(--sc-canvas)}
.sr-list .sr{display:grid;gap:.15rem;background:var(--sc-surface);padding:.6rem .8rem;text-decoration:none;min-height:48px}
.sr-list .sr:hover{background:#fff}
.sr-k{font-size:.78rem;font-weight:700;color:var(--sc-accent)}
.sr-t{font-family:var(--sc-font-display);font-size:1.05rem;line-height:1.25}
.am-results:empty{display:none}
@media (min-width:700px){.appmenu.am-drop .am-searches{grid-template-columns:1fr 1fr}}
.results.sr-list li a,.results.sr-list li div{display:grid;grid-template-columns:1fr;gap:.15rem}
@media (max-width:560px){.results li a,.results li div{grid-template-columns:4rem minmax(0,1fr)}.results .u{display:none}.results .u .open{display:inline}}

/* ===== floating Subscribe button: right edge, half height, springs with scroll ===== */
.sub-fab{position:fixed;z-index:27;right:calc(10px + env(safe-area-inset-right,0px));top:50%;transform:translateY(-50%);
  display:inline-flex;align-items:center;gap:.5rem;min-height:52px;padding:0 1.1rem 0 .95rem;border:0;cursor:pointer;
  background:var(--sc-accent);color:#fff;font:inherit;font-weight:700;font-size:1rem;letter-spacing:.01em;
  box-shadow:0 8px 22px rgba(29,26,20,.22),0 2px 0 rgba(29,26,20,.25);opacity:0;translate:24px 0;
  transition:opacity 420ms var(--ease-out),translate 520ms cubic-bezier(.34,1.56,.64,1),background var(--dur-fast)}
.sub-fab.in{opacity:1;translate:0 0}
.sub-fab:hover{background:#8e3900}
.sub-fab:active{scale:.97}
.sub-fab[aria-expanded=true]{opacity:0;pointer-events:none}
@media (max-width:699px){.sub-fab{min-height:48px;padding:0 .9rem 0 .8rem;font-size:.95rem;right:calc(8px + env(safe-area-inset-right,0px))}}

/* ===== subscribe sheet: bottom sheet on phones, side card on larger screens ===== */
.subscribe{border:0;padding:0;margin:0;background:var(--sc-canvas);color:var(--sc-ink);max-width:none;max-height:none;overflow:auto;overscroll-behavior:contain}
.subscribe::backdrop{background:rgba(29,26,20,0);transition:background 300ms var(--ease-out)}
.subscribe.is-open::backdrop{background:rgba(29,26,20,.5)}
.sub-inner{display:grid;gap:1rem;padding:1.25rem max(1.25rem,env(safe-area-inset-right)) calc(1.5rem + env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left))}
.sub-top{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.sub-kicker{font-weight:700;font-size:var(--step-small);color:var(--sc-accent)}
.sub-close{min-height:44px;padding:0 1rem;border:2px solid var(--sc-ink);background:var(--sc-canvas);color:var(--sc-ink);font:inherit;font-weight:600;cursor:pointer}
.subscribe form{display:grid;gap:1.1rem}
.subscribe h2{font-size:clamp(1.6rem,1.2rem + 1.6vw,2.2rem);line-height:1.08}
.sub-lede{font-family:var(--sc-font-display);font-size:1.15rem;color:var(--sc-ink-soft)}
.sub-field label,.subscribe legend{display:block;font-weight:700;margin-bottom:.45rem;font-size:.95rem}
.subscribe fieldset{border:0;margin:0;padding:0;min-width:0}
.sub-field input,#sub-co{width:100%;font:inherit;font-size:1.0625rem;min-height:52px;padding:0 1rem;border:2px solid var(--sc-ink);background:#fff;color:var(--sc-ink)}
#sub-co{background:var(--yellow)}
.sub-field input[aria-invalid=true]{border-color:var(--desk-4)}
.pills{display:flex;flex-wrap:wrap;gap:.45rem}
.pill{position:relative}
.pill input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.pill span{display:inline-flex;align-items:center;min-height:44px;padding:0 .95rem;border:2px solid var(--sc-ink);font-weight:600;font-size:.95rem;transition:background var(--dur-fast),color var(--dur-fast)}
.pill input:checked + span{background:var(--sc-ink);color:var(--sc-canvas)}
.pill input:focus-visible + span{outline:3px solid var(--blue);outline-offset:2px}
.sub-chips{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}
.chip{display:inline-flex;align-items:center;gap:.35rem;background:var(--sc-surface);padding:.3rem .3rem .3rem .65rem;font-size:.92rem}
.chip button{min-width:32px;min-height:32px;border:0;background:var(--sc-ink);color:var(--sc-canvas);font-size:1.1rem;cursor:pointer}
.sub-co-results{max-height:220px;margin-top:.4rem}
.sub-co-results:empty{display:none}
.sub-consent{display:grid;grid-template-columns:auto 1fr;gap:.6rem;align-items:start;font-size:.95rem}
.sub-consent input{width:22px;height:22px;margin-top:.1rem;accent-color:var(--sc-ink)}
.sub-consent a{color:var(--blue)}
.sub-err{background:#fbe9e7;color:#7a1d10;padding:.6rem .8rem;font-weight:600}
.sub-go{min-height:52px;padding:0 1.5rem;border:0;background:var(--sc-accent);color:#fff;font:inherit;font-weight:700;font-size:1.05rem;cursor:pointer;justify-self:start}
.sub-go:hover{background:#8e3900}
.sub-done{display:grid;gap:.8rem}
.sub-done[hidden]{display:none}
.subscribe form[hidden]{display:none}
@media (max-width:699px){
  .subscribe{position:fixed;inset:auto 0 0 0;width:100%;max-height:92dvh;transform:translateY(100%);transition:transform 380ms var(--ease-out)}
  .subscribe.is-open{transform:none}
  .sub-go{justify-self:stretch}
}
@media (min-width:700px){
  .subscribe{position:fixed;inset:0 0 0 auto;width:min(520px,100vw);height:100dvh;transform:translateX(100%);transition:transform 380ms var(--ease-out)}
  .subscribe.is-open{transform:none}
  .sub-inner{padding:1.5rem 2rem 2rem}
}
@media (prefers-reduced-motion:reduce){.subscribe{transition:none}.sub-fab{transition:none}}

/* follow buttons + alert box + manage page */
.follow{justify-self:start;min-height:48px;padding:0 1.25rem;border:2px solid #fff;background:transparent;color:#fff;font:inherit;font-weight:700;cursor:pointer;transition:background var(--dur-fast),color var(--dur-fast)}
.follow:hover{background:#fff;color:var(--sc-ink)}
.alertbox{background:var(--yellow);color:var(--yellow-ink);padding:1.25rem 1.5rem;display:grid;gap:.6rem}
.alertbox p{font-family:var(--sc-font-text)!important;font-size:1rem!important;margin:0!important}
.mg{display:grid;gap:1.5rem}
.mg fieldset{border:0;padding:0;margin:0}
.mg legend{font-weight:700;margin-bottom:.5rem}
.mg-cos{list-style:none;margin:0 0 .75rem;padding:0;display:grid;gap:.4rem}
.mg-cos li{display:flex;align-items:center;gap:.6rem;background:var(--sc-surface);padding:.6rem .8rem;font-family:var(--sc-font-text);font-size:1rem}
.mg-off{margin-left:auto;font-size:.9rem}
#mg-co{width:100%;font:inherit;min-height:52px;padding:0 1rem;border:2px solid var(--sc-ink);background:var(--yellow)}
.mg-out{margin-top:2rem;border-top:2px solid var(--sc-ink);padding-top:1.5rem;display:grid;gap:.6rem}
.sub-close-all{justify-self:start;min-height:48px;padding:0 1.2rem;border:2px solid var(--desk-4);background:transparent;color:var(--desk-4);font:inherit;font-weight:700;cursor:pointer}

/* ---------- pilot: desk tiles, rail views, menu desk list, story sources, risks ---------- */
.desks{padding:clamp(2rem,5vw,3.5rem) 0;border-top:1px solid var(--line)}
.dtiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:1rem}
.dtile{display:flex;flex-direction:column;gap:.35rem;padding:1rem 1rem 1.1rem;background:var(--sc-surface);color:var(--sc-ink);text-decoration:none;border-top:4px solid var(--desk,var(--sc-accent));transition:background var(--dur-fast) var(--ease-out)}
.dtile:hover,.dtile:focus-visible{background:color-mix(in srgb,var(--desk,var(--sc-accent)) 8%,var(--sc-surface))}
.dt-t{font:700 var(--step-small)/1 var(--sc-font-text);letter-spacing:.06em;color:var(--sc-ink-soft)}
.dt-n{font:700 1.05rem/1.2 var(--sc-font-display)}
.dt-v{font-size:var(--step-small);line-height:1.45;color:var(--sc-ink-soft)}
.railviews{list-style:none;margin:1rem 0 0;padding:0;border-top:1px solid var(--line)}
.railviews li{border-bottom:1px solid var(--line)}
.railviews a{display:block;padding:.6rem 0;color:var(--sc-ink);text-decoration:none;font-size:.95rem;line-height:1.35}
.railviews a:hover{text-decoration:underline}
.railviews .tick,.am-desks .tick{display:inline-block;min-width:3.6em;text-align:center;font:700 .7rem/1.4 var(--sc-font-text);letter-spacing:.04em;color:var(--sc-ink);background:var(--yellow);padding:.05rem .3rem;margin-right:.5rem;vertical-align:.1em}
.am-desks{list-style:none;margin:.25rem 0 .75rem;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:0 1rem}
.am-desks a{display:flex;align-items:baseline;padding:.45rem 0;border-bottom:1px solid var(--line);color:inherit;text-decoration:none;font-size:.95rem}
.am-desks a:hover{text-decoration:underline}
.side-h{font:700 var(--step-small)/1.2 var(--sc-font-text);text-transform:uppercase;letter-spacing:.08em;margin:1.5rem 0 .5rem}
.side-src{list-style:none;margin:0;padding:0;font-size:var(--step-small);line-height:1.4}
.side-src li{padding:.4rem 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
ul.risks{list-style:none;margin:0;padding:0}
ul.risks li{padding:.75rem 0 .75rem 1rem;border-left:3px solid var(--yellow);margin-bottom:.75rem;line-height:1.5}
ul.risks li a{font-size:var(--step-small);white-space:nowrap}
@media (max-width:899px){.story-page .axis .side,.view-page .axis .side{order:99;border-top:1px solid var(--line);padding-top:1rem;margin-top:1rem}}

/* ---------- bottom bar: the whole menu, always at the foot of the page ---------- */
.botbar{background:#14110d;color:#e9e1d2;border-bottom:1px solid #3a342b;padding:clamp(2rem,5vw,3rem) 0}
.bb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.5rem}
@media (min-width:700px){.bb-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1100px){.bb-grid{grid-template-columns:1fr 2.2fr 1fr 1fr 1fr}}
.bb-h{font:700 .78rem/1 var(--sc-font-text);text-transform:uppercase;letter-spacing:.1em;color:var(--yellow);margin:0 0 .9rem}
.botbar ul{list-style:none;margin:0;padding:0;display:grid;gap:.1rem}
.botbar a{display:inline-block;padding:.32rem 0;color:#e9e1d2;text-decoration:none;font-size:.95rem;line-height:1.3}
.botbar a:hover,.botbar a:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:3px}
.bb-desks{grid-column:1/-1}
@media (min-width:1100px){.bb-desks{grid-column:auto}}
.bb-desks ul{grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));column-gap:1.25rem}
.botbar .bb-strong{font-weight:700;color:#fff;border-bottom:2px solid var(--yellow);padding-bottom:.1rem;margin-bottom:.2rem}
.bb-mark{font-size:1.6rem;margin:0 0 .75rem;color:#fff}

/* ---------- reputation management page ---------- */
.rep-page .standfirst{max-width:46ch}
.rep-kinds{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin:.5rem 0 1rem}
.rep-kind{display:grid;gap:.35rem;padding:1rem;background:var(--sc-surface);color:var(--sc-ink);text-decoration:none;border-top:4px solid var(--sc-accent);scroll-margin-top:6rem}
.rep-kind b{font-family:var(--sc-font-display);font-size:1.15rem}
.rep-kind span{font-size:var(--step-small);color:var(--sc-ink-soft);line-height:1.45}
.rep-kind:hover,.rep-kind:focus-visible{background:color-mix(in srgb,var(--sc-accent) 7%,var(--sc-surface))}
.rep-form{display:grid;gap:1.25rem;max-width:44rem;scroll-margin-top:6rem;border-top:3px solid var(--sc-ink);padding-top:1.25rem}
.rep-form h2{font-size:1.75rem;margin:0}
.rep-set{border:0;margin:0;padding:0;display:grid;gap:.5rem}
.rep-set legend{font-weight:700;margin-bottom:.5rem;padding:0}
.rep-radio{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:start;padding:.7rem .8rem;border:1px solid var(--line);background:var(--sc-canvas);cursor:pointer}
.rep-radio:has(input:checked){border-color:var(--sc-ink);box-shadow:inset 3px 0 0 var(--sc-accent)}
.rep-radio input{width:1.15rem;height:1.15rem;margin-top:.15rem;accent-color:var(--sc-accent)}
.rep-radio > span{display:grid;gap:.15rem}
.rep-inline{padding:.55rem .8rem}
.rep-grid{display:grid;gap:1rem 1.25rem}
@media (min-width:640px){.rep-grid{grid-template-columns:1fr 1fr}}
.rep-f{display:grid;gap:.35rem;margin:0;position:relative}
.rep-f label{font-weight:600}
.rep-f input,.rep-f textarea{width:100%;font:inherit;font-size:1rem;padding:.7rem .8rem;min-height:48px;border:2px solid var(--sc-ink);background:#fff;color:var(--sc-ink);border-radius:0}
.rep-f textarea{resize:vertical;line-height:1.5}
.rep-f [aria-invalid=true]{border-color:#b3261e;box-shadow:0 0 0 2px #f6d5d2}
.rep-f input:focus-visible,.rep-f textarea:focus-visible{outline:3px solid var(--sc-accent);outline-offset:2px}
.rep-co .results{position:absolute;left:0;right:0;top:100%;z-index:5;margin:0}
.rep-picked{margin:0}
.rep-count{float:right;font-variant-numeric:tabular-nums}
.rep-steps{margin:0;padding-left:1.2rem;display:grid;gap:.6rem;line-height:1.45}
.rep-nots{margin:0;padding-left:1.1rem;display:grid;gap:.4rem;line-height:1.45}
.rep-done{display:grid;gap:.8rem;max-width:40rem;border-top:3px solid var(--sc-accent);padding-top:1.25rem}
.rep-done h2{font-size:2rem}
.hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.rep-done[hidden],.rep-form[hidden],.rep-picked[hidden],.rep-f input[hidden]{display:none}
.rep-grid{align-items:start}
.pubnote{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--rule,#d9d4c8)}
.story .meta time{font-variant-numeric:tabular-nums}
.pubdate time{font-weight:700;font-size:1.05rem;letter-spacing:.01em}
.pubdate .kicker{margin-left:.75rem}
.profile{grid-column:1/-1;margin:0 0 2rem;padding:1.25rem 0;border-top:2px solid var(--desk,#111)}
.profile h2{font-size:var(--step-head);margin-bottom:.75rem}
.prof-dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.9rem 1.5rem;margin:0 0 .75rem}
.prof-dl dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;opacity:.7}
.prof-dl dd{margin:.15rem 0 0;font-weight:600;overflow-wrap:anywhere}
.co-cols{columns:3 18rem;column-gap:2rem;list-style:none;padding:0;margin:.5rem 0 2rem}
.co-cols li{break-inside:avoid;margin:0 0 .35rem}
.co-toc{display:flex;flex-wrap:wrap;gap:.4rem .9rem;list-style:none;padding:0;margin:1rem 0 2rem}
.plain-list{list-style:none;padding:0;margin:.5rem 0}
.plain-list li{margin:.3rem 0}
.breadcrumb{font-size:.9rem;padding-top:.75rem}
.faq details{border-top:1px solid var(--rule,#d9d4c8);padding:.75rem 0}
.faq summary{font-weight:600;cursor:pointer}
.pubdate{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem;align-items:baseline}
.pubdate .dl-item{font-size:.92rem}
.pubdate .dl-item:first-of-type time{font-weight:700}
.pubdate .kicker{margin-left:0}
.prof-mast h1{font-size:clamp(2.2rem,5.2vw,4.4rem);line-height:1.02}
.sec-filings{columns:2 16rem}
.sec-filings li{break-inside:avoid}
.sub-fab{display:none!important}
/* deeper header shrink: compact bar is 34% of the open bar; scale controls to fit */
.site-head{--wm-k:.56}
.site-head .menu-open{width:calc(48px * (1 - var(--s)) + 34px * var(--s));height:calc(48px * (1 - var(--s)) + 34px * var(--s))}
.site-head .find{min-height:calc(44px * (1 - var(--s)) + 32px * var(--s))}
@media (max-width:899px){.site-head{--wm-k:.32}}
/* whole card / list row opens the article */
.story,.timeline li,.rail.latest li,.band{position:relative}
.story h3 a::after,.timeline li h3 a::after,.rail.latest li a::after,.band .w a::after{content:"";position:absolute;inset:0;z-index:1}
.story .tick,.timeline li .tick{position:relative;z-index:2}
.story:hover h3 a,.timeline li:hover h3 a{text-decoration:underline}
.dek-link{color:inherit;text-decoration:none}.dek-link:hover{text-decoration:underline}
.checkometer{margin:2rem 0;padding:1.5rem;border:2px solid var(--ink,#1d1a14);background:color-mix(in srgb,var(--desk,#333) 6%,transparent)}
.checkometer h2{font-size:var(--step-head);margin:.25rem 0 .75rem}
.cm-gauge{display:flex;align-items:center;gap:1rem;margin:.5rem 0 1rem}
.cm-meter{display:flex;gap:4px}
.cm-seg{width:3.2rem;height:.7rem;background:var(--line,#d9d4c8)}
.cm-seg.on:nth-child(1){background:#2f7d4f}.cm-seg.on:nth-child(2){background:#c98a12}.cm-seg.on:nth-child(3){background:#b23a2a}
.cm-rating{font-weight:700;margin:0}
.cm-head{font-size:1.15rem;font-weight:600}
.cm-items{list-style:none;padding:0;margin:1rem 0;display:grid;gap:1rem}
.cm-item{border-top:1px solid var(--line,#d9d4c8);padding-top:.75rem}
.cm-item h3{font-size:1.05rem;margin:.2rem 0 .4rem}
.cm-item.w-high{border-top:3px solid #b23a2a}.cm-item.w-medium{border-top:3px solid #c98a12}
.cm-docs summary{cursor:pointer;font-weight:600}
/* top bar: date left, motto centred */
.site-head .util .wrap{position:relative;justify-content:flex-start}
.site-head .u-motto{display:block!important;position:absolute;left:0;right:0;text-align:center;pointer-events:none}
@media (max-width:899px){.site-head .u-date{display:none}}
.mkt-box{min-height:220px}
.mkt-box .tradingview-widget-container{width:100%}

.prof-fig{margin:0 0 1.5rem;max-width:62ch}.prof-fig img{width:100%;aspect-ratio:21/9;object-fit:cover;display:block}.prof-fig figcaption{font-size:.85rem;color:var(--sc-ink-soft,#555);margin-top:.35rem}

/* free membership gate */
html.js:not(.member) .gate-locked{display:none!important}
html.js:not(.member) .gate-two{display:block}
html.member .gate-card,html.member .memberrow{display:none}
html.js:not(.member) .gate-last{position:relative;max-height:9.5rem;overflow:hidden;-webkit-mask-image:linear-gradient(#000 35%,transparent);mask-image:linear-gradient(#000 35%,transparent)}
html.js:not(.member) section.gate-last{max-height:14rem}
.gate-card{margin:2rem 0;padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--line);border-top:3px solid var(--sc-accent);background:var(--sc-surface);max-width:46rem}
.gate-card h2{margin:.25rem 0 .5rem;font-size:var(--step-lead)}
.gate-kicker{margin:0;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.gate-actions{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;align-items:center;margin:1rem 0}
.gate-more{font-size:.95rem}
.gate-signin{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line)}
.gate-in-h{margin:0 0 .4rem;font-size:.95rem;font-weight:600}
.gate-in-row{display:flex;flex-wrap:wrap;gap:.5rem}
.gate-in-row input{flex:1 1 14rem;min-width:0;padding:.6rem .7rem;font:inherit;border:1px solid currentColor;background:#fff;color:#111}
.gate-in-row button{padding:.6rem .9rem;font:inherit;cursor:pointer;border:1px solid currentColor;background:transparent;color:inherit}
.gate-msg{margin:.5rem 0 0;font-size:.92rem}
.gate-note{margin:1rem 0 0}
.gate-status{max-width:40rem}
.memberrow{padding:clamp(2rem,5vw,3.5rem) 0;border-top:1px solid var(--line)}
.mem-grid{display:grid;gap:1rem 3rem;grid-template-columns:1fr}
@media(min-width:820px){.mem-grid{grid-template-columns:1fr 1.4fr}}
.mem-grid h2{margin:.25rem 0 0}
.site-head .sub-open[data-member]{opacity:.9}
html.member .follow[data-subscribe]{display:none}
.tv-ask{display:grid;gap:.6rem;align-content:center;min-height:200px;padding:1rem;border:1px dashed var(--line);background:var(--sc-surface);font-size:.95rem}
.tv-ask p{margin:0;max-width:52ch}
.tv-go{justify-self:start;min-height:44px;padding:0 1rem;border:1px solid var(--sc-ink);background:transparent;color:inherit;font:inherit;font-weight:600;cursor:pointer}

/* Investor Rank: 1 (most negative) red to 10 (most positive) green. Number and label always shown. */
.ir-1{--rk:#8e1b1b}.ir-2{--rk:#a72a1f}.ir-3{--rk:#b4471a}.ir-4{--rk:#9a5b00}.ir-5{--rk:#6b5d00}
.ir-6{--rk:#4d6420}.ir-7{--rk:#3a6b2b}.ir-8{--rk:#2f6b3a}.ir-9{--rk:#1f6b3f}.ir-10{--rk:#14653f}
.irb{display:inline-flex;align-items:center;justify-content:center;min-width:1.6rem;height:1.6rem;padding:0 .3rem;background:var(--rk);color:#fff;font:700 .85rem/1 var(--sc-font-text);font-variant-numeric:tabular-nums;border-radius:2px;margin-left:.4rem;flex:none}
.irank{border:1px solid var(--line);background:var(--sc-surface);padding:1rem;margin:0 0 1rem}
.irank.dark{background:#1d1a14;color:#fffcf6;border-color:#1d1a14}
.ir-k{font:700 .75rem/1.2 var(--sc-font-text);letter-spacing:.06em;text-transform:uppercase;margin:0 0 .5rem}
.irank .ir-n{margin:0 0 .6rem;display:flex;align-items:baseline;gap:.35rem;flex-wrap:wrap}
.irank .ir-n b{font:600 3rem/1 var(--sc-font-display);color:var(--rk)}
.irank.dark .ir-n b{background:var(--rk);color:#fff;padding:.1rem .5rem}
.irank .ir-l{font-weight:700;margin-left:.25rem}
.ir-scale{display:grid;grid-template-columns:repeat(10,1fr);gap:2px}
.ir-c{background:var(--rk);color:#fff;text-align:center;font:600 .7rem/1.8 var(--sc-font-text);opacity:.35}
.ir-c.on{opacity:1;outline:2px solid currentColor;outline-offset:1px;font-weight:700}
.ir-ends{display:flex;justify-content:space-between;font-size:.75rem;margin:.3rem 0 .6rem}
.ir-why{margin:0 0 .6rem;font-size:.95rem}
.ir-f{display:grid;grid-template-columns:repeat(5,1fr);gap:.4rem;margin:0 0 .6rem;font-size:.75rem}
.ir-f div{border-top:2px solid currentColor;padding-top:.2rem}.ir-f dt{opacity:.8}.ir-f dd{margin:0;font-weight:700}
.ir-disc{font-size:.75rem;margin:0;opacity:.9}.irank.dark a{color:#ffd14d}
.v-side{display:grid;gap:1rem;align-content:start}
.rankboard{border:2px solid var(--sc-ink);padding:1rem;margin:0 0 var(--gap);background:var(--sc-surface)}
.rankboard h2{margin:0 0 .6rem}.rankboard h3{font:700 .75rem/1.2 var(--sc-font-text);letter-spacing:.05em;text-transform:uppercase;margin:0 0 .4rem}
.rb-find{display:flex;gap:.4rem;margin:0 0 .8rem}
.rb-find input{flex:1;min-width:0;padding:.6rem .7rem;border:1px solid var(--sc-ink);background:#fff;font:inherit;font-size:1rem}
.rb-find button{padding:.6rem .9rem;background:var(--sc-accent);color:#fff;border:0;font:700 1rem var(--sc-font-text);cursor:pointer}
.rb-cols{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.rb-cols ol{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}
.rb-cols a{display:flex;align-items:center;gap:.3rem;text-decoration:none;font-size:.9rem;line-height:1.2}
.rb-cols .irb{margin:0 .2rem 0 0}.rb-cols .tick{margin-left:auto;font-size:.7rem;opacity:.75}
.rb-disc{font-size:.75rem;margin:.7rem 0 0}
/* homepage: more news, highlights, sections */
.morenews,.highlights,.secnews{padding:var(--gap) 0;border-top:2px solid var(--sc-ink)}
.rowhead{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.rowhead h2{margin:0}
.mn-grid{list-style:none;margin:0;padding:0;display:grid;gap:1.25rem var(--gap);grid-template-columns:1fr}
.mn-grid li{border-top:1px solid var(--line);padding-top:.6rem}.mn-grid h3{font:500 1.2rem/1.25 var(--sc-font-display);margin:.2rem 0}
.mn-grid h3 a{text-decoration:none}.mn-grid p{margin:0;font-size:.95rem;color:var(--sc-ink-soft)}
.mn-grid .kicker{font:700 .72rem/1.2 var(--sc-font-text);letter-spacing:.05em;text-transform:uppercase;color:var(--sc-accent)}
.hl-grid{display:grid;gap:1rem;grid-template-columns:1fr}
.hl{border:1px solid var(--line);border-top:4px solid var(--desk,#b55000);padding:.9rem;background:var(--sc-surface);display:grid;gap:.5rem;align-content:start}
.hl.paid{background:#fff8e1;border-color:var(--yellow)}.hl-flag{margin:0;font:700 .72rem/1.2 var(--sc-font-text);letter-spacing:.05em;text-transform:uppercase}
.hl-top{margin:0;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.hl-n{font:600 1.25rem/1.15 var(--sc-font-display);text-decoration:none}
.hl-news{margin:0;font-size:.95rem}.hl-go{font-weight:700;font-size:.9rem}
.alldesks{margin:1.25rem 0 0;font-size:.9rem;line-height:1.9}.alldesks a{margin-right:.7rem;white-space:nowrap}
.sec-grid{display:grid;gap:var(--gap);grid-template-columns:1fr}
.seccol h3{font:700 1rem var(--sc-font-text);margin:0 0 .5rem;border-bottom:2px solid var(--sc-ink);padding-bottom:.3rem}.seccol h3 a{text-decoration:none}
.seccol ul{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.seccol li{font-family:var(--sc-font-display);font-size:1.05rem;line-height:1.25}
.seccol li a{text-decoration:none}.seccol .meta{display:block;font:.75rem var(--sc-font-text);color:var(--sc-ink-soft)}
@media (min-width:700px){.mn-grid{grid-template-columns:1fr 1fr}.hl-grid{grid-template-columns:1fr 1fr}.sec-grid{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){.mn-grid{grid-template-columns:repeat(3,1fr)}.hl-grid{grid-template-columns:repeat(4,1fr)}.sec-grid{grid-template-columns:repeat(4,1fr)}}
@media (min-width:1100px){.v-side{grid-template-columns:1fr 1fr;gap:1.5rem}}
.rb-cols{grid-template-columns:1fr;gap:1rem}.rb-cols>div{min-width:0}.rb-cols a{min-width:0}.rb-cols .rb-n{min-width:0;overflow-wrap:anywhere}
.rankboard{overflow:hidden}

.pagemgmt{border-top:2px solid var(--sc-ink);background:var(--sc-surface);padding:1rem 0;margin-top:2rem}
.pagemgmt p{margin:0;font-size:.9rem;max-width:70ch}.pm-k{display:block;font:700 .72rem/1.2 var(--sc-font-text);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.3rem}

/* share movers roller (green up, red down) */
.winlose{border:2px solid var(--sc-ink);background:#fff;padding:1rem;margin:0 0 var(--gap)}
.winlose h2{margin:0}.wl-sub{margin:.25rem 0 .8rem;font-size:.85rem;color:var(--sc-ink-soft)}
.wl-cols{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.wl-col{min-width:0}
.wl-col h3{margin:0;padding:.45rem .55rem;color:#fff;font:700 .95rem/1.1 var(--sc-font-text);letter-spacing:.02em}
.wl-col h3 span{display:block;font-weight:400;font-size:.68rem;line-height:1.25;margin-top:.15rem;opacity:.95}
.wl-col.w h3{background:#1f6b3f}.wl-col.l h3{background:#a72a1f}
.wl-view{height:25rem;overflow:hidden;position:relative;border:1px solid var(--line);border-top:0;outline-offset:2px}
.wl-col.w .wl-view{background:#eef6ef}.wl-col.l .wl-view{background:#fbefed}
.wl-view::after{content:"";position:absolute;inset:auto 0 0 0;height:2.2rem;background:linear-gradient(transparent,rgba(255,255,255,.85));pointer-events:none}
.wl-roll{list-style:none;margin:0;padding:0;animation:wlroll 48s linear infinite}
.wl-view:hover .wl-roll,.wl-view:focus-within .wl-roll,.wl-view:focus .wl-roll{animation-play-state:paused}
@keyframes wlroll{to{transform:translateY(-50%)}}
.wl-i a{display:block;text-decoration:none;padding:.6rem .55rem;border-bottom:1px solid rgba(0,0,0,.12);color:var(--sc-ink)}
.wl-big{display:block;font:600 1.7rem/1 var(--sc-font-display);font-variant-numeric:tabular-nums}
.wl-col.w .wl-big{color:#14653f}.wl-col.l .wl-big{color:#a72a1f}
.wl-b b{display:block;font-size:.88rem;margin-top:.2rem}.wl-b span{display:block;font-size:.8rem;line-height:1.3;margin-top:.1rem}
.wl-b em{display:block;font-style:normal;font-size:.68rem;color:var(--sc-ink-soft);margin-top:.2rem}
.wl-disc{font-size:.72rem;margin:.6rem 0 0;color:var(--sc-ink-soft)}
@media (prefers-reduced-motion:reduce){.wl-roll{animation:none}.wl-view{overflow-y:auto}.wl-view::after{display:none}}
@media (max-width:420px){.wl-cols{grid-template-columns:1fr}}
/* red list flows down, green list flows up */
@keyframes wlfall{from{transform:translateY(-50%)}to{transform:translateY(0)}}
.wl-col.l .wl-roll{animation-name:wlfall}
@media (prefers-reduced-motion:reduce){.wl-col.l .wl-roll{animation:none}}

/* sideways news strip in the fixed header: stays when the bar shrinks */
.nstrip{display:flex;align-items:stretch;height:calc(34px * (1 - var(--s)) + 28px * var(--s));border-top:1px solid var(--line);background:var(--sc-surface);overflow:hidden}
.ns-k{flex:none;display:flex;align-items:center;padding:0 .9rem;background:var(--sc-accent);color:#fff;font:700 .72rem/1 var(--sc-font-text);letter-spacing:.08em;text-transform:uppercase}
.ns-view{flex:1;min-width:0;display:flex;overflow:hidden;white-space:nowrap;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 2rem,#000 calc(100% - 2rem),transparent);mask-image:linear-gradient(90deg,transparent,#000 2rem,#000 calc(100% - 2rem),transparent)}
.ns-roll{display:flex;flex:none;align-items:center;list-style:none;margin:0;padding:0;animation:nsroll 240s linear infinite}
.ns-view:hover .ns-roll,.ns-view:focus-within .ns-roll{animation-play-state:paused}
@keyframes nsroll{to{transform:translateX(-100%)}}
.ns-roll li{flex:none;padding:0 1.6rem 0 0}
.ns-roll a{color:var(--sc-ink);text-decoration:none;font-size:.85rem}
.ns-roll a:hover{text-decoration:underline}
.ns-roll b{color:var(--sc-accent);font:700 .68rem var(--sc-font-text);letter-spacing:.05em;text-transform:uppercase;margin-right:.35rem}
@media (prefers-reduced-motion:reduce){.ns-roll{animation:none}.ns-view{overflow-x:auto}.ns-roll[aria-hidden]{display:none}}

/* ===== 2026-10 homepage board: lead story with the green and red share lanes, one dark band ===== */
:root{--board:#0f1c2e;--board-2:#16263b;--board-rule:#2a3b52;--board-ink:#f3f6fa;--board-soft:#a9b7c8;--gain:#3ccf8e;--loss:#ff7a6b}
.board{background:var(--board);color:var(--board-ink);padding:clamp(1.25rem,2.5vw,2.25rem) 0}
.board-grid{display:grid;gap:1.25rem;grid-template-columns:1fr 1fr;grid-template-areas:"lead lead" "up down" "disc disc"}
.b-lead{grid-area:lead;display:grid;gap:1rem;min-width:0}
.b-pic img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.b-sec{margin:0 0 .4rem;color:var(--gain);font:600 .85rem/1.2 var(--sc-font-text)}
.b-lead h2{margin:0;font:500 clamp(1.9rem,1.2rem + 2.6vw,3.4rem)/1.04 var(--sc-font-display);letter-spacing:-.012em}
.b-lead h2 a{color:var(--board-ink);text-decoration:none}
.b-lead h2 a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.12em}
.b-lead h2 a::after{content:"";position:absolute;inset:0}
.b-lead{position:relative}
@media (min-width:760px) and (max-width:1099px){.b-lead{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;align-content:start;column-gap:1rem}.b-lead h2{font-size:clamp(1.5rem,.9rem + 1.6vw,2rem)}}
.b-dek{margin:.8rem 0 0;font:400 1.15rem/1.45 var(--sc-font-display);color:var(--board-soft);max-width:52ch}
.b-credit{margin:.8rem 0 0;font-size:.72rem;color:#7f8fa3}
.lane{min-width:0;display:flex;flex-direction:column;border-top:3px solid currentColor}
.lane.up{color:var(--gain)}.lane.down{color:var(--loss)}
.lane h2{margin:0;padding:.55rem 0 .45rem;font:700 1.05rem/1 var(--sc-font-text);color:inherit;display:flex;align-items:center;gap:.45rem}
.lane.up h2::before{content:"";width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:9px solid currentColor}
.lane.down h2::before{content:"";width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:9px solid currentColor}
.board .wl-view{height:24rem;overflow:hidden;position:relative;background:var(--board-2);border:0;outline-offset:3px;
  -webkit-mask-image:linear-gradient(transparent,#000 2.5rem,#000 calc(100% - 2.5rem),transparent);mask-image:linear-gradient(transparent,#000 2.5rem,#000 calc(100% - 2.5rem),transparent)}
.board .wl-view::after{display:none}
.board .wl-roll{animation:wlroll 54s linear infinite}
.board .lane.down .wl-roll{animation-name:wlfall}
.board .wl-view:hover .wl-roll,.board .wl-view:focus-within .wl-roll{animation-play-state:paused}
.board .wl-i a{display:block;padding:.85rem .9rem;border-bottom:1px solid var(--board-rule);color:var(--board-ink);text-decoration:none}
.board .wl-i a:hover .wl-b b{text-decoration:underline}
.board .wl-big{font:600 2rem/1 var(--sc-font-display);font-variant-numeric:tabular-nums lining-nums}
.board .up .wl-big{color:var(--gain)}.board .down .wl-big{color:var(--loss)}
.board .wl-b b{display:block;margin-top:.3rem;font:700 .95rem/1.25 var(--sc-font-text);color:var(--board-ink)}
.board .wl-b span{display:block;margin-top:.2rem;font-size:.84rem;line-height:1.4;color:var(--board-soft)}
.board .wl-b em{display:block;margin-top:.3rem;font-style:normal;font-size:.7rem;color:#7f8fa3}
.b-disc{grid-area:disc;margin:0;font-size:.72rem;color:#7f8fa3}
/* tablets (760 to 1099px) stack the lead like phones: a narrow side column left a gap under the photo */
@media (min-width:1100px){
  .board-grid{grid-template-columns:minmax(0,2.15fr) minmax(0,1fr) minmax(0,1fr);grid-template-areas:"lead up down" "disc disc disc";column-gap:1.5rem;align-items:stretch}
  .b-lead{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;align-content:start;column-gap:1.25rem;padding-right:.5rem}   /* owner request 2026-10-29: photo on the left of the headline and dek */
  .b-lead h2{font-size:clamp(1.7rem,1rem + 1.55vw,2.7rem);line-height:1.06}
  .board .wl-view{height:auto;flex:1;min-height:30rem}
}
@media (prefers-reduced-motion:reduce){.board .wl-roll{animation:none}.board .wl-view{overflow-y:auto}.board .wl-roll+.wl-roll{display:none}}
/* the front block under the board: latest, two stories, rank board */
.front .lead .seconds{margin-top:0}
/* cooler, more modern base: paper white and navy ink instead of cream and brown-black */
:root{--sc-canvas:#fbfcfd;--sc-surface:#eef2f6;--sc-ink:#0f1c2e;--sc-ink-soft:#4a5870;--line:#dbe2ea}
.util{background:var(--board)}
/* Lead story (owner rule 2026-10-28, layout fixed 2026-10-29): from tablet width up the photo sits beside the headline,
   top-aligned, at its own 16:9 shape, so it is never cropped to sky and never floats halfway down the headline. */
@media (min-width:1100px){.board .wl-view{flex:none;height:clamp(32rem,46vw,42rem);min-height:0}.board-grid{align-items:start}}
.lane h2{padding:.5rem 0 .4rem}
.lane.up h2::before,.lane.down h2::before{border-left-width:8px;border-right-width:8px}
.lane.up h2::before{border-bottom-width:12px}.lane.down h2::before{border-top-width:12px}

/* ---- white edition: plain white canvas, light board, no dark blue bands ---- */
:root{--sc-canvas:#fff;--sc-surface:#f4f6f8;--sc-ink:#111827;--sc-ink-soft:#4b5563;--line:#e3e7ec;
--board:#fff;--board-2:#fff;--board-rule:#e3e7ec;--board-ink:#111827;--board-soft:#4b5563;--gain:#0a8f55;--loss:#d1352b}
.util{background:#fff;color:var(--sc-ink);border-bottom:1px solid var(--line)}
.util a{color:var(--sc-ink)}
.board{background:#fff;border-bottom:1px solid var(--line)}
.board .wl-view{background:#fff;border:1px solid var(--line);border-top:0}
.board .wl-b em{color:#6b7280}
.board .wl-i a:hover{background:var(--sc-surface)}
.b-sec{color:var(--gain)}
.verdict{background:var(--sc-surface);color:var(--sc-ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.verdict *{color:inherit}

/* movers roller: big ticker, one short line */
.board .wl-big,.wl-i .wl-big{font:700 2.1rem/1 var(--sc-font-text);letter-spacing:.01em}
.wl-i .wl-t,.board .wl-b .wl-t{display:block;margin-top:.35rem;font:500 1rem/1.3 var(--sc-font-text);color:var(--sc-ink)}
.board .wl-b .wl-t{color:var(--board-ink)}

/* roller: ticker, company, reason. No rotation on phones (tablet and up only). */
.wl-i .wl-n{display:block;margin-top:.3rem;font:700 .95rem/1.25 var(--sc-font-text);color:var(--sc-ink)}
.wl-i .wl-t{margin-top:.15rem;font-weight:400;color:var(--sc-ink-soft)}
.b-disc{display:none}
@media (max-width:759px){
  .board .wl-roll,.board .lane.down .wl-roll{animation:none}
  .board .wl-view{height:auto;max-height:26rem;overflow-y:auto;-webkit-mask-image:none;mask-image:none}
  .board .wl-roll+.wl-roll{display:none}
}

/* desktop: the banner shrinks to a thin strip on scroll (scroll-craft drives --s from 0 to 1) */
@media (min-width:900px){
  .site-head{--mast-c:2.35rem;--wm-k:.62}
  .site-head .find{min-height:calc(44px - var(--s) * 14px);padding:0 calc(1rem - var(--s) * .3rem);font-size:calc(1rem - var(--s) * .14rem)}
  .site-head .menu-open{width:calc(48px - var(--s) * 16px);height:calc(48px - var(--s) * 16px)}
  .site-head .menu-open svg{transform:scale(calc(1 - var(--s) * .2))}
  .site-head .nstrip{height:calc(34px * (1 - var(--s)) + 22px * var(--s))}
  .site-head .ns-k{padding:0 calc(.9rem - var(--s) * .3rem);font-size:calc(.72rem - var(--s) * .06rem)}
  .site-head .ns-roll a{font-size:calc(.85rem - var(--s) * .08rem)}
  .site-head{transition:box-shadow var(--dur-fast,150ms) ease-out}
}
@media (min-width:900px) and (prefers-reduced-motion:reduce){.site-head .find,.site-head .menu-open{transition:none}}

/* company top story */
.topstory{margin:1.5rem 0 .5rem;padding:1.1rem 0 1.1rem 1.1rem;border-left:5px solid var(--desk,var(--sc-accent));max-width:62rem}
.topstory .ts-k{margin:0 0 .4rem;font:600 .85rem/1.2 var(--sc-font-text);color:var(--sc-ink-soft)}
.topstory h2{margin:0;font:500 clamp(1.5rem,1.1rem + 1.6vw,2.4rem)/1.12 var(--sc-font-display);letter-spacing:-.01em}
.topstory h2 a{color:var(--sc-ink);text-decoration:none}
.topstory h2 a:hover{text-decoration:underline;text-underline-offset:.12em}
.topstory .ts-d{margin:.6rem 0 0;max-width:62ch;color:var(--sc-ink-soft);font-size:1.05rem;line-height:1.5}
.topstory .ts-s{margin:.6rem 0 0;font-size:.85rem;color:var(--sc-ink-soft)}

/* no repeated rows where the roller is not moving (phones, reduced motion) */
@media (max-width:759px){.wl-i.dup{display:none}}
@media (prefers-reduced-motion:reduce){.wl-i.dup{display:none}}

/* ===== roller, compact edition (2026-10-25): one tight row per company ===== */
.board .wl-view{height:19rem;border:0;background:transparent;
  -webkit-mask-image:linear-gradient(transparent,#000 1.25rem,#000 calc(100% - 1.25rem),transparent);mask-image:linear-gradient(transparent,#000 1.25rem,#000 calc(100% - 1.25rem),transparent)}
.board .lane{border-top-width:2px}
.board .lane h2{padding:.35rem 0 .2rem}
.board .lane.up h2::before,.board .lane.down h2::before{border-left-width:5px;border-right-width:5px}
.board .lane.up h2::before{border-bottom-width:7px}.board .lane.down h2::before{border-top-width:7px}
.board .wl-i a{display:grid;grid-template-columns:auto 1fr;column-gap:.5rem;align-items:baseline;padding:.5rem .15rem;border-bottom:1px solid var(--line)}
.board .wl-big,.wl-i .wl-big{font:700 .95rem/1.2 var(--sc-font-text);letter-spacing:.02em}
.board .wl-b{display:contents}
.wl-i .wl-n,.board .wl-i .wl-n{display:block;margin:0;font:500 .8rem/1.2 var(--sc-font-text);color:var(--sc-ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wl-i .wl-t,.board .wl-b .wl-t{grid-column:1 / -1;display:block;margin-top:.15rem;font:400 .86rem/1.35 var(--sc-font-text);color:var(--sc-ink)}
.board .wl-i a:hover .wl-t{text-decoration:underline}
@media (min-width:1100px){.board .wl-view{height:24rem}.board-grid{align-items:start}}
@media (max-width:759px){.board .wl-view{height:auto;max-height:none}.board .lane{min-width:0}.board .wl-i a{padding:.45rem 0}}
/* roller: smaller type than article text */
.board .wl-big,.wl-i .wl-big{font:700 .8rem/1.2 var(--sc-font-text)}
.wl-i .wl-n,.board .wl-i .wl-n{font:500 .7rem/1.2 var(--sc-font-text)}
.wl-i .wl-t,.board .wl-b .wl-t{margin-top:.1rem;font:400 .75rem/1.3 var(--sc-font-text)}
.board .wl-i a{padding:.35rem .1rem;column-gap:.4rem}
.board .wl-view{height:15rem}
@media (min-width:1100px){.board .wl-view{height:19rem}}
@media (max-width:759px){.board .wl-view{height:auto}}

/* top story inside the company masthead: the story leads, the name sits above it */
.deskmast h1.h1-sm{font-size:clamp(1.3rem,1rem + 1vw,1.9rem);line-height:1.1;margin:.2rem 0 0}
/* search-topic line under the company name ("SGMOQ bankruptcy and delisting news"); inherits the masthead colour */
.deskmast h1 .h1-k{display:block;font-size:max(.95rem,.5em);font-weight:500;line-height:1.3;margin-top:.3rem;opacity:.92;letter-spacing:0}
/* data trackers */
.trk-sum{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin:1rem 0 1.5rem;padding:0;list-style:none}
.trk-sum li{font-size:.95rem}
.trk-sum b{font-size:1.4rem;margin-right:.3rem}
.pipe td .tchips{display:inline-flex;margin:0}
.trk-up{color:var(--gain,#14653f);font-weight:700}
.trk-down{color:var(--loss,#a72a1f);font-weight:700}
.topstory.mast-ts{margin:.9rem 0 0;padding:0 0 0 .9rem;border-left:4px solid rgba(255,255,255,.75);max-width:44rem}
.topstory.mast-ts .ts-k,.topstory.mast-ts .ts-s,.topstory.mast-ts .ts-d{color:rgba(255,255,255,.88)}
.topstory.mast-ts h2{font-size:clamp(1.5rem,1.05rem + 1.9vw,2.6rem)}
.topstory.mast-ts h2 a,.topstory.mast-ts .ts-s a{color:#fff}
.topstory.mast-ts .ts-d{font-size:1rem}

/* ===== 2026-10-25 pass 3: tighter header, small roller rail, no strip label ===== */
.ns-k{display:none}
/* header: smaller when open, thin strip when scrolled */
.site-head{--mast-h:clamp(3.4rem,2.6rem + 2vw,4.6rem)}
.site-head .util .wrap{height:calc(28px * (1 - var(--s)))}
.site-head .wordmark{font-size:clamp(1.9rem,1.4rem + 1.6vw,2.9rem)}
.secnav .wrap,.secnav a{min-height:38px}
.board{padding:.9rem 0 1.25rem}
/* roller: a narrow rail beside the lead story */
.board .wl-view{height:10.5rem}
.board .wl-i a{padding:.28rem .1rem}
.board .wl-big,.wl-i .wl-big{font-size:.74rem}
.wl-i .wl-n,.board .wl-i .wl-n{font-size:.66rem}
.wl-i .wl-t,.board .wl-b .wl-t{font-size:.7rem;line-height:1.28}
.board .lane h2{padding:.25rem 0 .1rem}
@media (min-width:1100px){
  .board-grid{grid-template-columns:minmax(0,1fr) 17.5rem;grid-template-areas:"lead up" "lead down";column-gap:2rem;row-gap:.9rem;align-items:start}
  .board .wl-view{height:12.5rem}
}
/* phones, portrait or landscape: the roller never moves, no repeated rows */
@media (max-width:759px),(pointer:coarse) and (max-height:520px){
  .board .wl-roll,.board .lane.down .wl-roll{animation:none!important}
  .wl-i.dup{display:none}
  .board .wl-view{height:auto;max-height:11rem;overflow-y:auto;-webkit-mask-image:none;mask-image:none}
}
@media (min-width:1100px){.board-grid{grid-template-rows:min-content 1fr}.board .lane.down{align-self:start}}
@media (max-width:899px){
  .site-head .find{min-height:calc(40px - var(--s) * 10px);padding:0 calc(.8rem - var(--s) * .2rem);font-size:calc(.95rem - var(--s) * .12rem)}
  .site-head .menu-open{width:calc(44px - var(--s) * 12px);height:calc(44px - var(--s) * 12px)}
  .site-head .nstrip{height:calc(32px * (1 - var(--s)) + 22px * var(--s))}
  .site-head .ns-roll a{font-size:calc(.85rem - var(--s) * .1rem)}
}
@media (max-width:759px),(pointer:coarse) and (max-height:520px){.board .wl-view{max-height:none;overflow:visible}}
/* rollers side by side beside the lead story */
@media (min-width:1100px){
  .board-grid{grid-template-columns:minmax(0,1fr) 15rem 15rem;grid-template-rows:auto;grid-template-areas:"lead up down";column-gap:1.25rem;align-items:start}
  .board .lane.down{align-self:start}
  .board .wl-view{height:22rem}
}
@media (min-width:1100px){.board .wl-view{height:13.5rem}}
/* rollers stretch down to the bottom of the lead story */
@media (min-width:1100px){
  .board-grid{align-items:stretch}
  .board .lane,.board .lane.down{align-self:stretch;display:flex;flex-direction:column}
  .board .wl-view{flex:1 1 auto;height:auto;min-height:24rem}
}
@media (min-width:1100px){
  .board .wl-view{flex:1 1 0;height:0;min-height:0}
  .board .wl-i a{padding:.6rem .1rem}
}
@media (min-width:1100px){.board .wl-i a{padding:.82rem .1rem}}
@media (min-width:1100px){.board-grid{grid-template-columns:minmax(0,1fr) 9rem 9rem;column-gap:1rem}.board .wl-i a{padding:.6rem .05rem}.wl-i .wl-n,.board .wl-i .wl-n{white-space:normal}}
/* phones: the rollers move too (user request 2026-10-25) */
@media (max-width:759px),(pointer:coarse) and (max-height:520px){
  .board .wl-roll{animation:wlroll 60s linear infinite!important}
  .board .lane.down .wl-roll{animation-name:wlfall!important}
  .wl-i.dup{display:list-item}
  .board .wl-view{height:16rem;max-height:none;overflow:hidden;
    -webkit-mask-image:linear-gradient(transparent,#000 1rem,#000 calc(100% - 1rem),transparent);mask-image:linear-gradient(transparent,#000 1rem,#000 calc(100% - 1rem),transparent)}
}
@media (prefers-reduced-motion:reduce){.board .wl-roll{animation:none!important}.wl-i.dup{display:none}.board .wl-view{height:auto;overflow:visible}}
/* phones: a compact rolling strip, about three rows tall */
@media (max-width:759px),(pointer:coarse) and (max-height:520px){
  .board .wl-view{height:8.5rem}
  .board .wl-i a{padding:.3rem 0}
  .board .wl-big,.wl-i .wl-big{font-size:.72rem}
  .wl-i .wl-n,.board .wl-i .wl-n{font-size:.62rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .wl-i .wl-t,.board .wl-b .wl-t{font-size:.68rem;line-height:1.25}
  .board .wl-roll{animation-duration:45s!important}
  .board-grid{row-gap:.6rem;column-gap:.75rem}
}
.site-head .util{display:none!important}
@media (max-width:759px),(pointer:coarse) and (max-height:520px){
  .board .lane.up .wl-roll{animation:wlroll 45s linear infinite!important}
  .board .lane.down .wl-roll{animation:wlfall 45s linear infinite!important}
}
/* phone and tablet: the roller is a real scrolling list (driven by ROLLER_JS); no CSS animation */
.board.js-roll .wl-roll,.board.js-roll .lane.up .wl-roll,.board.js-roll .lane.down .wl-roll{animation:none!important;transform:none!important}
.board.js-roll .wl-view{overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-width:none;touch-action:pan-y}
.board.js-roll .wl-view::-webkit-scrollbar{display:none}
.board.js-roll .wl-i.dup{display:list-item!important}
@media (min-width:760px) and (max-width:1099px){.board.js-roll .wl-view{height:12rem}}
/* ticker chips on every story: each links to the company page */
.tchips{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.35rem}
.tchips .tick{font:700 .68rem/1.4 var(--sc-font-text);letter-spacing:.04em;padding:.05rem .35rem;background:var(--sc-surface);color:var(--sc-ink);border:1px solid var(--line);text-decoration:none}
.tchips .tick:hover,.tchips .tick:focus-visible{background:var(--sc-ink);color:var(--sc-canvas)}
.story-ticks{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin:.6rem 0 0}
.story-ticks>span:first-child{font:600 .8rem/1 var(--sc-font-text);color:var(--sc-ink-soft)}
.story-ticks .tchips{margin:0}
.keyfacts{margin:1rem 0;padding:.8rem 1rem;border:1px solid var(--sc-hairline,#d8dde3);border-left:4px solid var(--sc-accent);background:var(--sc-surface);border-radius:6px;max-width:62ch}
.keyfacts h2{font:700 .8rem/1.2 var(--sc-font-text);letter-spacing:.06em;text-transform:uppercase;margin:0 0 .5rem;color:var(--sc-ink-soft)}
.keyfacts dl{display:grid;grid-template-columns:max-content 1fr;gap:.3rem 1rem;margin:0;font-size:.95rem}
.keyfacts dt{font-weight:600}
.keyfacts dd{margin:0;overflow-wrap:anywhere}
.story-ticks .tchips .tick{font-size:.8rem;padding:.15rem .5rem}
a.tick-in{font-weight:700;text-decoration:underline;text-underline-offset:.15em}

/* ===================================================================================================
   2026-10-25 accessibility pass (WCAG 2.2 AA). Appended on purpose: the rules above are left as they were.
   Each rule names the success criterion it serves. Pause buttons are driven by motion.js.
   =================================================================================================== */

/* 1.4.3 contrast. Rising-roller green and the lead-story section label: #0a8f55 was 4.1:1 on white, #0a7d4a is 5.2:1
   (4.8:1 on the hover grey). The red stays (#d1352b, 4.9:1). Lead picture credit: #7f8fa3 was 3.3:1, #5f6b7a is 5.4:1. */
:root{--gain:#0a7d4a}
.b-credit{color:#5f6b7a}
/* 1.4.3 desk verdict band: it turned light in the white edition but kept a white heading, yellow label and link,
   and dark score boxes whose text had become dark too. Heading, label and link now read on the light band;
   the score boxes keep their dark look with light text. */
.verdict h2{color:var(--sc-ink)}
.verdict .label{color:var(--sc-accent)}
.verdict a.more{color:var(--blue)}
.verdict .disc{color:var(--sc-ink-soft)}
.verdict .score dt{color:#cfc6b4}
.verdict .score dd{color:#f3f0e8}
.verdict .score dd b{color:#fff}
/* 1.4.3 white text on the desk colours must stay full strength: 85-90% white fell to about 4.2:1 on the orange desk colour
   (masthead labels, the top story kicker and source line, the desk plates under stories) */
.plate dt{opacity:1}
.topstory.mast-ts .ts-k,.topstory.mast-ts .ts-s,.topstory.mast-ts .ts-d{color:#fff}
.dplate .dp-x,.dplate .dp-u{opacity:1}
/* 1.4.3 Investor Rank scale: the numbers sat on cells at 35% opacity (2.5:1). Pale cells, full-strength numbers. */
.ir-c{opacity:1;background:color-mix(in srgb,var(--rk) 24%,transparent);color:inherit}
.ir-c.on{background:var(--rk);color:#fff}

/* 1.4.10 / 1.4.12 no loss of content: roller company names wrap instead of being cut off with an ellipsis.
   Where a name fits (every name at 390 px and up) nothing changes; at 320 px or with wider text spacing it wraps. */
.board .wl-i .wl-n{white-space:normal;overflow:visible;text-overflow:clip}

/* 2.4.7 / 1.4.11 focus ring: the blue ring disappears on blue, orange and black blocks; use white there */
.foot :focus-visible,.botbar :focus-visible,.deskmast :focus-visible,.irank.dark :focus-visible,.field :focus-visible,.data :focus-visible{outline-color:#fff}
/* 2.4.11 focus not obscured: on desk pages the sticky desk menu sits under the fixed header, so keep focused
   elements clear of both when the browser scrolls them into view */
html:has(.desknav){scroll-padding-top:calc(var(--head-c,110px) + 68px)}
/* 2.4.7 while the header is half shrunk, the section links are faded and cut short but can still take focus:
   a focused section link shows the row in full */
.site-head .secnav:focus-within{opacity:1!important;max-height:none!important}
/* 2.4.7 inside clipped lists (strip, rollers, combobox results) the ring is drawn inside the link */
.board .wl-i a:focus-visible{outline-offset:-3px}
.ns-roll a{display:inline-block;padding:1px 4px;margin:0 -4px}
.ns-roll a:focus-visible{outline-width:2px;outline-offset:-2px}
.results a[aria-selected=true]{background:#fff;outline:2px solid var(--blue);outline-offset:-2px}

/* Top news rail: the ticker chips' stretched ::after covered the whole row, so a click on the headline opened the
   company page instead of the story. Chips now sit above the row link and their ::after covers only the chip. */
.rail.latest li .tick{position:relative;z-index:2}
/* 2.5.8 target size: ticker chips keep their look but get a 24 px tall hit area; rows of chips get room for it */
.tchips{row-gap:.4rem}
.tchips .tick{position:relative;min-width:24px;text-align:center}
.tchips .tick::before{content:"";position:absolute;left:0;right:0;top:50%;height:24px;transform:translateY(-50%)}

/* 2.4.7 membership teaser (visitors): a link that takes keyboard focus inside the faded, clipped last block is shown in full */
html.js:not(.member) .gate-last:focus-within{max-height:none;-webkit-mask-image:none;mask-image:none}

/* 2.2.2 pause buttons: icon only, no words on the strip or the rollers. Pause glyph while moving, play glyph when paused. */
.mo-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:0;border-radius:2px;
  background:transparent;color:var(--sc-ink-soft);cursor:pointer;flex:none}
.mo-btn:hover{color:var(--sc-ink);background:rgba(17,24,39,.07)}
.mo-btn svg{display:block;width:12px;height:12px;fill:currentColor}
.mo-btn .mo-play,.mo-btn[aria-pressed=true] .mo-pause{display:none}
.mo-btn[aria-pressed=true] .mo-play{display:block}
/* news strip: the button sits at the left end; the compact strip keeps 24 px of height for it */
.ns-toggle{align-self:center;margin:0 .1rem 0 .45rem}
.site-head .nstrip{min-height:24px}
html.pause-strip .ns-roll{animation-play-state:paused}
html.pause-strip .ns-view,.nstrip.ns-focus .ns-view{overflow-x:auto;scrollbar-width:none}
html.pause-strip .ns-view::-webkit-scrollbar,.nstrip.ns-focus .ns-view::-webkit-scrollbar{display:none}
.nstrip.ns-focus .ns-roll{animation:none}
/* rollers: one button pauses both; it sits in the top right corner of the board, on the red lane's marker row.
   Lanes are placed by name so the button can share the corner cell without moving them. */
.board .lane.up{grid-area:up}
.board .lane.down{grid-area:down}
.wl-toggle{grid-area:down;justify-self:end;align-self:start;position:relative;z-index:3;margin-top:2px;background:#fff}
.wl-toggle:hover{background:var(--sc-surface)}
html.pause-rollers .board .lane .wl-roll{animation-play-state:paused!important}
.board.wl-focus .lane .wl-roll{animation:none!important;transform:none!important}
.board.wl-focus .wl-view{overflow-y:auto!important;scrollbar-width:none}
.board.wl-focus .wl-view::-webkit-scrollbar{display:none}
@media (prefers-reduced-motion:reduce){
  .mo-btn{display:none!important}
  .board.js-roll .wl-i.dup{display:none!important}
}
/* 1.4.10 / 1.4.12 the header row keeps the Subscribe and menu buttons on screen at 320 px and with wider text spacing:
   a little less gap below 400 px and a smaller wordmark below 340 px; if space still runs out (wider text spacing on
   a narrow phone), the wordmark is cut at its right edge instead of pushing the buttons off screen. */
@media (max-width:399px){.site-head .mast .wrap{gap:.6rem}}
@media (max-width:339px){.site-head .wordmark{font-size:1.6rem}}
.site-head .wordmark{flex:0 1 auto;min-width:0;overflow-x:clip}

/* ===== Brand alignment with the aibio.space logo (navy + orange), 2026-10-25 ===== */
:root{
  --brand-navy:#0e1e30; --brand-navy-2:#16283e; --brand-orange:#f28c28;
  --sc-ink:#0e1e30; --sc-ink-soft:#4a5566;
  --blue:#1f5a8a;
  --yellow:#f28c28; --yellow-ink:#0e1e30;
  --board:#0e1e30; --board-2:#16283e;
}
.wordmark .logo-mark{width:.8em;height:.8em;border-radius:.16em;display:inline-block;vertical-align:-.1em;margin-right:.2em}
.site-head .wordmark .logo-mark{width:.78em;height:.78em}
.botbar{background:var(--brand-navy);color:#e8edf3;border-bottom:1px solid #2a3d55}
.botbar a{color:#e8edf3}
.site-head .find,.nav .find{background:var(--sc-accent);color:#fff}
.site-head .find:hover,.nav .find:hover{color:#fff;background:#9a4400}
@media (forced-colors:active){.wordmark .logo-mark{forced-color-adjust:none}}
.site-head .sub-open[data-member]{opacity:1}
a.wordmark,a.wordmark:hover,a.wordmark:active,a.wordmark:focus,a.wordmark:visited{color:inherit;text-decoration:none}

/* ===== 2026-10-25 reader settings, feeds and phone layout ===== */
/* desktop and tablet: a Settings button between Subscribe and the menu */
.hd-set{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border:2px solid var(--sc-ink);background:var(--sc-canvas);color:var(--sc-ink);cursor:pointer;transition:background var(--dur-fast),color var(--dur-fast)}
.hd-set:hover,.hd-set[aria-expanded=true]{background:var(--sc-ink);color:var(--sc-canvas)}
@media (min-width:900px){.site-head .hd-set{width:calc(48px - var(--s) * 16px);height:calc(48px - var(--s) * 16px)}}
.ptabs,.pbar{display:none}

/* phones: a thin upper bar (logo, motto, feed tabs); menu, settings and Subscribe move to a bar at the bottom */
@media (max-width:759px){
  .site-head{--mast-h:3.25rem;--wm-k:.18}
  .site-head .actions,.site-head .secnav{display:none}
  .site-head .mast .wrap{gap:.7rem}
  .site-head .wordmark{font-size:1.55rem}
  .site-head .tag{display:block;max-width:9.5em;font:italic 400 .8rem/1.15 var(--sc-font-display);color:var(--sc-ink-soft)}
  .ptabs{display:block;border-top:1px solid var(--line)}
  .ptabs ul{list-style:none;margin:0;padding:0 max(var(--margin),env(safe-area-inset-left));display:flex}
  .ptabs li{flex:1 1 0;min-width:0}
  .ptabs a{display:flex;align-items:center;justify-content:center;min-height:40px;padding:0 .25rem;font:600 .92rem/1.1 var(--sc-font-text);color:var(--sc-ink-soft);text-decoration:none;border-bottom:3px solid transparent;white-space:nowrap}
  .ptabs a:hover{color:var(--sc-ink)}
  .ptabs a[aria-current=page]{color:var(--sc-ink);border-bottom-color:var(--sc-accent)}
  .pbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem;position:fixed;left:0;right:0;bottom:0;z-index:30;
    background:var(--sc-canvas);border-top:1px solid var(--line);box-shadow:0 -6px 18px rgba(14,30,48,.07);
    padding:.3rem max(.5rem,env(safe-area-inset-right)) calc(.3rem + env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left))}
  .pb-btn,.pbar .menu-open{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;width:auto;height:auto;min-height:52px;
    margin:0;padding:.3rem 0;border:0;border-radius:10px;background:transparent;color:var(--sc-ink);font:600 .78rem/1 var(--sc-font-text);cursor:pointer}
  .pb-btn svg{width:22px;height:22px;flex:none}
  .pbar .menu-open:hover,.pbar .set-open:hover,.pbar .menu-open[aria-expanded=true],.pbar .set-open[aria-expanded=true]{background:var(--sc-surface);color:var(--sc-ink)}
  .pbar .menu-open[aria-expanded=true] svg rect{transform:none;opacity:1}
  .pbar .pb-sub{background:var(--sc-accent);color:#fff}
  .pbar .pb-sub:hover{background:#9a4400;color:#fff}
  body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
  html{scroll-padding-bottom:calc(80px + env(safe-area-inset-bottom))}
}
@media (max-width:359px){.site-head .wordmark{font-size:1.3rem}.site-head .tag{font-size:.72rem}.ptabs a{font-size:.85rem}}

/* phone menu: a bottom sheet over the page (modal, Escape and Close shut it) */
.appmenu.am-sheet{inset:auto 0 0 0;width:100%;height:auto;max-height:calc(100dvh - 2.5rem);border-radius:16px 16px 0 0;transform:translateY(100%);transition:transform 320ms var(--ease-out)}
.appmenu.am-sheet.is-open{transform:none}
.appmenu.am-sheet .am-inner{padding-top:.75rem;gap:1.5rem}
.appmenu.am-sheet .am-big{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.25rem}
.appmenu.am-sheet .am-big a{font-size:1.25rem;min-height:48px}
@media (prefers-reduced-motion:reduce){.appmenu.am-sheet{transition:none}}

/* settings panel: side panel on wide screens, bottom sheet on phones */
.settings{position:fixed;inset:0 0 0 auto;margin:0;width:min(420px,100vw);height:100dvh;max-height:none;max-width:none;border:0;padding:0;
  background:var(--sc-canvas);color:var(--sc-ink);transform:translateX(100%);transition:transform 300ms var(--ease-out);overflow:auto;overscroll-behavior:contain}
.settings.is-open{transform:none}
.settings::backdrop{background:rgba(14,30,48,.5)}
@media (max-width:759px){.settings{inset:auto 0 0 0;width:100%;height:auto;max-height:calc(100dvh - 2.5rem);border-radius:16px 16px 0 0;transform:translateY(100%)}.settings.is-open{transform:none}}
@media (prefers-reduced-motion:reduce){.settings{transition:none}}
.set-inner{display:grid;gap:1.4rem;padding:max(1rem,env(safe-area-inset-top)) max(1.5rem,env(safe-area-inset-right)) calc(1.75rem + env(safe-area-inset-bottom)) 1.5rem}
.set-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3.25rem}
.set-top h2{margin:0;font:500 1.75rem/1.1 var(--sc-font-display)}
.set-close,.set-reset{min-height:44px;padding:0 1rem;border:2px solid var(--sc-ink);background:transparent;color:var(--sc-ink);font:inherit;font-weight:600;cursor:pointer}
.set-close:hover,.set-reset:hover{background:var(--sc-ink);color:var(--sc-canvas)}
.set-reset{justify-self:start;border-color:var(--line)}
.set-group{border:0;margin:0;padding:0;display:grid;gap:.55rem;min-width:0}
.set-group legend{padding:0;margin:0 0 .55rem;font-weight:700;font-size:1.05rem}
.set-group .meta{margin:0}
.set-seg{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);border:2px solid var(--sc-ink)}
.set-seg label{position:relative;display:flex;min-width:0}
.set-seg label+label{border-left:2px solid var(--sc-ink)}
.set-seg input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.set-seg span{flex:1;display:flex;align-items:center;justify-content:center;min-height:46px;padding:.25rem .35rem;text-align:center;font-weight:600;font-size:.9rem;line-height:1.15}
.set-seg input:checked+span{background:var(--sc-ink);color:var(--sc-canvas)}
.set-seg input:focus-visible+span{outline:3px solid var(--sc-accent);outline-offset:-6px}
.set-check{display:flex;align-items:center;gap:.7rem;min-height:44px;font-weight:600;cursor:pointer}
.set-check input{width:24px;height:24px;margin:0;accent-color:var(--sc-accent);flex:none}

/* Follow buttons on company pages and desks */
.mast-acts{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;justify-self:start}
.follow-co.is-on{background:#fff;color:#0e1e30}

/* Following page */
.fw-app{display:grid;gap:2.25rem;margin-top:1.75rem;max-width:62rem}
.fw-app h2{margin:0 0 .75rem;font:500 1.5rem/1.15 var(--sc-font-display)}
.fw-add label{display:block;margin-bottom:.4rem;font-weight:600}
.fw-add input{width:100%;max-width:34rem;min-height:48px;padding:0 1rem;border:2px solid var(--sc-ink);background:var(--sc-canvas);color:var(--sc-ink);font:inherit;font-size:1.0625rem}
.fw-results,.fw-sug-list,.fw-chips{list-style:none;margin:.75rem 0 0;padding:0}
.fw-results{display:grid;gap:.4rem;max-width:34rem}
.fw-sug-list{display:flex;flex-wrap:wrap;gap:.5rem}
.fw-sh{margin:1.25rem 0 0;font-weight:600}
.fw-pick{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:1rem;align-items:center;width:100%;min-height:48px;padding:.5rem .8rem;
  border:1px solid var(--line);background:var(--sc-surface);color:var(--sc-ink);font:inherit;text-align:left;cursor:pointer}
.fw-pn{grid-column:1;font-weight:600}
.fw-pt{grid-column:1;font-size:.85rem;color:var(--sc-ink-soft)}
.fw-pa{grid-column:2;grid-row:1 / span 2;font-weight:700;color:var(--sc-accent)}
.fw-pick:hover{border-color:var(--sc-ink)}
.fw-pick[disabled]{cursor:default}
.fw-pick[disabled] .fw-pa{color:var(--sc-ink-soft)}
.fw-sug-list .fw-pick{width:auto}
.fw-chips{display:flex;flex-wrap:wrap;gap:.5rem}
.fw-chips li{display:inline-flex;align-items:center;gap:.45rem;padding:.15rem .15rem .15rem .8rem;border:1px solid var(--line);background:var(--sc-surface)}
.fw-chips a{font-weight:600}
.fw-ct{font-size:.8rem;font-weight:700;color:var(--sc-ink-soft)}
.fw-x{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;background:transparent;color:var(--sc-ink);cursor:pointer}
.fw-x:hover{background:var(--sc-canvas)}
#fw-count,#fw-empty{margin:0 0 .5rem}

/* text size (Settings): everything set in rem follows */
html[data-text=s]{font-size:93.75%}
html[data-text=l]{font-size:112.5%}
html[data-text=xl]{font-size:125%}

/* ===== dark appearance (Settings: Dark, or Match device on a dark phone or computer) ===== */
:root[data-theme=dark]{color-scheme:dark;
  --sc-canvas:#0d1825;--sc-surface:#15253a;--sc-ink:#e8edf3;--sc-ink-soft:#aab6c5;--sc-hairline:#26384f;--line:#26384f;
  --sc-accent:#f28c28;--sc-accent-ink:#0d1825;--blue:#8cc2f0;--yellow:#f28c28;--yellow-ink:#0d1825;--brand-navy:#08111b;
  --board:#0d1825;--board-2:#0d1825;--board-rule:#26384f;--board-ink:#e8edf3;--board-soft:#aab6c5;--gain:#5fd39a;--loss:#ff8a7a}
[data-theme=dark] .site-head{box-shadow:0 1px 0 var(--line),0 calc(var(--s) * 6px) calc(var(--s) * 18px) rgba(0,0,0,calc(var(--s) * .35))}
[data-theme=dark] .site-head .find,[data-theme=dark] .nav .find{color:#0d1825}
[data-theme=dark] .site-head .find:hover,[data-theme=dark] .nav .find:hover{background:#ffa54f;color:#0d1825}
[data-theme=dark] .pbar .pb-sub,[data-theme=dark] .pbar .pb-sub:hover{color:#0d1825}
[data-theme=dark] .pbar .pb-sub:hover{background:#ffa54f}
[data-theme=dark] .follow:hover,[data-theme=dark] .follow-co.is-on{background:#fff;color:#0e1e30}
[data-theme=dark] .board,[data-theme=dark] .board .wl-view,[data-theme=dark] .winlose,[data-theme=dark] .util,[data-theme=dark] .wl-toggle{background:var(--sc-canvas)}
[data-theme=dark] .wl-col.w .wl-view{background:#0f2a20}[data-theme=dark] .wl-col.l .wl-view{background:#2a1513}
[data-theme=dark] .band:nth-child(even){background:#132235}
[data-theme=dark] .results li a:hover,[data-theme=dark] .results li[aria-selected=true] a,[data-theme=dark] .results a[aria-selected=true],[data-theme=dark] .sr-list .sr:hover{background:var(--sc-surface)}
[data-theme=dark] .sub-field input,[data-theme=dark] #sub-co,[data-theme=dark] .rep-f input,[data-theme=dark] .rep-f textarea,[data-theme=dark] .gate-in-row input,[data-theme=dark] .rb-find input,
[data-theme=dark] .am-search input,[data-theme=dark] .co-form input,[data-theme=dark] #mg-co{background:#0a131e;color:var(--sc-ink);border-color:#8597ab}
[data-theme=dark] .sub-err{background:#3a1d1a;color:#ffd2cc}
[data-theme=dark] .hl.paid{background:#2a2212}
[data-theme=dark] .appmenu::backdrop,[data-theme=dark] .settings::backdrop,[data-theme=dark] .subscribe::backdrop{background:rgba(0,0,0,.6)}
[data-theme=dark] .wordmark .logo-mark{box-shadow:0 0 0 1px #2c4260}
/* softer fill for the highlighted search fields (they were yellow before the orange brand) */
:root{--hl-soft:#fde6cf}
.am-search input,#sub-co,#mg-co{background:var(--hl-soft)}
.am-search input#am-s{background:var(--sc-canvas)}
[data-theme=dark] .am-search input,[data-theme=dark] #sub-co,[data-theme=dark] #mg-co{background:#0a131e}
/* Following: suggestions as small pills */
.fw-pill{display:inline-flex;align-items:center;gap:.45rem;min-height:40px;padding:0 .9rem;border:1px solid var(--sc-ink);border-radius:999px;background:transparent;color:var(--sc-ink);font:inherit;font-size:.92rem;font-weight:600;cursor:pointer}
.fw-pill:hover{background:var(--sc-ink);color:var(--sc-canvas)}
/* touch screens keep :hover after a tap, so the bottom bar only reacts to a real pointer hover */
@media (max-width:759px){
  .pbar .menu-open:hover,.pbar .set-open:hover{background:transparent}
  .pbar .pb-sub:hover{background:var(--sc-accent)}
  @media (hover:hover){.pbar .menu-open:hover,.pbar .set-open:hover{background:var(--sc-surface)}.pbar .pb-sub:hover{background:#9a4400}}
  [data-theme=dark] .pbar .pb-sub:hover{background:var(--sc-accent)}
  .pbar .menu-open[aria-expanded=true],.pbar .set-open[aria-expanded=true]{background:var(--sc-surface)}
}
[data-theme=dark] .am-search input::placeholder{color:#9aa8b8}
/* dark appearance: bands and labels that sit on colour */
[data-theme=dark] .foot{background:var(--brand-navy);color:#d5dde6}
[data-theme=dark] .data,[data-theme=dark] .preview-banner{background:#12314d}
[data-theme=dark] .field,[data-theme=dark] .field a{color:#0d1825}
[data-theme=dark] .sub-go,[data-theme=dark] .rb-find button,[data-theme=dark] .ns-k,[data-theme=dark] .sub-fab{color:#0d1825}
[data-theme=dark] .railviews .tick,[data-theme=dark] .am-desks .tick,[data-theme=dark] .am-desk .tick{color:#0d1825}
[data-theme=dark] .desknav .w b{color:color-mix(in srgb,var(--desk) 40%,#fff)}
[data-theme=dark] .kicker[style*="--desk"]{color:color-mix(in srgb,var(--desk) 40%,#fff)!important}
[data-theme=dark] .b-credit{color:var(--sc-ink-soft)}
.ir-scale{grid-template-columns:repeat(10,minmax(0,1fr))}
.v-side,.v-side > *{min-width:0}
.ir-f{grid-template-columns:repeat(auto-fill,minmax(min(100%,4.75rem),1fr))}
.ir-f > div,.ir-f dt,.ir-f dd{min-width:0;overflow-wrap:anywhere}
.cm-gauge{flex-wrap:wrap}
.cm-seg{width:min(3.2rem,20vw)}
[data-theme=dark] .checkometer{border-color:#3a5270}

/* ---------- Analysis (analysis_section.py) ---------- */
.an-box{padding:clamp(1.5rem,4vw,3rem) 0;border-top:1px solid color-mix(in srgb,currentColor 18%,transparent)}
.an-list{list-style:none;margin:0;padding:0;display:grid;gap:1.5rem;max-width:70ch}
.an-list h2,.an-list h3{font-family:var(--sc-font-display);margin:.35rem 0 .4rem;line-height:1.2}
.an-list h2{font-size:clamp(1.4rem,1.1rem + 1.2vw,2rem)}
.an-list h3{font-size:clamp(1.2rem,1rem + .8vw,1.6rem)}
.an-k{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;font-size:var(--step-small)}
.an-view{font-weight:600;padding:.05rem .45rem;border:1px solid currentColor}
.an-negative{color:#a8321e}.an-mixed{color:#7a5a00}.an-positive{color:#1d6b3a}
:root[data-theme="dark"] .an-negative{color:#ff9a85}:root[data-theme="dark"] .an-mixed{color:#f2c94c}:root[data-theme="dark"] .an-positive{color:#7fd8a0}
.an-draft{font-weight:700;background:#ffe08a;color:#0e1e30;padding:.05rem .45rem}
.an-tick{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:0 0 1.5rem}
.an-conv{font-size:var(--step-small);opacity:.85}
.an-rbox{max-width:46rem;margin:0 0 2rem;padding:1rem 1.25rem;border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-left:4px solid var(--blue)}
.an-rbox dl{display:grid;gap:.5rem;margin:0}.an-rbox dl>div{display:grid;grid-template-columns:8.5rem 1fr;gap:.75rem;min-width:0}
.an-rbox dt{font-weight:600}.an-rbox dd{margin:0;min-width:0;overflow-wrap:anywhere}
.an-rbox .an-rth{font-weight:600;margin:1rem 0 .35rem}.an-rbox ul{margin:0;padding-left:1.2rem;display:grid;gap:.35rem}
@media (max-width:520px){.an-rbox dl>div{grid-template-columns:1fr;gap:.1rem}}
.an-article .body table{border-collapse:collapse;margin:1.25rem 0;font-size:var(--step-small);display:block;max-width:100%;overflow-x:auto}
.an-article .body th,.an-article .body td{padding:.35rem .9rem .35rem 0;text-align:left;border-bottom:1px solid color-mix(in srgb,currentColor 18%,transparent);vertical-align:top}
.an-chart{margin:2rem 0;max-width:46rem}
.an-chart figcaption{font-size:1.05rem;margin-bottom:.5rem}
.an-chart svg{width:100%;height:auto;display:block;color:inherit}
.an-chart .an-zero{stroke:currentColor;stroke-opacity:.45;stroke-width:1}
.an-chart .an-bar{fill:var(--blue)}.an-chart .an-bar.neg{fill:var(--sc-accent)}
.an-chart .an-line{fill:none;stroke:var(--blue);stroke-width:3}
.an-chart .an-dot{fill:var(--blue)}
.an-chart text{fill:currentColor;font-family:var(--sc-font-text);font-size:13px}
.an-chart .an-lab{fill-opacity:.8}
.an-chart details{margin-top:.5rem;font-size:var(--step-small)}
.an-table{border-collapse:collapse;margin-top:.5rem}.an-table th,.an-table td{padding:.2rem .75rem .2rem 0;text-align:left}
.an-src{font-size:var(--step-small)}
.an-chart .meta,.an-src{overflow-wrap:anywhere}
.an-src{display:grid;gap:.5rem}.an-src li{line-height:1.5}

/* Log in for people who already subscribed (2026-10-29) */
.actions .login-open{display:inline-flex;align-items:center;text-decoration:none}
html.member .login-open,html.member .login-li,html.member .sub-login{display:none}
.sub-login{margin:.75rem 0 0;font-size:.95rem}
.si-form{max-width:34rem;margin:1rem 0 2rem}
.si-form .gate-in-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:flex-end}
.si-form label{flex-basis:100%;font-weight:600}
.si-form input{flex:1 1 16rem;min-height:44px;padding:.5rem .7rem;font:inherit;border:2px solid var(--sc-ink,#0e1e30);border-radius:4px}
.si-form button{min-height:44px;padding:.5rem 1rem;font:inherit;font-weight:700}
.site-head .find.login-open{background:transparent;color:inherit;box-shadow:inset 0 0 0 2px currentColor;margin-right:.4rem}
.site-head .find.login-open:hover,.site-head .find.login-open:focus-visible{background:rgba(127,127,127,.12)}
html.member .pbar,.pbar:not(:has(.pb-login)){grid-template-columns:repeat(3,minmax(0,1fr))}
.pbar .pb-login{text-decoration:none;color:inherit}

/* Company Channel: the paying company's own posts, labeled (channel_section.py) */
.cc-posts{border:1px solid var(--line);background:var(--sc-surface);padding:1.25rem;margin:1.5rem 0;display:grid;gap:1rem}
.cc-posts h2{font-size:var(--step-head)}
.cc-label{font-size:var(--step-small);color:var(--sc-ink-soft);margin:0}
.cc-post{border-top:1px solid var(--line);padding-top:1rem}
.cc-post h3{font-size:1.15rem;margin:.25rem 0 .5rem}

/* Google and Facebook sign-up and log in (text buttons; owner may swap in each provider's official button art) */
.oauth{margin:1rem 0 0;display:grid;gap:.6rem}
.oauth-or{display:flex;align-items:center;gap:.75rem;margin:0;font-size:.95rem;color:var(--sc-ink-2,#4a5566)}
.oauth-or::before,.oauth-or::after{content:"";flex:1;border-top:1px solid currentColor;opacity:.35}
.oauth-row{display:grid;grid-template-columns:1fr;gap:.5rem;max-width:26rem}
.oauth .oauth-btn{display:flex;width:100%;font:inherit;font-weight:700;cursor:pointer;align-items:center;justify-content:center;min-height:48px;padding:0 1rem;border:2px solid var(--sc-ink,#0e1e30);border-radius:4px;background:#fff;color:var(--sc-ink,#0e1e30);font-weight:700;text-decoration:none}
.oauth .oauth-btn:hover{background:#f1f3f6;color:var(--sc-ink,#0e1e30)}
.oauth .oauth-btn:focus-visible{outline:3px solid var(--sc-accent);outline-offset:2px}
.oauth .oauth-btn[hidden],.oauth[hidden]{display:none}
.oauth-msg{background:#fbe9e7;color:#7a1d10;padding:.6rem .8rem;font-weight:600;max-width:34rem}
.oauth-msg.oauth-ok{background:#e7f3ea;color:#14532d}
[data-theme=dark] .oauth-msg.oauth-ok{background:#163222;color:#c9f0d5}
.signin .oauth{max-width:34rem;margin:0 0 2rem}
[data-theme=dark] .oauth .oauth-btn{background:transparent;color:#e8edf3;border-color:#e8edf3}
[data-theme=dark] .oauth .oauth-btn:hover{background:#1c2a3b;color:#e8edf3}
[data-theme=dark] .oauth-or{color:#b9c3cf}
[data-theme=dark] .oauth-msg{background:#3a1d1a;color:#ffd2cc}

/* ---------- company pages as news pages (owner request 2026-10-30) ---------- */
.co-top{padding-top:1rem}
.co-top .breadcrumb{padding:0;margin:0 0 .5rem}
.co-id{display:flex;justify-content:space-between;align-items:center;gap:.75rem 1rem;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:.4rem 0 .6rem}
.co-name{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .6rem;font-weight:600}
.co-sym{background:var(--sc-ink);color:var(--sc-canvas);padding:.1rem .5rem;border-radius:4px;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.co-id .mast-acts{display:flex;gap:.5rem}
.co-h1{margin:.9rem 0 .6rem;font:600 clamp(1.15rem,1rem + .5vw,1.4rem)/1.3 var(--sc-font-text);color:var(--sc-ink)}
.co-h1 .h1-k{display:block;font-weight:400;font-size:.85em;color:var(--sc-ink-soft)}
.co-lead{display:grid;gap:1rem;margin:.25rem 0 1.25rem;position:relative}
@media (min-width:760px){.co-lead{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;column-gap:1.5rem}}
.co-lead-pic img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.co-k{margin:0 0 .35rem;color:var(--sc-accent);font-weight:600;font-size:var(--step-small)}
.co-lead h2{margin:0;font:500 clamp(1.8rem,1.15rem + 2.3vw,3.1rem)/1.05 var(--sc-font-display);letter-spacing:-.01em}
.co-lead h2 a{color:inherit;text-decoration:none}
.co-lead h2 a:hover,.co-lead h2 a:focus-visible{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.12em}
.co-dek{margin:.75rem 0 0;font:400 1.15rem/1.45 var(--sc-font-display);color:var(--sc-ink-soft);max-width:52ch}
.co-body{padding-bottom:3rem}
.co-grid{display:grid;gap:0 var(--gap)}
@media (min-width:960px){.co-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}
.co-news h2,.co-sec h2,.co-aside h2{margin:1.5rem 0 .6rem;font:500 clamp(1.45rem,1.1rem + 1.3vw,2.1rem)/1.12 var(--sc-font-display)}
.co-aside h2{font-size:1.35rem}
.co-aside h3{margin:1.25rem 0 .4rem;font-size:1rem}
.co-aside{border-top:3px solid var(--sc-ink);margin-top:1.5rem}
@media (min-width:960px){.co-aside{margin-top:2.25rem}}
.co-facts{display:grid;grid-template-columns:1fr 1fr;gap:.6rem 1rem;margin:0}
.co-facts dt{font-size:var(--step-small);color:var(--sc-ink-soft)}
.co-facts dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}
.co-tl li{padding:.9rem 0}
.co-tl h3{font-size:1.2rem;margin:.1rem 0}
.co-sec{border-top:1px solid var(--line);margin-top:2rem}
.co-sec p{max-width:70ch}
.tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.co-fin,.co-prod{border-collapse:collapse;width:100%;min-width:30rem;font-variant-numeric:tabular-nums;margin:.5rem 0 1rem}
.co-fin th,.co-fin td,.co-prod th,.co-prod td{border-bottom:1px solid var(--line);padding:.55rem .6rem;text-align:left;vertical-align:top}
.co-fin td{text-align:right;white-space:nowrap}
.co-fin thead th,.co-fin tr:first-child th,.co-prod tr:first-child th{font-size:var(--step-small);color:var(--sc-ink-soft);font-weight:600}
.co-fin tr:first-child th:not(:first-child){text-align:right}

/* ===== 2026-10-30 section fronts look like the homepage: lead story, picture cards, news grid ===== */
.sec-head{padding-top:1.5rem;padding-bottom:1rem}
.sec-head h1{margin:0;font:500 clamp(1.8rem,1.2rem + 2vw,2.8rem)/1.08 var(--sc-font-display)}
.sec-head .standfirst{max-width:62ch;margin:.5rem 0 0}
.sec-board .b-lead .tchips a,.sec-board .b-lead .tick{position:relative;z-index:1}
@media (min-width:760px){.sec-board .b-lead{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;column-gap:1.5rem}}
.sec-cards{margin-bottom:1rem}
@media (min-width:1100px){.sec-cards{grid-template-columns:repeat(4,1fr)}}

/* phones: Log in and Subscribe also sit in the fixed top bar, so they show on every phone browser even when the
   browser's own toolbar covers the bottom bar (owner bug report 2026-10-30, iPhone). Motto moves under the logo. */
@media (max-width:759px){
  .site-head .mast .wrap{height:calc(3.25rem * (1 - var(--s)) + 2.75rem * var(--s));display:grid;grid-template-columns:minmax(0,auto) 1fr;grid-template-rows:auto auto;align-content:center;column-gap:.6rem;row-gap:.15rem}
  .site-head .wordmark{grid-column:1;grid-row:1}
  .site-head .tag{grid-column:1;grid-row:2;max-width:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.72rem;line-height:1.1}
  .site-head .actions{display:flex;grid-column:2;grid-row:1 / span 2;justify-self:end;align-self:center;gap:.4rem;margin:0}
  .site-head .actions .hd-set,.site-head .actions .menu-open{display:none}
  .site-head .actions .find{min-height:calc(40px - var(--s) * 8px);padding:0 .75rem;font-size:.88rem;white-space:nowrap}
  .site-head .actions .find.login-open{margin-right:0;padding:0 .6rem}
}
@media (max-width:374px){
  .site-head .actions .find{padding:0 .55rem;font-size:.82rem}
  .site-head .actions .find.login-open{padding:0 .45rem}
}
@media (max-width:329px){.site-head .tag{display:none}}
