@font-face{font-family:"Archivo";src:url(/fonts/archivo-var.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(/fonts/sourceserif-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(/fonts/sourceserif-400i.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(/fonts/sourceserif-600.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(/fonts/plexmono-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(/fonts/plexmono-500.woff2) format("woff2");font-weight:500;font-display:swap}

:root{
  --field:#0C0B09;--surface:#15120E;--raised:#1E1A14;--hairline:#3A3227;
  --cream:#F2E8D5;--muted:#B3A68F;--faint:#8A7E6B;
  --gold-300:#FCC75C;--gold-400:#E4A848;--gold-500:#C08430;--gold-700:#7A5320;--ember:#E8704A;
  --display:"Archivo",system-ui,sans-serif;--sans:"Archivo",system-ui,sans-serif;
  --serif:"Source Serif 4",Georgia,serif;--mono:"IBM Plex Mono",ui-monospace,monospace;
  --s1:4px;--s2:8px;--s3:16px;--s4:24px;--s5:48px;--s6:96px;
  --r1:3px;--press:160ms;--enter:220ms;--ease:cubic-bezier(.2,.7,.2,1);
  --wrap:1200px;--gutter:clamp(24px,4vw,48px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:88px}
body{margin:0;background:var(--field);color:var(--cream);font-family:var(--sans);font-size:17px;line-height:26px;font-stretch:100%;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:var(--gold-400);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--gold-300)}
:focus-visible{outline:2px solid var(--gold-300);outline-offset:3px;border-radius:var(--r1)}
::selection{background:var(--gold-400);color:var(--field)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:99;background:var(--gold-400);color:var(--field);padding:8px 12px}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* type */
.label{font-family:var(--sans);font-size:13px;line-height:18px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 var(--s3)}
.label.gold{color:var(--gold-400)}
h1,h2,h3{font-family:var(--display);font-stretch:118%;font-weight:800;margin:0;text-wrap:balance;color:var(--cream)}
h1{font-size:clamp(44px,6.4vw,76px);line-height:.95;letter-spacing:-.02em}
h2{font-size:clamp(32px,4vw,48px);line-height:1;letter-spacing:-.015em}
h3{font-size:clamp(22px,2.2vw,30px);line-height:1.1;font-weight:750;font-stretch:112%}
.lead{font-size:20px;line-height:30px;color:var(--cream);max-width:36em;margin:var(--s4) 0 0}
p{margin:0 0 var(--s3)}
.muted{color:var(--muted)}.faint{color:var(--faint)}
.mono,.fig{font-family:var(--mono);font-weight:500;font-size:15px;letter-spacing:0}
small,.small{font-size:14px;line-height:21px}

/* header */
.top{position:sticky;top:0;z-index:20;background:rgba(12,11,9,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--hairline)}
.top .wrap{display:flex;align-items:center;gap:var(--s4);height:72px}
.brand{display:flex;align-items:center;gap:12px;color:var(--cream);text-decoration:none;font-family:var(--display);font-weight:800;font-stretch:115%;font-size:19px;letter-spacing:-.01em;white-space:nowrap}
.brand img{width:40px;height:40px;object-fit:contain}
.nav{display:flex;gap:4px;margin-left:auto}
.nav a{color:var(--cream);text-decoration:none;font-size:15px;font-weight:550;padding:8px 12px;border-radius:var(--r1);transition:color var(--press) var(--ease),background var(--press) var(--ease)}
.nav a:hover{background:var(--surface);color:var(--gold-300)}
.nav a[aria-current=page]{color:var(--gold-400);box-shadow:inset 0 -2px 0 var(--gold-400);border-radius:0}
.onair{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--muted);text-decoration:none;white-space:nowrap;padding:8px 0 8px var(--s3);border-left:1px solid var(--hairline)}
.onair .dot{width:8px;height:8px;border-radius:999px;background:var(--gold-700)}
.onair.live{color:var(--gold-300)}.onair.live .dot{background:var(--gold-300);animation:pulse 1.6s ease-out infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(252,199,92,.55)}100%{box-shadow:0 0 0 10px rgba(252,199,92,0)}}
.menu{display:none;margin-left:auto;background:none;border:1px solid var(--hairline);color:var(--cream);font:600 15px var(--sans);padding:8px 14px;border-radius:var(--r1);cursor:pointer}
@media (max-width:980px){
  .nav,.onair{display:none}.menu{display:block}
  .top.open .nav{display:flex;position:absolute;top:72px;left:0;right:0;flex-direction:column;background:var(--field);border-bottom:1px solid var(--hairline);padding:8px var(--gutter) 16px}
  .top.open .nav a{padding:14px 0;font-size:18px;border-bottom:1px solid var(--hairline)}
  .top.open .nav a[aria-current=page]{box-shadow:none}
}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;font:650 16px/1 var(--sans);text-decoration:none;padding:15px 22px;border-radius:var(--r1);border:1px solid transparent;cursor:pointer;transition:transform var(--press) var(--ease),background var(--press) var(--ease),color var(--press) var(--ease),border-color var(--press) var(--ease)}
.btn:active{transform:translateY(1px) scale(.985)}
.btn-gold{background:var(--gold-400);color:var(--field)}
.btn-gold:hover{background:var(--gold-300);color:var(--field)}
.btn-line{border-color:var(--gold-500);color:var(--cream)}
.btn-line:hover{border-color:var(--gold-400);color:var(--gold-300)}
.btn svg{width:16px;height:16px;flex:none}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:var(--s5)}
.ext::after{content:"";display:inline-block;width:.7em;height:.7em;margin-left:6px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5'%3E%3Cpath d='M6 3h7v7M13 3 4 12'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.5'%3E%3Cpath d='M6 3h7v7M13 3 4 12'/%3E%3C/svg%3E") center/contain no-repeat}

/* code chip */
.code{display:inline-flex;align-items:center;gap:10px;font:500 16px/1 var(--mono);letter-spacing:.06em;color:var(--gold-300);background:var(--raised);border:1px dashed var(--gold-500);padding:9px 10px 9px 12px;border-radius:var(--r1);cursor:pointer;transition:border-color var(--press) var(--ease),color var(--press) var(--ease)}
.code:hover{border-color:var(--gold-400)}
.code .cp{font:600 12px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.code.done{border-style:solid;border-color:var(--gold-400)}.code.done .cp{color:var(--gold-300)}

/* bands */
.band{padding:var(--s6) 0;border-top:1px solid var(--hairline)}
.band.surface{background:var(--surface)}
@media (max-width:720px){.band{padding:64px 0}}
.head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s5);align-items:end;margin-bottom:var(--s5)}
.head p{margin:0;color:var(--muted)}
@media (max-width:860px){.head{grid-template-columns:1fr;gap:var(--s3)}}

/* hero */
.hero{padding:clamp(48px,8vw,104px) 0 clamp(48px,7vw,88px)}
.hero .wrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,72px);align-items:center}
.hero .crest{width:100%;max-width:460px;justify-self:end;filter:drop-shadow(0 0 0 transparent)}
@media (max-width:860px){.hero .wrap{grid-template-columns:1fr}.hero .crest{order:-1;max-width:220px;justify-self:start}}
.page-head{padding:clamp(48px,7vw,88px) 0 var(--s5)}
.page-head .lead{color:var(--muted)}
.crumbs{font-size:14px;color:var(--muted);margin-bottom:var(--s4)}.crumbs a{color:var(--muted)}

