:root{
  --paper:#FFFFFF; --surface:#FFFFFF; --surface-2:#F4F4F4;
  --ink:#1C1C1C; --ink-strong:#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:#0F0F0F; --surface:#171717; --surface-2:#202020;
    --ink:#E6E6E6; --ink-strong:#FFFFFF; --ink-2:#D2D2D2; --muted:#9A9A9A; --line:#353535; --line-2:#262626;
    --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:#0F0F0F; --surface:#171717; --surface-2:#202020;
  --ink:#E6E6E6; --ink-strong:#FFFFFF; --ink-2:#D2D2D2; --muted:#9A9A9A; --line:#353535; --line-2:#262626;
  --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:"Google Sans Flex",system-ui,-apple-system,"Avenir Next",Avenir,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:block;line-height:0;text-decoration:none;color:var(--ink)}
.brand .bw,.brand .sm{display:block;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:left center;mask-position:left center;-webkit-mask-size:contain;mask-size:contain}
.brand .bw{width:190px;height:20px;-webkit-mask-image:url(/assets/logo-wordmark.png);mask-image:url(/assets/logo-wordmark.png)}
.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);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;width:58px;height:26px;-webkit-mask-image:url(/assets/logo-mark.png);mask-image:url(/assets/logo-mark.png)}
.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 .bw{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);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;max-width:100%;border-radius:4px;padding:2px 7px;font-family:"IBM Plex Mono",monospace;font-size:10.5px;line-height:1.35;letter-spacing:.04em;text-transform:uppercase;white-space:normal;overflow-wrap:anywhere}
.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}}

/* standards cards (Sid, 2026-10-20): Phosphor thin icon in a card-color tile, a dot of the same color in the corner marks them as the standout cards */
.pick-std{position:relative;padding:20px 20px 18px;gap:10px;grid-template-rows:auto auto 1fr auto auto}
.pick-ic{width:46px;height:46px;border-radius:10px;display:grid;place-items:center;background:var(--card-butter);color:var(--card-ink)}
.pick-ic svg{width:28px;height:28px}
.pick-pip{position:absolute;top:22px;right:22px;width:10px;height:10px;border-radius:50%;background:var(--card-butter);box-shadow:0 0 0 4px color-mix(in srgb,var(--card-butter) 32%,transparent)}
.pick-std.k1 .pick-ic,.pick-std.k1 .pick-pip{background:var(--card-peri)}.pick-std.k1 .pick-pip{box-shadow:0 0 0 4px color-mix(in srgb,var(--card-peri) 32%,transparent)}
.pick-std.k2 .pick-ic,.pick-std.k2 .pick-pip{background:var(--card-rose)}.pick-std.k2 .pick-pip{box-shadow:0 0 0 4px color-mix(in srgb,var(--card-rose) 32%,transparent)}
.pick-std.k3 .pick-ic,.pick-std.k3 .pick-pip{background:var(--card-stone)}.pick-std.k3 .pick-pip{box-shadow:0 0 0 4px color-mix(in srgb,var(--card-stone) 32%,transparent)}
.pick-std .firm{font-size:18px;margin-top:4px}
.pick-std .why{font-size:14px;line-height:1.5}
.pick-go{margin-top:6px;padding-top:12px;border-top:1px solid var(--line);font-size:14px;font-weight:600}
.pick-go a{text-decoration:none}.pick-go a:hover,.pick-go a:focus-visible{text-decoration:underline}
/* full-width rules become content-width (Sid, 2026-10-20): the line sits inside the text column, not edge to edge. The sticky header keeps its full-width line. */
footer,.notice,.hero,section[style*="border-top"]{position:relative}
footer,.notice,section[style*="border-top"]{border-top:0!important}
.hero,.notice{border-bottom:0!important}
footer::before,.notice::before,section[style*="border-top"]::before,.hero::after{content:"";position:absolute;left:50%;transform:translateX(-50%);width:min(1132px,calc(100% - 48px));pointer-events:none}
footer::before,.notice::before,section[style*="border-top"]::before{top:0;border-top:1px solid var(--line)}
.hero::after{bottom:0;border-bottom:1px solid var(--line)}
.hero:has(+ section .spon)::after{display:none}
@media (max-width:1024px){footer::before,.notice::before,section[style*="border-top"]::before,.hero::after{width:calc(100% - 40px)}}
@media print{footer::before,.notice::before,section[style*="border-top"]::before,.hero::after{display:none}}
/* find-a-consultant and keep-your-policies cards: the same space above the first line and below the button */
.cta-con,.cta-am,.cta-help,.cta-claim{padding:21px 22px 22px}
.cta-con .cta-eye,.cta-am .cta-eye,.cta-help .cta-eye,.cta-claim .cta-eye{line-height:1;margin-top:1px}
/* a table inside its bordered wrapper starts at the wrapper's edge, so the header fill meets the border
   (the global table rule's 12px top margin left a white strip above it) */
