:root{
  --paper:#FFFFFF; --surface:#FFFFFF; --surface-2:#F4F4F4;
  --ink:#000000; --ink-2:#2E2E2E; --muted:#6B6B6B; --line:#D9D9D9; --line-2:#ECECEC;
  --navy:#000000; --navy-ink:#FFFFFF;
  --teal:#1A4BFF; --teal-ink:#FFFFFF; --teal-soft:#E9EEFF; --teal-text:#1440E0;
  --ok:#0E8A4A; --ok-soft:#E3F5EB; --warn:#C8206A; --warn-soft:#FBE4EE; --neutral-soft:#EFEFEF;
  --am:#6B4FD8; --am-soft:#ECE8FA;
  --shadow:0 1px 2px rgba(0,0,0,.05), 0 8px 24px -18px rgba(0,0,0,.25);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --paper:#000000; --surface:#0F0F0F; --surface-2:#1A1A1A;
    --ink:#FFFFFF; --ink-2:#D2D2D2; --muted:#9A9A9A; --line:#333333; --line-2:#222222;
    --navy:#FFFFFF; --navy-ink:#000000;
    --teal:#5B7CFF; --teal-ink:#000000; --teal-soft:#12204D; --teal-text:#8FA6FF;
    --ok:#4CCB86; --ok-soft:#0F2E1D; --warn:#FF5C9E; --warn-soft:#3A1020; --neutral-soft:#1E1E1E;
    --am:#B9A5EE; --am-soft:#26204A;
    --shadow:0 1px 2px rgba(0,0,0,.5), 0 8px 24px -18px rgba(0,0,0,.7);
  }
}
:root[data-theme="dark"]{
  --paper:#000000; --surface:#0F0F0F; --surface-2:#1A1A1A;
  --ink:#FFFFFF; --ink-2:#D2D2D2; --muted:#9A9A9A; --line:#333333; --line-2:#222222;
  --navy:#FFFFFF; --navy-ink:#000000;
  --teal:#5B7CFF; --teal-ink:#000000; --teal-soft:#12204D; --teal-text:#8FA6FF;
  --ok:#4CCB86; --ok-soft:#0F2E1D; --warn:#FF5C9E; --warn-soft:#3A1020; --neutral-soft:#1E1E1E;
  --am:#B9A5EE; --am-soft:#26204A;
  --shadow:0 1px 2px rgba(0,0,0,.5), 0 8px 24px -18px rgba(0,0,0,.7);
}
*{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Avenir Next",Avenir,"Google Sans Flex",system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit}
h1,h2,h3,h4{font-family:"Google Sans Flex","Avenir Next",Avenir,system-ui,sans-serif;font-weight:700;margin:0;text-wrap:balance;line-height:1.15}
h1{font-size:clamp(34px,4.6vw,52px);letter-spacing:-.02em}
h2{font-size:clamp(26px,3vw,34px)}
h3{font-size:20px}
p{margin:0}
.mono{font-family:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}
.eyebrow{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:6px;font-weight:600;font-size:14px;text-decoration:none;border:1px solid transparent;cursor:pointer;font-family:inherit;line-height:1.2}
.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.btn-teal{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.btn-teal:hover{background:var(--ink-2);border-color:var(--ink-2)}
.btn-navy{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-navy:hover{background:var(--surface-2)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--ink)}
.btn .arr{font-family:"IBM Plex Mono",monospace;font-weight:500}
.link{color:var(--teal-text);font-weight:600;text-decoration:none}
.link:hover{text-decoration:underline}
.ribbon{background:var(--ink);color:var(--paper);border-bottom:1px solid var(--line);padding:6px 0;font-family:"IBM Plex Mono",monospace;font-size:12px}
.ribbon .wrap{display:flex;gap:16px;flex-wrap:wrap;justify-content:space-between}
header.nav{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.navrow{display:flex;align-items:center;gap:28px;height:60px}
.brand{display:grid;line-height:.92;font-family:"Google Sans Flex","Avenir Next",Avenir,system-ui,sans-serif;font-size:17px;font-weight:700;letter-spacing:-.025em;text-decoration:none;white-space:nowrap;color:var(--ink)}
.brand span{display:block;color:inherit}
.navlinks{display:flex;gap:22px;margin-left:8px;flex:1;font-weight:500;font-size:14px}
.navlinks a{text-decoration:none;color:var(--ink-2);padding:6px 0}
.navlinks a.open{color:var(--ink);box-shadow:inset 0 -2px 0 var(--teal)}
.mega{background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow)}
.mega .wrap{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;padding:20px 24px 22px}
.mega h4{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:8px}
.mega ul{list-style:none;margin:0;padding:0;display:grid;gap:5px;font-size:13.5px}
.mega li a{text-decoration:none;color:var(--ink-2)}
.mega li a:hover{color:var(--teal-text)}
.mega .note{grid-column:1/-1;border-top:1px dashed var(--line);padding-top:10px;color:var(--muted);font-size:12.5px}
.hero{padding:56px 0 36px;border-bottom:1px solid var(--line)}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:48px;align-items:end}
.hero p.lede{font-size:17px;color:var(--ink-2);max-width:62ch;margin-top:16px}
.hero .ctas{display:flex;gap:12px;margin-top:24px;flex-wrap:wrap}
.tally{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:18px 20px;display:grid;gap:12px}
.tally .row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid var(--line-2);padding-bottom:10px}
.tally .row:last-child{border-bottom:0;padding-bottom:0}
.tally .n{font-family:"Google Sans Flex","Avenir Next",Avenir,sans-serif;font-size:30px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1}
.tally .l{color:var(--ink-2);font-size:13.5px;text-align:right}
.stamp{display:inline-flex;align-items:center;gap:6px;font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--muted)}
.stamp::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ok)}
section{padding:44px 0}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px;flex-wrap:wrap}
.sec-head p{color:var(--ink-2);max-width:60ch;margin-top:6px}
.picks{display:grid;grid-template-columns:repeat(auto-fit,minmax(214px,1fr));gap:14px}
.pick{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:16px;display:grid;grid-template-rows:auto auto 1fr auto auto;gap:8px;box-shadow:var(--shadow)}
.pick .lane{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--teal-text)}
.pick .firm{font-weight:600;font-size:16px}
.pick .why{font-size:13.5px;color:var(--ink-2)}
.pick .price{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--ink-2)}
.pick .cta{display:flex;gap:14px;font-size:13.5px;margin-top:4px}
.dir{display:grid;grid-template-columns:230px minmax(0,1fr);gap:28px}
.rail{position:sticky;top:76px;align-self:start;display:grid;gap:20px}
.rail h4{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:8px}
.rail label{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-2);padding:3px 0;cursor:pointer}
.rail input[type=checkbox]{accent-color:var(--teal);width:15px;height:15px;margin:0}
.rail .count{margin-left:auto;font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:14px}
.tab{background:none;border:0;padding:10px 14px;font:inherit;font-weight:600;font-size:14px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}
.tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--teal)}
.tab .c{font-family:"IBM Plex Mono",monospace;font-weight:400;font-size:12px;margin-left:6px}
.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:14px;flex-wrap:wrap}
.search{flex:1;min-width:220px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:8px 12px}
.search input{border:0;background:none;font:inherit;color:var(--ink);flex:1;outline:none}
.showing{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--muted)}
.cards{display:grid;gap:12px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:18px 20px;display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:18px;box-shadow:var(--shadow)}
.card[hidden]{display:none}
.card .top{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.card .name{font-weight:600;font-size:17px;text-decoration:none}
.card .loc{font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.badge{display:inline-flex;align-items:center;gap:5px;border-radius:4px;padding:2px 7px;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.03em}
.badge.ok{background:var(--ok-soft);color:var(--ok)}
.badge.seed{background:var(--neutral-soft);color:var(--muted)}
.badge.am{background:var(--am-soft);color:var(--am)}
.badge.spon{background:var(--warn-soft);color:var(--warn)}
.fields{display:grid;grid-template-columns:120px minmax(0,1fr);gap:4px 14px;margin-top:10px;font-size:13.5px}
.fields dt{color:var(--muted);margin:0}
.fields dd{margin:0;color:var(--ink-2)}
.tags{display:flex;flex-wrap:wrap;gap:5px}
.tag{background:var(--surface-2);border:1px solid var(--line-2);border-radius:4px;padding:1px 7px;font-size:12px;color:var(--ink-2)}
.price{font-family:"IBM Plex Mono",monospace;font-size:12.5px}
.price.pub{color:var(--ok)}
.price.np{color:var(--warn)}
.card .side{display:grid;gap:8px;align-content:start;border-left:1px solid var(--line-2);padding-left:18px}
.card .side .btn{justify-content:space-between;width:100%}
.card .side .conc{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.4}
.frame{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:22px 24px}
.panel h3{margin-bottom:10px}
.panel p{color:var(--ink-2);font-size:14px}
table{width:100%;border-collapse:collapse;font-size:13.5px;margin-top:12px}
th{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:left;font-weight:500;padding:6px 8px;border-bottom:1px solid var(--line)}
td{padding:8px;border-bottom:1px solid var(--line-2);vertical-align:top;color:var(--ink-2)}
td:first-child{color:var(--ink);font-weight:500}
.tblwrap{overflow-x:auto}
.cite{font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:var(--muted);margin-top:10px;display:block}
.cite a{color:var(--teal-text);text-decoration:none}
.cite a:hover{text-decoration:underline}
.faq{display:grid;gap:0;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;padding:14px 0;font-weight:500;font-size:15.5px;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"⌄";color:var(--muted);font-family:"IBM Plex Mono",monospace}
.faq details[open] summary::after{content:"⌃"}
.faq summary::-webkit-details-marker{display:none}
.faq .a{padding:0 0 16px;color:var(--ink-2);max-width:70ch;font-size:14px}
.lead{background:var(--navy);color:var(--navy-ink);padding:40px 0}
.lead .wrap{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:center}
.lead h2{color:inherit}
.lead p{opacity:.85;margin-top:10px;max-width:56ch}
.lead .btn-teal{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.lead .fine{font-family:"IBM Plex Mono",monospace;font-size:12px;opacity:.75;margin-top:12px}
footer{padding:36px 0 28px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-2)}
.fcols{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;margin-bottom:24px}
.fcols h4{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:8px}
.fcols ul{list-style:none;padding:0;margin:0;display:grid;gap:4px}
.fcols a{text-decoration:none;color:var(--ink-2)}
.disclose{border:1px solid var(--line);border-left:3px solid var(--am);background:var(--surface);border-radius:6px;padding:14px 16px;display:grid;gap:6px;max-width:80ch}
.disclose strong{color:var(--ink)}
.fbottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:22px;color:var(--muted);font-size:12.5px}
.modal{position:fixed;inset:0;background:rgba(6,12,24,.55);display:flex;align-items:center;justify-content:center;z-index:50;padding:20px}
.modal[hidden]{display:none}
.dialog{background:var(--surface);color:var(--ink);border-radius:10px;width:min(520px,100%);padding:26px 28px;box-shadow:var(--shadow);border:1px solid var(--line)}
.dialog .step{font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}
.dialog h3{margin:8px 0 14px;font-size:24px}
.opts{display:grid;gap:8px}
.opt{border:1px solid var(--line);border-radius:6px;padding:10px 12px;display:flex;gap:10px;align-items:center;cursor:pointer;font-size:14px;background:var(--paper)}
.opt input{accent-color:var(--teal);margin:0}
.dialog .actions{display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:12px}
.dialog .fine{font-size:12px;color:var(--muted)}
.field{display:grid;gap:6px;font-size:13.5px}
.field input{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:6px;padding:10px 12px;font:inherit}
@media (max-width:900px){
  .hero .wrap,.frame,.lead .wrap{grid-template-columns:1fr}
  .dir{grid-template-columns:1fr}
  .rail{position:static;grid-template-columns:1fr 1fr}
  .mega .wrap{grid-template-columns:1fr 1fr}
  .fcols{grid-template-columns:1fr 1fr}
  .navlinks{display:none}
  .card{grid-template-columns:1fr}
  .card .side{border-left:0;padding-left:0;border-top:1px solid var(--line-2);padding-top:12px}
}
@media (prefers-reduced-motion:no-preference){ .card,.pick{transition:border-color .15s} .card:hover,.pick:hover{border-color:var(--teal)} }
.fams{columns:4;column-gap:28px}
.fam{break-inside:avoid;margin-bottom:22px}
.fam h4{font-size:14px;font-weight:700;margin-bottom:6px;display:flex;justify-content:space-between;align-items:baseline;gap:8px;border-bottom:1px solid var(--line);padding-bottom:4px}
.fam h4 .c{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted);font-weight:400}
.fam ul{list-style:none;margin:0;padding:0;display:grid;gap:2px;font-size:13px}
.fam li{display:flex;justify-content:space-between;gap:8px}
.fam li a{text-decoration:none;color:var(--ink-2)}
.fam li a:hover{color:var(--ink);text-decoration:underline}
.fam .geo{font-family:"IBM Plex Mono",monospace;font-size:10.5px;color:var(--muted)}
@media (max-width:1000px){.fams{columns:3}}
@media (max-width:760px){.fams{columns:2}}
@media (max-width:480px){.fams{columns:1}}
.spon{position:relative;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}
.spon .tagtr{position:absolute;top:10px;right:10px;z-index:2;background:var(--ad-ink,#101010);color:#fff;border-radius:4px;padding:3px 8px;font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase}
.ad{--ad-blue:#3D8FD6;--ad-blue-deep:#2A6FB0;--ad-cream:#F2EEE3;--ad-ink:#101010;--ad-slate:#3E6E8E;--ad-white:#FFFFFF;--ad-red:#C8322B;
  display:grid;grid-template-columns:280px minmax(0,1fr);background:var(--ad-cream);color:var(--ad-ink);font-family:"Google Sans Flex","Avenir Next",Avenir,system-ui,sans-serif}
.ad[hidden]{display:none}
.ad .poster{position:relative;margin:14px 0 14px 14px;border-radius:10px;overflow:hidden;min-height:300px;color:var(--ad-white);padding:18px 18px 16px;display:flex;flex-direction:column;justify-content:space-between;
  background:linear-gradient(160deg,#5BA7E6 0%,var(--ad-blue) 45%,var(--ad-blue-deep) 100%)}
.ad .poster .mark{position:relative;font-weight:800;font-size:38px;line-height:.9;letter-spacing:-.04em;text-transform:uppercase}
.ad .poster .logo{display:block;width:224px;height:auto;color:#FFFFFF;fill:#FFFFFF}
.ad .poster .sub{position:relative;font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.32em;text-transform:uppercase;margin-top:8px;opacity:.9}
.ad .poster .seal{position:absolute;right:-6px;top:44%;transform:rotate(-8deg);border:3px solid var(--ad-white);border-radius:10px;padding:8px 12px;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;line-height:1.35;background:rgba(16,16,16,.18);backdrop-filter:blur(2px)}
.ad .poster .seal b{display:block;font-size:15px;letter-spacing:.02em}
.ad .poster .tag{position:relative;font-weight:700;font-size:24px;line-height:1.02;letter-spacing:-.02em;background:#FFFFFF;color:#101010;border:0;border-radius:8px;padding:12px 14px;margin-top:10px;box-shadow:0 6px 18px -10px rgba(0,0,0,.35)}
.ad .poster .tag .rule{display:inline-block;width:64px;height:3px;background:#101010;vertical-align:middle;margin:0 8px 4px}
.ad .poster .tag small{display:block;font-size:20px;font-weight:600;opacity:.95}
.ad .panel{padding:20px 24px 18px;display:grid;gap:14px;align-content:start;background:transparent;border:0;border-radius:0;box-shadow:none}
.ad .head{font-weight:800;font-size:clamp(24px,2.6vw,32px);line-height:1;letter-spacing:-.03em}
.ad .head span{display:block;color:var(--ad-slate)}
.ad .items{display:grid;gap:10px;border-top:1px solid rgba(16,16,16,.18);padding-top:12px}
.ad .item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center}
.ad .num{width:44px;height:40px;border:3px solid var(--ad-ink);border-radius:10px;display:grid;place-items:center;font-weight:800;font-size:18px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.ad .item b{display:block;font-weight:700;font-size:17px;line-height:1.1;letter-spacing:-.01em}
.ad .item .m{font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:var(--ad-slate);margin-top:2px}
.ad .foot{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;border-top:1px solid rgba(16,16,16,.18);padding-top:12px}
.ad .foot .m{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--ad-slate);max-width:44ch}
.ad .foot .btn{background:var(--ad-ink);color:var(--ad-white);border-color:var(--ad-ink)}
.ad .foot .btn.o{background:transparent;color:var(--ad-ink)}
.ad.gen{--ad-blue:#E9B44C;--ad-blue-deep:#C98A1E;--ad-slate:#7A5A16}
.ad.gen .poster{background:linear-gradient(160deg,#F3C766 0%,var(--ad-blue) 45%,var(--ad-blue-deep) 100%);color:var(--ad-ink)}
.ad.gen .poster .seal{border-color:var(--ad-ink);background:rgba(255,255,255,.25)}
.demoline{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-bottom:8px;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.demo{display:inline-flex;border:1px solid var(--line);border-radius:6px;overflow:hidden;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.04em;text-transform:uppercase}
.demo button{background:var(--surface);color:var(--muted);border:0;padding:5px 9px;cursor:pointer;font:inherit;border-right:1px solid var(--line)}
.demo button:last-child{border-right:0}
.demo button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
@media (max-width:760px){.ad{grid-template-columns:1fr}.ad .poster{margin:14px 14px 0}}
.mega .wrap{grid-template-columns:repeat(5,1fr) 250px}
.mad{position:relative;border-radius:10px;overflow:hidden;width:250px;height:250px;color:#FFFFFF;padding:16px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(160deg,#5BA7E6 0%,#3D8FD6 45%,#2A6FB0 100%);font-family:"Google Sans Flex","Avenir Next",Avenir,system-ui,sans-serif}
.mad .tagtr{position:absolute;top:8px;right:8px;z-index:2;background:#101010;color:#fff;border-radius:4px;padding:2px 7px;font-family:"IBM Plex Mono",monospace;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase}
.mad .logo{display:block;width:150px;height:auto;fill:#FFFFFF}
.mad .sub{font-family:"IBM Plex Mono",monospace;font-size:9px;letter-spacing:.28em;text-transform:uppercase;margin-top:6px;opacity:.9}
.mad .seal{align-self:flex-end;transform:rotate(-6deg);border:2px solid #FFFFFF;border-radius:8px;padding:5px 9px;font-family:"IBM Plex Mono",monospace;font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;line-height:1.3;background:rgba(16,16,16,.18)}
.mad .seal b{display:block;font-size:12px;letter-spacing:.02em}
.mad .plate{background:#FFFFFF;color:#101010;border-radius:8px;padding:9px 11px;font-weight:700;font-size:15px;line-height:1.05;letter-spacing:-.02em;display:flex;justify-content:space-between;align-items:center;gap:8px}
.mad .plate small{display:block;font-size:12px;font-weight:600;opacity:.85}
.mad .plate .go{background:#101010;color:#fff;border-radius:6px;padding:7px 9px;font-family:"IBM Plex Mono",monospace;font-size:12px;text-decoration:none;white-space:nowrap}
@media (max-width:900px){.mega .wrap{grid-template-columns:1fr 1fr}.mad{grid-column:1/-1;width:250px;height:250px;justify-self:center}}
.notice{border-top:1px solid var(--line);padding:22px 0;font-size:13.5px;color:var(--ink-2)}
.notice .wrap{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:28px}
.notice h4{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:6px}
.notice a{color:var(--teal-text);text-decoration:none;font-weight:600}
.notice a:hover{text-decoration:underline}
.notice .ph{font-family:"IBM Plex Mono",monospace;font-size:10.5px;color:var(--warn);background:var(--warn-soft);border-radius:3px;padding:0 5px;margin-left:6px}
@media (max-width:900px){.notice .wrap{grid-template-columns:1fr}}
.brand .sm{display:none;font-size:22px;letter-spacing:-.04em;line-height:1}
.brand .sm b{font-weight:900}
.navburger{display:none;margin-left:auto;width:38px;height:34px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);cursor:pointer;place-items:center}
.navburger svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round}
.navlinks a[data-mega]{position:relative}
.mega{display:none;position:absolute;left:0;right:0;top:100%}
header.nav.mega-open .mega{display:block}
header.nav{position:sticky}
.mega .note{display:none}
.tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:18px;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.tools .grp{display:inline-flex;align-items:center;gap:4px}
.tools .lab{margin-right:4px}
.tools button,.tools a.sb{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);cursor:pointer;text-decoration:none}
.tools button:hover,.tools a.sb:hover{border-color:var(--ink)}
.tools svg{width:15px;height:15px;fill:currentColor}
.tools .wide{width:auto;padding:0 10px;font:inherit;font-size:11px;letter-spacing:.06em;text-transform:uppercase;gap:6px;display:inline-flex}
.tools .wide svg{width:13px;height:13px}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--ink);color:var(--paper);padding:9px 14px;border-radius:6px;font-family:"IBM Plex Mono",monospace;font-size:12px;z-index:60;opacity:0;pointer-events:none;transition:opacity .2s}
.toast.on{opacity:1}
@media (max-width:900px){
  .navburger{display:grid}
  .navlinks{display:none;position:absolute;left:0;right:0;top:100%;background:var(--surface);border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:6px 24px 10px;margin:0}
  header.nav.nav-open .navlinks{display:flex}
  .navlinks a{padding:10px 0;border-bottom:1px solid var(--line-2)}
  .navlinks a.open{box-shadow:none;font-weight:700}
  .mega{position:static;box-shadow:none;border:0}
  header.nav.mega-open .mega{display:none}
  .navrow .btn-teal{display:none}
}
@media (max-width:600px){
  .brand span:not(.sm){display:none}
  .brand .sm{display:block}
  .wrap{padding:0 16px}
  h1{font-size:clamp(28px,8vw,36px)}
  .hero{padding-top:28px}
  .hero .wrap{gap:22px}
  .hero p.lede{font-size:15.5px}
  .tally .n,.facts .n{font-size:24px}
  .seg{flex-wrap:wrap;border-radius:8px}
  .seg button{flex:1 1 30%;border-bottom:1px solid var(--ink)}
  .ob{grid-template-columns:1fr}
  .ob .go{text-align:left}
  .fcols{grid-template-columns:1fr}
  .rail{grid-template-columns:1fr}
  .spon .tagtr{top:6px;right:6px}
  .ad .poster{min-height:240px}
  .navrow{gap:14px}
  .theme button{width:30px;height:30px}
}
.reading{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:18px 20px;margin-top:22px}
.reading h4{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:10px}
.reading ol{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.reading li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:baseline;font-size:14px}
.reading li a{color:var(--ink);font-weight:600;text-decoration:none}
.reading li a:hover{text-decoration:underline}
.reading li .by{display:block;color:var(--ink-2);font-weight:400;font-size:13px;margin-top:2px}
.reading .src{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.reading .src.pub{color:var(--am)}
@media (max-width:600px){.reading li{grid-template-columns:1fr}}
.theme{display:inline-flex;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.theme button{background:var(--surface);color:var(--muted);border:0;padding:0;width:34px;height:32px;display:grid;place-items:center;cursor:pointer;border-right:1px solid var(--line)}
.theme button:last-child{border-right:0}
.theme button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.theme button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.theme button:hover{color:var(--ink)}
.theme button[aria-pressed=true]:hover{color:var(--paper)}
.theme button:focus-visible{outline:2px solid var(--teal);outline-offset:-2px}
h1{font-size:clamp(32px,4.2vw,48px);letter-spacing:-.02em}
h2{font-size:clamp(24px,2.8vw,32px)}
h3{font-size:19px}
.btn:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.verify{display:inline-block;font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.04em;color:var(--warn);background:var(--warn-soft);border-radius:3px;padding:0 5px;vertical-align:middle;white-space:nowrap}
.crumbs{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--muted);padding-top:18px}
.crumbs a{text-decoration:none;color:var(--muted)}
.crumbs span{margin:0 6px}
.hero{padding:16px 0 32px;border-bottom:1px solid var(--line)}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:48px;align-items:start}
.hero p.lede{font-size:17px;color:var(--ink-2);max-width:64ch;margin-top:14px}
.hero .ctas{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}
.chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}
.chip{background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:2px 9px;font-size:12.5px;color:var(--ink-2)}
.facts{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:18px 20px;display:grid;gap:0;box-shadow:var(--shadow)}
.facts h4{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:10px}
.facts dl{margin:0;display:grid;grid-template-columns:118px minmax(0,1fr);gap:7px 12px;font-size:13.5px}
.facts dt{color:var(--muted)}
.facts dd{margin:0;color:var(--ink-2)}
.stamp{display:inline-flex;align-items:center;gap:6px;font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--muted);margin-top:14px}
section{padding:40px 0}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:20px;flex-wrap:wrap}
.sec-head p{color:var(--ink-2);max-width:62ch;margin-top:6px}
.ledger{background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow:hidden}
table{width:100%;border-collapse:collapse;font-size:13.5px}
th{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:left;font-weight:500;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--surface-2)}
td{padding:11px 14px;border-bottom:1px solid var(--line-2);vertical-align:top;color:var(--ink-2)}
tr:last-child td{border-bottom:0}
.pill{display:inline-block;border-radius:4px;padding:1px 7px;font-family:"IBM Plex Mono",monospace;font-size:11px}
.pill.must{background:var(--ok-soft);color:var(--ok)}
.pill.cond{background:var(--warn-soft);color:var(--warn)}
.pill.soft{background:var(--neutral-soft);color:var(--muted)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.panel h3{margin-bottom:8px}
.checks{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:8px;font-size:14px}
.checks li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;color:var(--ink-2)}
.checks li::before{content:"§";font-family:"IBM Plex Mono",monospace;color:var(--teal-text)}
.ev{display:grid;gap:8px;margin-top:12px}
.ev .row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:10px;font-size:13.5px;border-top:1px solid var(--line-2);padding-top:8px}
.ev .row:first-child{border-top:0;padding-top:0}
.ev .k{font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;padding-top:2px}
.ev .v{color:var(--ink-2)}
.who{display:inline-block;font-size:12px;color:var(--teal-text);font-weight:600}
.changes{display:grid;gap:0;border-top:1px solid var(--line)}
.change{display:grid;grid-template-columns:140px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--line-2);font-size:14px}
.change .d{font-family:"IBM Plex Mono",monospace;font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.change .t{color:var(--ink-2)}
.faq{display:grid;border-top:1px solid var(--line)}
.related{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.related a{display:block;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:12px 14px;text-decoration:none;font-size:13.5px;font-weight:500}
.related a small{display:block;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted);font-weight:400;margin-top:3px}
.lead{background:var(--navy);color:var(--navy-ink);padding:36px 0}
.lead .wrap{display:grid;grid-template-columns:1.4fr auto;gap:32px;align-items:center}
.lead p{opacity:.85;margin-top:8px;max-width:56ch}
.lead .btn-teal{background:var(--navy-ink);color:var(--navy);border-color:var(--navy-ink)}
.lead .fine{font-family:"IBM Plex Mono",monospace;font-size:12px;opacity:.75;margin-top:10px}
.sources{font-family:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.6;color:var(--ink-2)}
.sources ol{margin:8px 0 0;padding-left:22px;display:grid;gap:6px;max-width:90ch}
.sources a{color:var(--teal-text);text-decoration:none}
.sources a:hover{text-decoration:underline}
.sources a::after{content:" \2197";font-size:10px}
footer{padding:28px 0;border-top:1px solid var(--line);font-size:13px;color:var(--ink-2)}
.disclose{border:1px solid var(--line);border-left:3px solid var(--am);background:var(--surface);border-radius:6px;padding:12px 16px;max-width:80ch}
.fbottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:18px;color:var(--muted);font-size:12.5px}
@media (max-width:900px){
  .hero .wrap,.two,.lead .wrap{grid-template-columns:1fr}
  .navlinks{display:none}
  .card{grid-template-columns:1fr}
  .card .side{border-left:0;padding-left:0;border-top:1px solid var(--line-2);padding-top:12px}
  .change{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:no-preference){ .card{transition:border-color .15s} .card:hover{border-color:var(--teal)} }
.srcs{margin-top:10px;font-family:"IBM Plex Mono",monospace;font-size:11.5px;line-height:1.7;color:var(--muted)}
.srcs a{color:var(--muted);text-decoration:none;white-space:nowrap}
.srcs a:hover{color:var(--ink);text-decoration:underline}
.srcs a::after{content:" \2197";font-size:10px}
.srcs .sep{display:inline-block;width:14px}
.ob{grid-template-rows:auto auto}
.ob .band{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px 14px;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted);margin-top:-2px}
.ob .band a{color:var(--muted);text-decoration:none;white-space:nowrap}
.ob .band a:hover{color:var(--ink);text-decoration:underline}
.ob .band a::after{content:" \2197";font-size:10px}
.stage{display:inline-block;border-radius:4px;padding:1px 6px;font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;vertical-align:middle;margin-left:6px}
.stage.ai{background:var(--neutral-soft);color:var(--muted)}
.stage.links{background:var(--teal-soft);color:var(--teal-text)}
.stage.human{background:var(--ok-soft);color:var(--ok)}
.stages{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
.stages div{border:1px solid var(--line);border-radius:8px;padding:12px 14px;font-size:13px;color:var(--ink-2);background:var(--surface)}
.stages div b{display:block;margin-bottom:4px}
.notice{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;font-size:13.5px;color:var(--ink-2)}
@media (max-width:900px){.notice .wrap,.stages{grid-template-columns:1fr}}
.controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end;margin-top:22px}
.ctl h4{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:8px}
.seg{display:inline-flex;border:1px solid var(--ink);border-radius:8px;overflow:hidden}
.seg button{background:var(--surface);color:var(--ink);border:0;border-right:1px solid var(--ink);padding:9px 14px;font:inherit;font-weight:600;font-size:14px;cursor:pointer;font-variant-numeric:tabular-nums}
.seg button:last-child{border-right:0}
.seg button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.tagsrow{display:flex;flex-wrap:wrap;gap:8px}
.tagsrow button{--c:var(--ink);background:var(--surface);color:var(--ink);border:1.5px solid var(--line);border-radius:999px;padding:6px 12px;font:inherit;font-weight:600;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:7px}
.tagsrow button::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c)}
.tagsrow button[aria-pressed=true]{border-color:var(--c);background:color-mix(in srgb,var(--c) 12%,var(--surface))}
.tagsrow button[disabled]{opacity:.9;cursor:default}
.statebox{display:grid;gap:6px}
.statebox select{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:6px;padding:9px 12px;font:inherit;min-width:220px}
.tally{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:16px 18px;display:grid;gap:10px;box-shadow:var(--shadow)}
.tally .row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid var(--line-2);padding-bottom:8px}
.tally .n{font-family:"Google Sans Flex","Avenir Next",Avenir,sans-serif;font-size:28px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1}
.tally .l{color:var(--ink-2);font-size:13px;text-align:right}
.group{margin-top:28px}
.group h3{display:flex;align-items:baseline;gap:12px;border-bottom:2px solid var(--ink);padding-bottom:8px;margin-bottom:0}
.group h3 .c{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--muted);font-weight:400}
.group h3 .why{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted);font-weight:400;margin-left:auto;letter-spacing:.04em;text-transform:uppercase}
.ob{display:grid;grid-template-columns:minmax(0,1.4fr) 150px minmax(0,1fr) 150px 120px;gap:14px;padding:12px 0;border-bottom:1px solid var(--line-2);align-items:start;font-size:13.5px}
.ob[hidden]{display:none}
.ob .law{font-weight:600;color:var(--ink)}
.ob .law small{display:block;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted);font-weight:400;margin-top:2px}
.ob .art{display:inline-block;border-radius:4px;padding:2px 7px;font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.art.policy{background:var(--ok-soft);color:var(--ok)}
.art.posting{background:var(--neutral-soft);color:var(--ink-2)}
.art.filing{background:var(--teal-soft);color:var(--teal-text)}
.art.training{background:var(--am-soft);color:var(--am)}
.art.insurance{background:var(--warn-soft);color:var(--warn)}
.art.licence{background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line)}
.ob .prod{color:var(--ink-2)}
.ob .trig{font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:var(--ink-2)}
.ob .enf{font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:var(--muted)}
.ob .go{font-size:12.5px;text-align:right}
.ob .go a{color:var(--teal-text);text-decoration:none;font-weight:600;white-space:nowrap}
.ob .go a:hover{text-decoration:underline}
.ob .ind{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}
.cols{display:grid;grid-template-columns:minmax(0,1.4fr) 150px minmax(0,1fr) 150px 120px;gap:14px;padding:8px 0;font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.empty{padding:14px 0;color:var(--muted);font-family:"IBM Plex Mono",monospace;font-size:12px}
.legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted)}
@media (max-width:900px){.controls{grid-template-columns:1fr}.ob,.cols{grid-template-columns:1fr 1fr}.cols{display:none}.ob .go{text-align:left}}
/* Self-hosted fonts (Sid, 2026-09-10). Google Sans Flex and IBM Plex Mono, both SIL OFL 1.1; licence texts ship in /assets/fonts/. Subsets mirror Google Fonts, so a page only downloads the ranges its text uses. */
/* Google Sans Flex canadian-aboriginal */
@font-face{font-family:'Google Sans Flex';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/google-sans-flex-400-800-canadian-aboriginal.woff2') format('woff2');unicode-range:U+02C7, U+02D8-02D9, U+02DB, U+0307, U+1400-167F, U+18B0-18F5, U+25CC, U+11AB0-11ABF}
/* Google Sans Flex cherokee */
@font-face{font-family:'Google Sans Flex';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/google-sans-flex-400-800-cherokee.woff2') format('woff2');unicode-range:U+0300-0302, U+0304, U+030B-030C, U+0323-0324, U+0330-0331, U+13A0-13FF, U+AB70-ABBF}
/* Google Sans Flex math */
@font-face{font-family:'Google Sans Flex';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/google-sans-flex-400-800-math.woff2') format('woff2');unicode-range:U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF}
/* Google Sans Flex nushu */
@font-face{font-family:'Google Sans Flex';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/google-sans-flex-400-800-nushu.woff2') format('woff2');unicode-range:U+2003, U+3000, U+3002, U+4E00, U+FE12, U+16FE1, U+1B170-1B2FB}
/* Google Sans Flex symbols */
@font-face{font-family:'Google Sans Flex';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/google-sans-flex-400-800-symbols.woff2') format('woff2');unicode-range:U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF}
/* Google Sans Flex syriac */
@font-face{font-family:'Google Sans Flex';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/google-sans-flex-400-800-syriac.woff2') format('woff2');unicode-range:U+0303-0304, U+0307-0308, U+030A, U+0320, U+0323-0325, U+032D-032E, U+0330-0331, U+060C, U+061B-061C, U+061F, U+0621, U+0640, U+064B-0655, U+0660-066C, U+0670, U+0700-074F, U+0860-086A, U+1DF8, U+1DFA, U+200C-200F, U+25CC, U+2670-2671}
/* Google Sans Flex tifinagh */
@font-face{font-family:'Google Sans Flex';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/google-sans-flex-400-800-tifinagh.woff2') format('woff2');unicode-range:U+02C7, U+0301-0302, U+0304, U+0306-0307, U+0309, U+0323, U+0331, U+200C-200D, U+202E, U+25CC, U+2D30-2D7F}
/* Google Sans Flex vietnamese */
@font-face{font-family:'Google Sans Flex';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/google-sans-flex-400-800-vietnamese.woff2') format('woff2');unicode-range:U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB}
/* Google Sans Flex latin-ext */
@font-face{font-family:'Google Sans Flex';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/google-sans-flex-400-800-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
/* Google Sans Flex latin */
@font-face{font-family:'Google Sans Flex';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/google-sans-flex-400-800-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* IBM Plex Mono cyrillic-ext */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/ibm-plex-mono-400-cyrillic-ext.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
/* IBM Plex Mono cyrillic */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/ibm-plex-mono-400-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
/* IBM Plex Mono vietnamese */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/ibm-plex-mono-400-vietnamese.woff2') format('woff2');unicode-range:U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB}
/* IBM Plex Mono latin-ext */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/ibm-plex-mono-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
/* IBM Plex Mono latin */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/ibm-plex-mono-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* IBM Plex Mono cyrillic-ext */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/ibm-plex-mono-500-cyrillic-ext.woff2') format('woff2');unicode-range:U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F}
/* IBM Plex Mono cyrillic */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/ibm-plex-mono-500-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
/* IBM Plex Mono vietnamese */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/ibm-plex-mono-500-vietnamese.woff2') format('woff2');unicode-range:U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB}
/* IBM Plex Mono latin-ext */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/ibm-plex-mono-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
/* IBM Plex Mono latin */
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/ibm-plex-mono-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
.mad,.mad *{text-decoration:none}
@media (min-width:901px){header.nav.mega-open .mega{display:none}header.nav.mega-open .mega.on{display:block}}
@media (max-width:900px){header.nav.mega-open .mega,header.nav.mega-open .mega.on{display:none}}
.mega .wrap>div>ul li .c{font-family:"IBM Plex Mono",monospace;font-size:10.5px;color:var(--muted);margin-left:6px}
.mega .all li:last-child a{font-weight:600}
/* a paid listing is a different object, not a better-looking one */
.spon-card{border:2px solid var(--warn)}
.spon-card .top{padding-bottom:2px}
.spon-card .own{margin:10px 0 14px;padding:12px 14px 12px 16px;border-left:3px solid var(--warn);
  background:var(--warn-soft);border-radius:0 6px 6px 0;font-size:14.5px;line-height:1.55}
.spon-card .own .lab{display:block;font-family:"IBM Plex Mono",monospace;font-size:10.5px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--warn);margin-bottom:5px}
.spon-card .own p{margin:0 0 8px}
.spon-card .own p:last-child{margin-bottom:0}
.spec{width:100%;border-collapse:collapse;font-size:14px}
.spec th,.spec td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line-2);vertical-align:top}
.spec thead th{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--muted);font-weight:500;border-bottom:1px solid var(--line-strong)}
.spec td:first-child{width:38%}
.spec td+td,.spec th+th{font-variant-numeric:tabular-nums;width:31%}
.spec tr.tot td{font-weight:700;border-top:1px solid var(--line-strong);border-bottom:0}
.spec .no{color:var(--muted)}
.disclose{max-width:none}
/* Page CTAs (Sid, 2026-09-10): a consultant box and an AllyMatter box on pages about a standard, policy or obligation. */
/* Primary ad 25% shorter (Sid, 2026-09-10): tighter panel, smaller numerals and heads, poster min-height down */
.ad .panel{padding:14px 20px 12px;gap:9px}.ad .head{font-size:clamp(20px,2vw,25px)}.ad .items{gap:6px;padding-top:8px}.ad .item{grid-template-columns:34px minmax(0,1fr);gap:10px}.ad .num{width:34px;height:30px;border-width:2px;border-radius:8px;font-size:15px}.ad .item b{font-size:15px}.ad .item .m{font-size:11px;margin-top:1px}.ad .foot{padding-top:8px;gap:10px}.ad .foot .btn{padding:7px 12px;font-size:13px}.ad .poster{min-height:220px;padding:14px 14px 12px;margin:12px 0 12px 12px}.ad .poster .logo{width:190px}.ad .poster .mark{font-size:32px}.ad .poster .tag{font-size:20px;padding:10px 12px;margin-top:8px}.ad .poster .tag small{font-size:16px}.ad .poster .seal{padding:6px 10px;font-size:10px}.ad .poster .seal b{font-size:13px}@media (max-width:900px){.ad .poster{min-height:180px;margin:12px 12px 0}}
.helpform label{display:block;margin:12px 0 0;font-size:13px;font-weight:600}.helpform input,.helpform select,.helpform textarea{display:block;width:100%;margin-top:5px;padding:9px 10px;border:1px solid var(--line);border-radius:6px;font:inherit;font-weight:400;background:var(--bg,#fff);color:inherit}.helpform textarea{resize:vertical}.helpform .two{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}@media(max-width:600px){.helpform .two{grid-template-columns:1fr}}.helpform .req{font-weight:400;color:var(--muted);font-size:11px;margin-left:4px}.helpform .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.helpform .chk,.subform .chk{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:400;margin-top:14px}.helpform .chk input,.subform .chk input{width:auto;margin:0}.helpform .cf-turnstile{margin-top:12px}
.ob{position:relative}
.ob .gm{display:inline-block;font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:2px 7px;background:var(--neutral-soft);color:var(--ink-2);margin-top:6px}
.ob .gm.ack{background:var(--teal-soft);color:var(--teal-text)}
@media (min-width:1470px){.ob .gm{position:absolute;left:-136px;top:13px;width:112px;margin:0;text-align:right;white-space:normal}}
.cookie.consent{grid-template-columns:minmax(0,1fr) auto;align-items:start;max-width:820px}.cookie .crows{display:grid;grid-template-columns:1fr 1fr;gap:2px 18px;margin-top:8px}.cookie .crow{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;padding:5px 0;border-top:1px solid var(--line-2);cursor:pointer}.cookie .crow small{display:block;font-family:"IBM Plex Mono",monospace;font-size:10.5px;color:var(--muted)}.cookie .crow input{margin:0}.cookie.consent .btns{flex-direction:column;align-items:stretch}@media(max-width:700px){.cookie.consent{grid-template-columns:1fr}.cookie .crows{grid-template-columns:1fr}.cookie.consent .btns{flex-direction:row}}
.home-tally{align-self:end;margin-bottom:109px}@media(max-width:900px){.home-tally{align-self:auto;margin-bottom:0}}
/* footer verification legend as one small row (Sid, 2026-09-10) */
footer .stages,.stages.stages{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;grid-template-columns:none;margin-top:18px;padding-top:12px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}footer .stages .st{cursor:help;white-space:nowrap}footer .stages .st-lead{color:var(--muted)}footer .stages .st-more{margin-left:auto;color:var(--muted);text-decoration:none}footer .stages .st-more:hover{text-decoration:underline}
.navsearch{width:34px;height:30px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);cursor:pointer;display:grid;place-items:center;margin-right:8px}.navsearch svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
.sdlg{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:95;display:flex;align-items:flex-start;justify-content:center;padding:12vh 16px 0}.sbox{width:min(640px,100%);background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 24px 60px -20px rgba(0,0,0,.5);overflow:hidden}.sbox input{width:100%;box-sizing:border-box;padding:14px 16px;font:inherit;font-size:16px;border:0;border-bottom:1px solid var(--line);background:transparent;color:inherit;outline:none}.sbox ul{list-style:none;margin:0;padding:6px;max-height:50vh;overflow:auto}.sbox li a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;border-radius:6px;text-decoration:none;color:inherit;font-size:14px}.sbox li.on a,.sbox li a:hover{background:var(--surface-2)}.sbox .k{font-family:"IBM Plex Mono",monospace;font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.sbox .hint{padding:8px 16px 10px;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted);border-top:1px solid var(--line-2)}
.tools button[data-cite]{width:auto;padding:0 10px;font:inherit;font-size:11px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.tools button[data-cite] svg{width:14px;height:14px;fill:currentColor}
.corrs{display:grid;gap:14px;max-width:820px}.corr{border:1px solid var(--line);border-radius:10px;padding:16px 18px;background:var(--surface)}.corr-h{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin-bottom:8px}.corr p{margin:0 0 8px;font-size:14.5px}.corr .corr-p{font-size:11.5px;color:var(--muted);margin:0}.corr .corr-p a{color:var(--muted)}
.ex-note{margin:14px 0 0;padding:10px 14px;border:1px solid var(--warn);background:var(--warn-soft);border-radius:8px;font-size:13.5px;color:var(--ink)}.ex-note a{color:inherit}
.prof-h{display:flex;gap:16px;align-items:center;margin-top:10px}.prof-h h1{margin:0}.mono-tile{flex:none;width:64px;height:64px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line);display:grid;place-items:center;font-weight:800;font-size:22px;letter-spacing:-.02em;color:var(--ink)}
.prof-sub{margin:4px 0 0;color:var(--muted);font-size:14px}.prof-ver{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin:14px 0 0}.prof-ver .mono{font-size:11.5px;color:var(--muted)}
.prof-grid{display:grid;gap:30px;max-width:860px}.prof-sec h2{font-size:20px;margin:0 0 10px}.prof-sec p{margin:0}
.prof-dl{display:grid;grid-template-columns:140px minmax(0,1fr);gap:6px 14px;margin:0;font-size:14.5px}.prof-dl dt{color:var(--muted)}.prof-dl dd{margin:0}
.prof-creds{list-style:none;margin:0;padding:0;display:grid;gap:8px}.prof-creds li{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;border-top:1px solid var(--line-2);padding-top:8px;font-size:14.5px}.prof-creds .by{color:var(--muted);font-size:13px}.prof-creds .st{font-family:"IBM Plex Mono",monospace;font-size:11.5px;margin-left:auto;color:var(--muted)}.prof-creds .st.ok{color:var(--ok)}
.prof-trail{width:100%;border-collapse:collapse;font-size:13.5px}.prof-trail th,.prof-trail td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line-2);vertical-align:top}.prof-trail th{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500}
.tscroll{overflow-x:auto}.prof-sec .note{font-size:11.5px;color:var(--muted);margin-top:8px}
.badge-prev{padding:18px;border:1px dashed var(--line);border-radius:10px;background:#FFFFFF;display:inline-block;margin:12px 0}
.badge-code{background:var(--surface-2);border:1px solid var(--line);border-radius:8px;padding:12px 14px;overflow-x:auto;font-size:12px;white-space:pre-wrap;word-break:break-all;margin:0 0 10px}
.reveal{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:5px;padding:2px 9px;font:inherit;font-size:12.5px;cursor:pointer}
@media(max-width:600px){.prof-dl{grid-template-columns:1fr}.prof-creds .st{margin-left:0}}
.contact-card{align-self:start;border:2px solid var(--ink);border-radius:14px;padding:20px;background:var(--surface);display:grid;gap:10px;box-shadow:var(--shadow)}
.contact-card .cc-h{margin:0 0 2px;font-weight:700;font-size:18px;letter-spacing:-.01em;color:var(--ink)}
.contact-card .cc-book{display:flex;justify-content:center;align-items:center;gap:8px;width:100%;box-sizing:border-box;padding:13px 16px;font-size:15.5px;font-weight:600}
.contact-card .cc-row{display:flex;gap:12px;align-items:center;padding:11px 14px;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink);font-size:16px;font-weight:600;background:var(--paper)}
.contact-card a.cc-row:hover{border-color:var(--ink)}
.contact-card .cc-row small{display:block;font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:400;margin-bottom:2px}
.contact-card .cc-row svg{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-card .cc-row a{color:var(--ink);text-decoration:none}
.contact-card .reveal{font-size:14px;font-weight:600;padding:4px 10px}
.contact-card .cc-foot{margin:2px 0 0;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted)}
.prof-warn{max-width:860px;margin:0;padding:14px 16px;border:1px solid var(--line);border-left:3px solid var(--warn);background:var(--surface-2);border-radius:8px;font-size:13.5px;color:var(--ink-2)}
/* maps (2026-09-10) */
.mapwrap{position:relative;border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:12px;min-height:200px}.mapwrap svg{width:100%;height:auto;display:block}
.mapwrap path,.mapwrap circle{fill:var(--surface-2);stroke:var(--paper);stroke-width:.7;transition:fill .15s}.mapwrap.world path{stroke-width:.5}
.mapwrap .on path,.mapwrap .on circle,.mapwrap path.on,.mapwrap circle.on{cursor:pointer}
.mapwrap .lv1 path,.mapwrap path.lv1,.mapwrap circle.lv1,.mapwrap .lv1 circle{fill:color-mix(in srgb,var(--teal) 22%,var(--surface))}
.mapwrap .lv2 path,.mapwrap path.lv2,.mapwrap circle.lv2,.mapwrap .lv2 circle{fill:color-mix(in srgb,var(--teal) 45%,var(--surface))}
.mapwrap .lv3 path,.mapwrap path.lv3,.mapwrap circle.lv3,.mapwrap .lv3 circle{fill:color-mix(in srgb,var(--teal) 70%,var(--surface))}
.mapwrap .lv4 path,.mapwrap path.lv4,.mapwrap circle.lv4,.mapwrap .lv4 circle{fill:var(--teal)}
.mapwrap .on:hover path,.mapwrap path.on:hover,.mapwrap .on:focus path,.mapwrap path.on:focus,.mapwrap circle.on:hover,.mapwrap circle.on:focus{fill:var(--ink);outline:none}
.maptip{position:absolute;z-index:5;pointer-events:none;background:var(--ink);color:var(--paper);border-radius:8px;padding:10px 12px;max-width:280px;font-size:13px;line-height:1.35;box-shadow:0 12px 30px -12px rgba(0,0,0,.5)}.maptip b{display:block;font-size:14px}.maptip span{display:block}.maptip small{display:block;color:rgba(255,255,255,.75);margin-top:4px;font-size:11.5px}.maptip em{display:block;font-style:normal;margin-top:6px;font-family:"IBM Plex Mono",monospace;font-size:11px;color:rgba(255,255,255,.8)}
.maplegend{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:12px;font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:var(--muted)}.maplegend span{display:inline-flex;align-items:center;gap:6px}.maplegend .sw{width:14px;height:14px;border-radius:3px;border:1px solid var(--line)}.maplegend .sw.off{background:var(--surface-2)}
.maplegend .sw.lv1{background:color-mix(in srgb,var(--teal) 22%,var(--surface))}.maplegend .sw.lv2{background:color-mix(in srgb,var(--teal) 45%,var(--surface))}.maplegend .sw.lv3{background:color-mix(in srgb,var(--teal) 70%,var(--surface))}.maplegend .sw.lv4{background:var(--teal)}
/* page signature */
.crumbs .sig{margin-left:auto;display:inline-flex;align-items:center;opacity:.9}.crumbs .sig svg{display:block}
/* status */
.bars text{font-family:inherit}
.cta-pair-sec{padding:0 0 6px}.cta-pair.cta-single{grid-template-columns:1fr}.cta-pair-sec.mid{padding-bottom:34px}.lead+.cta-pair-sec{padding-top:40px}
.cta-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cta{position:relative;border:1px solid var(--line);border-radius:10px;padding:20px 22px;background:var(--surface);display:flex;flex-direction:column;gap:8px}
.cta h3{margin:0;font-size:19px;line-height:1.3;text-wrap:balance}
.cta p{margin:0;color:var(--ink-2);line-height:1.5;font-size:14.5px}
.cta .cta-eye{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.cta-am{border-left:3px solid var(--teal);background:var(--teal-soft)}
.cta-am .cta-eye{color:var(--teal-text)}
.cta-help{border-left:3px solid var(--ink);background:var(--surface-2)}.cta-help .cta-eye{color:var(--muted)}.cta-con{border-left:3px solid var(--ok);background:var(--ok-soft)}.cta-con .cta-eye{color:var(--ok)}
.cta-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:auto;padding-top:6px}
.cta-adlabel,.cta-fine{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.03em;color:var(--muted);margin-left:auto}
.cta-adlabel{text-decoration:none}
.cta-adlabel:hover,.cta-adlabel:focus-visible{text-decoration:underline;color:var(--ink)}
.cta-tag{position:absolute;top:12px;right:12px;font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;background:var(--ink);color:var(--surface);border-radius:4px;padding:2px 7px}
@media (max-width:760px){.cta-pair{grid-template-columns:1fr}.cta-adlabel,.cta-fine{margin-left:0}}
/* Partner with AllyMatter: deliberate exception to the no-AM-orange rule (Sid, 2026-09-10).
   #EC7C3C is allymatter.com's primary brand colour. Single look in both themes, so every colour is explicit. */
.am-partner{background:#EC7C3C;color:#1A0D03;padding:60px 0 56px;margin-top:48px}
.am-partner .ap-logo{margin-bottom:18px}
.am-partner .ap-logo svg.logo{height:36px;width:auto;display:block}
.am-partner .eyebrow{color:#1A0D03;opacity:.8}
.am-partner h2{color:#1A0D03;margin-top:6px}
.am-partner .lede{color:#1A0D03;max-width:62ch;font-size:17px;line-height:1.55}
.am-partner .ap-block{margin-top:34px}
.am-partner h3{font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:#1A0D03;margin:0 0 12px}
.am-partner .feat{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 40px}
.am-partner .feat li{padding-left:18px;position:relative;line-height:1.5;font-size:15px}
.am-partner .feat li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;border-radius:2px;background:#1A0D03}
.am-partner .feat b{font-weight:700}
.am-partner .bens{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.am-partner .ben{background:#FEF6EE;color:#2E1706;border-radius:10px;padding:15px 16px;line-height:1.45;font-size:14.5px}
.am-partner .ben b{display:block;color:#1A0D03;margin-bottom:4px;font-size:15px}
.am-partner .ap-foot{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:30px}
.am-partner .ap-btn{display:inline-flex;align-items:center;gap:8px;text-decoration:none;border-radius:8px;padding:11px 18px;font-weight:600;font-size:15px}
.am-partner .ap-btn.dark{background:#1A0D03;color:#FFFFFF}
.am-partner .ap-btn.light{background:#FEF6EE;color:#1A0D03}
.am-partner .ap-btn:focus-visible{outline:3px solid #FFFFFF;outline-offset:2px}
.am-partner .ap-fine{font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.04em;color:#1A0D03;opacity:.85;margin-left:auto}
@media (max-width:1100px){.am-partner .bens{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.am-partner .feat{grid-template-columns:1fr}.am-partner .ap-fine{margin-left:0}}
@media (max-width:600px){.am-partner .bens{grid-template-columns:1fr}}

.spec .yes{color:var(--warn);font-weight:600}
.reading li .src{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.reading li .by{display:block;font-weight:400;color:var(--muted);font-size:13px;margin-top:2px}
.retired{display:flex;gap:14px;align-items:flex-start;margin:18px 0 2px;padding:16px 18px;border:2px solid var(--warn);border-radius:10px;background:var(--warn-soft)}
.retired .rt{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--warn);font-weight:600;white-space:nowrap;padding-top:2px}
.retired .rb{font-size:15.5px;line-height:1.5}
.retired .rb b{font-size:17px;display:block;margin-bottom:4px}
.retired a{color:var(--warn);font-weight:600}
@media (max-width:600px){.retired{flex-direction:column;gap:8px}}
.badge.aiflag{background:transparent;color:var(--ink-2);border:1px solid var(--line-strong)}
.ob .stage,.card .stage{display:inline-block;width:9px;height:9px;padding:0;border:0;border-radius:2px;font-size:0;line-height:0;vertical-align:middle;margin-left:8px;background:currentColor;overflow:hidden}
.ob .law .stage{margin-left:8px}
.sq{display:inline-block;width:9px;height:9px;border-radius:2px;vertical-align:middle;margin-right:7px}.sq.ai{background:var(--muted)}.sq.links{background:var(--teal-text)}.sq.source{background:var(--srcv)}.sq.human{background:var(--ok)}
footer .stages{display:grid;gap:6px 22px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:18px;padding-top:16px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted)}footer .stages b{display:block;color:var(--ink);font-weight:600;margin-bottom:2px}
.smx{overflow-x:auto;margin-top:18px}.smx table{border-collapse:collapse;font-size:13px;min-width:980px;width:100%}.smx th,.smx td{padding:7px 6px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle}
.smx th{font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:500}.smx td:first-child,.smx th:first-child{text-align:left;white-space:nowrap}
.smx td:first-child a{font-weight:600;text-decoration:none;color:var(--ink)}.smx td:first-child a:hover{text-decoration:underline}.smx .y{color:var(--ok);font-weight:700}.smx .n{color:var(--muted)}.smx .u{color:var(--muted);opacity:.45}
.smx td.cnt{font-family:"IBM Plex Mono",monospace;color:var(--muted)}.statebox select:not([disabled]){color:var(--ink)}
.stgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px 14px;margin-top:14px}.stgrid a{text-decoration:none;color:var(--ink);padding:6px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:8px}.stgrid a small{font-family:"IBM Plex Mono",monospace;color:var(--muted);font-size:11px}
.mad .plate .rule{display:inline-block;width:22px;height:2px;background:#101010;vertical-align:middle;margin:0 5px 3px}
.hero{border-bottom:0}
.facts{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:0;overflow:hidden;box-shadow:none}
.facts h4{padding:12px 18px;border-bottom:1px solid var(--line);margin:0;background:var(--surface-2)}
.facts dl{margin:0;display:grid;grid-template-columns:132px minmax(0,1fr);gap:0;font-size:13.5px}
.facts dt,.facts dd{padding:10px 18px;border-bottom:1px solid var(--line-2);margin:0}
.facts dt{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:12px}
.facts dd{color:var(--ink);line-height:1.5}.facts dd a{color:var(--teal-text);text-decoration:none}.facts dd a:hover{text-decoration:underline}
.facts .stamp{display:flex;margin:0;padding:10px 18px;font-size:11px}
.ob .band{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px 16px;align-items:baseline;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted);margin-top:2px}
.ob .band>span{margin-right:2px;letter-spacing:.06em;text-transform:uppercase;font-size:10px}
.ob .band a{color:var(--muted);text-decoration:none;white-space:nowrap;border-bottom:1px solid var(--line)}
.ob .band a:hover{color:var(--ink);border-color:var(--ink)}
.controls{grid-template-columns:1fr}
.listgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.listgrid{grid-auto-rows:1fr}
.listgrid a{display:flex;flex-direction:column;height:100%;min-height:96px;border:1px solid var(--line);border-radius:8px;padding:12px 14px;text-decoration:none;background:var(--surface)}
.listgrid a b{display:block;font-size:15px}.listgrid a small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:"IBM Plex Mono",monospace;font-size:11px;line-height:1.45;color:var(--muted);margin-top:3px}
.listgrid a:hover{border-color:var(--ink)}
.static p,.prose p{max-width:68ch;color:var(--ink-2);margin-top:8px;font-size:15px;line-height:1.65}.static h2{margin-top:32px}.prose h2{font-size:21px;letter-spacing:-.01em;margin-top:28px;margin-bottom:2px}.prose h2:first-child{margin-top:0}.prose ul{margin-top:8px}.static h3,.prose h3{margin-top:22px}.static ul,.prose ul{max-width:70ch;color:var(--ink-2)}
.prose{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:40px;align-items:start}.prose .side{display:grid;gap:14px}
@media (max-width:900px){.prose{grid-template-columns:1fr}}
.crumbs{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--muted);padding-top:18px;display:flex;flex-wrap:wrap;gap:6px 0;align-items:center}
.crumbs a{text-decoration:none;color:var(--muted)}.crumbs a:hover{color:var(--ink)}.crumbs span{margin:0 8px;opacity:.6}.crumbs b{font-weight:500;color:var(--ink)}
.tally .l{text-align:right}
.lede p{margin:0;max-width:64ch;line-height:1.6}.lede p+p{margin-top:14px}
.static p+p,.prose p+p{margin-top:12px}
.facts dd{line-height:1.55}

/* pop-ups: subscribe sheet + sponsored card */
.pop{position:fixed;z-index:70;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 50px -20px rgba(0,0,0,.45);padding:18px 20px;max-width:360px;width:calc(100% - 32px)}
.pop[hidden]{display:none}
.pop.sub{left:50%;bottom:24px;transform:translateX(-50%)}
.pop.adv{right:20px;bottom:20px;padding:0;width:300px;overflow:hidden}
.pop .x{position:absolute;top:8px;right:8px;width:28px;height:28px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:18px;line-height:1;border-radius:6px}
.pop .x:hover{color:var(--ink);background:var(--surface-2)}
.pop h4{font-size:17px;font-weight:700;margin:0 28px 6px 0;letter-spacing:-.01em}
.pop p{font-size:13.5px;color:var(--ink-2);margin:0 0 10px}
.pop form{display:grid;gap:8px}
.pop input[type=email]{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:6px;padding:9px 11px;font:inherit}
.pop .cats{display:flex;flex-wrap:wrap;gap:6px}
.pop .cats label{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:3px 9px;cursor:pointer}
.pop .cats input{margin-right:5px;accent-color:var(--ink)}
.pop .fine{font-family:"IBM Plex Mono",monospace;font-size:10.5px;color:var(--muted);margin:6px 0 0}
.pop.adv .tagtr{position:absolute;top:8px;right:38px;z-index:2;background:#101010;color:#fff;border-radius:4px;padding:2px 7px;font-family:"IBM Plex Mono",monospace;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase}
.pop.adv .mad{width:300px;height:250px;border-radius:0}
.pop.adv .x{color:#fff;background:rgba(0,0,0,.25)}
@media (max-width:600px){.pop.adv{right:12px;left:12px;width:auto}.pop.adv .mad{width:100%}}
@media (prefers-reduced-motion:no-preference){.pop{animation:popin .25s ease-out}@keyframes popin{from{opacity:0;transform:translate(var(--tx,0),12px)}to{opacity:1;transform:translate(var(--tx,0),0)}}.pop.sub{--tx:-50%}}


:root{--ok:#0B7A40;--line-strong:#949494;--srcv:#0E7C86}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--ok:#4CCB86;--line-strong:#6B6B6B;--srcv:#5FD0DA}}
:root[data-theme="dark"]{--ok:#4CCB86;--line-strong:#6B6B6B;--srcv:#5FD0DA}
input,select,textarea,.search{border-color:var(--line-strong)!important}
.skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:0 0 6px 0;font-weight:600;text-decoration:none}
.skip:focus{left:0}
:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:2px}
.navlinks a[aria-current="page"]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--teal)}
@media (max-width:1024px){.wrap{padding:0 20px}.hero .wrap{grid-template-columns:1fr;gap:26px}.two,.prose{grid-template-columns:1fr}.fams{columns:2}.mega .wrap{grid-template-columns:1fr 1fr 250px}.card{grid-template-columns:1fr}.card .side{border-left:0;padding-left:0;border-top:1px solid var(--line-2);padding-top:12px}.ob,.cols{grid-template-columns:1fr 1fr}.cols{display:none}}
@media (min-width:761px){.navlinks{display:flex}.navburger{display:none}}
.cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:80;background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;padding:14px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;box-shadow:0 18px 50px -20px rgba(0,0,0,.45);max-width:760px;margin:0 auto}
.cookie[hidden]{display:none}
.cookie p{font-size:13.5px;color:var(--ink-2);margin:0}
.cookie .btns{display:flex;gap:8px;flex-wrap:wrap}
@media (max-width:600px){.cookie{grid-template-columns:1fr}}

table.map{width:100%;border-collapse:collapse;font-size:13.5px}
table.map th{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:left;font-weight:500;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface-2)}
table.map td{padding:10px 12px;border-bottom:1px solid var(--line-2);vertical-align:top;color:var(--ink-2)}
table.map td:first-child{color:var(--ink);font-weight:500}table.map td a{color:var(--teal-text);text-decoration:none}table.map td a:hover{text-decoration:underline}
.tblwrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px}
.ampanel{border:1px solid var(--line);border-radius:10px;padding:18px 20px 16px;background:var(--surface)}
.ampanel .amtop{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.ampanel .ameye,.ampanel .amlab,.ampanel .amdisc,.ampanel .amverdict{font-family:"IBM Plex Mono",monospace;letter-spacing:.07em;text-transform:uppercase}
.ampanel .ameye{font-size:10px;color:var(--muted)}
.ampanel .amverdict{font-size:9.5px;padding:2px 7px;border-radius:4px;white-space:nowrap}
.ampanel .amverdict.ok{background:var(--ok-soft);color:var(--ok)}
.ampanel .amverdict.part{background:var(--teal-soft);color:var(--teal-text)}
.ampanel h3{margin:0 0 9px;font-size:16px;line-height:1.3}
.ampanel .amclaim{margin:0;font-size:14px;line-height:1.55;color:var(--ink)}
.ampanel .amlab{margin:15px 0 5px;font-size:10px;color:var(--muted)}
.ampanel ul{margin:0;padding-left:17px}
.ampanel li{font-size:13.5px;line-height:1.5;margin-bottom:3px}
.ampanel .amnote{margin:0;font-size:13px;line-height:1.55;color:var(--ink-2)}
.ampanel .amshare{margin:15px 0 0;padding-top:13px;border-top:1px solid var(--line-2);font-size:12.5px;line-height:1.5;color:var(--ink-2)}
.ampanel .amdisc{margin:12px 0 0;font-size:10px;color:var(--muted);text-transform:none;letter-spacing:0}
.ampanel .amcta{margin-top:16px}
.ampanel .amcta .btn{display:block;width:100%;text-align:center;padding:9px 14px;font-size:13px}
.cta-claim{display:flex;flex-direction:column;border-left:3px solid var(--teal-text);background:var(--teal-soft);padding:18px 20px;border-radius:8px;margin-top:10px}
.cta-claim .cta-eye{color:var(--teal-text)}
.cta-claim h3{margin:6px 0;font-size:17px;line-height:1.3}
.cta-claim>p{margin:0;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.chips .stage{margin-left:0}

/* inline subscribe (2026-09-17): same card as the AllyMatter panel - 1px border, 10px radius,
   mono uppercase eyebrow, and the promise line separated the way .amshare is, so the two blocks
   read as siblings rather than two different design languages on one page. */
.subin-sec{padding-top:0}
.subin,.subin-ok{border:1px solid var(--line);border-radius:10px;padding:18px 20px;background:var(--surface);max-width:760px}
.subin .eyebrow{font-family:"IBM Plex Mono",monospace;letter-spacing:.07em;text-transform:uppercase;font-size:10px;color:var(--muted);margin:0 0 9px}
.subin h3,.subin-ok h3{margin:0 0 9px;font-size:16px;line-height:1.3}
.subin-say p{margin:0;font-size:14px;line-height:1.55;color:var(--ink)}
.subin-do{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.subin-do input{flex:1 1 280px;min-width:0;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:6px;padding:9px 12px;font:inherit;font-size:14px}
.subin-do input:focus-visible{outline:2px solid var(--teal);outline-offset:1px}
.subin-do .btn{padding:9px 16px;font-size:13px}
.subin-promise{margin:15px 0 0;padding-top:13px;border-top:1px solid var(--line-2);font-size:12.5px;line-height:1.5;color:var(--ink-2)}
.subin-promise b{color:var(--ink);font-weight:600}
.subin .vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.subin-ok p{margin:0;font-size:14px;line-height:1.55;color:var(--ink-2)}
@media(max-width:560px){.subin,.subin-ok{padding:16px}.subin-do .btn{width:100%}}

/* the CTA was sitting 16px under a block of prose and reading as attached to it (Sid, 2026-09-17) */
.ampanel .amcta{margin-top:22px}
.ampanel{padding:18px 20px 18px}

/* source labels are nowrap so each reads as one unit on desktop; on a phone the longest label
   on the ISO 9001 page ran 28px past the viewport and overflow-x:hidden simply cut it off
   (measured over DevTools at 390px, 2026-09-17). Let them wrap where there is no room. */
@media(max-width:600px){.srcs a{white-space:normal}}

.arthead{--art:#1E8A6B;--art-lift:#31AE88;--art-deep:#0F5C47;
  position:relative;border-radius:12px;overflow:hidden;color:#FFFFFF;margin-top:22px;
  /* the hero wrap is a two-column grid (copy + facts aside); the banner spans both or it lands
     in the aside column at a third of the width */
  grid-column:1/-1;
  min-height:210px;padding:22px 24px 20px;display:flex;flex-direction:column;justify-content:space-between;
  background:linear-gradient(160deg,var(--art-lift) 0%,var(--art) 45%,var(--art-deep) 100%);
  font-family:"Google Sans Flex","Avenir Next",Avenir,system-ui,sans-serif}
.arthead .mark{font-size:44px;font-weight:800;letter-spacing:-.03em;line-height:1}
.arthead .sub{margin-top:7px;font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.09em;text-transform:uppercase;opacity:.9}
/* the poster this borrows from is a tall narrow column, so its seal sits mid-height in clear
   space. This block is wide and short, and the tag box rises into that space, so the seal goes
   to the top corner instead, where nothing else reaches. */
.arthead .seal{position:absolute;right:24px;top:20px;transform:rotate(-8deg);border:3px solid #FFFFFF;border-radius:10px;
  padding:8px 13px;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;
  line-height:1.35;background:rgba(6,40,30,.24);text-align:center}
.arthead .seal b{display:block;font-size:17px;letter-spacing:.02em}
.arthead .tag{position:relative;align-self:flex-start;max-width:min(560px,100%);font-weight:700;font-size:26px;
  line-height:1.05;letter-spacing:-.02em;background:#FFFFFF;color:#101010;border-radius:8px;padding:12px 15px;
  margin-top:18px;box-shadow:0 6px 18px -10px rgba(0,0,0,.35)}
.arthead .tag .rule{display:inline-block;width:26px;height:3px;background:var(--art);vertical-align:middle;margin:0 8px 5px}
.arthead .tag small{display:block;margin-top:6px;font-family:"IBM Plex Mono",monospace;font-size:12px;font-weight:400;
  letter-spacing:.02em;color:#4A4A4A}
/* the seal is absolutely placed against a tall block; on a phone there is no tall block, so it
   rejoins the flow instead of landing on top of the tag (measured at 390px) */
@media(max-width:700px){
 .arthead{min-height:0;padding:18px}
 .arthead .mark{font-size:32px}
 /* align-self keeps it stamp-sized; the column flex parent would otherwise stretch it edge to edge */
 .arthead .seal{position:static;transform:none;align-self:flex-start;margin-top:14px}
 .arthead .tag{font-size:21px;margin-top:14px}
}

/* print (2026-09-10): a dense sheet. Header once, footer once, a QR that carries a print reference when Analytics is allowed */
.print-head,.print-foot{display:none}.tools button[data-print]{width:auto;padding:0 10px;font:inherit;font-size:11px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.tools button[data-print] svg{width:14px;height:14px;fill:currentColor}
@media print{
  @page{margin:7mm 8mm}
  *{box-shadow:none!important;text-shadow:none!important;animation:none!important;transition:none!important}
  html,body{background:#fff!important;color:#000!important;font-size:9pt;line-height:1.35}
  body{padding:0 6mm}main{padding-top:3mm}
  header.nav,footer,.spon,.cta-pair-sec,.cta,.tools,.cookie,.sdlg,.toast,.pop,.mega,.crumbs,.navsearch,.ad,.stages,.maptip,.ex-note,.contact-card .cc-book,.reveal,.controls,.statebox,.gm,.stage,.chips,.hero .chips,.card .side a[href*="claim"],.card .side a[href*="/get-help"],.card .side a[href*="/advertise"],section.notice,.no-print{display:none!important}
  main{display:block}
  .wrap{max-width:none!important;padding:0!important;margin:0!important}
  .print-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 6mm;align-items:center;border-bottom:.9pt solid #000;padding:0 0 2.5mm;margin:0 0 3.5mm}
  .ph-l{display:flex;gap:3mm;align-items:center;min-width:0}.ph-mark{display:block;width:9mm;height:9mm;flex:none}.ph-mark svg{width:9mm;height:9mm;display:block}
  .ph-eyebrow{font-family:"IBM Plex Mono",monospace;font-size:6.8pt;letter-spacing:.12em;text-transform:uppercase;color:#555}
  .ph-url{font-family:"IBM Plex Mono",monospace;font-size:8pt;margin-top:.8mm;color:#000;overflow-wrap:anywhere}
  .ph-view{font-weight:700;font-size:9pt;margin-top:.8mm}.ph-view:empty{display:none}
  .ph-note{font-size:6.8pt;color:#555;margin-top:.8mm}
  .ph-qr{text-align:center;flex:none}.ph-qr svg{display:block;width:20mm;height:20mm}.ph-qr-l{font-family:"IBM Plex Mono",monospace;font-size:6pt;color:#555;margin-top:.6mm;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
  .print-foot{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:0 5mm;align-items:center;border-top:.6pt solid #000;padding-top:1.8mm;margin-top:5mm;break-inside:avoid;page-break-inside:avoid}
  .pf-l{display:flex;align-items:center;gap:2mm}.pf-mark svg{width:5mm;height:5mm;display:block}.pf-brand{font-weight:800;font-size:8pt;letter-spacing:-.02em;display:block;line-height:1.1}.pf-url{font-family:"IBM Plex Mono",monospace;font-size:5.8pt;color:#555;display:block}
  .pf-m{font-size:6pt;line-height:1.3;color:#444}
  .pf-r{display:flex;align-items:center;gap:1.5mm;font-family:"IBM Plex Mono",monospace;font-size:5.8pt;color:#555;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.pf-am-logo{width:17mm;height:auto;display:block}
  .hero{padding:0!important;border:0}.hero .wrap{display:block!important}.hero .lede{max-width:none;font-size:9.5pt;margin:1.5mm 0 0}.hero h1{font-size:17pt;letter-spacing:-.02em;margin:1mm 0 0;line-height:1.1}.eyebrow{color:#555;font-size:6.8pt;margin:0}
  h2{font-size:12.5pt;margin:0 0 1.5mm}h3{font-size:10pt}h2,h3,h4{break-after:avoid;page-break-after:avoid}p,li,dd{orphans:3;widows:3}p{margin:0 0 1.6mm}
  section{padding:2.5mm 0!important}.sec-head{margin:0 0 1.5mm}
  .prose{display:block!important}.prose .static{columns:2;column-gap:7mm}.prose .static h2{break-after:avoid;margin-top:2mm}
  .prose .side{display:grid!important;grid-template-columns:1fr 1fr;gap:3mm;margin-top:3mm}.panel,.ampanel{border:.5pt solid #bbb;border-radius:0;padding:2mm 3mm;break-inside:auto;font-size:8pt;background:#fff!important}
  .ampanel .amtop{display:flex;justify-content:space-between;gap:3mm;margin-bottom:1mm}
  .ampanel .amlab{margin:2mm 0 .5mm;font-size:6.5pt!important;text-transform:uppercase;letter-spacing:.05em;color:#555}
  .ampanel .amverdict{font-size:6.5pt!important}
  .ampanel .amdisc{margin-top:1.5mm;font-size:6.5pt!important;color:#555}.panel h3,.ampanel h3{margin:0 0 1mm;font-size:10pt!important}
  .facts,.tally,.contact-card{border:.5pt solid #999;border-radius:0;margin-top:3mm;font-size:8pt;break-inside:auto}.facts dl{grid-template-columns:26mm minmax(0,1fr);font-size:8pt}.facts dt,.facts dd{padding:1.2mm 2.5mm!important}
  .cards{display:grid!important;grid-template-columns:1fr 1fr;gap:2.5mm}.card{display:block!important;border:.5pt solid #bbb!important;border-radius:0;padding:2mm 2.5mm!important;break-inside:avoid;font-size:7.8pt;margin:0!important;background:#fff!important}
  .card .fields{grid-template-columns:22mm minmax(0,1fr);gap:.5mm 2mm;font-size:7.8pt;margin:1mm 0 0}.card .side{border:0!important;padding:0!important;margin-top:1mm;font-size:7pt}.card .side a{display:block;border:0!important;background:none!important;padding:0!important;font-family:"IBM Plex Mono",monospace;font-size:7pt;text-align:left}
  .ob{break-inside:avoid;border-bottom:.5pt solid #bbb;display:grid!important;grid-template-columns:minmax(0,1.15fr) 17mm minmax(0,1.9fr) 17mm 27mm!important;grid-template-rows:auto!important;gap:2mm!important;font-size:7.8pt;padding:1.2mm 0}.ob>*{min-width:0;overflow-wrap:anywhere}.ob .law{font-size:7.8pt}.ob .law small{font-size:6.5pt;line-height:1.25}.ob .trig,.ob .go{text-align:left!important;font-size:7pt}.ob .go .mono{font-size:6.5pt!important;line-height:1.25}.cols{display:grid!important;grid-template-columns:minmax(0,1.15fr) 17mm minmax(0,1.9fr) 17mm 27mm!important;gap:2mm;font-size:6.5pt}.cols>*{text-align:left!important}.group h3,.cols{break-after:avoid;page-break-after:avoid}.srcs,.srcs a{white-space:normal!important;overflow-wrap:anywhere;font-size:6.8pt}
  .group h3{border-bottom:.9pt solid #000;font-size:10pt;margin:0 0 1mm}.group{margin-top:3mm}
  a{color:#000;text-decoration:none}.band a::after{content:""}.ob .band{color:#444;font-size:7pt}.art{display:inline-block;border:.5pt solid #999;border-radius:1mm;background:none!important;white-space:normal!important;font-size:6.5pt;line-height:1.2;padding:.3mm 1mm}
  .prof-grid{gap:4mm}.fams{columns:3}.mapwrap{border:0;padding:0}
  .two{display:block!important}.two>*+*{margin-top:3mm}.checks{margin:0;padding-left:4mm}.checks li,.ev .row,.change,tr{break-inside:avoid;page-break-inside:avoid}
  .tblwrap{overflow:visible!important}table.map{font-size:7.5pt;border-collapse:collapse;width:100%}table.map td,table.map th{padding:1mm 1.5mm!important;vertical-align:top;line-height:1.3}table.map td:first-child{width:26mm}
  .changes{columns:2;column-gap:6mm}.change{padding:1mm 0!important;margin:0!important;font-size:8pt}.change p{margin:0}
  .faq details{break-inside:avoid;font-size:8.5pt;padding:1.2mm 0!important}.faq summary{font-weight:700;list-style:none;font-size:9pt}.faq summary::-webkit-details-marker,.faq summary::after{display:none}.faq details::details-content{content-visibility:visible!important}
  .listgrid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:1.5mm!important}.listgrid a{padding:1.5mm 2mm!important;border:.5pt solid #bbb!important;border-radius:0}
  .print-foot{break-before:avoid-page;padding-bottom:3mm}
  /* print type scale: body 9pt, lede 9.5pt, headings 17/12.5/10pt, tables and labels smaller */
  .lede,p.lede,.lede p,.lede a,.hero .lede{font-size:9.5pt!important;line-height:1.4!important;max-width:none!important}
  .static p,.prose p,.panel p,.static li,.prose li,.static b,.prose b,#main .wrap>p:not(.eyebrow):not(.srcs),.corr p,.corr b,.group p,.group li{font-size:9pt!important;line-height:1.4!important;max-width:none!important}
  #main li,#main td{font-size:9pt}#main th{font-size:7pt}
  #main li a,#main p a,#main p b{font-size:inherit!important}
  .prose h2,.static h2,.prof-sec h2,#main section h2{font-size:12.5pt!important;line-height:1.2!important;margin-top:3mm!important}.prose h2:first-child,.sec-head h2{margin-top:0!important}#main h3{font-size:10pt!important}#main h4{font-size:8pt!important}
  #main .eyebrow{font-size:6.8pt!important}
  .facts dd,.facts dd a{font-size:8pt!important;line-height:1.4!important}
  table.map td,table.map td a{font-size:7.5pt!important}table.map th{font-size:6.3pt!important}
  .checks li,.ev .row,.ev .v,.change .t,.change p,.faq .a,.faq details p{font-size:8.5pt!important;line-height:1.35!important}
  .card .name,.card .top .name,.pick .firm{font-size:9.5pt!important}.pick .why{font-size:8pt!important}
  .listgrid a b{font-size:9pt!important}.reading a{font-size:9pt!important}.reading .by{font-size:8pt!important}
  .row .n{font-size:14pt!important}.row .l{font-size:8pt!important}.ctas{display:none!important}
}
