@font-face{font-family:"Manrope";font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/manrope-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Literata";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/literata-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Literata";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/literata-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Manrope";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/manrope-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Manrope";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/manrope-latin-700-normal.woff2) format("woff2")}
:root{--f-display:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--f-body:"Literata",Georgia,"Times New Roman",serif;--f-ui:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--f-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--radius:14px;--h1-track:-0.035em;--h1-weight:800;--h1-style:normal;--paper:#F1F5F2;--sheet:#FFFFFF;--ink:#15241C;--ink-2:#4D6156;--rule:#D2DFD6;--band:#15241C;--band-ink:#E6F1EA;}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--paper:#0D1611;--sheet:#142019;--ink:#E4EFE8;--ink-2:#9DB5A7;--rule:#28392F;--band:#08100B;--band-ink:#E4EFE8;--accent:var(--accent-d);color-scheme:dark}}
:root[data-theme="dark"]{--paper:#0D1611;--sheet:#142019;--ink:#E4EFE8;--ink-2:#9DB5A7;--rule:#28392F;--band:#08100B;--band-ink:#E4EFE8;--accent:var(--accent-d);color-scheme:dark}
:root{--accent:#2D6A4F;--accent-d:#8FD3B0}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;color-scheme:light}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.65 var(--f-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:2px}
img,svg{display:block}
.wrap{max-width:1140px;margin:0 auto;padding-inline:24px}
@media (max-width:640px){.wrap{padding-inline:16px}}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:8px;background:var(--sheet);padding:8px 12px;z-index:10}
h1,h2,h3{font-family:var(--f-display);color:var(--ink);line-height:1.1;margin:0}
h1{font-weight:var(--h1-weight);font-style:var(--h1-style);letter-spacing:var(--h1-track)}
h2{font-size:clamp(1.3rem,1.05rem + 1vw,1.7rem);font-weight:var(--h1-weight);font-style:var(--h1-style);letter-spacing:calc(var(--h1-track) / 2);margin-bottom:.55em}
h3{font-size:1rem;font-family:var(--f-ui);font-weight:600}
p{margin:0 0 1em;max-width:70ch}
.mono{font-family:var(--f-mono);font-size:.92em}
.ui{font-family:var(--f-ui)}

/* ---------- network strip (desktop) ---------- */
.net{background:var(--band);color:var(--band-ink);font:500 .74rem/1 var(--f-ui)}
.net ol{list-style:none;margin:0 auto;padding:0 24px;max-width:1140px;display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}
.net li{flex:0 0 auto}
.net a{display:flex;align-items:center;gap:7px;padding:9px 11px;color:inherit;opacity:.72;text-decoration:none;white-space:nowrap}
.net a::before{content:"";width:7px;height:7px;border-radius:2px;background:var(--tab)}
.net a:hover{opacity:1}
.net a[aria-current]{opacity:1;font-weight:700;box-shadow:inset 0 -2px 0 var(--tab)}
@media (max-width:760px){.net{display:none}}

/* ---------- masthead ---------- */
.mast{background:var(--paper);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:5}
.mast .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font:700 1.12rem/1 var(--f-display);font-style:var(--h1-style);letter-spacing:calc(var(--h1-track) / 2)}
.brand .mark{width:26px;height:26px;color:var(--accent)}
.navlinks{display:flex;gap:4px 20px;list-style:none;margin:0;padding:0;font:500 .92rem/1 var(--f-ui)}
.navlinks a{color:var(--ink-2);text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}
.navlinks a:hover,.navlinks a[aria-current]{color:var(--ink);border-bottom-color:var(--accent)}
.menu{display:none}
@media (max-width:760px){
  .navlinks{display:none}
  .menu{display:block;position:relative}
  .menu summary{list-style:none;cursor:pointer;font:600 .9rem/1 var(--f-ui);padding:10px 12px;border:1px solid var(--rule);border-radius:var(--radius);color:var(--ink)}
  .menu summary::-webkit-details-marker{display:none}
  .menu[open] summary{background:var(--sheet)}
  .menu .panel{position:absolute;right:0;top:calc(100% + 8px);width:min(86vw,320px);background:var(--sheet);border:1px solid var(--rule);border-radius:var(--radius);padding:8px;box-shadow:0 12px 30px -12px rgba(0,0,0,.25)}
  .menu .panel a{display:block;padding:10px 12px;color:var(--ink);text-decoration:none;font:500 .95rem/1.3 var(--f-ui);border-radius:var(--radius)}
  .menu .panel a:hover{background:var(--paper)}
  .menu .panel p{margin:10px 12px 4px;font:600 .74rem/1 var(--f-ui);color:var(--ink-2)}
  .menu .panel .dot{display:inline-block;width:8px;height:8px;border-radius:2px;background:var(--tab);margin-right:8px}
}

/* ---------- chips ---------- */
.chip{display:inline-flex;align-items:center;font:600 .78rem/1 var(--f-ui);padding:5px 9px;border-radius:999px;border:1.5px solid currentColor;white-space:nowrap;color:var(--ink-2)}
.chip.sm{font-size:.7rem;padding:3px 7px}
.chip.t-alert{color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,transparent)}
.chip.t-ok{color:var(--ink-2)}

