@layer reset{*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:none;tab-size:4;scrollbar-gutter:stable;-webkit-tap-highlight-color:color-mix(in oklab, var(--signal) 12%, transparent);accent-color:var(--signal)}html:not(.lenis){scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html:not(.lenis){scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100svh}img,picture,svg,video{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none;padding:0}p,h1,h2,h3,h4,li,dt,dd,span,a,summary,figcaption{overflow-wrap:break-word}ul[role=list],ol[role=list]{padding:0;list-style:none}a{color:inherit}::selection{background:var(--selection)}:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-radius:1px}[tabindex="-1"]:focus-visible{outline:none}:target{scroll-margin-block-start:var(--space-xl)}}@layer tokens{:root{color-scheme:light;interpolate-size:allow-keywords;--paper:#faf8f5;--paper-raised:#fffdfa;--paper-sunk:#f2eee8;--ink:#14120f;--ink-muted:#57514a;--ink-faint:#6e6760;--rule:#dad5cc;--rule-strong:#b8b0a4;--signal:#e4431a;--signal-ink:#c2350f;--signal-wash:#e4431a1a;--selection:#e4431a2e;--measure:68ch;--measure-tight:54ch;--shell:85rem;--margin:clamp(1.25rem, 6.5vw, 8rem);--gutter:clamp(1rem, 2vw, 2rem);--space-2xs:clamp(.25rem, .2rem + .25vw, .375rem);--space-xs:clamp(.5rem, .4rem + .5vw, .75rem);--space-s:clamp(.75rem, .6rem + .75vw, 1.125rem);--space-m:clamp(1.25rem, 1rem + 1.25vw, 2rem);--space-l:clamp(2rem, 1.5rem + 2.5vw, 3.5rem);--space-xl:clamp(3rem, 2rem + 5vw, 6rem);--space-2xl:clamp(4rem, 2rem + 9vw, 8rem);--space-3xl:clamp(4.5rem, 2rem + 12vw, 10rem);--ease:cubic-bezier(.22, .61, .36, 1);--ease-exit:cubic-bezier(.55, 0, .68, .19);--dur-fast:.16s;--dur:.32s;--dur-slow:.64s}:root[data-theme=dark]{color-scheme:dark;--paper:#12100e;--paper-raised:#1a1815;--paper-sunk:#0c0b09;--ink:#f0ebe3;--ink-muted:#b2a99d;--ink-faint:#8d857a;--rule:#2e2a25;--rule-strong:#46403a;--signal:#ff6b42;--signal-ink:#ff8a67;--signal-wash:#ff6b421f;--selection:#ff6b4238}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--paper:#12100e;--paper-raised:#1a1815;--paper-sunk:#0c0b09;--ink:#f0ebe3;--ink-muted:#b2a99d;--ink-faint:#8d857a;--rule:#2e2a25;--rule-strong:#46403a;--signal:#ff6b42;--signal-ink:#ff8a67;--signal-wash:#ff6b421f;--selection:#ff6b4238}}}@layer type{@font-face{font-family:Geist;src:url(/fonts/geist.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/geist-italic.woff2)format("woff2");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:Mono;src:url(/fonts/mono.woff2)format("woff2");font-weight:100 800;font-style:normal;font-display:swap}:root{--font-display:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Mono", ui-monospace, "SF Mono", "Cascadia Mono", monospace;--text-2xs:.75rem;--text-xs:clamp(.8125rem, .79rem + .094vw, .875rem);--text-s:clamp(.9375rem, .915rem + .094vw, 1rem);--text-m:clamp(1.0625rem, 1.04rem + .094vw, 1.125rem);--text-l:clamp(1.25rem, 1.2rem + .188vw, 1.375rem);--text-xl:clamp(1.375rem, 1.2rem + .75vw, 1.75rem);--text-2xl:clamp(1.75rem, 1.4rem + 1.5vw, 2.5rem);--text-3xl:clamp(2.25rem, 1.5rem + 3.2vw, 4.25rem);--text-4xl:clamp(2.75rem, 1.3rem + 6.2vw, 7rem);--text-display:clamp(3.75rem, .2rem + 15vw, 13rem);--leading-flat:.86;--leading-tight:1.04;--leading-snug:1.34;--leading-normal:1.55;--leading-loose:1.7;--tracking-display:-.042em;--tracking-tight:-.024em;--tracking-normal:0;--tracking-wide:.08em;--tracking-widest:.16em}body{font-family:var(--font-sans);font-size:var(--text-m);line-height:var(--leading-normal);color:var(--ink);background-color:var(--paper);font-variant-numeric:tabular-nums;font-weight:400}.display,h1,h2,h3{font-family:var(--font-display);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);text-wrap:balance;font-weight:640}h1,.display--xl{font-size:var(--text-4xl);line-height:var(--leading-flat);letter-spacing:var(--tracking-display)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-xl)}p{text-wrap:pretty}.mono{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);font-weight:500;line-height:var(--leading-snug);font-variant-numeric:tabular-nums}.mono--label{text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--ink-faint)}.prose{max-width:var(--measure);font-size:var(--text-l);line-height:var(--leading-loose);color:var(--ink-muted);hanging-punctuation:first}.prose>*+*{margin-block-start:var(--space-m)}.prose strong{color:var(--ink);font-weight:600}.prose a{color:var(--signal-ink);text-underline-offset:.18em;text-decoration-line:underline;text-decoration-thickness:1px;text-decoration-color:color-mix(in oklab, var(--signal-ink) 40%, transparent);transition:text-decoration-color var(--dur-fast) var(--ease)}.prose a:hover{text-decoration-color:var(--signal-ink)}.prose :is(ul,ol){padding-inline-start:1.4em}.prose li+li{margin-block-start:var(--space-s)}.prose :is(ul,ol) ::marker{color:var(--signal-ink)}.prose table{border-collapse:collapse;inline-size:100%;font-size:var(--text-s);line-height:var(--leading-normal)}.prose :is(th,td){text-align:start;vertical-align:baseline;padding-block:var(--space-s);border-block-end:1px solid var(--rule);padding-inline-end:var(--gutter)}.prose :is(th,td):last-child{padding-inline-end:0}.prose th{font-family:var(--font-mono);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--ink-faint);border-block-end:1px solid var(--ink);font-weight:400}.prose td{color:var(--ink-muted)}}@layer layout{:root{--cols:4}@media (width>=48rem){:root{--cols:8}}@media (width>=64rem){:root{--cols:12}}.shell{width:min(100% - (var(--margin) * 2), var(--shell));margin-inline:auto}.grid{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));column-gap:var(--gutter);display:grid}.spread{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));column-gap:var(--gutter);row-gap:var(--space-m);display:grid}.spread__margin,.spread__body{grid-column:1/-1}@media (width>=64rem){.spread__margin{grid-column:1/span 3}.spread__body{grid-column:4/span 8}.spread__aside{grid-column:12/span 1}}.spread__body>*+*{margin-block-start:var(--space-m)}.section{padding-block:var(--space-3xl);border-block-start:1px solid var(--rule);scroll-margin-block-start:calc(var(--space-l) - var(--space-3xl))}.section:first-of-type{border-block-start:none}.above{z-index:1;position:relative}.rule-full{border:0;border-block-start:1px solid var(--rule);margin:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@layer components{.skip-link{z-index:100;padding:var(--space-s) var(--space-m);background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);text-decoration:none;position:fixed;inset-block-start:-100%;inset-inline-start:var(--margin)}.skip-link:focus-visible{inset-block-start:var(--space-s)}.index-mark{align-items:baseline;gap:var(--space-s);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--ink-faint);font-weight:500;display:flex}.index-mark__num{color:var(--signal-ink)}.link{background-image:linear-gradient(var(--signal), var(--signal));transition:background-size var(--dur) var(--ease);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;text-decoration:none;position:relative}.link:hover,.link:focus-visible{background-size:100% 1px}.signal-rule{background:var(--signal);block-size:3px;inline-size:clamp(3rem,6vw,6rem);margin:0 0 var(--space-m);border:0}}@layer utilities{@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){@keyframes rise{0%{opacity:0;transform:translateY(2.5rem)}to{opacity:1;transform:none}}.rise{animation-name:rise;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:view();animation-range:entry entry 30%}@keyframes draw{0%{scale:0 1}to{scale:1}}.draw{transform-origin:0;animation-name:draw;animation-duration:var(--dur-slow);animation-timing-function:var(--ease);animation-fill-mode:both;animation-timeline:view();animation-range:entry 10% entry 90%}@media (hover:hover) and (pointer:fine){.inkup{view-timeline-name:--inkup}@keyframes inkup{0%{color:var(--ink-faint)}}.inkup__word{animation-name:inkup;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--inkup;animation-range-start:entry calc(var(--word-index,0) * 3%);animation-range-end:entry calc(var(--word-index,0) * 3% + 24%)}}}}@media (hover:none) and (pointer:coarse){@media (prefers-reduced-motion:no-preference){@keyframes inkup-compose{0%{opacity:0;translate:0 .35em}}.inkup[data-compose] .inkup__word{animation-name:inkup-compose;animation-duration:var(--dur);animation-timing-function:var(--ease);animation-fill-mode:both;animation-delay:calc(var(--word-index,0) * 30ms);display:inline-block}}}.settle__word,.settle__char{display:inline-block}@media (prefers-reduced-motion:no-preference){@keyframes settle{0%{opacity:0;translate:0 .14em}}.settle__char{animation-name:settle;animation-duration:var(--dur);animation-timing-function:var(--ease);animation-fill-mode:both;animation-delay:calc(var(--char-index,0) * 18ms)}}@media print{:root{color-scheme:light;--paper:#fff;--paper-raised:#fff;--paper-sunk:#fff;--ink:#000;--ink-muted:#262626;--ink-faint:#444;--rule:#bbb;--rule-strong:#888;--signal:#c2350f;--signal-ink:#9c2b0c;--signal-wash:transparent;--selection:transparent}.skip-link,.rail,.scrolltop-nav,.scrolltop__sentinel,.theme-toggle,.runhead,.lens,.colophon__link[href=\#top]{display:none!important}.section{padding-block:var(--space-l)!important}.career__details::details-content{content-visibility:visible!important;block-size:auto!important;overflow:visible!important}.prose a[href^=http]:after{content:" (" attr(href) ")";color:var(--ink-faint);word-break:break-all;font-size:.85em}.gap{text-decoration:underline dotted!important;text-decoration-color:var(--signal-ink)!important}.inkup__word,.settle__char{animation-name:none!important}h1,h2,h3{break-after:avoid}.work__item,.career__row,.quote,.figure,.case__outcomes,.position__logrow,.portrait{break-inside:avoid}}}.scrolltop__sentinel[data-astro-cid-dzirtioc]{pointer-events:none;visibility:hidden;block-size:90svh;inline-size:1px;position:absolute;inset-block-start:0;inset-inline-start:0}.scrolltop-nav[data-astro-cid-dzirtioc]{visibility:hidden;transition:visibility var(--dur) var(--ease)}:root[data-scrolled]:not([data-at-end]) .scrolltop-nav[data-astro-cid-dzirtioc]{visibility:visible}.scrolltop[data-astro-cid-dzirtioc]{z-index:20;min-block-size:2.5rem;padding-inline:var(--space-s);background:var(--paper);border:1px solid var(--rule-strong);color:var(--ink-muted);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);opacity:0;visibility:hidden;translate:0 var(--space-xs);transition:opacity var(--dur) var(--ease), visibility var(--dur) var(--ease), translate var(--dur) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);align-items:center;gap:.5em;text-decoration:none;display:inline-flex;position:fixed;inset-block-end:var(--space-m);inset-inline-end:var(--space-m)}:root[data-scrolled]:not([data-at-end]) .scrolltop[data-astro-cid-dzirtioc]{opacity:1;visibility:visible;translate:0}.scrolltop[data-astro-cid-dzirtioc]:hover,.scrolltop[data-astro-cid-dzirtioc]:focus-visible{color:var(--ink);border-color:var(--ink)}.scrolltop__arrow[data-astro-cid-dzirtioc]{color:var(--signal-ink);transition:translate var(--dur) var(--ease)}@media (width>=64rem) and (hover:hover){.scrolltop-nav[data-astro-cid-dzirtioc]{display:none}}.scrolltop[data-astro-cid-dzirtioc]:hover .scrolltop__arrow[data-astro-cid-dzirtioc],.scrolltop[data-astro-cid-dzirtioc]:focus-visible .scrolltop__arrow[data-astro-cid-dzirtioc]{translate:0 -.15em}.rail[data-astro-cid-52xl3trp]{display:none}@media (width>=64rem) and (hover:hover){.rail[data-astro-cid-52xl3trp]{display:block}}.rail[data-astro-cid-52xl3trp]{--tick:.75rem;--tick-gap:var(--space-xs);z-index:15;position:fixed;inset-block-start:50%;inset-inline-end:0;translate:0 -50%}.rail__list[data-astro-cid-52xl3trp]{background:var(--paper);padding-block:var(--space-xs);padding-inline:var(--space-s);transition:border-color var(--dur) var(--ease);max-block-size:calc(100dvh - var(--space-l));overscroll-behavior:contain;border-inline-start:1px solid #0000;overflow-y:auto}.rail[data-astro-cid-52xl3trp]:hover .rail__list[data-astro-cid-52xl3trp],.rail[data-astro-cid-52xl3trp]:focus-within .rail__list[data-astro-cid-52xl3trp]{border-inline-start-color:var(--rule)}.rail__item[data-astro-cid-52xl3trp]{min-block-size:2.5rem;color:var(--ink-faint);transition:color var(--dur-fast) var(--ease);justify-content:flex-end;align-items:center;text-decoration:none;display:flex}.rail__item[data-astro-cid-52xl3trp]:hover,.rail__item[data-astro-cid-52xl3trp]:focus-visible{color:var(--ink)}.rail__label[data-astro-cid-52xl3trp]{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);text-align:end;white-space:nowrap;opacity:0;inline-size:0;transition:inline-size var(--dur) var(--ease), padding-inline-end var(--dur) var(--ease), opacity var(--dur) var(--ease);padding-inline-end:0;overflow:clip}.rail[data-astro-cid-52xl3trp]:hover .rail__label[data-astro-cid-52xl3trp],.rail[data-astro-cid-52xl3trp]:focus-within .rail__label[data-astro-cid-52xl3trp]{inline-size:auto;opacity:1;padding-inline-end:calc(var(--tick-gap) + var(--tick) + var(--space-s))}.rail__num[data-astro-cid-52xl3trp]{font-size:var(--text-2xs);color:inherit;position:relative}.rail__num[data-astro-cid-52xl3trp]:before{content:"";background:var(--signal);block-size:1px;inline-size:0;transition:inline-size var(--dur) var(--ease);position:absolute;inset-block-start:50%;inset-inline-end:calc(100% + var(--tick-gap));translate:0 -50%}.rail__item[data-astro-cid-52xl3trp][data-current]{color:var(--ink)}.rail__item[data-astro-cid-52xl3trp][data-current] .rail__num[data-astro-cid-52xl3trp]{color:var(--signal-ink);font-weight:600}.rail__item[data-astro-cid-52xl3trp][data-current] .rail__num[data-astro-cid-52xl3trp]:before{inline-size:var(--tick)}.theme-toggle[data-astro-cid-l6lhmie6]{align-items:center;gap:var(--space-xs);padding:var(--space-2xs) var(--space-xs);margin-inline:calc(var(--space-xs) * -1);color:var(--ink-faint);text-transform:uppercase;letter-spacing:var(--tracking-widest);font-size:var(--text-2xs);transition:color var(--dur-fast) var(--ease);display:inline-flex}.theme-toggle[data-astro-cid-l6lhmie6]:hover{color:var(--ink)}.theme-toggle__glyph[data-astro-cid-l6lhmie6]{block-size:.6rem;inline-size:.6rem;transition:background var(--dur-fast) var(--ease);background:currentColor;border:1px solid;border-radius:50%}:root[data-theme=dark] .theme-toggle__glyph[data-astro-cid-l6lhmie6]{background:0 0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle__glyph[data-astro-cid-l6lhmie6]{background:0 0}}