/* code strip */
.strip{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);background:var(--surface)}
.strip .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:12px 32px;padding-top:20px;padding-bottom:20px}
.strip .main{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.strip .rest{display:flex;gap:20px;flex-wrap:wrap;font-size:15px;color:var(--muted)}
.strip .rest b{font:500 15px var(--mono);color:var(--cream);letter-spacing:.04em}
.strip .disc{flex-basis:100%;margin:0;font-size:13px;color:var(--faint)}

/* tables */
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-top:1px solid var(--gold-700)}
table{width:100%;border-collapse:collapse;font-size:16px}
th{font:650 12px/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:left;padding:14px 16px;border-bottom:1px solid var(--hairline);white-space:nowrap}
td{padding:18px 16px;border-bottom:1px solid var(--hairline);vertical-align:top}
tr:hover td{background:rgba(30,26,20,.6)}
td.firm a{color:var(--cream);font-family:var(--display);font-stretch:112%;font-weight:750;font-size:20px;text-decoration:none}
td.firm a:hover{color:var(--gold-300)}
td .fig{white-space:nowrap}
td.go{text-align:right;white-space:nowrap}
.source{font-size:13px;color:var(--faint);margin-top:var(--s3)}
.facts{width:100%}
.facts th{width:38%;text-transform:none;letter-spacing:0;font:500 16px var(--sans);color:var(--muted);white-space:normal}
.facts td{font-family:var(--mono);font-size:15px}
@media (max-width:720px){.firms-table thead{display:none}.firms-table tr{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px;padding:18px 0;border-bottom:1px solid var(--hairline)}.firms-table td{border:0;padding:0}.firms-table td.firm,.firms-table td.go{grid-column:1/-1;text-align:left}.firms-table td[data-l]::before{content:attr(data-l);display:block;font:650 11px/1.6 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.firms-table tr:hover td{background:none}}

/* signature: the floor */
.floor{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-areas:"a c" "b c" "d c";grid-template-rows:auto auto 1fr;column-gap:var(--s5);align-items:start}
.floor .fa{grid-area:a}.floor .fb{grid-area:b;justify-self:start}.floor .fc{grid-area:c}.floor .fd{grid-area:d}
@media (max-width:900px){.floor{grid-template-columns:1fr;grid-template-areas:"a" "b" "c" "d"}.floor .fc{margin-bottom:var(--s4)!important}}
.seg{display:inline-flex;border:1px solid var(--gold-700);border-radius:var(--r1);padding:3px;gap:3px;margin:var(--s4) 0;flex-wrap:wrap}
.seg button{font:600 15px var(--sans);color:var(--cream);background:none;border:0;padding:10px 14px;border-radius:2px;cursor:pointer;transition:background var(--press) var(--ease),color var(--press) var(--ease)}
.seg button[aria-pressed=true]{background:var(--gold-400);color:var(--field)}
.seg button:not([aria-pressed=true]):hover{background:var(--raised)}
.readout{min-height:7.5em;border-left:0;padding:0}
.readout .verdict{font-family:var(--display);font-stretch:112%;font-weight:750;font-size:24px;line-height:1.15;margin:0 0 8px}
.readout .verdict.bad{color:var(--ember)}.readout .verdict.ok{color:var(--gold-300)}
.chart{background:var(--surface);border:1px solid var(--hairline);padding:16px 8px 8px}
.chart svg{width:100%;height:auto;display:block;overflow:visible}
.chart .grid{stroke:var(--hairline);stroke-width:1}
.chart .ax{fill:var(--faint);font:500 11px var(--mono)}
.chart .wick{stroke:var(--gold-500);stroke-width:1.5}
.chart .up{fill:var(--gold-500)}.chart .dn{fill:var(--field);stroke:var(--gold-500);stroke-width:1.5}
.chart .start{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 4}
.chart .fl{fill:none;stroke:var(--gold-300);stroke-width:2.5;stroke-linejoin:round;transition:stroke var(--press)}
.chart .fl.bad{stroke:var(--ember)}
.chart .fltag{font:600 12px var(--mono);fill:var(--gold-300)}.chart .fltag.bad{fill:var(--ember)}
.chart .hit{fill:none;stroke:var(--ember);stroke-width:2;opacity:0;transition:opacity var(--enter)}
.chart .hit.on{opacity:1}
.chart .eq{font:500 12px var(--mono);fill:var(--muted)}
.chart figcaption{font-size:13px;color:var(--faint);padding:8px 8px 0}

/* lists */
.rows{list-style:none;margin:0;padding:0;border-top:1px solid var(--gold-700)}
.rows li{border-bottom:1px solid var(--hairline)}
.rows a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 24px;padding:24px 0;text-decoration:none;color:var(--cream);transition:padding var(--press) var(--ease)}
.rows a:hover{padding-left:8px}
.rows a:hover h3{color:var(--gold-300)}
.rows h3{transition:color var(--press) var(--ease)}
.rows p{margin:0;color:var(--muted);grid-column:1}
.rows .meta{grid-row:1/3;grid-column:2;align-self:center;font:500 14px var(--mono);color:var(--faint);white-space:nowrap}
@media (max-width:640px){.rows a{grid-template-columns:1fr}.rows .meta{grid-row:auto;grid-column:1}}