.tblwrap>table{margin-top:0}
/* footer ownership note: no title, quieter text (Sid, 2026-10-06). Weight stays 400, the lightest the site ships. */
.disclose{--dn:#555555;color:var(--dn)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .disclose{--dn:#ABABAB}}
:root[data-theme="dark"] .disclose{--dn:#ABABAB}
/* state pages: what the filters are showing, and how many rules each industry chip holds at this headcount.
   A chip with none is dimmed, still clickable; its text stays at the muted token so it passes contrast. */
.fcount{font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.02em;color:var(--muted);margin:0}
.tagsrow button .n{font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:500;color:var(--muted)}
.tagsrow button.none{color:var(--muted);border-style:dashed}
.tagsrow button.none::before,.tagsrow button.none .ind{opacity:.35}
.tagsrow button[aria-disabled=true]{cursor:default}
/* the industry color on a group heading (the dot had no size outside a row), the layer labels inside an
   industry group, and the federal block under a state's own rules */
.group h3 .ind{display:inline-block;width:9px;height:9px;border-radius:50%;flex:none;align-self:center}
.group .sub{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin:0;padding:14px 0 6px;border-bottom:1px solid var(--line-2)}
.ob .go .fedgo{display:block;margin-top:4px}
#fed{margin-top:52px}
/* a later block sets these links to nowrap, so this one names the group to win */
@media (max-width:760px){.group .ob .band a{white-space:normal;overflow-wrap:anywhere}.group .ob .band a.obl-report{white-space:nowrap}}
[data-cap="12"] .cards[data-shuffle] > article.card:nth-of-type(n+13),[data-cap="8"] .cards[data-shuffle] > article.card:nth-of-type(n+9){display:none}
.see-all .btn{font-size:16px;padding:12px 20px}
/* card standards beyond the first five (2026-09-26) */
.tags details.more{display:inline-block}
.tags details.more[open]{display:block;flex-basis:100%}
.tags details.more:not([open])>.tag{display:none}
.tags details.more>.tag{display:inline-block;margin:0 5px 5px 0;white-space:nowrap}
.tags details.more>summary{display:inline-block;list-style:none;cursor:pointer;border:1px dashed var(--line-2);border-radius:4px;padding:1px 7px;font-size:12px;color:var(--teal-text);white-space:nowrap}
.tags details.more[open]>summary{margin:0 0 5px}
.tags details.more>summary::-webkit-details-marker{display:none}
.tags details.more>summary .c,.tags details.more[open]>summary .o{display:none}
.tags details.more[open]>summary .c{display:inline}
.tag.hit{background:var(--teal-soft);border-color:var(--teal);color:var(--teal-text);font-weight:600}
/* Self-hosted fonts (Sid, 2026-09-10). Google Sans Flex and IBM Plex Mono, both SIL OFL 1.1; license 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;background:var(--card-stone);color:var(--card-ink);border-radius:4px;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(--card-ink-2);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}
/* Advertise page (2026-09-21): four-column spec, price table, guide-section mock, guide form */
.spec.four td:first-child{width:28%}.spec.four td+td,.spec.four th+th{width:24%}
.ptable td .amt{font-weight:700;white-space:nowrap}.ptable td small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}
.soon{display:inline-block;font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;
  border:1px solid var(--warn);color:var(--warn);border-radius:4px;padding:1px 6px;margin-left:6px;vertical-align:2px}
.guide-sheet{max-width:620px;background:var(--paper);color:var(--ink);border:1px solid var(--line-strong);border-radius:4px;
  padding:26px 30px 22px;box-shadow:var(--shadow)}
.guide-sheet .gs-run{display:flex;justify-content:space-between;font-family:"IBM Plex Mono",monospace;font-size:10.5px;
  letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line-2);padding-bottom:8px;margin-bottom:16px}
.guide-sheet .gs-head{display:flex;gap:14px;align-items:center;margin-bottom:12px}
.guide-sheet .gs-logo{width:64px;height:64px;flex:0 0 64px;border:1px dashed var(--line-strong);border-radius:6px;display:grid;
  place-items:center;font-family:"IBM Plex Mono",monospace;font-size:10px;color:var(--muted);text-align:center}
.guide-sheet h3{margin:0;font-size:20px}.guide-sheet .gs-sub{color:var(--muted);font-size:13px}
.guide-sheet .gs-shot{aspect-ratio:16/10;border:1px dashed var(--line-strong);border-radius:6px;display:grid;place-items:center;
  font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted);margin:12px 0;background:var(--surface-2)}
.guide-sheet p{font-size:14px;line-height:1.55;margin:0 0 10px}
.guide-sheet .gs-foot{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line-2);
  padding-top:10px;margin-top:12px;font-size:12.5px;color:var(--muted)}