/* ---------- hero (shared bones) ---------- */
.hero{padding:clamp(36px,6vw,80px) 0 clamp(28px,4vw,48px)}
.hero h1{font-size:clamp(2.4rem,1.2rem + 5vw,4.9rem);line-height:.98;max-width:16ch}
.hero .lede{font-size:clamp(1.05rem,1rem + .3vw,1.22rem);margin-top:1em;max-width:58ch;color:var(--ink)}
.search{display:flex;gap:8px;margin-top:22px;max-width:620px}
.search input{flex:1;min-width:0;font:400 1.02rem/1.2 var(--f-ui);padding:14px 16px;border:1.5px solid var(--rule);border-radius:var(--radius);background:var(--sheet);color:var(--ink)}
.search input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}
.search button{font:600 .98rem/1 var(--f-ui);padding:0 20px;border:0;border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer}
.stats{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:18px;font:500 .9rem/1.4 var(--f-ui);color:var(--ink-2)}
.stats b{color:var(--ink);font-weight:700}

section.band{padding:clamp(32px,5vw,56px) 0;border-top:1px solid var(--rule)}
.bandhead{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.bandhead h2{margin:0}
.bandhead a{font:600 .92rem/1 var(--f-ui)}

/* ---------- record rows (lists) ---------- */
.rows{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px}
.rows li a{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:14px 16px;background:var(--sheet);border:1px solid var(--rule);border-radius:var(--radius);color:var(--ink);text-decoration:none;height:100%}
.rows li a:hover{border-color:var(--accent)}
.rows .nm{font:700 1.02rem/1.25 var(--f-ui)}
.rows .chip{justify-self:end;align-self:start}
.rows .ds{grid-column:1/-1;font:400 .88rem/1.45 var(--f-ui);color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rows .sub{grid-column:1/-1;font:600 .82rem/1.35 var(--f-ui);color:var(--ink)}
.rows q{grid-column:1/-1;font:italic 400 .95rem/1.4 var(--f-display);color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rows .ct{grid-column:1/-1;font:500 .76rem/1 var(--f-ui);color:var(--ink-2);letter-spacing:.01em}
.rows .ct:empty{display:none}
.juris{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px}
.juris b{font:500 .72rem/1 var(--f-mono);padding:4px 6px;border:1px solid var(--accent);color:var(--accent)}
.juris b.off{border-color:var(--rule);color:var(--ink-2);text-decoration:line-through}

/* ---------- records index ---------- */
.idx-head{padding:clamp(28px,5vw,56px) 0 8px}
.idx-head h1{font-size:clamp(2rem,1.3rem + 3vw,3.2rem)}
.filters{position:sticky;top:61px;z-index:4;background:var(--paper);padding:12px 0;border-bottom:1px solid var(--rule);margin-bottom:18px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.filters input,.filters select{font:400 .98rem/1.2 var(--f-ui);padding:11px 12px;border:1.5px solid var(--rule);border-radius:var(--radius);background:var(--sheet);color:var(--ink)}
.filters input{flex:1 1 260px;min-width:0}
.filters select{flex:0 1 auto}
.filters output{font:500 .85rem/1 var(--f-ui);color:var(--ink-2);margin-left:auto}
.letters{display:flex;flex-wrap:wrap;gap:2px;margin:0 0 16px;font:600 .82rem/1 var(--f-ui)}
.letters a{padding:6px 8px;text-decoration:none;border-radius:4px}
.letters a:hover{background:var(--sheet)}
.group h2{font:700 1.1rem/1 var(--f-ui);margin:22px 0 10px;color:var(--ink-2)}
.group[hidden]{display:none}
.nores{padding:24px;background:var(--sheet);border:1px dashed var(--rule);border-radius:var(--radius);font-family:var(--f-ui)}

/* ---------- record page ---------- */
.record{padding-bottom:64px}
.crumb{font:500 .86rem/1 var(--f-ui);padding:22px 0 0;color:var(--ink-2);display:flex;gap:8px;flex-wrap:wrap}
.rhead{padding:18px 0 22px}
.rhead .q{font:600 .95rem/1.3 var(--f-ui);color:var(--accent);margin:0 0 10px}
.rhead h1{font-size:clamp(2.1rem,1.4rem + 3.2vw,3.6rem);max-width:none}
.rhead .lede{font-size:1.12rem;color:var(--ink-2);margin:.7em 0 0}
.answer{margin:20px 0 0;padding:16px 18px;background:var(--sheet);border:1px solid var(--rule);border-left:5px solid var(--accent);border-radius:var(--radius);max-width:820px}
.answer p{margin:8px 0 0;font-size:1.05rem}
.ans-top{display:flex;align-items:center;gap:10px}
.ans-label{font:600 .76rem/1 var(--f-ui);color:var(--ink-2)}
.rmeta{display:flex;flex-wrap:wrap;gap:4px 16px;font:500 .84rem/1.4 var(--f-ui);color:var(--ink-2);margin:14px 0 0}
.acrossnet{border-block:1px solid var(--rule);padding:14px 0;margin-bottom:8px}
.acrossnet h2{font:600 .78rem/1 var(--f-ui);color:var(--ink-2);margin:0 0 10px;letter-spacing:.01em}
.acrossnet div{display:flex;flex-wrap:wrap;gap:8px}
.acrossnet a{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;background:var(--sheet);border:1px solid var(--rule);border-left:4px solid var(--tab);border-radius:var(--radius);text-decoration:none;color:var(--ink);font:600 .86rem/1 var(--f-ui)}
.acrossnet a:hover{border-color:var(--tab)}
.rbody{max-width:860px}
.blk{margin-top:30px}
.blk h2{font-size:1.25rem}
.blk.small{font:400 .9rem/1.5 var(--f-ui);color:var(--ink-2)}
.blk.small h2{font-size:1rem}
dl.kv{display:grid;grid-template-columns:10rem 1fr;gap:7px 16px;margin:8px 0;font:400 .94rem/1.5 var(--f-ui)}
dl.kv dt{font-weight:600;color:var(--ink-2)}dl.kv dd{margin:0}
@media (max-width:560px){dl.kv{grid-template-columns:1fr;gap:0}dl.kv dd{margin-bottom:8px}}
.item{background:var(--sheet);border:1px solid var(--rule);border-radius:var(--radius);padding:18px 20px;margin:16px 0 0}
.item header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}
.item h2{font-size:1.12rem;margin:0}
.item h3{margin:14px 0 4px;font-size:.85rem;color:var(--ink-2)}
.position{font-size:1.04rem}
.when{font:600 .84rem/1.4 var(--f-ui);color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.timeline,.roles,.chron{list-style:none;padding:0;margin:0}
.timeline li,.roles li{display:grid;grid-template-columns:8.5rem 1fr;gap:12px;padding:8px 0;border-top:1px solid var(--rule);font:400 .93rem/1.5 var(--f-ui)}
@media (max-width:560px){.timeline li,.roles li{grid-template-columns:1fr;gap:0}}
.hist summary{cursor:pointer;font:600 .85rem/1 var(--f-ui);color:var(--ink-2);margin:10px 0 6px}
.chron li{position:relative;padding:4px 0 22px 26px;border-left:2px solid var(--rule);margin-left:6px}
.chron li::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--sheet);border:2px solid var(--ink-2)}
.chron li.cur::before{background:var(--accent);border-color:var(--accent)}
.chron .when{display:block;margin-bottom:2px}
.chron strong{font-family:var(--f-ui)}
.chron .org{font-family:var(--f-ui);color:var(--ink-2)}
.chron p{margin:6px 0 0;color:var(--ink-2);font-size:.97rem}
.quote{margin:18px 0 0;padding:20px 22px;background:var(--sheet);border-radius:var(--radius);border:1px solid var(--rule)}
.quote blockquote{margin:0;font:var(--h1-style) 500 clamp(1.25rem,1.1rem + .6vw,1.6rem)/1.35 var(--f-display);color:var(--ink)}
.quote blockquote::before{content:"\201C";color:var(--accent)}.quote blockquote::after{content:"\201D";color:var(--accent)}
.quote figcaption{margin-top:10px;font:500 .86rem/1.5 var(--f-ui);color:var(--ink-2);display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.quote .ctx{margin:8px 0 0;font:400 .92rem/1.5 var(--f-ui);color:var(--ink-2)}
.tablewrap{overflow-x:auto}
table.grid{width:100%;border-collapse:collapse;font:400 .9rem/1.45 var(--f-ui);background:var(--sheet);border:1px solid var(--rule)}
table.grid th,table.grid td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--rule)}
table.grid thead th{font-size:.76rem;font-weight:600;color:var(--ink-2);background:var(--paper)}
table.grid tbody th{font-weight:600}
table.grid tr.act th{box-shadow:inset 3px 0 0 var(--accent)}
@media (max-width:640px){
  table.grid thead{display:none}
  table.grid tr{display:block;border-bottom:1px solid var(--rule);padding:8px 0}
  table.grid th,table.grid td{display:block;border:0;padding:2px 12px}
  table.grid td[data-l]::before{content:attr(data-l)": ";color:var(--ink-2)}
}
.fig{font:700 clamp(1.15rem,1rem + .6vw,1.45rem)/1.3 var(--f-display);margin:4px 0 10px}
.srcs{font:500 .82rem/1 var(--f-ui);color:var(--ink-2);margin:10px 0 0}
sup.cite{font:600 .68rem/1 var(--f-ui);margin-left:3px;white-space:nowrap}
sup.cite a{text-decoration:none;padding:1px 4px;border-radius:3px;background:color-mix(in srgb,var(--accent) 10%,transparent)}
ol.sources{list-style:none;padding:0;margin:0;counter-reset:s;font:400 .9rem/1.45 var(--f-ui)}
ol.sources li{counter-increment:s;padding:9px 0 9px 34px;border-top:1px solid var(--rule);position:relative;overflow-wrap:anywhere}
ol.sources li::before{content:counter(s);position:absolute;left:0;top:10px;font-weight:700;color:var(--ink-2);font-size:.82rem}
ol.sources small{display:block;color:var(--ink-2);margin-top:2px}
.sk{font:600 .66rem/1 var(--f-ui);padding:3px 5px;border-radius:3px;margin-right:8px;vertical-align:1px;border:1px solid var(--rule);color:var(--ink-2)}
.sk-primary{border-color:var(--accent);color:var(--accent)}

/* ---------- prose pages ---------- */
.page{padding:clamp(32px,5vw,64px) 0 72px}
.page h1{font-size:clamp(2rem,1.3rem + 2.8vw,3.2rem);margin-bottom:.4em;max-width:20ch}
.page .lede{font-size:1.15rem;color:var(--ink-2)}
.prose{max-width:70ch}
.prose h2{margin-top:1.6em;font-size:1.3rem}
.prose ul,.prose ol{padding-left:1.25em}
.prose li{margin:.35em 0}

/* ---------- explainer blocks ---------- */
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media (max-width:820px){.grid3{grid-template-columns:1fr}}
.panel{background:var(--sheet);border:1px solid var(--rule);border-radius:var(--radius);padding:18px 20px;font:400 .94rem/1.55 var(--f-ui)}
.panel h3{margin:0 0 8px;font-size:1rem}
.panel p{margin:0}
.vocab{display:flex;flex-wrap:wrap;gap:8px}
.vocab details{background:var(--sheet);border:1px solid var(--rule);border-radius:var(--radius);padding:8px 12px;font:400 .9rem/1.45 var(--f-ui);flex:1 1 240px}
.vocab summary{cursor:pointer;font-weight:600}
.vocab p{margin:6px 0 0;color:var(--ink-2)}
.chipsrow{display:flex;flex-wrap:wrap;gap:8px}
.chipsrow a{font:600 .86rem/1 var(--f-ui);padding:9px 12px;border-radius:999px;background:var(--sheet);border:1px solid var(--rule);text-decoration:none;color:var(--ink)}
.chipsrow a span{color:var(--ink-2);font-weight:500;margin-left:6px}
.chipsrow a:hover{border-color:var(--accent)}
.netgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.netgrid a{display:block;padding:14px 16px;background:var(--sheet);border:1px solid var(--rule);border-top:4px solid var(--tab);border-radius:var(--radius);text-decoration:none;color:var(--ink);font-family:var(--f-ui)}
.netgrid strong{display:block;font-size:.95rem}
.netgrid span{display:block;font-size:.86rem;color:var(--ink-2);margin-top:3px}

/* ---------- footer ---------- */
footer.site{background:var(--band);color:var(--band-ink);padding:36px 0 44px;font:400 .88rem/1.6 var(--f-ui);margin-top:0}
footer.site a{color:var(--band-ink);opacity:.8}
footer.site a:hover{opacity:1}
.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px}
@media (max-width:760px){.foot{grid-template-columns:1fr}}
footer.site ul{list-style:none;margin:0;padding:0}
footer.site h2{font:600 .85rem/1 var(--f-ui);color:var(--band-ink);margin:0 0 .8em}
footer.site p{opacity:.85}
.theme{font:inherit;background:none;border:1px solid currentColor;color:inherit;padding:6px 10px;border-radius:var(--radius);cursor:pointer;opacity:.85}