.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s5)}
@media (max-width:860px){.split{grid-template-columns:1fr}}
.rule-top{border-top:1px solid var(--gold-700);padding-top:var(--s4)}

/* forms */
form.f{display:grid;gap:14px;max-width:560px}
.f .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:560px){.f .row{grid-template-columns:1fr}}
.f label{display:grid;gap:6px;font-size:14px;font-weight:600;color:var(--muted)}
.f input,.f select,.f textarea{font:400 17px var(--sans);color:var(--cream);background:var(--raised);border:1px solid #6B5E4A;border-radius:var(--r1);padding:13px 14px;width:100%;transition:border-color var(--press) var(--ease)}
.f textarea{min-height:140px;resize:vertical}
.f input:hover,.f select:hover,.f textarea:hover{border-color:var(--gold-500)}
.f input:focus,.f select:focus,.f textarea:focus{outline:2px solid var(--gold-300);outline-offset:2px;border-color:var(--gold-400)}
.f .hp{position:absolute;left:-9999px}
.f .msg{font-size:15px;min-height:1.5em;margin:0}
.f .msg.ok{color:var(--gold-300)}.f .msg.bad{color:var(--ember)}
.f .fine{font-size:13px;color:var(--faint);margin:0}

/* article */
.article{max-width:720px}
.article .byline{font:500 14px var(--mono);color:var(--muted);margin-top:var(--s4)}
.prose{font-family:var(--serif);font-size:19px;line-height:31px;color:var(--cream)}
.prose h2{font-size:28px;line-height:1.1;margin:48px 0 16px;font-stretch:112%}
.prose p{margin:0 0 20px}
.prose ol,.prose ul{margin:0 0 20px;padding-left:1.2em}.prose li{margin-bottom:8px}
.prose strong{font-weight:600}
.callout{border:1px solid var(--gold-700);padding:20px 22px;margin:32px 0;font-family:var(--sans);font-size:17px;line-height:26px;background:var(--surface)}
.callout p:last-child{margin:0}

/* legal */
.legal h2{font-size:24px;margin:40px 0 12px;font-stretch:112%}
.legal p,.legal li{color:var(--cream);max-width:68ch}

/* footer */
footer{border-top:1px solid var(--gold-700);background:var(--surface);padding:64px 0 40px;margin-top:0}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--s5)}
@media (max-width:860px){footer .cols{grid-template-columns:1fr 1fr}}
footer h4{font:650 12px/1.4 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 12px}
footer ul{list-style:none;margin:0;padding:0}footer li{margin:0 0 8px}
footer a{color:var(--cream);text-decoration:none;font-size:15px}footer a:hover{color:var(--gold-300);text-decoration:underline}
footer .disc{margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--hairline);font-size:13px;line-height:20px;color:var(--faint)}footer .disc p{max-width:90ch}
footer .disc p{margin:0 0 8px}
.motto{font:700 12px/1.6 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-500);margin-top:16px}