.guideform{max-width:560px}
/* Consultant strip between obligation groups (Sid, 2026-09-22): one line, about the height of a group heading */
.obl-strip{display:flex;align-items:center;gap:6px 16px;margin:24px 0 0;padding:8px 14px;border:0;border-radius:4px;background:var(--card-stone);font-size:14px;line-height:1.35;color:var(--card-ink)}
.obl-strip .eye{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--card-ink-2);white-space:nowrap}
.obl-strip p{margin:0;flex:1;min-width:0}
.obl-strip .go{margin-left:auto;white-space:nowrap;font-weight:600;font-size:13.5px;color:var(--card-ink);text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:1px}
.obl-strip .go:hover,.obl-strip .go:focus-visible{color:#000}
.obl-strip.k0{background:var(--card-rose)}.obl-strip.k1{background:var(--card-peri)}.obl-strip.k2{background:var(--card-butter)}.obl-strip.k3{background:var(--card-stone)}
@media (max-width:640px){.obl-strip{flex-wrap:wrap;padding:9px 12px}.obl-strip p{flex-basis:100%}.obl-strip .go{margin-left:0}}
@media print{.obl-strip{display:none!important}}
.press-list{display:grid;gap:10px;margin:14px 0 28px;max-width:760px}.press-item{border:1px solid var(--line);border-radius:10px;padding:14px 18px;display:grid;gap:5px}.press-item .mono{font-size:11.5px;color:var(--muted)}.press-item a{font-weight:600;font-size:16px}.press-empty{border:1px dashed var(--line);border-radius:10px;padding:18px 20px;color:var(--muted);max-width:760px}.press-meta{color:var(--muted);font-size:13.5px;max-width:720px}.press-body p{max-width:720px}.firm-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:18px}.firm-link{display:grid;gap:6px;align-content:start;border:1px solid var(--line);border-radius:10px;padding:16px 18px;color:var(--ink);text-decoration:none}.firm-link:hover{border-color:var(--line-strong)}.firm-link b{font-size:16px}.firm-link span{color:var(--muted);font-size:14px;line-height:1.45}.firm-link em{font-style:normal;font-size:13.5px;color:var(--teal)}.pressform{max-width:760px}.pressform textarea{width:100%;min-height:220px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:6px;padding:10px 12px;font:inherit;margin-top:6px}
/* 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)}
.pf-h1{font-size:clamp(30px,3.6vw,40px)!important;line-height:1.08!important;letter-spacing:-.02em}.pf-lede{margin-top:12px;font-size:18px;line-height:1.5;max-width:620px}
.pf-head{align-items:center;gap:18px}.pf-logo{flex:none;width:176px;height:64px;padding:8px 12px;box-sizing:border-box;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink-strong);display:grid;place-items:center}.pf-logo svg,.pf-logo img{width:100%;height:100%;object-fit:contain;font-family:inherit}
.pf-tools .pf-so{color:var(--ink)}.pf-tools .pf-so:hover{color:var(--ink-strong)}
.contact-card.pf-cc{max-width:300px;width:100%;justify-self:end;padding:16px;gap:8px;border-width:1px;border-radius:12px}
.contact-card.pf-cc .cc-h{font-size:15.5px}.contact-card.pf-cc .cc-book{padding:10px 14px;font-size:14px}.contact-card.pf-cc .cc-row{padding:8px 12px;font-size:14px;gap:10px}.contact-card.pf-cc .cc-row svg{width:18px;height:18px}.contact-card.pf-cc .cc-row small{font-size:10px;margin-bottom:1px}.contact-card.pf-cc .reveal{font-size:13px;padding:3px 9px}
.pf-prose p{max-width:680px;line-height:1.6}.pf-prose p+p{margin-top:10px}
.pf-price{list-style:none;margin:0;padding:0;max-width:680px;border-top:1px solid var(--line-2)}.pf-price li{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--line-2);font-size:15px}.pf-price b{font-weight:600;text-align:right}
.pf-pnote{margin-top:10px!important;font-size:14px;color:var(--ink-2);max-width:680px}
@media (max-width:900px){.contact-card.pf-cc{justify-self:stretch;max-width:none}}
@media (max-width:520px){.pf-head{flex-direction:column;align-items:flex-start;gap:12px}}
.pf-svcs{display:flex;flex-wrap:wrap;gap:8px}.pf-svc{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:8px;background:var(--surface-2);border:1px solid var(--line);font-size:14.5px;font-weight:500;color:var(--ink-strong)}.pf-svc:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--teal)}
.pf-std{display:grid;gap:0;border-top:1px solid var(--line-2)}.pf-std-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--line-2)}
.pf-std-k{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.pf-std-l{display:flex;flex-wrap:wrap;gap:8px}
.pf-std-l a{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);text-decoration:none;color:var(--ink);font-size:14px;font-weight:500;transition:border-color .15s}
.pf-std-l a span{color:var(--muted);transition:transform .15s}.pf-std-l a:hover{border-color:var(--ink-2)}.pf-std-l a:hover span{transform:translateX(2px);color:var(--ink)}
@media (max-width:640px){.pf-std-row{grid-template-columns:1fr;gap:8px}}
.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)}
.navlinks a{white-space:nowrap}
/* listing card: website-checked date bottom right, small (2026-09-27) */
.card .side.has-chk{display:flex;flex-direction:column;gap:8px}
.card .side .chk-foot{margin-top:auto;align-self:flex-end;border:0;padding:0;font-size:10px;letter-spacing:0;white-space:nowrap;color:var(--muted);background:none}
/* articles index (2026-09-27) */
.afilters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 18px}
.afl{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:4px}
.afilt{font:inherit;font-size:14px;padding:7px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);cursor:pointer}
.afilt small{margin-left:4px;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted)}
.afilt:hover{border-color:var(--ink)}.afilt[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.afilt[aria-pressed="true"] small{color:inherit;opacity:.75}
.ashow{margin-left:auto;font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--muted)}
.agrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.acard{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface);text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:border-color .15s,transform .15s}
.acard:hover{border-color:var(--ink);transform:translateY(-2px)}.acard[hidden]{display:none}
.ac-img{display:block;aspect-ratio:16/9;background:var(--art,var(--surface-2));border-bottom:4px solid var(--art,var(--line))}
.adot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px;vertical-align:1px}
.ac-foot .tag{border-color:var(--art);color:var(--art)}.ac-img img{display:block;width:100%;height:100%;object-fit:cover}
.ac-body{display:flex;flex-direction:column;gap:8px;padding:16px 16px 18px;flex:1}
.ac-meta{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.ac-title{font-size:18px;line-height:1.28;letter-spacing:-.01em}
.ac-dek{font-size:14px;line-height:1.5;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.ac-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:8px}
.ac-read{font-weight:600;font-size:14.5px;white-space:nowrap}
@media (max-width:1100px){.agrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){.agrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.agrid{grid-template-columns:1fr}.ac-title{font-size:20px}.ashow{margin-left:0;flex-basis:100%}}
/* individual consultant profile (2026-09-27) */
.pp-head{display:flex;gap:20px;align-items:center;margin-top:10px}.pp-head h1{margin:0}
.pp-photo{display:block;width:144px;height:144px;border-radius:16px;object-fit:cover;border:1px solid var(--line);background:var(--surface-2);flex:none}
.pp-role{margin:6px 0 0;font-size:18px;line-height:1.35;color:var(--ink-2)}
.pp-loc{margin:6px 0 0;font-family:"IBM Plex Mono",monospace;font-size:12px;line-height:1.6;color:var(--muted)}
.pp-flags{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0}
.badge.open{background:var(--ok-soft);color:var(--ok)}
.pp-links{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
.pp-links a{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;font-size:14px;text-decoration:none;color:var(--ink);background:var(--surface)}
.pp-links a:hover{border-color:var(--ink)}
.pp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;max-width:860px}
.pp-stats div{background:var(--surface);padding:14px 16px}.pp-stats b{display:block;font-size:22px;letter-spacing:-.02em;color:var(--ink)}
.pp-stats span{display:block;margin-top:2px;font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.pp-exp,.pp-write{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.pp-exp li{display:grid;grid-template-columns:120px 1fr;gap:14px}.pp-exp .yr{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--muted);padding-top:3px}
.pp-exp b{display:block;color:var(--ink)}.pp-exp small,.pp-write small{display:block;margin-top:2px;font-size:14px;color:var(--ink-2)}
.pp-get{border:1px dashed var(--line-2);border-radius:12px;padding:16px 18px;max-width:720px;box-sizing:border-box;font-size:14px}
.pp-get h2{font-size:18px}.pp-get .eyebrow{font-size:10.5px}.pp-get .btn{padding:8px 14px;font-size:14px}
.ps-get{margin:0 auto}
.pp-price{margin:6px 0 0;font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--ink)}.pp-price small{margin-left:10px;font-size:14px;font-weight:500;color:var(--muted)}
.pp-inc{margin:10px 0 0;padding-left:18px;display:grid;gap:2px;font-size:14px}
.pp-std td:first-child{white-space:nowrap}
.ps-card{max-width:720px;margin:0 auto;border:1px solid var(--line);border-radius:16px;padding:26px;background:var(--surface);box-shadow:var(--shadow);box-sizing:border-box}
.ps-card .pp-head{margin-top:0}.ps-card .pp-photo{width:120px;height:120px}
.ps-about{margin:16px 0 0;font-size:16.5px;line-height:1.55}
.ps-stats{margin-top:18px}
.ps-row{margin-top:18px}.ps-row h2{margin:0 0 8px;font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.ps-row .chips{margin-top:0}.ps-row p{margin:0}
.ps-chk{color:var(--ok)}
.ps-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.ps-cta .btn{font:inherit;font-size:15px;font-weight:600;padding:10px 16px;cursor:pointer}
.ps-card .note{margin-top:16px;font-size:12.5px;line-height:1.5;color:var(--muted)}
.ps-badge{max-width:720px;margin:0 auto}.ps-badge h2{font-size:20px;margin:0 0 10px}
.pp-get a:not(.btn){color:inherit}
@media (max-width:600px){.ps-card{padding:18px}.ps-card .pp-photo{width:88px;height:88px}.ps-cta .btn{flex:1 1 100%;justify-content:center}}
@media (max-width:600px){.pp-stats div:last-child:nth-child(odd){grid-column:1/-1}.pp-head{align-items:flex-start;gap:14px}.pp-photo{width:96px;height:96px;border-radius:12px}.pp-exp li{grid-template-columns:1fr;gap:2px}.pp-price small{display:block;margin:2px 0 0}}
.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);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-pair.one{grid-template-columns:1fr}
/* consultant box in the right-hand column of explainers and articles (2026-09-29): follows the reader down the page */
/* overflow-x:hidden on both html and body makes body a scroll box, which breaks every position:sticky on the site;
   clip cuts the overflow the same way without that side effect (browsers without clip keep the hidden rule) */
html,body{overflow-x:clip}
.prose>.side:has(.side-con){align-self:stretch;align-content:start}
.side-con{position:sticky;top:88px;margin-top:18px}
@media (max-width:900px){.side-con{position:static}}.side-con .cta{padding:18px}.side-con .cta h3{font-size:18px}.side-con .cta-foot{flex-wrap:wrap;gap:10px}
.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{background:var(--teal-soft)}
.cta-am .cta-eye{color:var(--teal-text)}
.cta-help{background:var(--surface-2)}.cta-help .cta-eye{color:var(--muted)}.cta-con{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}}
/* CTA cards (Sid, 2026-10-06): one solid muted color per card, squarer corners, the sizes they already had.
   No list of allowed colors existed, so this is it: butter, periwinkle, rose, stone. The fill is the same in
   light and dark, so text and button colors are fixed here instead of following the theme. */