/* =============== site variants =============== */

/* lookup — PublicFigureRecord: identity card */
.v-lookup .hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:48px;align-items:center}
@media (max-width:900px){.v-lookup .hero-grid{grid-template-columns:1fr}}
.idcard{background:var(--sheet);border:1px solid var(--rule);border-radius:16px;padding:22px;box-shadow:0 24px 50px -30px rgba(19,34,51,.45);font-family:var(--f-ui)}
.idcard .top{display:flex;gap:14px;align-items:center}
.idcard .mono-av{width:56px;height:56px;border-radius:12px;background:var(--accent);color:#fff;display:grid;place-items:center;font:700 1.3rem/1 var(--f-display)}
.idcard .lbl{font:600 .7rem/1 var(--f-ui);color:var(--ink-2)}
.idcard .nm{font:700 1.2rem/1.2 var(--f-display);color:var(--ink);text-decoration:none}
.idcard dl{display:grid;grid-template-columns:7rem 1fr;gap:6px 12px;margin:16px 0 0;font-size:.88rem}
.idcard dt{color:var(--ink-2)}.idcard dd{margin:0}
.idcard .seen{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.idcard .seen i{font-style:normal;font-size:.72rem;padding:4px 7px;border-radius:6px;border-left:3px solid var(--tab);background:var(--paper)}

/* ladder — LegalStatusProfiles: status ladder */
.v-ladder .hero h1{font-size:clamp(2.3rem,1.3rem + 4.4vw,4.4rem);max-width:18ch}
.ladder{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:0;margin-top:34px;border:1px solid var(--rule);background:var(--sheet)}
.ladder a{display:flex;flex-direction:column;gap:6px;padding:14px 14px 16px;border-right:1px solid var(--rule);text-decoration:none;color:var(--ink);position:relative;font-family:var(--f-ui)}
.ladder a:last-child{border-right:0}
.ladder a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:calc(4px + var(--h) * 40px);background:color-mix(in srgb,var(--accent) 16%,transparent)}
.ladder b{font:700 1.7rem/1 var(--f-display);color:var(--accent)}
.ladder span{font-size:.82rem;font-weight:600}
@media (max-width:640px){.ladder{grid-template-columns:repeat(3,1fr)}.ladder a{border-bottom:1px solid var(--rule)}}

/* register — SanctionsStatus: dark compliance band */
.v-register .hero{background:var(--band);color:var(--band-ink);margin:0;padding-inline:0}
.v-register .hero h1{color:var(--band-ink);text-transform:none;font-size:clamp(2.6rem,1.3rem + 5.6vw,5.4rem);max-width:14ch}
.v-register .hero .lede{color:var(--band-ink);opacity:.82}
.v-register .hero .stats{color:var(--band-ink);opacity:.8}.v-register .hero .stats b{color:var(--band-ink)}
.v-register .search input{background:transparent;border-color:color-mix(in srgb,var(--band-ink) 35%,transparent);color:var(--band-ink)}
.jtable{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1px;background:color-mix(in srgb,var(--band-ink) 18%,transparent);margin-top:34px;border:1px solid color-mix(in srgb,var(--band-ink) 18%,transparent)}
.jtable div{background:var(--band);padding:14px 16px}
.jtable b{display:block;font:500 .78rem/1 var(--f-mono);color:var(--accent-d)}
.jtable strong{display:block;font:800 2rem/1 var(--f-display);margin-top:8px}
.jtable span{font:400 .78rem/1.3 var(--f-ui);opacity:.75}
.v-register .rows li a{border-radius:0;border-left:4px solid var(--accent)}
.v-register .mast{border-bottom:3px solid var(--accent)}

/* timeline — LeadershipTimeline */
.v-timeline .hero h1{font-size:clamp(2.4rem,1.2rem + 5vw,5rem)}
.tl{position:relative;margin-top:36px;padding-top:34px;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px}
.tl::before{content:"";position:absolute;top:12px;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 25%,transparent))}
.tl a{position:relative;display:block;padding:14px;background:var(--sheet);border:1px solid var(--rule);border-radius:var(--radius);text-decoration:none;color:var(--ink);font-family:var(--f-ui)}
.tl a::before{content:"";position:absolute;top:-28px;left:16px;width:14px;height:14px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--paper)}
.tl .when{display:block}
.tl strong{display:block;font-size:.95rem;margin-top:4px}
.tl span.r{display:block;font-size:.84rem;color:var(--ink-2);margin-top:2px}
.v-timeline .rows li a{border-radius:var(--radius);border-top:3px solid var(--accent)}

