:root,:root[data-theme=warm]{--cream: #F7F5E8;--cream-warm: #EFE6D4;--paper: #F7F5E8;--ink: #292929;--ink-soft: #6B5D4D;--ink-faint: #9B8E7C;--accent: #6777B6;--accent-soft: #95A0CC;--accent-pale: #C9D0E3;--divider: #D4C9B5;--atmosphere-a: #E8DDC6;--atmosphere-b: #F4EDE0;--atmosphere-purple: #C9B8D4;--atmosphere-rose: #E8B5B5;--lilac-grey: #D3C2CD;--spring-leaves: #849E15;--good-surf: #92A2A6;--gold-velvet: #B28622;--brink-of-pink: #F8CABA;--poppy: #D8560E;--butter-yellow: #EFCE7B;--florida-oranges: #E1903E;--pea-flower: #6777B6;--night-forest: #2B2B23;--dusty-berry: #D17089;--pistachio: #CBD183;--surface: var(--paper);--surface-warm: var(--cream-warm);--portrait-wash: #C5B854}:root[data-theme=warm] .s1-title,:root:not([data-theme]) .s1-title{font-family:panel-sans,system-ui,sans-serif;font-weight:500;letter-spacing:-.01em}:root[data-theme=warm] .s1-portrait-frame,:root:not([data-theme]) .s1-portrait-frame{box-shadow:none;background:var(--cream)}:root{--transition-morph: .6s cubic-bezier(.16, 1, .3, 1);--transition-arrive: .9s cubic-bezier(.22, 1, .36, 1);--transition-soft: 1s cubic-bezier(.22, 1, .36, 1);--font-display: "freight-sans-pro", Georgia, serif;--font-display-bold: "panel-sans", "freight-sans-pro", Georgia, serif;--font-body: "freight-sans-pro", system-ui, sans-serif;--font-mono: "ibm-plex-mono", ui-monospace, monospace;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 48px;--space-6: 64px;--space-7: 96px;--space-8: 160px;--space-9: 200px}:root[data-motion=subtle]{--transition-morph: .3s cubic-bezier(.16, 1, .3, 1);--transition-arrive: .45s cubic-bezier(.22, 1, .36, 1);--transition-soft: .5s cubic-bezier(.22, 1, .36, 1)}:root[data-motion=off]{--transition-morph: 1ms;--transition-arrive: 1ms;--transition-soft: 1ms}:root[data-motion=off] *,:root[data-motion=off] *:before,:root[data-motion=off] *:after{animation-duration:1ms!important;transition-duration:1ms!important}:root[data-theme=spectrum]{--cream: #FAFAFA;--cream-warm: #F0F0EE;--paper: #FFFFFF;--ink: #1B1B1B;--ink-soft: #4B4B4B;--ink-faint: #8E8E8E;--accent: #E34F26;--accent-soft: #F08A6B;--accent-pale: #FBD9CA;--divider: #D8D6D0;--atmosphere-a: #ECEAE5;--atmosphere-b: #FAFAFA;--atmosphere-purple: #C9B8D4;--atmosphere-rose: #E8B5B5;--surface: #FFFFFF;--surface-warm: #F5F5F2;--portrait-wash: rgba(227, 79, 38, .5);--font-display: "gotham", system-ui, sans-serif;--font-display-bold: "gotham-condensed", "gotham", sans-serif;--font-body: "gotham", system-ui, sans-serif;--font-mono: "ibm-plex-mono", ui-monospace, monospace;--transition-morph: .25s cubic-bezier(.4, 0, .2, 1);--transition-arrive: .35s cubic-bezier(.4, 0, .2, 1);--transition-soft: .4s cubic-bezier(.4, 0, .2, 1)}:root[data-theme=spectrum] .viz-stage,:root[data-theme=spectrum] .skill-code,:root[data-theme=spectrum] .demo-placeholder,:root[data-theme=spectrum] .ctrl-toggle,:root[data-theme=spectrum] .ctrl-panel,:root[data-theme=spectrum] .s1-portrait-frame,:root[data-theme=spectrum] .ctrl-opt{border-radius:0!important}:root[data-theme=spectrum] em{font-style:normal;color:var(--accent);font-weight:700}:root[data-theme=brutalist]{--cream: #F2EFE5;--cream-warm: #E8E3D2;--paper: #F8F5EA;--ink: #000000;--ink-soft: #2A2A28;--ink-faint: #5C5C58;--accent: #D32F2F;--accent-soft: #B12525;--accent-pale: #F5C5C5;--divider: #000000;--atmosphere-a: #E8E3D2;--atmosphere-b: #F2EFE5;--atmosphere-purple: #C9B8D4;--atmosphere-rose: #E8B5B5;--surface: var(--cream);--surface-warm: var(--cream-warm);--portrait-wash: rgba(0, 0, 0, .4);--font-display: "alternate-gothic-no-1-d", Impact, sans-serif;--font-display-bold: "alternate-gothic-no-3-d", "alternate-gothic-no-1-d", Impact, sans-serif;--font-body: "freight-sans-pro", Georgia, serif;--font-mono: "ibm-plex-mono", ui-monospace, monospace;--transition-morph: .15s cubic-bezier(.22, 1, .36, 1);--transition-arrive: .22s cubic-bezier(.22, 1, .36, 1);--transition-soft: .3s cubic-bezier(.22, 1, .36, 1)}:root[data-theme=brutalist] .divider,:root[data-theme=brutalist] .chapter-body strong{font-weight:900}:root[data-theme=brutalist] hr,:root[data-theme=brutalist] .s4-rule,:root[data-theme=brutalist] .s5,:root[data-theme=brutalist] .s5-row,:root[data-theme=brutalist] .case-entry,:root[data-theme=brutalist] .trait,:root[data-theme=brutalist] .evidence-row,:root[data-theme=brutalist] .watch-item,:root[data-theme=brutalist] .skill-display,:root[data-theme=brutalist] .demo-section,:root[data-theme=brutalist] .close:before{border-color:#000!important;border-width:2px!important;border-style:solid!important}:root[data-theme=brutalist] .s4-rule{height:4px;background:#000}:root[data-theme=brutalist] .s5,:root[data-theme=brutalist] .case-list{border-top-width:4px!important}:root[data-theme=brutalist] .s5-row,:root[data-theme=brutalist] .case-entry,:root[data-theme=brutalist] .trait,:root[data-theme=brutalist] .evidence-row,:root[data-theme=brutalist] .watch-item{border-top:0!important;border-left:0!important;border-right:0!important;border-bottom-width:2px!important}:root[data-theme=brutalist] .viz-stage,:root[data-theme=brutalist] .skill-code,:root[data-theme=brutalist] .demo-placeholder,:root[data-theme=brutalist] .ctrl-toggle,:root[data-theme=brutalist] .ctrl-panel,:root[data-theme=brutalist] .s1-portrait-frame,:root[data-theme=brutalist] .ctrl-opt,:root[data-theme=brutalist] .s2-image,:root[data-theme=brutalist] .ctrl-slide-dot{border-radius:0!important;border-color:#000}:root[data-theme=brutalist] h1,:root[data-theme=brutalist] h2,:root[data-theme=brutalist] h3,:root[data-theme=brutalist] .s5-title,:root[data-theme=brutalist] .s2-title,:root[data-theme=brutalist] .s4-title,:root[data-theme=brutalist] .s1-title{text-transform:uppercase;letter-spacing:0;font-weight:700;line-height:.9}:root[data-theme=brutalist] em{font-style:normal;font-weight:900;color:var(--accent);background:var(--ink);color:#fff;padding:0 6px}:root[data-theme=brutalist] .s1-portrait-frame{box-shadow:12px 12px #000}:root[data-theme=magazine]{--cream: #F5EDE5;--cream-warm: #EDD9D2;--paper: #FBF4ED;--ink: #2A1F26;--ink-soft: #6B4F5C;--ink-faint: #A89095;--accent: #A0445E;--accent-soft: #C77B91;--accent-pale: #E8C5CD;--divider: #D8C3C8;--atmosphere-a: #EBD5D5;--atmosphere-b: #F5EDE5;--atmosphere-purple: #BFA8C0;--atmosphere-rose: #E5B5BA;--surface: var(--paper);--surface-warm: var(--cream-warm);--portrait-wash: rgba(160, 68, 94, .5);--font-display: "p22-mackinac-pro", Georgia, "Times New Roman", serif;--font-display-bold: "p22-mackinac-pro", Georgia, "Times New Roman", serif;--font-body: "p22-mackinac-pro", Georgia, "Times New Roman", serif;--font-mono: "ibm-plex-mono", ui-monospace, monospace;--transition-morph: 1.1s cubic-bezier(.22, 1, .36, 1);--transition-arrive: 1.4s cubic-bezier(.22, 1, .36, 1);--transition-soft: 1.8s cubic-bezier(.22, 1, .36, 1)}:root[data-theme=magazine] h1,:root[data-theme=magazine] h2,:root[data-theme=magazine] .s1-title,:root[data-theme=magazine] .s4-title{font-style:italic;font-weight:400;letter-spacing:-.015em}:root[data-theme=magazine] .s2-title,:root[data-theme=magazine] .s5-title{font-style:normal;font-weight:700}:root[data-theme=magazine] em{color:var(--accent);font-style:italic;font-weight:400}:root[data-theme=magazine] hr,:root[data-theme=magazine] .s4-rule,:root[data-theme=magazine] .divider{background:var(--ink-soft);height:1px!important;opacity:.4}:root[data-theme=magazine] .viz-stage,:root[data-theme=magazine] .ctrl-toggle,:root[data-theme=magazine] .ctrl-panel,:root[data-theme=magazine] .s1-portrait-frame{border-radius:2px}:root[data-theme=terminal]{--cream: #0A0E0A;--cream-warm: #0F1610;--paper: #15201A;--ink: #C9F583;--ink-soft: #7AB152;--ink-faint: #4A6E33;--accent: #FFB347;--accent-soft: #E89A2A;--accent-pale: #4A3320;--divider: #2A4226;--atmosphere-a: #0F1610;--atmosphere-b: #0A0E0A;--atmosphere-purple: #2F1F40;--atmosphere-rose: #5B3F3F;--surface: var(--cream-warm);--surface-warm: var(--paper);--portrait-wash: rgba(255, 179, 71, .55);--font-display: "ibm-plex-mono", ui-monospace, monospace;--font-display-bold: "ibm-plex-mono", ui-monospace, monospace;--font-body: "ibm-plex-mono", ui-monospace, monospace;--font-mono: "ibm-plex-mono", ui-monospace, monospace;--transition-morph: .1s steps(2, end);--transition-arrive: .15s steps(3, end);--transition-soft: .2s steps(4, end)}:root[data-theme=terminal]{background:#0a0e0a}:root[data-theme=terminal] body{background-image:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.18) 50%);background-size:100% 3px}:root[data-theme=terminal] h1,:root[data-theme=terminal] h2,:root[data-theme=terminal] h3,:root[data-theme=terminal] .s5-title,:root[data-theme=terminal] .s2-title,:root[data-theme=terminal] .s4-title,:root[data-theme=terminal] .s1-title{text-transform:uppercase;letter-spacing:.05em;font-weight:700;font-style:normal}:root[data-theme=terminal] em{color:var(--accent);font-style:normal;text-transform:uppercase}:root[data-theme=terminal] em:before{content:"> "}:root[data-theme=terminal] em:after{content:" <"}:root[data-theme=terminal] .viz-stage,:root[data-theme=terminal] .skill-code,:root[data-theme=terminal] .demo-placeholder,:root[data-theme=terminal] .ctrl-toggle,:root[data-theme=terminal] .ctrl-panel,:root[data-theme=terminal] .s1-portrait-frame,:root[data-theme=terminal] .ctrl-opt,:root[data-theme=terminal] .s2-image,:root[data-theme=terminal] .ctrl-slide-dot{border-radius:0!important}:root[data-theme=terminal] .s1-portrait-frame{border:1px solid var(--ink);box-shadow:0 0 24px #c9f58326}:root[data-theme=terminal] .s4-rule{background:var(--ink);height:2px}:root[data-theme=terminal] .scroll-hint:before{content:"> "}:root[data-theme=terminal] #framework.scrolly-pinned{background:linear-gradient(180deg,var(--cream) 0%,#0F1A14 40%,#15201A 100%)}:root[data-theme=terminal] #framework[data-step="3"] .arch-svg .label-text.light{fill:#0a0e0a}:root[data-theme=terminal] .ctrl-toggle{background:var(--cream-warm);color:var(--ink);border-color:var(--divider)}:root[data-theme=terminal] .ctrl-opt[aria-pressed=true]{background:var(--accent);color:var(--cream)}:root[data-theme=bauhaus]{--cream: #F4EFE4;--cream-warm: #ECE4D0;--paper: #FAF6EC;--ink: #131110;--ink-soft: #44423E;--ink-faint: #8A867E;--accent: #D52026;--accent-soft: #B81C21;--accent-pale: #F4C5C7;--divider: #131110;--atmosphere-a: #FFDD00;--atmosphere-b: #1F4FAF;--atmosphere-purple: #1F4FAF;--atmosphere-rose: #FFDD00;--surface: var(--paper);--surface-warm: var(--cream-warm);--portrait-wash: rgba(213, 32, 38, .6);--font-display: "p22-underground", "Futura", system-ui, sans-serif;--font-display-bold: "p22-underground", "Futura", system-ui, sans-serif;--font-body: "p22-underground", "Futura", system-ui, sans-serif;--font-mono: "ibm-plex-mono", ui-monospace, monospace;--transition-morph: .2s cubic-bezier(.4, 0, .2, 1);--transition-arrive: .3s cubic-bezier(.4, 0, .2, 1);--transition-soft: .4s cubic-bezier(.4, 0, .2, 1)}:root[data-theme=bauhaus] .viz-stage,:root[data-theme=bauhaus] .skill-code,:root[data-theme=bauhaus] .demo-placeholder,:root[data-theme=bauhaus] .ctrl-toggle,:root[data-theme=bauhaus] .ctrl-panel,:root[data-theme=bauhaus] .s1-portrait-frame,:root[data-theme=bauhaus] .ctrl-opt,:root[data-theme=bauhaus] .s2-image,:root[data-theme=bauhaus] .ctrl-slide-dot{border-radius:0!important;border-color:var(--ink)}:root[data-theme=bauhaus] h1,:root[data-theme=bauhaus] h2,:root[data-theme=bauhaus] h3,:root[data-theme=bauhaus] .s1-title,:root[data-theme=bauhaus] .s4-title{font-weight:700;letter-spacing:0}:root[data-theme=bauhaus] em{font-style:normal;color:var(--cream);background:var(--ink);padding:0 6px}:root[data-theme=bauhaus] .s2 .s2-col:nth-child(1) .s2-image{background:var(--accent)}:root[data-theme=bauhaus] .s2 .s2-col:nth-child(2) .s2-image{background:#fd0}:root[data-theme=bauhaus] .s2 .s2-col:nth-child(3) .s2-image{background:#1f4faf}:root[data-theme=bauhaus] .s4-rule{height:6px;background:var(--ink)}:root[data-theme=coastal]{--cream: #EDE5D6;--cream-warm: #E3D8C2;--paper: #F5EFE2;--ink: #1B2A3D;--ink-soft: #4A5C72;--ink-faint: #8FA0B5;--accent: #2C7B8C;--accent-soft: #5DA3B0;--accent-pale: #B4D7DE;--divider: #C8BDA8;--atmosphere-a: #D5C8AE;--atmosphere-b: #EDE5D6;--atmosphere-purple: #6B8BA8;--atmosphere-rose: #C8D4DE;--surface: var(--paper);--surface-warm: var(--cream-warm);--portrait-wash: rgba(44, 123, 140, .5);--font-display: "marine", Georgia, serif;--font-display-bold: "marine", Georgia, serif;--font-body: "marine", Georgia, serif;--font-mono: "ibm-plex-mono", ui-monospace, monospace;--transition-morph: .8s cubic-bezier(.22, 1, .36, 1);--transition-arrive: 1s cubic-bezier(.22, 1, .36, 1);--transition-soft: 1.2s cubic-bezier(.22, 1, .36, 1)}:root[data-theme=coastal] h1,:root[data-theme=coastal] h2,:root[data-theme=coastal] .s1-title,:root[data-theme=coastal] .s4-title{font-family:marine-oblicua,marine,Georgia,serif;font-style:italic;font-weight:400}:root[data-theme=coastal] em{color:var(--accent);font-family:marine-oblicua,marine,Georgia,serif;font-style:italic}:root[data-theme=coastal] .viz-stage,:root[data-theme=coastal] .s1-portrait-frame{border-radius:4px}:root[data-theme=coastal] .s4-rule{height:1px;background:var(--accent);opacity:.4}:root[data-theme=daily]{--cream: #FAF3E8;--cream-warm: #F3E9D7;--paper: #FEF8EC;--ink: #2D2A24;--ink-soft: #6A625A;--ink-faint: #A89E92;--accent: #C76E50;--accent-soft: #DC9078;--accent-pale: #F0D6CB;--divider: #DDD2BE;--atmosphere-a: #F0DFC5;--atmosphere-b: #FAF3E8;--atmosphere-purple: #D5C5D5;--atmosphere-rose: #F0D6CB;--surface: var(--paper);--surface-warm: var(--cream-warm);--portrait-wash: rgba(199, 110, 80, .5);--font-display: "pd-everyday", system-ui, sans-serif;--font-display-bold: "pd-everyday", system-ui, sans-serif;--font-body: "pd-everyday", system-ui, sans-serif;--font-mono: "ibm-plex-mono", ui-monospace, monospace;--transition-morph: .5s cubic-bezier(.22, 1, .36, 1);--transition-arrive: .7s cubic-bezier(.22, 1, .36, 1);--transition-soft: .9s cubic-bezier(.22, 1, .36, 1)}:root[data-theme=daily] .viz-stage,:root[data-theme=daily] .s1-portrait-frame,:root[data-theme=daily] .ctrl-toggle,:root[data-theme=daily] .ctrl-panel,:root[data-theme=daily] .s2-image,:root[data-theme=daily] .ctrl-opt,:root[data-theme=daily] .skill-code{border-radius:12px}:root[data-theme=daily] em{color:var(--accent);font-style:italic}:root[data-theme=cold]{--cream: #F4F5F7;--cream-warm: #E6E9ED;--paper: #FFFFFF;--ink: #131820;--ink-soft: #485263;--ink-faint: #8E97A6;--accent: #2756DC;--accent-soft: #5077E5;--accent-pale: #C4D2F5;--divider: #D2D7DE;--atmosphere-a: #E0E5EB;--atmosphere-b: #F4F5F7;--atmosphere-purple: #B5BCD0;--atmosphere-rose: #C0CBD8;--surface: var(--paper);--surface-warm: var(--cream-warm);--portrait-wash: rgba(39, 86, 220, .5);--font-display: "freight-sans-condensed-pro", "gotham-narrow", sans-serif;--font-display-bold: "freight-sans-condensed-pro-u", "freight-sans-condensed-pro", sans-serif;--font-body: "gotham-narrow", system-ui, sans-serif;--font-mono: "ibm-plex-mono", ui-monospace, monospace;--transition-morph: .22s cubic-bezier(.4, 0, .2, 1);--transition-arrive: .32s cubic-bezier(.4, 0, .2, 1);--transition-soft: .4s cubic-bezier(.4, 0, .2, 1)}:root[data-theme=cold] h1,:root[data-theme=cold] h2,:root[data-theme=cold] .s1-title,:root[data-theme=cold] .s4-title,:root[data-theme=cold] .s2-title,:root[data-theme=cold] .s5-title{letter-spacing:-.025em;font-weight:700}:root[data-theme=cold] em{font-style:normal;color:var(--accent);font-weight:700}:root[data-theme=cold] .viz-stage,:root[data-theme=cold] .s1-portrait-frame,:root[data-theme=cold] .ctrl-toggle,:root[data-theme=cold] .ctrl-panel,:root[data-theme=cold] .s2-image,:root[data-theme=cold] .ctrl-opt{border-radius:2px}:root[data-theme=cold] .s4-rule{background:var(--accent);height:2px;opacity:1}:root[data-theme=typewriter]{--cream: #F0E8D8;--cream-warm: #E5DBC4;--paper: #F6EFE0;--ink: #1A1410;--ink-soft: #58463A;--ink-faint: #998870;--accent: #8B4513;--accent-soft: #A86B3A;--accent-pale: #DBC3A8;--divider: #C8B89C;--atmosphere-a: #E8DDC4;--atmosphere-b: #F0E8D8;--atmosphere-purple: #B5A688;--atmosphere-rose: #D8C2A0;--surface: var(--paper);--surface-warm: var(--cream-warm);--portrait-wash: rgba(139, 69, 19, .5);--font-display: "p22-mackinac-pro", Georgia, serif;--font-display-bold: "p22-mackinac-pro", Georgia, serif;--font-body: "ibm-plex-mono", ui-monospace, monospace;--font-mono: "ibm-plex-mono", ui-monospace, monospace;--transition-morph: .35s cubic-bezier(.22, 1, .36, 1);--transition-arrive: .5s cubic-bezier(.22, 1, .36, 1);--transition-soft: .7s cubic-bezier(.22, 1, .36, 1)}:root[data-theme=typewriter] h1,:root[data-theme=typewriter] h2,:root[data-theme=typewriter] .s1-title,:root[data-theme=typewriter] .s4-title{font-family:p22-mackinac-pro,Georgia,serif;font-style:italic;font-weight:400}:root[data-theme=typewriter] .s2-title,:root[data-theme=typewriter] .s5-title{font-family:p22-mackinac-pro,Georgia,serif;font-style:normal;font-weight:700}:root[data-theme=typewriter] em{color:var(--accent);font-style:italic;text-decoration:underline;text-decoration-style:wavy;text-decoration-thickness:1px;text-underline-offset:4px}:root[data-theme=typewriter] body{background-image:radial-gradient(ellipse at 25% 30%,rgba(139,69,19,.04) 0%,transparent 60%),radial-gradient(ellipse at 75% 70%,rgba(139,69,19,.03) 0%,transparent 60%)}:root[data-theme=typewriter] .viz-stage,:root[data-theme=typewriter] .s1-portrait-frame{border-radius:2px;box-shadow:0 18px 36px #1a14102e}:root[data-theme=typewriter] .s4-rule{background:var(--ink-soft);height:1px;opacity:.5}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;background:var(--cream)}body{background:var(--cream);color:var(--ink);font-family:var(--font-body);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,.display,.lede{font-family:var(--font-display);font-weight:400;letter-spacing:-.02em;line-height:1.05;font-variation-settings:"opsz" 96}h3,.subtitle{font-family:var(--font-display);font-weight:900;letter-spacing:-.015em;line-height:1.1;font-variation-settings:"opsz" 48}em,.italic{font-style:italic;color:var(--accent)}h1,h2,h3,h4,.display,.lede{text-wrap:balance}p,figcaption,blockquote{text-wrap:pretty}.label{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft)}.label .num{color:var(--accent);margin-right:12px}.skip-link{position:absolute;top:-100px;left:16px;background:var(--ink);color:var(--paper);padding:12px 20px;font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;z-index:200;transition:top .2s ease}.skip-link:focus{top:16px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal,.trait{transform:none!important}}.progress{position:fixed;top:0;left:0;height:2px;background:var(--accent);width:0%;z-index:100;transition:width 80ms linear}.nav{position:fixed;top:28px;left:56px;right:56px;display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);z-index:90;mix-blend-mode:multiply}body[data-page=deck] .nav,body[data-page=deck] .progress{display:none}.nav .case{color:var(--ink-soft)}.nav .case span{color:var(--accent)}.nav a{color:inherit;text-decoration:none}.nav a:hover{color:var(--accent)}.nav .case{display:flex;align-items:center;gap:12px}.nav-back{display:inline-block;transition:color .2s ease,transform .24s cubic-bezier(.22,1,.36,1)}.nav-back:hover{transform:translate(-3px)}.nav-sep{color:var(--ink-faint);opacity:.6}.hero{height:100vh;min-height:720px;display:flex;flex-direction:column;justify-content:center;padding:0 var(--space-7);position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 800px 600px at 85% 25%,rgba(184,71,43,.06) 0%,transparent 60%),radial-gradient(ellipse 600px 500px at 15% 75%,rgba(201,184,212,.18) 0%,transparent 70%);pointer-events:none}.hero-content{position:relative;z-index:1;max-width:1400px}.hero .kicker{font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--space-5);opacity:0;animation:fadeUp 1.1s cubic-bezier(.22,1,.36,1) .2s forwards}.hero h1{font-size:clamp(120px,18vw,280px);font-weight:300;letter-spacing:-.05em;line-height:.9;margin-bottom:var(--space-5);font-variation-settings:"opsz" 144;opacity:0;animation:fadeUp 1.4s cubic-bezier(.22,1,.36,1) .4s forwards}.hero h1 em{font-style:italic;font-weight:300;color:var(--accent)}.hero .subtitle{font-family:var(--font-display);font-size:clamp(24px,2.4vw,36px);font-weight:400;color:var(--ink-soft);max-width:900px;line-height:1.32;margin-bottom:80px;opacity:0;animation:fadeUp 1.4s cubic-bezier(.22,1,.36,1) .7s forwards}.hero .meta{display:flex;gap:var(--space-4);font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);opacity:0;animation:fadeUp 1.4s cubic-bezier(.22,1,.36,1) .9s forwards;flex-wrap:wrap}.hero .meta span:not(:last-child):after{content:"·";margin-left:var(--space-4);color:var(--divider)}.scroll-hint{position:absolute;bottom:56px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:14px;font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);opacity:0;animation:fadeIn 1s ease 1.5s forwards}.scroll-hint-arrow{width:14px;height:32px;color:var(--ink-faint);animation:scroll-hint-bob 2.4s ease-in-out 2.5s infinite}.hero-split-left .scroll-hint{left:auto;right:var(--space-7);align-items:flex-end;transform:none}.hero-split-right .scroll-hint{left:var(--space-7);align-items:flex-start;transform:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scroll-hint-bob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.hero-image{position:relative;background:var(--accent-pale);overflow:hidden}.hero-centered .hero-image{display:none}.hero-image .hero-image-img{width:100%;height:100%;object-fit:cover;display:block}.hero-image-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0}.hero-image:not(:has(.hero-image-img)) .hero-image-placeholder,.hero-image-empty .hero-image-placeholder{opacity:1}.hero-image-placeholder span{font-family:var(--font-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint)}.hero-split-left,.hero-split-right{display:grid;grid-template-columns:1fr 1fr;padding:0;align-items:stretch}.hero-split-left .hero-image,.hero-split-right .hero-image{width:100%;height:100%}.hero-split-left .hero-image{grid-column:1;grid-row:1}.hero-split-left .hero-content,.hero-split-right .hero-image{grid-column:2;grid-row:1}.hero-split-right .hero-content{grid-column:1;grid-row:1}.hero-split-left .hero-content,.hero-split-right .hero-content{display:flex;flex-direction:column;justify-content:center;padding:var(--space-7);max-width:none}.hero-split-left h1,.hero-split-right h1{font-size:clamp(64px,8vw,132px);letter-spacing:-.03em;margin-bottom:var(--space-4)}.hero-split-left:before,.hero-split-right:before{display:none}.hero-overlap{overflow:visible;justify-content:flex-start;padding-top:var(--space-7)}.hero-overlap .hero-content{max-width:1700px;margin:0 auto;width:100%;text-align:center;z-index:2}.hero-overlap h1{font-size:clamp(80px,16vw,280px);font-weight:500;letter-spacing:-.04em;line-height:.92}.hero-overlap .hero-image{position:absolute;top:38%;left:50%;transform:translate(-50%);width:min(85%,1400px);height:90vh;z-index:1;border-radius:4px}.hero-overlap .hero-content .subtitle,.hero-overlap .hero-content .meta{margin-left:auto;margin-right:auto;max-width:720px;text-align:center}.hero-overlap .meta{justify-content:center}.hero-overlap:before{opacity:.5}@media(max-width:900px){.hero-split-left,.hero-split-right{grid-template-columns:1fr;grid-template-rows:50vh auto}.hero-split-left .hero-image{grid-column:1;grid-row:1}.hero-split-left .hero-content{grid-column:1;grid-row:2}.hero-split-right .hero-image{grid-column:1;grid-row:1}.hero-split-right .hero-content{grid-column:1;grid-row:2}.hero-split-left .hero-content,.hero-split-right .hero-content{padding:var(--space-5) var(--space-3)}.hero-overlap h1{font-size:clamp(56px,14vw,120px)}.hero-overlap .hero-image{width:92%;height:60vh;top:50%}}@supports (animation-timeline: scroll()){.hero-content{animation:hero-content-lift linear both;animation-timeline:scroll(root);animation-range:0 100vh;will-change:transform,opacity}.hero:before{animation:hero-bg-drift linear both;animation-timeline:scroll(root);animation-range:0 100vh;will-change:transform}.hero-image-img{animation:hero-image-parallax linear both;animation-timeline:scroll(root);animation-range:0 100vh;transform-origin:center;will-change:transform}.scroll-hint{animation:scroll-hint-out linear both,fadeIn 1s ease 1.5s forwards;animation-timeline:scroll(root),auto;animation-range:0 30vh,normal}}@keyframes hero-content-lift{to{transform:translateY(-80px);opacity:.25}}@keyframes hero-bg-drift{to{transform:translateY(28px)}}@keyframes hero-image-parallax{to{transform:scale(1.1) translateY(-5%)}}@media(prefers-reduced-motion:reduce){.hero-content,.hero:before,.hero-image-img,.scroll-hint{animation:none!important}}@keyframes scroll-hint-out{to{opacity:0}}.through-line{padding:var(--space-9) var(--space-7) 240px;max-width:1300px;position:relative}.through-line .label{margin-bottom:var(--space-5)}.through-line h2{font-size:clamp(48px,5.5vw,84px);line-height:1.05;max-width:1200px;margin-bottom:72px;font-variation-settings:"opsz" 96}.traits{display:grid;gap:4px;max-width:1100px}.trait{display:grid;grid-template-columns:72px 1fr;gap:40px;padding:28px 0;border-bottom:1px solid var(--divider);align-items:baseline;transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1);opacity:0;transform:translateY(20px)}.trait.in-view{opacity:1;transform:translateY(0)}.trait:nth-child(2){transition-delay:.1s}.trait:nth-child(3){transition-delay:.2s}.trait:last-child{border-bottom:none}.trait-num{font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;color:var(--accent)}.trait-text{font-family:var(--font-display);font-size:clamp(20px,1.7vw,26px);font-weight:400;line-height:1.35;color:var(--ink);font-variation-settings:"opsz" 24}.chapter{padding:var(--space-8) var(--space-7);max-width:1500px;margin:0 auto;position:relative}.chapter-num{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--space-3)}.chapter-num .ch{color:var(--accent);margin-right:16px}.chapter h2{font-size:clamp(40px,4.8vw,72px);line-height:1.06;max-width:1100px;margin-bottom:56px;font-variation-settings:"opsz" 72}.chapter-body{max-width:720px;font-size:clamp(18px,1.4vw,22px);line-height:1.6;color:var(--ink)}.chapter-body p{margin-bottom:var(--space-3)}.chapter-body p:last-child{margin-bottom:0}.chapter-body em{color:var(--accent);font-style:italic}.chapter-body strong{font-weight:500;color:var(--ink)}.chapter.two-col{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--space-7);align-items:start}.chapter .sidenote{padding:28px var(--space-4);background:var(--cream-warm);border-radius:2px;margin-top:16px}.chapter .sidenote .sn-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}.chapter .sidenote .sn-text{font-size:16px;line-height:1.55;color:var(--ink)}.pullquote{padding:var(--space-9) var(--space-7);max-width:1400px;margin:0 auto}.pullquote-inner{border-left:3px solid var(--accent);padding:12px 0 12px var(--space-5);max-width:1100px}.pullquote .pq-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--space-3)}.pullquote .pq-text{font-family:var(--font-display);font-size:clamp(32px,4vw,56px);font-style:italic;font-weight:300;line-height:1.18;color:var(--ink);font-variation-settings:"opsz" 72}.pullquote .pq-text em{font-style:italic;color:var(--accent)}.scrolly-pinned{position:relative;background:var(--cream)}.scrolly-pinned .sticky{position:sticky;top:0;height:100vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden}.scrolly-pinned .viz{padding:0 80px 0 var(--space-7);display:flex;align-items:center;justify-content:center;height:100%}.scrolly-pinned .text-col{padding:0 var(--space-7) 0 40px;height:100%;display:flex;align-items:center;position:relative}.scrolly-pinned .step-content{max-width:520px;opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1);position:absolute}.scrolly-pinned .step-content.active{opacity:1;transform:translateY(0)}.scrolly-pinned .step-content h3{font-size:clamp(36px,3.8vw,56px);line-height:1.08;margin-bottom:28px;font-variation-settings:"opsz" 48}.scrolly-pinned .step-content h4{font-family:var(--font-display);font-size:32px;font-weight:400;line-height:1.1;margin-bottom:20px;font-variation-settings:"opsz" 36}.scrolly-pinned .step-content h4 em,.scrolly-pinned .step-content h3 em{color:var(--accent);font-style:italic}.scrolly-pinned .step-content p{font-size:19px;line-height:1.6;color:var(--ink)}.scrolly-pinned .step-content p+p{margin-top:16px}.scrolly-pinned .step-content em{color:var(--accent);font-style:italic}.scrolly-pinned .steps{position:relative;z-index:2}.scrolly-pinned .step{height:100vh;display:flex;align-items:center}.scrolly-pinned.ratio-tall .sticky{grid-template-columns:1.05fr 1fr}.scrolly-pinned.ratio-tall .viz{padding:0 64px 0 var(--space-7);flex-direction:column;justify-content:center}.scrolly-pinned.ratio-tall .text-col{padding:0 var(--space-7) 0 var(--space-4)}.scrolly-pinned.ratio-tall .step-content{max-width:480px}.scrolly-pinned.ratio-tall .step-content p{font-size:17px}@media(max-width:1100px){.scrolly-pinned .sticky{grid-template-columns:1fr}.scrolly-pinned .text-col{display:none}}.skill-display{padding:var(--space-8) var(--space-7);max-width:1500px;margin:0 auto}.skill-display h2{font-size:clamp(40px,4.8vw,72px);line-height:1.06;margin-bottom:56px;max-width:1100px;font-variation-settings:"opsz" 72}.skill-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--space-6);align-items:start}.skill-text{max-width:480px;font-size:18px;line-height:1.6}.skill-text p+p{margin-top:18px}.skill-text em{color:var(--accent);font-style:italic}.skill-code{background:var(--ink);color:var(--paper);padding:28px var(--space-4);border-radius:4px;font-family:var(--font-mono);font-size:13px;line-height:1.7;overflow-x:auto;box-shadow:0 32px 64px #1f1a141f}.skill-code .code-header{display:flex;gap:8px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid rgba(212,134,107,.2)}.skill-code .code-header .dot{width:10px;height:10px;border-radius:50%;background:var(--ink-soft)}.skill-code .code-header .file{margin-left:16px;color:var(--ink-faint);font-size:11px;letter-spacing:.08em}.skill-code .k{color:var(--accent-soft)}.skill-code .s{color:var(--cream-warm)}.skill-code .c{color:var(--ink-faint);font-style:italic}.skill-code .v{color:var(--atmosphere-rose)}.demo-section{padding:var(--space-8) var(--space-7);max-width:1400px;margin:0 auto}.demo-section h2{font-size:clamp(40px,4.8vw,72px);line-height:1.06;margin-bottom:var(--space-3)}.demo-section .demo-prompt{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:clamp(22px,1.8vw,28px);color:var(--ink-soft);margin-bottom:var(--space-5);max-width:800px;font-variation-settings:"opsz" 24}.watch-list{max-width:1000px;margin-bottom:var(--space-6)}.watch-item{display:grid;grid-template-columns:36px 1fr;gap:var(--space-3);padding:22px 0;border-bottom:1px solid var(--divider);align-items:baseline}.watch-item:last-child{border-bottom:none}.watch-num{font-family:var(--font-mono);font-size:12px;color:var(--accent)}.watch-text{font-family:var(--font-display);font-size:clamp(20px,1.5vw,24px);font-weight:400;line-height:1.4;color:var(--ink);font-variation-settings:"opsz" 24}.watch-text em{color:var(--accent);font-style:italic}.demo-placeholder{border:1px dashed var(--ink-faint);border-radius:4px;padding:96px var(--space-4);text-align:center;color:var(--ink-soft);font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;background:var(--paper);max-width:1100px}.close{padding:var(--space-9) var(--space-7) var(--space-8);max-width:1500px;margin:0 auto;position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end}.close:before{content:"";position:absolute;top:0;left:var(--space-7);right:var(--space-7);height:1px;background:var(--divider)}.close h2{font-size:clamp(48px,6vw,88px);line-height:1.05;max-width:1300px;margin-bottom:80px;font-variation-settings:"opsz" 96}.close .evidence{display:grid;gap:4px;max-width:1100px}.evidence-row{display:grid;grid-template-columns:72px 1fr;gap:40px;padding:var(--space-4) 0;border-bottom:1px solid var(--divider);align-items:baseline}.evidence-row:last-child{border-bottom:none}.evidence-num{font-family:var(--font-mono);font-size:12px;letter-spacing:.12em;color:var(--accent)}.evidence-text{font-family:var(--font-display);font-size:clamp(22px,1.8vw,28px);font-weight:400;line-height:1.32;color:var(--ink);font-variation-settings:"opsz" 24}.evidence-text em{color:var(--accent);font-style:italic}.close .close-footer{margin-top:64px;padding-top:32px;border-top:1px solid var(--divider);font-family:var(--font-display);font-size:clamp(20px,1.6vw,26px);font-weight:900;line-height:1.4;color:var(--ink);max-width:1100px;text-wrap:pretty}.close .colophon{margin-top:80px;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}.reveal.in-view{opacity:1;transform:translateY(0)}.reveal.delay-1{transition-delay:.1s}.reveal.delay-2{transition-delay:.2s}.reveal.delay-3{transition-delay:.3s}@media(max-width:800px){.nav{left:var(--space-3);right:var(--space-3);top:20px}.hero{padding:0 var(--space-4)}.through-line,.chapter,.pullquote,.skill-display,.demo-section,.close{padding-left:var(--space-4);padding-right:var(--space-4)}.chapter.two-col,.skill-grid{grid-template-columns:1fr;gap:var(--space-4)}}:is(:root[data-theme=warm],:root:not([data-theme])) :is(h1,h2,h4,.s2-title,.s4-title,.s5-title,.fx-title){font-family:panel-sans,freight-sans-pro,system-ui,sans-serif;font-weight:700;letter-spacing:-.015em;font-variation-settings:normal}:is(:root[data-theme=warm],:root:not([data-theme])) :is(h1,h2,h3,h4) em{font-style:normal}:is(:root[data-theme=warm],:root:not([data-theme])) :is(h3,.dim-name){font-family:freight-sans-pro,system-ui,sans-serif;font-weight:900;letter-spacing:-.015em;font-variation-settings:normal}:is(:root[data-theme=warm],:root:not([data-theme])) .hero h1{font-weight:900;font-size:clamp(64px,10vw,120px);letter-spacing:-.03em;line-height:.95}:is(:root[data-theme=warm],:root:not([data-theme])) :is(.hero-split-left,.hero-split-right) h1{font-size:clamp(40px,7vw,88px)}:is(:root[data-theme=warm],:root:not([data-theme])) .hero h1 em{font-weight:900}.ctrl[data-astro-cid-bjt45tb2]{position:fixed;top:24px;right:24px;z-index:200;font-family:var(--font-mono);color:var(--ink)}.ctrl-toggle[data-astro-cid-bjt45tb2]{appearance:none;background:var(--surface);border:1px solid var(--divider);border-radius:999px;padding:8px 16px 8px 12px;display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);cursor:pointer;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 6px 20px #1f1a1414;transition:all .22s cubic-bezier(.22,1,.36,1)}.ctrl-toggle[data-astro-cid-bjt45tb2]:hover{color:var(--ink);transform:translateY(-1px);box-shadow:0 10px 28px #1f1a141f}.ctrl-dot[data-astro-cid-bjt45tb2]{color:var(--accent);font-size:8px;line-height:1}.ctrl-panel[data-astro-cid-bjt45tb2]{position:absolute;top:calc(100% + 12px);right:0;min-width:320px;background:var(--surface);border:1px solid var(--divider);border-radius:8px;padding:18px 20px 14px;display:flex;flex-direction:column;gap:18px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 24px 60px #1f1a142e;transform-origin:top right;animation:ctrl-pop .24s cubic-bezier(.22,1,.36,1)}@keyframes ctrl-pop{0%{opacity:0;transform:scale(.92) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}.ctrl-row[data-astro-cid-bjt45tb2]{display:flex;flex-direction:column;gap:8px}.ctrl-row-label[data-astro-cid-bjt45tb2]{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint)}.ctrl-options[data-astro-cid-bjt45tb2]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px}.ctrl-options-themes[data-astro-cid-bjt45tb2],.ctrl-options-hero[data-astro-cid-bjt45tb2]{grid-template-columns:1fr 1fr;gap:4px}.ctrl-opt[data-astro-cid-bjt45tb2]{appearance:none;background:transparent;border:1px solid var(--divider);color:var(--ink-soft);padding:7px 8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;border-radius:4px;cursor:pointer;transition:all .18s ease}.ctrl-opt[data-astro-cid-bjt45tb2]:hover{color:var(--ink);border-color:var(--ink-soft)}.ctrl-opt[data-astro-cid-bjt45tb2][aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.ctrl-slide-jumper[data-astro-cid-bjt45tb2]{display:flex;gap:6px;align-items:center}.ctrl-slide-dot[data-astro-cid-bjt45tb2]{appearance:none;width:24px;height:24px;border-radius:50%;border:1px solid var(--divider);background:transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:10px;color:var(--ink-faint);padding:0;transition:all .18s ease}.ctrl-slide-dot[data-astro-cid-bjt45tb2]:hover{color:var(--ink);border-color:var(--ink-soft)}.ctrl-slide-dot[data-astro-cid-bjt45tb2][aria-current=true]{background:var(--accent);color:var(--paper);border-color:var(--accent)}.ctrl-foot[data-astro-cid-bjt45tb2]{font-size:9px;letter-spacing:.14em;color:var(--ink-faint);border-top:1px solid var(--divider);padding-top:10px;text-transform:uppercase;display:flex;align-items:center;justify-content:space-between;gap:12px}.ctrl-hotkeys[data-astro-cid-bjt45tb2]{flex:1}.ctrl-foot[data-astro-cid-bjt45tb2] kbd[data-astro-cid-bjt45tb2]{font-family:var(--font-mono);background:var(--cream-warm);color:var(--ink);padding:1px 5px;border-radius:3px;border:1px solid var(--divider);font-size:9px;margin-right:2px}.ctrl-hide[data-astro-cid-bjt45tb2]{appearance:none;background:transparent;border:1px solid var(--divider);color:var(--ink-soft);padding:4px 8px;font-family:var(--font-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;border-radius:3px;cursor:pointer;transition:all .18s ease}.ctrl-hide[data-astro-cid-bjt45tb2]:hover{color:var(--ink);border-color:var(--ink-soft)}.ctrl-restore[data-astro-cid-bjt45tb2]{display:none;appearance:none;position:absolute;top:0;right:0;width:22px;height:22px;border-radius:50%;border:1px solid var(--divider);background:var(--surface);color:var(--accent);font-family:var(--font-mono);font-size:14px;line-height:1;cursor:pointer;opacity:.5;transition:opacity .2s ease,transform .2s ease;padding:0}.ctrl-restore[data-astro-cid-bjt45tb2]:hover{opacity:1;transform:scale(1.15)}.ctrl[data-astro-cid-bjt45tb2][data-state=hidden] .ctrl-toggle[data-astro-cid-bjt45tb2],.ctrl[data-astro-cid-bjt45tb2][data-state=hidden] .ctrl-panel[data-astro-cid-bjt45tb2]{display:none!important}.ctrl[data-astro-cid-bjt45tb2][data-state=hidden] .ctrl-restore[data-astro-cid-bjt45tb2]{display:inline-flex;align-items:center;justify-content:center}@media(max-width:640px){.ctrl[data-astro-cid-bjt45tb2]{top:16px;right:16px}.ctrl-panel[data-astro-cid-bjt45tb2]{min-width:240px;right:0}}@media print{.ctrl[data-astro-cid-bjt45tb2]{display:none}}
