@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/assets/fonts/instrument-sans-latin-ext-a7bedd76b981.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/assets/fonts/instrument-sans-latin-9a91efaa3599.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--night-bg: oklch(.19 .014 254.31);--night-surface: oklch(.24 .0154 254.31);--night-primary: oklch(.937 .0084 254.31);--night-body: oklch(.813 .0112 254.31);--night-secondary: oklch(.68 .014 254.31);--night-tertiary: oklch(.598 .0154 254.31);--night-border: oklch(.32 .014 254.31);--night-shadow: oklch(.41 .025 254.31);--night-mid: oklch(.67 .022 254.31);--night-highlight: oklch(.89 .025 72.82);--night-warm: oklch(.79 .065 72.82)}:root{--color-bg-page: var(--night-bg);--color-bg-surface: var(--night-surface);--color-text-primary: var(--night-primary);--color-text-body: var(--night-body);--color-text-secondary: var(--night-secondary);--color-text-tertiary: var(--night-tertiary);--color-border-subtle: var(--night-border);--color-field-shadow: var(--night-shadow);--color-field-mid: var(--night-mid);--color-field-highlight: var(--night-highlight);--color-field-warm: var(--night-warm);--color-accent: var(--color-text-primary);--color-bg-media: color-mix(in oklch, var(--color-text-primary) 3%, var(--color-bg-page));--color-border-image: oklch(1 0 0 / .1);--field-warm-share: .1;--field-opacity: .78;--color-focus: var(--color-text-secondary);color-scheme:dark}:root{--font-sans: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;--text-body: 1rem;--leading-body: 1.5;--text-meta: .8125rem;--leading-meta: 1.8462;--text-title: 2rem;--leading-title: 1.25;--tracking-title: -.02em;--text-display: 4.5rem;--leading-display: 1.1111;--tracking-display: -.02em}:root{--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-6: 48px;--space-8: 64px;--space-12: 96px;--radius-media: 8px;--radius-image: 4px;--radius-dialog: 12px;--radius-stage: 20px}:root{--cols: 12;--gutter: 24px;--margin: 48px;--pad: 48px;--bl: 8px;--lh: 24px;--ease: cubic-bezier(.22, 1, .36, 1);--t-quick: .14s;--t-base: .24s;--t-slow: .42s}@media(max-width:1100px){:root{--margin: 32px;--gutter: 16px;--text-display: 3.5rem;--leading-display: 1.1429}}@media(max-width:760px){:root{--cols: 4;--margin: 16px;--gutter: 16px;--pad: 24px;--text-title: 1.75rem;--leading-title: 1.4286;--text-display: 2.5rem;--leading-display: 1.2}}:root{--paper: var(--color-bg-page);--ink: var(--color-text-primary);--body: var(--color-text-body);--soft: var(--color-text-secondary);--quiet: var(--color-text-tertiary);--hair: var(--color-border-subtle);--accent: var(--color-accent);--sans: var(--font-sans);--f-text: var(--text-body);--l-text: 24px;--f-meta: var(--text-meta);--f-disp: var(--text-display);--l-disp: calc(var(--text-display) * var(--leading-display))}.ln,.link{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:var(--color-text-tertiary);transition:text-decoration-color var(--t-base) var(--ease)}a:hover .ln,a:focus-visible .ln,a.ln:hover,a.ln:focus-visible,.link:hover,.link:focus-visible{text-decoration-color:var(--color-text-primary)}:root{--g-col: color-mix(in srgb, var(--ink) 1.25%, transparent);--g-edge: color-mix(in srgb, var(--ink) 6%, transparent);--g-base: color-mix(in srgb, var(--ink) 4%, transparent);--g-base-min: color-mix(in srgb, var(--ink) 1.5%, transparent)}*{box-sizing:border-box}html,body{height:100%}html{background:var(--paper);color:var(--ink)}body{margin:0;font-family:var(--sans);font-size:var(--f-text);line-height:var(--l-text);font-weight:400;-webkit-font-smoothing:antialiased;overflow:hidden}h1,h2,p,ul,li{margin:0;padding:0;font:inherit}ul{list-style:none}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}::selection{background:var(--ink);color:var(--paper)}:focus-visible{outline:1px solid var(--soft);outline-offset:3px}.skip-link{position:fixed;z-index:20;top:var(--space-2);left:var(--space-2);transform:translateY(-200%);padding:var(--space-1) var(--space-2);background:var(--color-bg-page)}.skip-link:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.portrait-fallback{position:absolute;left:calc(var(--space-3) + var(--portrait-shift, 0) * (100% - var(--space-6)));top:var(--space-3);width:calc(100% - var(--space-6));height:calc(100% - var(--space-6) - var(--space-3));object-fit:contain}html[data-field-state=pending] .portrait-fallback,html[data-field-state=ready] .portrait-fallback,.ctl.icon[hidden],#motion[aria-pressed=false] .play,#motion[aria-pressed=true] .pause{display:none}#motion .motion-disc{fill:currentColor;stroke:none}#motion .pause{fill:var(--color-bg-page);stroke:none}#motion .play{fill:none;stroke:currentColor;stroke-linejoin:round}#motion[aria-pressed=true] .motion-disc{fill:none;stroke:currentColor}#motion[aria-pressed=false]{color:var(--ink)}#motion[aria-pressed=true]{color:var(--soft)}#motion:hover{color:var(--ink)}.stage{position:absolute;inset:0 0 auto;height:100dvh;z-index:0;pointer-events:none;overflow:clip}.stage canvas{display:block;width:100%;height:100%}.resolved{position:absolute;z-index:1;pointer-events:none;transition:opacity .24s var(--ease)}.page{position:relative;z-index:2;height:100vh;height:100dvh;padding:var(--pad) var(--margin)}.grid{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));column-gap:var(--gutter);height:var(--snap-h, 100%)}.rail{grid-column:1 / 4;display:flex;flex-direction:column;min-height:0}.field{grid-column:4 / 13;position:relative;min-width:0;min-height:0}.block+.block{margin-top:48px}.name{color:var(--ink)}.soft,.label{color:var(--soft)}.label.gap{margin-top:24px}.row{display:flex;align-items:center;color:var(--ink);transition:color var(--t-base) var(--ease)}.row .d{color:var(--quiet);font-size:var(--f-meta);letter-spacing:.01em;margin-left:auto;transition:color var(--t-base) var(--ease)}.is-hovering .row,.is-hovering .row .d{color:var(--soft)}.is-hovering .row.is-on{color:var(--ink)}.is-hovering .row.is-on .d{color:var(--soft)}.row .lead{flex:1;height:1px;margin:0 12px;background:var(--soft);opacity:.5;transform:scaleX(0);transform-origin:left;transition:transform var(--t-quick) var(--ease)}.timeline .row.is-on .lead{transform:scaleX(1);transition:transform var(--t-slow) var(--ease) 60ms}.list{position:relative}.dot{position:absolute;left:-17px;top:0;width:6px;height:6px;border-radius:50%;background:var(--accent);transform:translateY(var(--dot-y, 0px)) scale(0);transition:transform var(--t-slow) var(--ease),background-color var(--t-slow) var(--ease)}.dot.is-on{transform:translateY(var(--dot-y, 0px)) scale(1)}.dot.is-arriving{transition:transform 0s,background-color var(--t-slow) var(--ease)}.links{display:flex;gap:24px}.link{color:var(--ink)}.excerpt{margin-top:auto;min-height:calc(var(--lh) * 5);position:relative}.ex-title{color:var(--ink)}.excerpt .soft{max-width:34ch}.excerpt.is-out .ex-title,.excerpt.is-out .w{opacity:0;transition:opacity var(--t-quick) var(--ease)}.ex-title,.w{transition:opacity var(--t-base) var(--ease);transition-delay:var(--d, 0ms)}.ex-time{position:absolute;left:0;bottom:-12px;height:1px;width:100%;background:var(--soft);opacity:.5;transform:scaleX(0);transform-origin:left}.ex-time.is-running{transform:scaleX(1);transition:transform var(--dwell, 1s) linear}.ex-time.is-done{opacity:0;transition:opacity var(--t-slow) var(--ease);transform:scaleX(1)}.controls{position:absolute;right:0;bottom:0;display:flex;gap:24px}.ctl{color:var(--soft);transition:color .2s var(--ease)}.ctl:hover,.ctl[aria-pressed=true]{color:var(--ink)}.guides{position:absolute;inset:0;pointer-events:none;z-index:3;opacity:0;transition:opacity .26s var(--ease)}body.grid-on .guides{opacity:1}.guides .cols{position:absolute;top:0;bottom:0;left:var(--margin);right:var(--margin);display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));column-gap:var(--gutter)}.guides .col{background:var(--g-col);box-shadow:inset 1px 0 0 var(--g-edge),inset -1px 0 0 var(--g-edge);position:relative}.guides .col span{position:absolute;bottom:12px;left:0;right:0;text-align:center;color:var(--soft);font-size:11px}.guides .rows{position:absolute;left:var(--margin);right:var(--margin);top:var(--pad);bottom:0;background-image:repeating-linear-gradient(to bottom,var(--g-base) 0 1px,transparent 1px var(--lh)),repeating-linear-gradient(to bottom,var(--g-base-min) 0 1px,transparent 1px var(--bl))}.guides .mline{position:absolute;top:0;bottom:0;width:1px;background:var(--g-edge)}.guides .mline.l{left:var(--margin)}.guides .mline.r{right:var(--margin)}@media(max-width:760px){.guides .col:nth-child(n+5){display:none}}@media(max-width:760px){body{overflow:auto}.page,.grid{height:auto}.field{grid-column:1 / -1;grid-row:1;height:64svh}.rail{grid-column:1 / -1;grid-row:2;padding-top:48px}.excerpt{margin-top:48px;min-height:0}.controls{position:static;grid-column:1 / -1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:1ms!important;transition-delay:0ms!important}}