/* quote — PublicStatementArchive */
.v-quote .hero{text-align:left}
.v-quote .hero h1{font-size:clamp(2.6rem,1.4rem + 5vw,5.2rem);max-width:15ch}
.feat{margin-top:34px;padding:28px 0 0;border-top:2px solid var(--accent);max-width:900px}
.feat blockquote{margin:0;font:italic 500 clamp(1.5rem,1.1rem + 1.8vw,2.5rem)/1.25 var(--f-display);color:var(--ink)}
.feat blockquote::before{content:"\201C";color:var(--accent)}.feat blockquote::after{content:"\201D";color:var(--accent)}
.feat figcaption{margin-top:14px;font:500 .95rem/1.5 var(--f-ui);color:var(--ink-2)}
.feat figcaption a{font-weight:700}
.v-quote .rows li a{border-radius:var(--radius)}

/* network — DirectorshipRecord */
.v-network .hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;align-items:center}
@media (max-width:900px){.v-network .hero-grid{grid-template-columns:1fr}}
.counts{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--rule);border-radius:var(--radius);background:var(--sheet);font-family:var(--f-ui)}
.counts div{padding:18px;border-right:1px solid var(--rule)}.counts div:last-child{border-right:0}
.counts strong{display:block;font:700 2.2rem/1 var(--f-display);color:var(--accent);font-variant-numeric:tabular-nums}
.counts span{font-size:.82rem;color:var(--ink-2)}
.topboards{margin-top:12px;background:var(--sheet);border:1px solid var(--rule);border-radius:var(--radius);font:400 .9rem/1.4 var(--f-ui)}
.topboards a{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;border-top:1px solid var(--rule);text-decoration:none;color:var(--ink)}
.topboards a:first-child{border-top:0}
.topboards b{font-variant-numeric:tabular-nums;color:var(--accent)}
.v-network .rows li a{border-radius:var(--radius)}