:root{--card-butter:#F3D27C;--card-peri:#BEC8FF;--card-rose:#F2C7C9;--card-stone:#E6DFD0;--card-ink:#101010;--card-ink-2:rgba(16,16,16,.74)}
.cta-con,.cta-am,.cta-help{border:0;border-radius:4px;color:var(--card-ink)}
.cta-con{background:var(--card-butter)}.cta-am{background:var(--card-peri)}.cta-help{background:var(--card-stone)}
:is(.cta-con,.cta-am,.cta-help) :is(h3,p){color:var(--card-ink)}
:is(.cta-con,.cta-am,.cta-help) :is(.cta-eye,.cta-adlabel,.cta-fine){color:var(--card-ink-2)}
:is(.cta-con,.cta-am,.cta-help) .cta-adlabel:is(:hover,:focus-visible){color:var(--card-ink)}
:is(.cta-con,.cta-am,.cta-help) .btn{background:var(--card-ink);color:#fff;border-color:var(--card-ink)}
:is(.cta-con,.cta-am,.cta-help) .btn:hover{background:#000;border-color:#000}
:is(.cta-con,.cta-am,.cta-help) .cta-tag{background:var(--card-ink);color:#fff}
/* Ad typeface (Sid, 2026-10-07): ads are set in Source Serif 4 (headline) and Manrope (copy, button, fine print), never in the
   site's own faces. Slot labels, eyebrows and the Sponsored tag stay in the site mono. Both fonts are SIL OFL 1.1, self-hosted;
   license texts ship in /assets/fonts/. */
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;src:url('/assets/fonts/manrope-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}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/source-serif-4-400-700-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}
:root{--ad-head:"Source Serif 4",Georgia,"Times New Roman",serif;--ad-text:Manrope,"Helvetica Neue",Arial,sans-serif}
:is(.cta-con,.cta-am,.cta-help,.cta-claim) h3{font-family:var(--ad-head);font-weight:600}
:is(.cta-con,.cta-am,.cta-help,.cta-claim) :is(p:not(.cta-eye),.btn,.cta-fine,.cta-adlabel){font-family:var(--ad-text)}
:is(.cta-con,.cta-am,.cta-help) .btn{font-weight:700}
:is(.cta-con,.cta-am,.cta-help) .cta-fine{font-size:11.5px;letter-spacing:0}
:is(.cta-con,.cta-am,.cta-help) .cta-adlabel{font-size:12px;font-weight:500;letter-spacing:0}
.obl-strip :is(p,.go){font-family:var(--ad-text)}
.spon-card .own p{font-family:var(--ad-text)}
/* Partner with AllyMatter: deliberate exception to the no-AM-orange rule (Sid, 2026-09-10).
   #EC7C3C is allymatter.com's primary brand color. Single look in both themes, so every color 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)}
.badge.chk{background:transparent;color:var(--muted);border:1px solid var(--line)}
.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}
/* bare paragraphs in the side box (the plain-English pages' next-step box) take the same 18px inset as the rows */
.facts>p{margin:0;padding:12px 18px 0;font-size:14px;line-height:1.55}
.list-note{font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:var(--muted);margin:0 0 10px}
.card .price{overflow-wrap:break-word}
.cards.spon-group{margin-bottom:22px}
.facts>p+p{padding-top:8px}
.facts>p:last-child{padding-bottom:16px}
.facts>p+dl{margin-top:14px;border-top:1px solid var(--line-2)}
.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)}
.ob .obl-link{opacity:0;margin-left:5px;font-size:10px;color:var(--muted);text-decoration:none;vertical-align:middle;transition:opacity .12s}
.ob:hover .obl-link,.ob:target .obl-link{opacity:1}
.ob:target{outline:2px solid var(--teal,#1b9e78);outline-offset:3px;border-radius:4px}
.ob .obl-report{margin-left:auto!important;opacity:.3;border-bottom:0!important;font-style:italic;white-space:nowrap}
@media(hover:none){.ob .obl-report{opacity:.3}}
.ob:hover .obl-report,.ob .obl-report:focus{opacity:1;border-bottom:1px solid var(--line)!important}
.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:block;font-family:"IBM Plex Mono",monospace;font-size:11px;line-height:1.45;color:var(--muted);margin-top:3px}
.feegrid a{height:auto;min-height:0}
.feegrid a small{display:block;-webkit-line-clamp:unset;overflow:visible}
.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}
/* text pages (methodology, terms, privacy...): headings in proportion to the body (Sid, 2026-10-01) */
.hero-static{padding-bottom:18px}.hero-static h1{font-size:clamp(30px,3.4vw,40px);line-height:1.1}.hero-static .lede{font-size:18px;line-height:1.5;margin-top:12px}
.hero-static+.static,.hero-static+*+.static{padding-top:24px}
.static .wrap>h2{font-size:22px;line-height:1.25;letter-spacing:-.01em;margin:38px 0 0}.static .wrap>h2:first-child{margin-top:0}
.static .wrap>p,.static .wrap>ul>li,.static .wrap>ol>li{font-size:16px;line-height:1.65}.static .wrap>ul,.static .wrap>ol{margin-top:10px}.static .wrap>ul>li+li{margin-top:6px}
.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%}
/* On a phone the subscribe sheet measured 340px tall, 51% of a 664px viewport, arriving 10s after
   a search visitor lands. That is the interstitial pattern Google demotes, and search traffic is what
   every placement here is priced on. The category chips are already pre-checked from the page, so the
   sheet asks the same question without them and lands near a fifth of the screen instead of half. */
.pop.sub{padding:14px 16px;bottom:12px;width:calc(100% - 24px)}
.pop.sub .cats,.pop.sub .fine{display:none}
.pop.sub h4{font-size:15.5px;margin-bottom:4px}
.pop.sub p{font-size:12.5px;margin-bottom:8px}}
@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}}
/* the burger styles run to 900px, so the inline menu starts at 901px; at 761 to 900 there was no menu at all (2026-09-27) */
@media (min-width:901px){.navlinks{display:flex}.navburger{display:none}}
header.nav .btn{white-space:nowrap}
@media (min-width:901px) and (max-width:1120px){.navlinks{gap:14px}.navlinks a{font-size:14.5px}}
.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:0;background:var(--card-rose);color:var(--card-ink);padding:18px 20px;border-radius:4px;margin-top:10px}
.cta-claim .cta-eye{color:var(--card-ink-2)}
.cta-claim h3,.cta-claim .link{color:var(--card-ink)}.cta-claim .link{font-weight:600;text-decoration:underline;text-underline-offset:3px}
.cta-claim .btn{background:var(--card-ink);color:#fff;border-color:var(--card-ink)}.cta-claim .btn:hover{background:#000;border-color:#000}
.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(--card-ink)}
.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}
.src-h{font-size:17px;line-height:1.3;margin:0 0 10px}
.hbadge{display:inline-block;vertical-align:middle;margin-left:8px;font-size:12px;font-weight:600;letter-spacing:0;padding:3px 9px;border-radius:12px;background:var(--surface-2);color:var(--ink-2)}
.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}
/* a wide table must scroll inside its .tblwrap, not widen the grid column (4-column tables pushed phones to 395px) */
.prose>.static,.prose>.side{min-width:0}
/* banner sits above the headline (Sid, 2026-09-25) */
.hero .wrap>.arthead:first-child{margin-top:0;margin-bottom:0}
.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(0,0,0,.18);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}
}
/* "What are others saying?": each view's source link. Under the paragraph by default; on wide screens it hangs
   in the left margin beside its paragraph, the way the row labels do on state pages (Sid, 2026-10-06). The grid
   row is as tall as the taller of the two, so a long title never runs into the next view. */
