:root{color-scheme:dark;--bg: #0a0c10;--bg-elev: #111721;--bg-elev-2: #161d29;--text: #f2f5f7;--text-dim: #98a4b3;--text-faint: #6b7889;--line: rgba(242, 245, 247, .1);--line-strong: rgba(242, 245, 247, .2);--cyan: #22d3ee;--violet: #8b5cf6;--magenta: #ec4899;--spectral: linear-gradient(90deg, var(--cyan), var(--violet), var(--magenta));--accent: var(--cyan);--font-display: "Space Grotesk", "Helvetica Neue", Arial, sans-serif;--font-body: "Inter", "Helvetica Neue", Arial, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--gutter: clamp(1.25rem, 4vw, 3rem);--section-y: clamp(4rem, 10vw, 8rem);--measure: 68ch;--radius: 4px;--ease: .18s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,ul,ol{margin:0}img,picture,svg,video{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}html{-webkit-text-size-adjust:none;scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:1rem;line-height:1.7;min-width:320px;overflow-x:hidden;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;line-height:1.1}h1{font-size:clamp(2.75rem,8vw,5.5rem);letter-spacing:-.04em}h2{font-size:clamp(1.75rem,4vw,2.75rem)}h3{font-size:clamp(1.15rem,2vw,1.4rem);letter-spacing:-.01em}h4{font-size:1rem}p{margin:0 0 1.25em;max-width:var(--measure)}a{color:var(--accent);text-decoration:none;text-underline-offset:.25em;transition:color var(--ease)}a:hover{color:var(--text);text-decoration:underline}strong,b{color:var(--text);font-weight:600}:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}::selection{background:var(--violet);color:#fff}.skip-link{background:var(--bg-elev);border:1px solid var(--line-strong);color:var(--text);left:-9999px;padding:.75em 1.25em;position:absolute;top:.5rem;z-index:200}.skip-link:focus{left:.5rem}.container{margin-inline:auto;max-width:76rem;padding-inline:var(--gutter);width:100%}.container.narrow{max-width:54rem}.section{padding-block:var(--section-y);position:relative}.section+.section{border-top:1px solid var(--line)}.section.tight{padding-block:clamp(2.5rem,5vw,3.75rem)}.eyebrow{align-items:center;color:var(--text-faint);display:flex;font-family:var(--font-mono);font-size:.75rem;gap:.75em;letter-spacing:.18em;margin:0 0 1.5rem;text-transform:uppercase}.eyebrow:before{background:var(--spectral);content:"";display:block;height:2px;width:2.5rem}.rule{background:var(--spectral);border:0;height:1px;margin:0;opacity:.6}#header{backdrop-filter:blur(12px);background:#0a0c10b8;border-bottom:1px solid var(--line);left:0;position:fixed;right:0;top:0;z-index:100}#header .container{align-items:center;display:flex;gap:1rem;justify-content:space-between;min-height:4rem}.wordmark{color:var(--text);font-family:var(--font-mono);font-size:.8rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.wordmark:hover{color:var(--text);text-decoration:none}.wordmark .wm-lead{color:var(--text-faint)}.wordmark .wm-key{background:var(--spectral);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:700}.brand{align-items:center;display:flex;gap:.7rem;min-width:0}.section-tag{border:1px solid var(--line-strong);border-radius:2px;color:var(--cyan);font-family:var(--font-mono);font-size:.58rem;letter-spacing:.14em;padding:.2rem .4rem;text-transform:uppercase;white-space:nowrap}.nav-links{--nav-link-h: 2rem;align-items:center;display:flex;gap:1.75rem;list-style:none;margin:0;padding:0}.nav-links a{align-items:center;color:var(--text-dim);display:flex;font-family:var(--font-mono);font-size:.78rem;height:var(--nav-link-h);letter-spacing:.08em;position:relative;text-transform:uppercase}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--text);text-decoration:none}.nav-links a[aria-current=page]:after{background:var(--spectral);bottom:0;content:"";height:2px;left:0;position:absolute;right:0}.nav-links a.nav-icon-link .icon-svg{height:1.5rem}.nav-links a.nav-exit{color:var(--text-faint)}.nav-links a.nav-exit:hover{color:var(--text)}.nav-toggle{background:none;border:1px solid var(--line-strong);border-radius:var(--radius);color:var(--text);cursor:pointer;display:none;padding:.5rem .7rem;transition:border-color var(--ease)}.nav-toggle:hover{border-color:var(--cyan)}.nav-toggle .icon-svg{height:1rem;width:auto}.hero{align-items:end;display:flex;min-height:min(92vh,46rem);overflow:hidden;padding-block:clamp(7rem,14vw,10rem) var(--section-y);position:relative}.hero:before{background:linear-gradient(180deg,rgba(10,12,16,.55) 0%,rgba(10,12,16,.82) 55%,var(--bg) 100%),url(/images/banner.jpg) center / cover no-repeat;content:"";filter:saturate(.55) contrast(1.05);inset:0;position:absolute;z-index:-2}.hero:after{background:radial-gradient(60rem 26rem at 18% 88%,rgba(34,211,238,.22),transparent 70%),radial-gradient(48rem 22rem at 72% 96%,rgba(139,92,246,.2),transparent 70%),radial-gradient(34rem 16rem at 92% 82%,rgba(236,72,153,.14),transparent 70%);content:"";inset:0;pointer-events:none;position:absolute;z-index:-1}.hero .container{position:relative}.hero h1{margin:0 0 1.25rem}.hero h1 .accent{background:var(--spectral);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-lede{color:var(--text-dim);font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.6;max-width:46ch}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:2.25rem}.stats{border-top:1px solid var(--line);display:grid;gap:1px;grid-template-columns:repeat(4,1fr);margin-top:clamp(3rem,7vw,5rem)}.stats>div{padding:1.5rem 1.25rem 0;position:relative}.stats>div:before{background:var(--spectral);content:"";height:2px;left:0;position:absolute;top:-1px;width:2.5rem}.stat-num{display:block;font-family:var(--font-display);font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:700;letter-spacing:-.03em;line-height:1.1}.stat-label{color:var(--text-faint);display:block;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.14em;margin-top:.4rem;text-transform:uppercase}.button{align-items:center;background:transparent;border:1px solid var(--line-strong);border-radius:var(--radius);color:var(--text);cursor:pointer;display:inline-flex;font-family:var(--font-mono);font-size:.8rem;gap:.6em;justify-content:center;letter-spacing:.08em;padding:.85em 1.6em;text-align:center;text-transform:uppercase;transition:border-color var(--ease),background-color var(--ease),color var(--ease);white-space:nowrap}.button:hover{background:#f2f5f70a;border-color:var(--cyan);color:var(--text);text-decoration:none}.button.special{background:var(--spectral);border-color:transparent;color:#07090c;font-weight:600}.button.special:hover{color:#07090c;filter:brightness(1.12)}.button.small{font-size:.7rem;padding:.6em 1.1em}.button.fit{display:flex;width:100%}.button.alt{background:transparent}.feature-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr))}.feature-card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;overflow:hidden;padding:1.75rem;position:relative;transition:border-color var(--ease),transform var(--ease)}.feature-card:before{background:var(--spectral);content:"";height:2px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity var(--ease)}.feature-card:hover{border-color:var(--line-strong);transform:translateY(-2px)}.feature-card:hover:before{opacity:1}.feature-card h3{margin:0 0 .6rem}.feature-card p{color:var(--text-dim);font-size:.94rem;margin-bottom:1.25rem}.feature-card ul{border-top:1px solid var(--line);list-style:none;margin:auto 0 0;padding:1.25rem 0 0}.feature-card ul li{color:var(--text-dim);font-size:.86rem;margin:0 0 .5rem;padding-left:1.1rem;position:relative}.feature-card ul li:last-child{margin-bottom:0}.feature-card ul li:before{color:var(--cyan);content:"—";left:0;position:absolute}.feature-card .button{align-self:flex-start;margin-top:auto}.feature-kicker{color:var(--text-faint);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.14em;margin-bottom:1rem}.split{align-items:center;display:grid;gap:clamp(2rem,5vw,4rem);grid-template-columns:1fr 1fr}.split-media{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;position:relative}.split-media img{filter:saturate(.7) contrast(1.05);width:100%}.split-media:after{background:var(--spectral);bottom:0;content:"";height:2px;left:0;position:absolute;right:0}.odds-viz{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);padding:2rem 1.75rem}.odds-viz svg{height:auto;width:100%}.logo-panel{align-items:center;background:#f4f6f8;border:1px solid var(--line);border-radius:var(--radius);display:flex;justify-content:center;padding:clamp(1.5rem,4vw,3rem)}.logo-panel img{mix-blend-mode:multiply;width:100%}.timeline{border-left:1px solid var(--line);display:grid;gap:3rem;list-style:none;margin:0;padding:0 0 0 clamp(1.25rem,3vw,2.25rem)}.timeline>li{position:relative}.timeline>li:before{background:var(--spectral);border-radius:50%;content:"";height:9px;left:calc(-1*clamp(1.25rem,3vw,2.25rem) - 5px);position:absolute;top:.55rem;width:9px}.role-meta{color:var(--text-faint);font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;margin:.35rem 0 1rem;text-transform:uppercase}ul,ol{padding-left:1.15em}li{margin-bottom:.4em;max-width:var(--measure)}ul.bare{list-style:none;padding-left:0}.entry-list{display:grid;gap:.85rem;list-style:none;padding:0}.entry-list>li{border-bottom:1px solid var(--line);margin:0;max-width:none;padding-bottom:.85rem}.entry-list>li:last-child{border-bottom:0}.year{color:var(--cyan);font-family:var(--font-mono);font-size:.78rem;letter-spacing:.06em;margin-right:.75em;white-space:nowrap}.pub-list{counter-reset:pub;display:grid;gap:1.5rem;list-style:none;padding:0}.pub-list>li{border-left:1px solid var(--line);color:var(--text-dim);counter-increment:pub;font-size:.94rem;margin:0;max-width:var(--measure);padding-left:2.5rem;position:relative}.pub-list>li:before{color:var(--text-faint);content:counter(pub,decimal-leading-zero);font-family:var(--font-mono);font-size:.72rem;left:0;position:absolute;top:.15rem}.pub-list em{color:var(--text);font-style:normal}.pub-list b{color:var(--cyan);font-weight:600}.steps{counter-reset:step;display:grid;gap:1.75rem;list-style:none;margin:2rem 0 2.5rem;padding:0}.steps>li{border-left:1px solid var(--line);counter-increment:step;margin:0;max-width:none;padding-left:2.75rem;position:relative}.steps>li:before{color:var(--cyan);content:counter(step,decimal-leading-zero);font-family:var(--font-mono);font-size:.72rem;left:1rem;position:absolute;top:.2rem}.steps h3{margin:0 0 .35rem}.steps p{color:var(--text-dim);margin:0}.sub-head{margin-top:2.5rem}.spectra-figure{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);margin:2rem 0 0;padding:1.5rem}.spectra-figure svg{height:auto;width:100%}.spectra-figure figcaption{border-top:1px solid var(--line);color:var(--text-faint);font-size:.88rem;margin-top:1.25rem;padding-top:1.25rem}.rank-figure{margin:1.75rem 0 0}.rank-strip{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}.rank-card{align-items:center;background:#f4f6f8;border:1px solid rgba(10,12,16,.25);border-radius:5px;color:#101828;display:flex;flex-direction:column;justify-content:center;margin:0;max-width:none;min-height:4.5rem;padding:.6rem .5rem;position:relative;width:3.6rem}.rank-card.is-bower{box-shadow:0 0 0 2px var(--violet)}.rc-face{font-family:var(--font-display);font-size:1.15rem;font-weight:700;line-height:1}.rc-suit{font-size:1rem;line-height:1.2}.rc-note{color:var(--violet);font-family:var(--font-mono);font-size:.55rem;letter-spacing:.06em;line-height:1.2;margin-top:.3rem;text-align:center;text-transform:uppercase}.rank-figure figcaption{color:var(--text-faint);font-size:.88rem;margin-top:1rem;max-width:var(--measure)}@media (max-width: 560px){.rank-card{min-height:3.9rem;width:3rem}.rc-note{font-size:.5rem}}.table-wrapper{-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:2.5rem;overflow-x:auto}table{border-collapse:collapse;font-size:.92rem;min-width:40rem;width:100%}table th{background:var(--bg-elev-2);border-bottom:1px solid var(--line-strong);color:var(--text-faint);font-family:var(--font-mono);font-size:.68rem;font-weight:500;letter-spacing:.12em;padding:.9rem 1rem;text-align:left;text-transform:uppercase;white-space:nowrap}table td{border-bottom:1px solid var(--line);padding:.9rem 1rem;vertical-align:middle}table tbody tr{transition:background-color var(--ease)}table tbody tr:hover{background:#f2f5f708}table tbody tr:last-child td{border-bottom:0}.res-head{align-items:baseline;margin-top:clamp(2.5rem,5vw,4rem);border-bottom:1px solid var(--line);display:flex;font-size:clamp(1.1rem,2vw,1.35rem);gap:.75rem;margin-bottom:1.25rem;padding-bottom:.75rem}.res-head:before{background:var(--spectral);content:"";flex:none;height:2px;translate:0 -.35em;width:1.75rem}#footer{border-top:1px solid var(--line);padding-block:clamp(3rem,6vw,4.5rem)}#footer .inner{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between}#footer .icons{display:flex;gap:1.25rem;list-style:none;margin:0;padding:0}#footer .icons li{margin:0}#footer .icons a{color:var(--text-faint);display:block;transition:color var(--ease)}#footer .icons a:hover{color:var(--cyan)}#footer .icons .icon-svg{height:1.15rem;width:auto}.colophon{color:var(--text-faint);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;margin:0;max-width:none;text-transform:uppercase}.colophon a{color:var(--text-dim);text-decoration:underline;text-decoration-color:var(--line-strong)}.colophon a:hover{color:var(--cyan);text-decoration-color:currentColor}.icon-svg{fill:currentColor;height:1em;width:auto}.label,.visually-hidden{border:0;clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.page-head{padding-block:clamp(7rem,13vw,10rem) clamp(2.5rem,5vw,4rem);position:relative}.page-head:after{background:radial-gradient(40rem 18rem at 12% 100%,rgba(34,211,238,.12),transparent 70%);content:"";inset:0;pointer-events:none;position:absolute}.page-head h1{font-size:clamp(2.25rem,6vw,4rem);margin-bottom:.75rem}.page-head h1 .h1-beat{color:var(--text-dim);display:block}.page-head p{color:var(--text-dim);font-size:clamp(1rem,2vw,1.15rem);max-width:52ch}.nav-panel{background:var(--bg-elev);border-left:1px solid var(--line);bottom:0;display:flex;flex-direction:column;gap:.5rem;max-width:84vw;overflow-y:auto;padding:5.5rem 2rem 2rem;position:fixed;right:0;top:0;transform:translate(100%);transition:transform .32s cubic-bezier(.4,0,.2,1),visibility 0s linear .32s;visibility:hidden;width:20rem;z-index:110}.nav-panel.visible{transform:translate(0);transition:transform .32s cubic-bezier(.4,0,.2,1),visibility 0s linear 0s;visibility:visible}.nav-panel a{align-items:center;border-bottom:1px solid var(--line);color:var(--text);display:flex;font-family:var(--font-mono);font-size:.85rem;gap:.6rem;letter-spacing:.08em;padding:1rem 0;text-transform:uppercase}.nav-panel .nav-panel-icon{--card-face: var(--bg-elev);flex-shrink:0;height:1.375rem}.nav-panel .panel-tag{color:var(--cyan);font-family:var(--font-mono);font-size:.6rem;letter-spacing:.16em;margin-bottom:.25rem;text-transform:uppercase}.nav-panel a.nav-exit{color:var(--text-faint);margin-top:.75rem}.nav-panel a:hover,.nav-panel a[aria-current=page]{color:var(--cyan);text-decoration:none}.nav-close{background:none;border:1px solid var(--line-strong);border-radius:var(--radius);color:var(--text);cursor:pointer;padding:.5rem .7rem;position:absolute;right:1.5rem;top:1.1rem}.nav-close:hover{border-color:var(--cyan)}.nav-close .icon-svg{height:1rem}.nav-backdrop{background:#0a0c1099;inset:0;opacity:0;position:fixed;transition:opacity .32s ease,visibility 0s linear .32s;visibility:hidden;z-index:105}.nav-backdrop.visible{opacity:1;transition:opacity .32s ease,visibility 0s linear 0s;visibility:visible}@media (max-width: 900px){.nav-links{display:none}.nav-toggle{display:inline-flex}.split{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.hero-actions .button{width:100%}#footer .inner{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