/* docket — CourtCaseProfiles */
.v-docket .hero h1{font-size:clamp(2.4rem,1.3rem + 4.6vw,4.6rem)}
.docket-table{margin-top:30px;border-top:2px solid var(--ink);font-family:var(--f-ui)}
.docket-table a{display:grid;grid-template-columns:7.5rem 1fr 11rem auto;gap:14px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--rule);color:var(--ink);text-decoration:none}
.docket-table a:hover{background:var(--sheet)}
.docket-table .t{font:600 1rem/1.3 var(--f-display)}
.docket-table .ct2{font-size:.82rem;color:var(--ink-2)}
@media (max-width:760px){.docket-table a{grid-template-columns:1fr auto}.docket-table .when,.docket-table .ct2{grid-column:1/-1}}
.v-docket .rows li a{border-radius:var(--radius);border-left:3px solid var(--ink)}

/* ledger — PublicImpactRecord */
.v-ledger .hero h1{font-size:clamp(2.4rem,1.2rem + 5vw,5rem);max-width:14ch}
.ledger{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:34px}
@media (max-width:760px){.ledger{grid-template-columns:repeat(2,1fr)}}
.ledger div{padding:18px;border-radius:var(--radius);background:var(--sheet);border:1px solid var(--rule);font-family:var(--f-ui)}
.ledger strong{display:block;font:800 2.4rem/1 var(--f-display);color:var(--accent);font-variant-numeric:tabular-nums}
.ledger span{display:block;font-weight:600;margin-top:8px}
.ledger p{margin:4px 0 0;font-size:.82rem;color:var(--ink-2)}
.v-ledger .rows li a{border-radius:var(--radius)}

@media (prefers-reduced-motion:no-preference){
  .hero h1{animation:rise .5s cubic-bezier(.2,.7,.2,1) both}
  @keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
}

.jb{display:inline-block;font:500 .74rem/1 var(--f-mono);padding:4px 6px;border:1px solid var(--accent);color:var(--accent);margin-right:10px;vertical-align:3px}
.quote .venue{flex-basis:100%;font-size:.84rem}
.item.sanc:has(.t-ok){opacity:.85}

.fig.long{font:600 1.02rem/1.5 var(--f-ui)}