.view{margin-top:12px}
.view>p:first-child{margin-top:0}
.view .srcnote{font-size:12px;margin-top:-4px}
@media (min-width:1470px){
 /* the note takes what the page margin allows: 112px at 1470 wide, up to 168px on larger screens */
 .view{--sn:clamp(112px,calc((100vw - 1132px)/2 - 57px),168px);display:grid;grid-template-columns:var(--sn) minmax(0,1fr);column-gap:24px;margin-left:calc(-24px - var(--sn))}
 .view>p:first-child{grid-column:2;grid-row:1}
 .view .srcnote{grid-column:1;grid-row:1;margin:0;padding-top:5px;font-size:11px;line-height:1.45;text-align:right;overflow-wrap:break-word}
}

h1,h2,h3,h4,h5{color:var(--ink-strong)}

.tools .sb{--sb:var(--ink-strong);--sb-soft:var(--surface-2);color:var(--sb)}
.tools .sb[data-share="linkedin"]{--sb:#0A66C2;--sb-soft:#E8F1FB}
.tools .sb[data-share="bluesky"]{--sb:#1185FE;--sb-soft:#E7F2FF}
.tools .sb[data-share="email"]{--sb:var(--teal-text);--sb-soft:var(--teal-soft)}
.tools .sb:hover{border-color:var(--sb);background:var(--sb-soft)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .tools .sb[data-share="linkedin"]{--sb:#4C9BE8;--sb-soft:#12243A}
:root:not([data-theme="light"]) .tools .sb[data-share="bluesky"]{--sb:#4AA3FF;--sb-soft:#10243D}}
:root[data-theme="dark"] .tools .sb[data-share="linkedin"]{--sb:#4C9BE8;--sb-soft:#12243A}
:root[data-theme="dark"] .tools .sb[data-share="bluesky"]{--sb:#4AA3FF;--sb-soft:#10243D}

.pidx-jump{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 30px}
.pidx-jump a{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-size:13.5px;color:var(--ink)}
.pidx-jump a:hover{border-color:var(--c)}
.pidx-jump i,.pidx-g h2 i{width:8px;height:8px;border-radius:2px;background:var(--c);display:inline-block}
.pidx-jump span{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted)}
.pidx-g{border-top:2px solid var(--c);margin:0 0 30px;padding:0;scroll-margin-top:90px}
.pidx-g h2{display:flex;align-items:center;gap:10px;font-size:17px;margin:14px 0 6px;letter-spacing:-.01em}
.pidx-g h2 span{font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:400;color:var(--muted)}
.pidx-r{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) 72px 22px;gap:18px;align-items:center;padding:13px 6px;border-bottom:1px solid var(--line-2);text-decoration:none;color:var(--ink);transition:background .15s}
.pidx-r:hover{background:var(--surface-2)}
.pidx-r b{font-size:15.5px;font-weight:600;letter-spacing:-.005em}
.pidx-r .rq{font-size:13.5px;color:var(--ink-2)}
.pidx-r .n{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted);text-align:right}
.pidx-r .ar{color:var(--c);transition:transform .15s}
.pidx-r:hover .ar{transform:translateX(3px)}
@media (max-width:720px){.pidx-r{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px}.pidx-r b{grid-column:1/2}.pidx-r .ar{grid-column:2;grid-row:1}
.pidx-r .rq{grid-column:1/2;font-size:13px}.pidx-r .n{grid-column:2;grid-row:2;text-align:right}}

.tl-c{--cc:var(--c)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .tl-c{--cc:var(--cd)}}
:root[data-theme="dark"] .tl-c{--cc:var(--cd)}
.tl-jump{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}
.tl-jump a{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-size:13.5px;color:var(--ink)}
.tl-jump a:hover{border-color:var(--cc)}
.tl-jump i,.tl-g h3 i{width:8px;height:8px;border-radius:2px;background:var(--cc);display:inline-block;flex:none}
.tl-jump span{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted)}
.tl-pub{display:flex;justify-content:space-between;align-items:center;gap:6px 18px;flex-wrap:wrap;padding:14px 16px;border:1px solid var(--line);border-radius:10px;margin:0 0 26px;text-decoration:none;color:var(--ink);background:var(--surface)}
.tl-pub b{font-size:15.5px}.tl-pub small{display:block;color:var(--ink-2);font-size:13.5px;margin-top:2px}
.tl-pub em{font-style:normal;font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.tl-g{border-top:2px solid var(--cc);margin:0 0 26px;scroll-margin-top:90px}
.tl-g h3{display:flex;align-items:center;gap:10px;font-size:16.5px;margin:13px 0 2px}
.tl-g h3 span,.tl-sub{font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:400;color:var(--muted)}
.tl-sub{margin:0 0 6px 18px}
.tl-r{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.5fr) 118px 18px;gap:18px;align-items:center;padding:11px 6px;border-bottom:1px solid var(--line-2);text-decoration:none;color:var(--ink);transition:background .15s}
.tl-r:hover{background:var(--surface-2)}
.tl-r b{font-size:15px;font-weight:600;min-width:0;overflow-wrap:anywhere}
.tl-r .lo{display:block;font-family:"IBM Plex Mono",monospace;font-size:10.5px;color:var(--muted);margin-top:2px;font-weight:400}
.tl-r .ds{font-size:13.5px;color:var(--ink-2)}
.tl-r .pr{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted);text-align:right}
.tl-r .pr.p{color:var(--ink)}
.tl-r .ar{color:var(--cc);transition:transform .15s}.tl-r:hover .ar{transform:translateX(3px)}
/* Category colors as text, light mode only: one shade darker so arrows and tags clear 4.5:1 on white and on the light grey cards (2026-10-13). Dark mode: a lighter tint of the same color. */
:root:not([data-theme="dark"]) .pidx-r .ar{color:color-mix(in srgb,var(--c) 80%,#000)}
:root:not([data-theme="dark"]) .tl-r .ar{color:color-mix(in srgb,var(--cc) 80%,#000)}
:root:not([data-theme="dark"]) .ac-foot .tag{color:color-mix(in srgb,var(--art) 80%,#000)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pidx-r .ar{color:color-mix(in srgb,var(--c) 62%,#fff)}:root:not([data-theme="light"]) .tl-r .ar{color:color-mix(in srgb,var(--cc) 62%,#fff)}:root:not([data-theme="light"]) .ac-foot .tag{color:color-mix(in srgb,var(--art) 62%,#fff)}}
:root[data-theme="dark"] .pidx-r .ar{color:color-mix(in srgb,var(--c) 62%,#fff)}:root[data-theme="dark"] .tl-r .ar{color:color-mix(in srgb,var(--cc) 62%,#fff)}:root[data-theme="dark"] .ac-foot .tag{color:color-mix(in srgb,var(--art) 62%,#fff)}
.tl-clip>.tl-r:nth-child(n+7){display:none}
.tl-more{background:none;border:0;padding:11px 6px;font:inherit;font-size:13.5px;font-weight:600;color:var(--cc);cursor:pointer}
@media (max-width:720px){.tl-r{grid-template-columns:minmax(0,1fr) auto;gap:3px 12px}.tl-r .ds{grid-column:1/2;font-size:13px}.tl-r .pr{grid-column:2;grid-row:1}.tl-r .ar{display:none}}
@media print{.tl-clip>.tl-r:nth-child(n+7){display:grid}.tl-more,.tl-jump{display:none}}

.stp-sec{padding-top:0}
.stp{--sp:#F6F4EF;--sb:#1A4BFF;--sr:#B5402F;--sl:#DAD7D0;margin:0;background:var(--sp);border:1px solid var(--sl);border-radius:12px;padding:26px 28px 20px;color:var(--ink)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .stp{--sp:#161616;--sb:#6B8CFF;--sr:#E0705C;--sl:#2C2C2C}}
:root[data-theme="dark"] .stp{--sp:#161616;--sb:#6B8CFF;--sr:#E0705C;--sl:#2C2C2C}
.stp-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:baseline;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 18px}
.stp-brand{font-family:"Google Sans Flex",system-ui,sans-serif;font-weight:800;font-size:15px;letter-spacing:-.02em;text-transform:none;color:var(--ink-strong)}
.stp-h{font-size:clamp(26px,3.4vw,40px);line-height:1.12;letter-spacing:-.025em;font-weight:800;margin:0 0 14px;text-transform:uppercase;color:var(--ink-strong)}
.stp-h mark{background:var(--sb);color:#fff;padding:0 .18em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.stp-lede{font-size:17px;line-height:1.5;max-width:70ch;margin:0 0 20px;color:var(--ink)}
.stp-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:2px solid var(--ink-strong);border-bottom:1px solid var(--sl)}
.stp-t{display:grid;gap:5px;align-content:start;padding:16px 16px 16px 0;border-right:1px solid var(--sl)}.stp-t:last-child{border-right:0}.stp-t+.stp-t{padding-left:16px}
.stp-l{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.stp-v{font-family:"IBM Plex Mono",monospace;font-size:clamp(26px,2.8vw,36px);font-weight:600;letter-spacing:-.02em;line-height:1.05}
.stp-blue{color:var(--sb)}.stp-red{color:var(--sr)}.stp-ink{color:var(--ink-strong)}
.stp-s{font-size:13px;line-height:1.4;color:var(--ink-2)}
.stp-foot{display:flex;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;align-items:flex-end;border-top:1px solid var(--sl);margin-top:14px;padding-top:12px;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--muted)}
.stp-handles{font-weight:600;color:var(--ink-strong)}.stp-src{text-align:right;max-width:60ch;line-height:1.5}.stp-src a{color:inherit}
@media (max-width:760px){.stp{padding:20px 16px 16px}.stp-tiles{grid-template-columns:1fr 1fr}.stp-t{border-right:0;padding-left:0!important;border-bottom:1px solid var(--sl)}.stp-t:nth-child(odd){border-right:1px solid var(--sl);padding-right:12px}.stp-t:nth-child(even){padding-left:12px!important}
.stp-src{text-align:left}}
@media print{.stp{break-inside:avoid;border:1px solid #000}}

/* compliance checklist (2026-10-17): card palette only, no bands or stripes */
.hero .wrap.ck-wrapline{display:block}
.ck-cta{position:relative;overflow:hidden;margin:30px 0 0;padding:44px 48px 44px;border-radius:8px;background:#111;color:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:40px}
.ck-cta>h2,.ck-cta>p{grid-column:1}.ck-cta>.ck-go{grid-column:2;grid-row:1/3;align-self:center;margin-top:0}
.ck-cta::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.2) 1.1px,transparent 1.6px);background-size:18px 18px;background-position:9px 9px;
  -webkit-mask-image:linear-gradient(105deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.3) 45%,#000 100%);mask-image:linear-gradient(105deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.3) 45%,#000 100%)}
.ck-cta>*{position:relative}
.ck-ic{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:var(--card-butter);color:var(--card-ink)}.ck-ic svg{width:22px;height:22px}
.ck-cta h2{display:flex;align-items:center;gap:14px;margin:0 0 10px;font-size:26px;line-height:1.15;letter-spacing:-.02em;color:#fff}
.ck-cta p{margin:0;max-width:62ch;font-size:16px;line-height:1.55;color:rgba(255,255,255,.78)}
.ck-go{display:flex;align-items:center;flex-wrap:wrap;gap:14px 22px;margin-top:30px}
.ck-go .btn{white-space:nowrap;background:var(--card-butter);color:var(--card-ink);border:1px solid var(--card-butter)}.ck-go .btn:hover,.ck-go .btn:focus-visible{background:#F7DE9A;border-color:#F7DE9A;color:var(--card-ink)}
.ck-seven{display:flex;align-items:center;gap:10px;font-size:13px;color:rgba(255,255,255,.7)}
.ck-dots{display:inline-flex;gap:5px}.ck-dots i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.25)}.ck-dots i.on{background:var(--card-butter)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .ck-cta{background:#161616;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}}
:root[data-theme="dark"] .ck-cta{background:#161616;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
@media(min-width:901px){.ck-go .ck-seven{order:-1}}
@media(max-width:900px){.ck-cta{grid-template-columns:1fr}.ck-cta>.ck-go{grid-column:1;grid-row:auto;margin-top:24px}}
@media(max-width:760px){.ck-cta{padding:26px 22px 24px}.ck-cta h2{font-size:22px;align-items:flex-start}.ck-cta p{font-size:15px}}
@media print{.ck-cta,.ck-strip{display:none!important}}
.ck-strip{display:flex;align-items:center;gap:6px 16px;margin:24px 0 14px;padding:10px 14px;border-radius:4px;background:var(--card-rose);color:var(--card-ink);font-size:14px;line-height:1.35}
.ck-strip p{margin:0;flex:1;min-width:0;color:var(--card-ink)}.ck-strip .go{margin-left:auto;white-space:nowrap;font-weight:600;font-size:13.5px;color:var(--card-ink);text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:1px}
@media(max-width:640px){.ck-cta{flex-direction:column;align-items:flex-start;padding:18px 16px}.ck-strip{flex-wrap:wrap;padding:10px 12px}.ck-strip p{flex-basis:100%}.ck-strip .go{margin-left:0}}
@media print{.ck-cta,.ck-strip{display:none!important}}
.ck-line{margin:14px 0 0;font-size:14.5px;line-height:1.5}.ck-line a{font-weight:600}.ck-line span{color:var(--muted)}
.ck-wrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;align-items:start}.ck-aside h2{font-size:17px;margin:0 0 8px}.ck-aside h2+p,.ck-aside p{font-size:14.5px;line-height:1.55;margin:0 0 6px;color:var(--ink-2)}.ck-aside ol{margin:0 0 22px;padding-left:20px;font-size:14.5px;line-height:1.55;color:var(--ink-2)}.ck-aside ol li{margin:0 0 6px}.ck-aside .ck-aside-sec{margin-top:22px}.ck-aside ul{list-style:none;margin:0;padding:0}.ck-aside ul li{margin:0 0 6px;font-size:14.5px;line-height:1.5}.ck-aside ul a{font-weight:600}.ck-aside ul small{display:block;color:var(--muted);font-size:13px}
.ck-app{max-width:820px;margin:0 0 10px;padding:22px 24px 20px;border:1px solid var(--line);border-radius:4px;background:var(--surface,#fff)}
.ck-steps{display:flex;gap:5px;margin:0 0 18px;padding:0;list-style:none}.ck-steps li{flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis;text-align:center;font-size:12.5px;line-height:1;padding:8px 6px;border-radius:4px;background:var(--surface-2);color:var(--muted);white-space:nowrap}.ck-steps li[aria-current]{background:var(--ink,#101010);color:#fff}.ck-steps li.done{background:var(--card-stone);color:var(--card-ink)}.ck-stepno-sm{display:none}
.ck-stepno{margin:12px 0 0;font-size:13px;color:var(--muted)}.ck-h{margin:0 0 6px;font-size:24px;outline:none}
.ck-q{margin:18px 0 0}.ck-ql{margin:0 0 6px;font-weight:600;font-size:15.5px}.ck-q-sm .ck-ql{font-size:14px;font-weight:500}.ck-hint{margin:-2px 0 8px;font-size:13px;color:var(--muted)}
.ck-opts{display:grid;gap:6px}.ck-opts.ck-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.ck-opts.ck-grid .ck-opt{padding:9px 11px}.ck-opt{display:flex;gap:10px;align-items:flex-start;padding:9px 11px;border:1px solid var(--line);border-radius:4px;cursor:pointer;font-size:14.5px;line-height:1.4}
.ck-opt:hover{border-color:var(--line-strong)}.ck-opt input{margin:3px 0 0;flex:none;width:16px;height:16px}.ck-opt:has(input:checked){border-color:var(--ink,#101010);box-shadow:inset 0 0 0 1px var(--ink,#101010)}
.ck-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:6px;padding:2px}.ck-states{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px;max-height:320px;overflow-y:auto;padding:2px}
.ck-st{padding:7px 9px;font-size:13.5px}.ck-filter,.ck-sel,.ck-text,.ck-lab textarea,.ck-lab input{display:block;width:100%;box-sizing:border-box;margin:0 0 8px;padding:9px 10px;border:1px solid var(--line-strong);border-radius:4px;font:inherit;background:var(--bg,#fff);color:inherit}
.ck-lab{display:block;font-weight:600}.ck-lab textarea,.ck-lab input{margin-top:6px;font-weight:400}.ck-req{font-weight:400;color:var(--muted);font-size:12px}
.ck-fu{margin:14px 0 0;padding:12px 14px 14px;border:0;border-radius:4px;background:var(--card-stone);color:var(--card-ink)}.ck-fu legend{padding:0;font-weight:600;font-size:14px;float:left;width:100%;margin-bottom:2px}
.ck-fu .ck-opt{background:#fff;color:var(--card-ink);border-color:rgba(16,16,16,.18)}.ck-fu .ck-opts{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
.ck-err{min-height:1.2em;margin:12px 0 0;color:var(--warn,#C8206A);font-size:14px}
.ck-nav{display:flex;justify-content:space-between;gap:10px;margin-top:6px}.ck-gate{margin-top:18px}.ck-disc{margin:14px 0 0;font-size:13px;line-height:1.55;color:var(--muted)}
.ck-liab{align-items:flex-start!important;padding:12px 14px;border-radius:4px;background:var(--card-butter);color:var(--card-ink)!important;line-height:1.5}.ck-liab input{margin-top:3px!important}.ck-liab .req{color:var(--card-ink-2)!important}
.ck-actions{margin:12px 0 0}.ck-actions button[disabled]{opacity:.45;cursor:not-allowed}.ck-msg{margin-left:10px;font-size:13px;color:var(--muted)}
.ck-done p{font-size:15.5px;line-height:1.55}
.ck-tbl{width:100%;border-collapse:collapse;font-size:14px;margin:10px 0 18px}.ck-tbl th,.ck-tbl td{text-align:left;vertical-align:top;padding:8px 10px;border-top:1px solid var(--line)}.ck-tbl th{font-weight:600}
.ck-tblw{overflow-x:auto}.ck-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin:12px 0 20px}
.ck-cards a{display:block;padding:14px 16px;border-radius:4px;background:var(--card-peri);color:var(--card-ink);text-decoration:none}.ck-cards a.lead{grid-column:1/-1;background:var(--card-butter);padding:20px 22px}.ck-cards a.lead b{font-size:19px}.ck-cards a.lead small{font-size:14.5px;max-width:64ch}.ck-cards a b{display:block;margin-bottom:4px}.ck-cards a small{color:var(--card-ink-2);font-size:13px;line-height:1.45}
@media(max-width:960px){.ck-wrap{grid-template-columns:1fr;gap:28px}.ck-aside{border-top:1px solid var(--line);padding-top:22px}}
@media(max-width:600px){.ck-app{padding:16px 14px}.ck-h{font-size:21px}.ck-states{grid-template-columns:1fr 1fr}.ck-fu .ck-opts{grid-template-columns:1fr 1fr}.ck-opts.ck-grid{grid-template-columns:1fr 1fr}.ck-types{grid-template-columns:1fr}.ck-steps{display:none}.ck-stepno-sm{display:block;margin:0 0 12px;font-size:13px;color:var(--muted)}}

/* audit day pages (2026-10-19): card palette only, no bands or stripes */
.ck-cards small{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.au-grid{display:grid;gap:10px;margin:12px 0 22px}.au-item{padding:14px 16px;border:1px solid var(--line);border-radius:4px;background:var(--surface,#fff)}
.au-item h3{margin:0 0 6px;font-size:16.5px;line-height:1.3}.au-item p{margin:0 0 6px;font-size:14.5px;line-height:1.55;color:var(--ink-2)}.au-item p:last-child{margin-bottom:0}
.au-fig{margin:0 0 6px!important;font-size:15.5px!important;color:var(--ink)!important}.au-fig span{margin-left:8px;font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--muted)}
.au-src{font-size:13px!important}.au-cite{margin-right:12px;color:var(--muted)}.au-meta{font-size:13.5px;line-height:1.5;color:var(--muted)}
.au-tbl td.au-d{white-space:nowrap}.au-st{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600;color:var(--card-ink)}
.au-st.au-done{background:var(--card-stone)}.au-st.au-scheduled{background:var(--card-peri)}.au-st.au-expected{background:var(--card-butter)}
.au-src-list{margin:8px 0 0;padding:0;list-style:none;font-size:13px;line-height:1.7;overflow-wrap:anywhere}.au-src-list span{color:var(--muted)}
.rc-list{margin:10px 0 0;padding:0 0 0 18px;font-size:14px;line-height:1.55}.rc-list li{margin:0 0 6px}.rc-list span a{font-family:"IBM Plex Mono",monospace;font-size:12px;margin-right:8px}
@media print{.au-item{break-inside:avoid}}

/* 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}
  main p,main li,main dd,main td,main h1,main h2,main h3,.static a,.prose a{overflow-wrap:anywhere}
.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}
}
