@font-face{font-family:General Sans;src:url(/fonts/GeneralSans-Variable.woff2)format("woff2-variations");font-weight:200 700;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(/fonts/GeneralSans-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(/fonts/GeneralSans-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(/fonts/GeneralSans-Semibold.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--clr-ground:#0b1015;--clr-ink:#eae8e0;--clr-ink-muted:#82807a;--clr-ink-faint:#3c3a35;--clr-attacker:#fb594d;--clr-converged:#00c4c4;--clr-rule:#25292f;--clr-surface:#161b20;--clr-focus:#00c4c4;--clr-btn-bg:#25292f;--clr-btn-border:#3e4349;--clr-btn-ink:#c0bdb7;--font-sans:"General Sans", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", monospace;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--max-w:72rem;--gutter:clamp(1rem, 4vw, 2rem)}@supports (color:lab(0% 0 0)){:root{--clr-ground:lab(4.42354% -.727616 -3.18275);--clr-ink:lab(91.9311% -.0077486 3.82568);--clr-ink-muted:lab(53.6501% .0090301 3.83735);--clr-ink-faint:lab(24.6481% .0425428 3.86227);--clr-attacker:lab(60.9522% 62.2562 42.4999);--clr-converged:lab(71.3169% -45.8234 -13.7084);--clr-rule:lab(16.464% -1.19568 -4.22768);--clr-surface:lab(9.50177% -1.15329 -4.20978);--clr-focus:lab(71.3169% -45.8234 -13.7084);--clr-btn-bg:lab(16.464% -1.19568 -4.22768);--clr-btn-border:lab(28.0661% -1.23599 -4.24612);--clr-btn-ink:lab(76.8508% -.00283122 3.8291)}}[data-theme=light]{--clr-ground:#f3f5f8;--clr-ink:#1b2025;--clr-ink-muted:#595e64;--clr-ink-faint:#a1a5a9;--clr-attacker:#d7352d;--clr-converged:#007273;--clr-rule:#d5d8db;--clr-surface:#e5e8ec;--clr-focus:#007273;--clr-btn-bg:#d5d8db;--clr-btn-border:#b4b8bc;--clr-btn-ink:#25292f}@supports (color:lab(0% 0 0)){[data-theme=light]{--clr-ground:lab(96.517% -.443906 -1.43213);--clr-ink:lab(11.8226% -1.16985 -4.2166);--clr-ink-muted:lab(39.6673% -1.25924 -4.25745);--clr-ink-faint:lab(67.5132% -.871807 -2.85522);--clr-attacker:lab(49.3183% 62.5986 44.9578);--clr-converged:lab(43.4627% -45.9091 -13.5146);--clr-rule:lab(86.0753% -.661135 -2.14558);--clr-surface:lab(91.8753% -.66179 -2.14592);--clr-focus:lab(43.4627% -45.9091 -13.5146);--clr-btn-bg:lab(86.0753% -.661135 -2.14558);--clr-btn-border:lab(74.4733% -.873745 -2.85633);--clr-btn-ink:lab(16.464% -1.19568 -4.22768)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-sans);background-color:var(--clr-ground);color:var(--clr-ink);-webkit-font-smoothing:antialiased;line-height:1.6;transition:background-color .3s,color .3s}@media (prefers-reduced-motion:reduce){body{transition:none}}.skip-link{top:-100%;left:var(--gutter);z-index:9999;background:var(--clr-converged);color:var(--clr-ground);font-family:var(--font-mono);letter-spacing:.08em;border-radius:2px;padding:.5rem 1rem;font-size:.75rem;text-decoration:none;position:absolute}.skip-link:focus{top:var(--space-sm);outline:2px solid var(--clr-converged);outline-offset:2px}:focus-visible{outline:2px solid var(--clr-focus);outline-offset:3px;border-radius:2px}.container{max-width:var(--max-w);padding-inline:var(--gutter);margin-inline:auto}.site-header{top:0;z-index:100;padding-block:var(--space-md);background:color-mix(in oklch, var(--clr-ground) 90%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--clr-rule);position:fixed;inset-inline:0}.header-inner{justify-content:space-between;align-items:center;display:flex}.header-wordmark{align-items:baseline;gap:var(--space-sm);color:var(--clr-ink);text-decoration:none;display:flex}.header-mark{font-family:var(--font-mono);letter-spacing:.15em;color:var(--clr-converged);text-transform:uppercase;font-size:.7rem}.header-name{font-family:var(--font-sans);letter-spacing:.02em;color:var(--clr-ink);font-size:.875rem;font-weight:500}.header-right{align-items:center;gap:var(--space-md);display:flex}.header-nav{gap:var(--space-lg);list-style:none;display:flex}.header-nav a{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--clr-ink-muted);font-size:.7rem;text-decoration:none;transition:color .2s}.header-nav a:hover{color:var(--clr-ink)}.nav-toggle{cursor:pointer;padding:var(--space-sm);color:var(--clr-ink);background:0 0;border:none;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:none}.theme-toggle{background:var(--clr-btn-bg);border:1px solid var(--clr-btn-border);cursor:pointer;min-width:44px;min-height:44px;color:var(--clr-btn-ink);border-radius:4px;justify-content:center;align-items:center;font-size:1rem;line-height:1;transition:background .2s,border-color .2s;display:flex}.theme-toggle:hover{background:var(--clr-surface)}.theme-toggle:focus-visible{outline:2px solid var(--clr-focus);outline-offset:3px}.mobile-nav-drawer{z-index:99;background:var(--clr-ground);justify-content:center;align-items:center;gap:var(--space-xl);flex-direction:column;display:none;position:fixed;inset:0}.mobile-nav-drawer.open{display:flex}.mobile-nav-drawer a{font-family:var(--font-sans);color:var(--clr-ink);font-size:1.5rem;font-weight:500;text-decoration:none}.t-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--clr-ink-muted);font-size:.7rem}.t-display{font-family:var(--font-sans);letter-spacing:-.02em;color:var(--clr-ink);text-wrap:balance;font-size:clamp(2.25rem,5.5vw,3.75rem);font-weight:600;line-height:1.1}.t-body{font-family:var(--font-sans);color:var(--clr-ink-muted);font-size:clamp(.9375rem,1.5vw,1.0625rem);line-height:1.65}.t-mono{font-family:var(--font-mono);font-size:.8125rem;line-height:1.5}.t-stat{font-family:var(--font-mono);color:var(--clr-ink);font-size:clamp(1rem,2vw,1.25rem);font-weight:400;line-height:1.4}h2{font-family:var(--font-sans);letter-spacing:-.015em;color:var(--clr-ink);text-wrap:balance;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:600;line-height:1.2}h3{font-family:var(--font-sans);letter-spacing:-.01em;color:var(--clr-ink);font-size:clamp(1.125rem,2vw,1.5rem);font-weight:600;line-height:1.25}p{max-width:68ch}a{color:var(--clr-converged);text-underline-offset:3px}a:hover{text-decoration:underline}code{font-family:var(--font-mono);color:var(--clr-converged);background:color-mix(in oklch, var(--clr-converged) 12%, transparent);border-radius:3px;padding:.1em .35em;font-size:.875em}.hero{min-height:100svh;padding-top:calc(64px + var(--space-3xl));padding-bottom:var(--space-3xl);flex-direction:column;display:flex;position:relative;overflow:hidden}.hero-canvas-wrap{z-index:0;position:absolute;inset:0}.hero-canvas-wrap canvas{width:100%;height:100%;display:block}.hero-canvas-poster{z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.hero-canvas-poster svg{opacity:.7;width:min(80vw,520px);height:auto}.hero-content{z-index:2;gap:var(--space-2xl);grid-template-columns:1fr 1fr;align-items:end;margin-top:auto;display:grid;position:relative}.hero-eyebrow{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);display:flex}.hero-eyebrow-line{background:var(--clr-converged);width:2rem;height:1px;display:block}.hero-headline{margin-bottom:var(--space-lg)}.hero-sub{margin-bottom:var(--space-xl);max-width:46ch}.hero-ctas{gap:var(--space-md);flex-wrap:wrap;align-items:center;display:flex}.btn-primary{align-items:center;gap:var(--space-sm);background:var(--clr-converged);min-height:44px;color:var(--clr-ground);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:none;border-radius:3px;padding:.75rem 1.5rem;font-size:.75rem;font-weight:500;text-decoration:none;transition:opacity .2s;display:inline-flex}.btn-primary:hover{opacity:.85;color:var(--clr-ground);text-decoration:none}.btn-ghost{align-items:center;gap:var(--space-sm);min-height:44px;color:var(--clr-ink-muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--clr-rule);cursor:pointer;background:0 0;border-radius:3px;padding:.75rem 1.5rem;font-size:.75rem;text-decoration:none;transition:color .2s,border-color .2s;display:inline-flex}.btn-ghost:hover{color:var(--clr-ink);border-color:var(--clr-ink-muted);text-decoration:none}.hero-annotation{padding:var(--space-lg);background:color-mix(in oklch, var(--clr-surface) 80%, transparent);border:1px solid var(--clr-rule);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:4px}.annotation-finding{margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--clr-rule)}.annotation-stat-row{gap:var(--space-sm);margin-bottom:var(--space-sm);grid-template-columns:1fr 1fr;display:grid}.annotation-stat{flex-direction:column;gap:.25rem;display:flex}.stat-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--clr-ink-muted);font-size:.625rem}.stat-value{font-family:var(--font-mono);color:var(--clr-ink);font-size:.9375rem}.stat-value.attacker{color:var(--clr-attacker)}.stat-value.converged{color:var(--clr-converged)}.stat-p{font-family:var(--font-mono);color:var(--clr-ink-muted);font-size:.75rem}.stat-p.significant{color:var(--clr-attacker)}.stat-p.ns{color:var(--clr-ink-faint)}.pval-live{align-items:center;gap:var(--space-sm);padding-top:var(--space-sm);display:flex}.pval-dot{background:var(--clr-converged);border-radius:50%;flex-shrink:0;width:6px;height:6px}.pval-text{font-family:var(--font-mono);color:var(--clr-converged);font-size:.75rem}section{padding-block:var(--space-3xl);border-top:1px solid var(--clr-rule)}.section-label{margin-bottom:var(--space-xl)}.section-label-num{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--clr-converged);margin-bottom:var(--space-xs);font-size:.625rem;display:block}.thesis-grid{gap:var(--space-2xl);grid-template-columns:1fr 1fr;align-items:start;display:grid}.thesis-pillars{gap:var(--space-md);margin-top:var(--space-md);flex-direction:column;list-style:none;display:flex}.thesis-pillar{align-items:flex-start;gap:var(--space-md);padding:var(--space-md);border:1px solid var(--clr-rule);border-radius:3px;display:flex}.pillar-icon{font-family:var(--font-mono);color:var(--clr-converged);flex-shrink:0;min-width:1.5rem;padding-top:2px;font-size:.75rem}.pillar-text{color:var(--clr-ink-muted);font-size:.9375rem;line-height:1.55}.case-study{margin-bottom:var(--space-3xl)}.case-study-header{gap:var(--space-lg);margin-bottom:var(--space-xl);grid-template-columns:1fr auto;align-items:start;display:grid}.case-study-tag{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--clr-attacker);margin-bottom:var(--space-sm);font-size:.625rem;display:block}.case-study-tag.secondary{color:var(--clr-converged)}.case-study-link{font-family:var(--font-mono);letter-spacing:.08em;color:var(--clr-ink-muted);border:1px solid var(--clr-rule);white-space:nowrap;border-radius:3px;align-items:center;gap:.35rem;min-height:44px;padding:.5rem .75rem;font-size:.7rem;text-decoration:none;transition:color .2s,border-color .2s;display:inline-flex}.case-study-link:hover{color:var(--clr-ink);border-color:var(--clr-converged);text-decoration:none}.findings-block{padding:var(--space-lg);border:1px solid var(--clr-rule);border-left:3px solid var(--clr-attacker);margin-bottom:var(--space-xl);background:color-mix(in oklch, var(--clr-surface) 60%, transparent);border-radius:0 3px 3px 0}.findings-block.positive{border-left-color:var(--clr-converged)}.findings-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--clr-ink-muted);margin-bottom:var(--space-sm);font-size:.625rem;display:block}.findings-statement{font-family:var(--font-sans);color:var(--clr-ink);max-width:72ch;font-size:1.0625rem;line-height:1.55}.stats-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);margin-bottom:var(--space-xl);font-size:.8rem}.stats-table th{text-align:left;border-bottom:2px solid var(--clr-rule);letter-spacing:.1em;text-transform:uppercase;color:var(--clr-ink-muted);padding:.5rem .75rem;font-size:.65rem;font-weight:400}.stats-table td{border-bottom:1px solid var(--clr-rule);color:var(--clr-ink);vertical-align:top;padding:.625rem .75rem}.stats-table td:first-child{color:var(--clr-ink-muted);white-space:nowrap}.val-sig{color:var(--clr-attacker)}.val-ns{color:var(--clr-ink-muted)}.val-pos{color:var(--clr-converged)}.embed-wrap{margin-bottom:var(--space-xl);position:relative}.embed-header{margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.embed-iframe{border:1px solid var(--clr-rule);background:var(--clr-surface);border-radius:4px;width:100%;height:540px}.embed-mobile-poster{border:1px solid var(--clr-rule);background:var(--clr-surface);border-radius:4px;width:100%;display:none;overflow:hidden}.embed-mobile-poster-inner{justify-content:center;align-items:center;gap:var(--space-md);padding:var(--space-xl);flex-direction:column;min-height:200px;display:flex}.embed-mobile-label{font-family:var(--font-mono);color:var(--clr-ink-muted);text-align:center;font-size:.75rem}.terminal-block{background:var(--clr-surface);border:1px solid var(--clr-rule);padding:var(--space-lg);font-family:var(--font-mono);color:var(--clr-ink-muted);border-radius:4px;font-size:.8rem;line-height:1.7;overflow-x:auto}.terminal-block .t-dim{color:var(--clr-ink-faint)}.terminal-block .t-pos{color:var(--clr-converged)}.terminal-block .t-neg{color:var(--clr-attacker)}.terminal-block .t-bright{color:var(--clr-ink)}.pipeline-steps{gap:var(--space-xs);margin:var(--space-md) 0;flex-direction:column;list-style:none;display:flex}.pipeline-step{align-items:flex-start;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--clr-rule);display:flex}.step-num{font-family:var(--font-mono);color:var(--clr-converged);flex-shrink:0;min-width:1.5rem;padding-top:2px;font-size:.625rem}.step-text{color:var(--clr-ink-muted);font-size:.9375rem;line-height:1.55}.eval-grid{gap:var(--space-lg);margin-top:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.eval-card{padding:var(--space-lg);border:1px solid var(--clr-rule);border-radius:3px}.eval-card-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--clr-converged);margin-bottom:var(--space-sm);font-size:.65rem;display:block}.eval-card p{color:var(--clr-ink-muted);max-width:none;font-size:.9375rem;line-height:1.6}.contact-section{padding-block:var(--space-3xl);border-top:1px solid var(--clr-rule)}.contact-inner{gap:var(--space-xl);grid-template-columns:1fr auto;align-items:center;display:grid}.contact-links{gap:var(--space-lg);margin-top:var(--space-lg);flex-wrap:wrap;display:flex}.contact-link{font-family:var(--font-mono);color:var(--clr-ink-muted);align-items:center;gap:.4rem;min-height:44px;padding:.625rem 0;font-size:.8125rem;text-decoration:none;transition:color .2s;display:inline-flex}.contact-link:hover{color:var(--clr-ink)}.contact-link svg{flex-shrink:0}footer{padding-block:var(--space-xl);border-top:1px solid var(--clr-rule)}.footer-inner{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.footer-copy{font-family:var(--font-mono);color:var(--clr-ink-faint);font-size:.7rem}@media (max-width:900px){.hero-content{grid-template-columns:1fr}.hero-annotation{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.annotation-finding{grid-column:1/-1}.thesis-grid,.case-study-header,.contact-inner{grid-template-columns:1fr}.header-nav{display:none}.nav-toggle{display:flex}}@media (max-width:600px){.hero{padding-top:calc(56px + var(--space-xl));min-height:100svh}.hero-annotation{grid-template-columns:1fr}.annotation-stat-row{grid-template-columns:1fr 1fr}.embed-iframe{display:none}.embed-mobile-poster{display:flex}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