/* motion */
.js .reveal{opacity:0;transform:translateY(12px);transition:opacity var(--enter) var(--ease),transform var(--enter) var(--ease)}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
@media (max-width:600px){.chart{padding:12px 4px 4px}.chart .ax{font-size:19px}.chart .fltag{font-size:20px}.chart .wick{stroke-width:2.5}.chart .fl{stroke-width:4}.chart .hit{stroke-width:3}}
@media (max-width:860px){footer .cols>div:first-child{grid-column:1/-1}}
@media (max-width:600px){.facts tr{display:block;padding:14px 0;border-bottom:1px solid var(--hairline)}.facts th,.facts td{display:block;padding:0;border:0;width:auto}.facts th{margin-bottom:4px}.facts tr:hover td{background:none}}

/* review fixes */
.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s5)}
@media (max-width:860px){.three{grid-template-columns:1fr;gap:var(--s4)}}
.cg{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}
.strip .rest{align-items:center}
.strip .rest .code{font-size:14px;padding:7px 8px 7px 10px}
.f .tick{display:flex;gap:12px;align-items:flex-start;font-weight:400;color:var(--muted);font-size:15px;line-height:22px}
.f .tick input{width:20px;height:20px;margin:1px 0 0;flex:none;accent-color:var(--gold-400);padding:0}
.f select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23E4A848' stroke-width='1.5'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;padding-right:40px}
.f select:invalid{color:var(--muted)}
.list{list-style:none;margin:0 0 var(--s3);padding:0}
.list li{position:relative;padding:0 0 14px 22px;font-size:17px;line-height:26px}
.list li::before{content:"";position:absolute;left:0;top:10px;width:8px;height:8px;background:var(--gold-500)}
.list-lead{font-size:18px;line-height:28px}
.chart .eq{font:500 12px var(--mono);fill:var(--muted)}
@media (max-width:600px){.chart .ax.odd{display:none}.chart .eq{font-size:20px}}
