@font-face{font-family:GeistSans;src:url(../media/Geist_Variable-s.p.0mrjj4bg00-he.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:GeistSans Fallback;src:local(Arial);ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.0%;size-adjust:106.28%}.geistsans_d5a4f12f-module__Ur3q_a__className{font-family:GeistSans,GeistSans Fallback}.geistsans_d5a4f12f-module__Ur3q_a__variable{--font-geist-sans:"GeistSans", "GeistSans Fallback"}
@font-face{font-family:GeistMono;src:url(../media/GeistMono_Variable.p.3ms9vq719j3f8.woff2)format("woff2");font-display:swap;font-weight:100 900}.geistmono_157ca88a-module__iaM1Ya__className{font-family:GeistMono,ui-monospace,SFMono-Regular,Roboto Mono,Menlo,Monaco,Liberation Mono,DejaVu Sans Mono,Courier New,monospace}.geistmono_157ca88a-module__iaM1Ya__variable{--font-geist-mono:"GeistMono", ui-monospace, SFMono-Regular, Roboto Mono, Menlo, Monaco, Liberation Mono, DejaVu Sans Mono, Courier New, monospace}
:root{--bg:#1b1b1b;--bg-elevated:#222;--primary:#ffeec3;--on-primary:#1b1b1b;--btn-white-bg:#fff;--btn-white-ink:#1b1b1b;--text-strong:#fff;--text:#ffffffe6;--text-muted:#ffffff8c;--text-faint:#ffffff61;--grid-line:#ffffff0f;--border:#ffffff1a;--border-strong:#ffffff29;--font-sans:var(--font-geist-sans), system-ui, -apple-system, sans-serif;--font-mono:var(--font-geist-mono), ui-monospace, "SF Mono", monospace;--step-eyebrow:.75rem;--step-body:1rem;--step-lead:1.125rem;--step-h3:1.375rem;--step-h2:clamp(1.75rem, 1.2rem + 2vw, 2.5rem);--step-h1:clamp(2.5rem, 1.6rem + 3.6vw, 4rem);--track-mono:.1em;--track-mono-wordmark:calc(var(--track-mono) * .8);--track-mono-tight:calc(var(--track-mono) * .4);--max-width:1080px;--gutter:clamp(20px, 5vw, 40px);--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-pill:999px}[data-surface=cream]{--bg:#ffeec3;--bg-elevated:#f7e3b0;--primary:#1b1b1b;--on-primary:#ffeec3;--text-strong:#1b1b1b;--text:#1b1b1bdb;--text-muted:#1b1b1b94;--text-faint:#1b1b1b66;--grid-line:#1b1b1b14;--border:#1b1b1b1f;--border-strong:#1b1b1b33}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--step-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.6}h1,h2,h3{color:var(--text-strong);letter-spacing:-.02em;text-wrap:balance;font-weight:500;line-height:1.1}h1{font-size:var(--step-h1)}h2{font-size:var(--step-h2)}h3{font-size:var(--step-h3);letter-spacing:-.01em}a{color:inherit;text-decoration:none}code{font-family:var(--font-mono);font-size:.9em}::selection{background:var(--primary);color:var(--on-primary)}:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:2px}.band{border-top:1px solid var(--grid-line)}.band:first-child{border-top:0}.container,.container-bare{max-width:var(--max-width);padding-inline:var(--gutter);margin-inline:auto}.container{border-inline:1px solid var(--grid-line)}.section{padding-block:clamp(56px,9vw,120px)}.nav{justify-content:space-between;align-items:center;gap:1rem;padding-block:16px;display:flex}.wordmark{font-family:var(--font-mono);text-transform:uppercase;align-items:baseline;gap:.5rem;display:inline-flex}.wordmark__name,.wordmark__role{letter-spacing:var(--track-mono-wordmark);font-size:.8125rem;font-weight:500}.wordmark__name{color:var(--text-strong)}.wordmark__role{color:var(--text-muted)}.nav-right{align-items:center;gap:clamp(.5rem,1.2vw,1rem);display:flex}.nav-links{align-items:center;display:flex;position:relative}.nav-highlight{z-index:0;border-radius:var(--radius-pill);background:var(--bg-elevated);pointer-events:none;transition:transform .25s cubic-bezier(.4,0,.2,1),width .25s cubic-bezier(.4,0,.2,1),opacity .2s;position:absolute;top:0;left:0}.nav-link{z-index:1;font-family:var(--font-mono);font-size:var(--step-eyebrow);letter-spacing:var(--track-mono);text-transform:uppercase;color:var(--text-muted);border-radius:var(--radius-pill);padding:8px 12px;font-weight:500;line-height:16px;transition:color .15s;position:relative}.nav-link:hover{color:var(--text-strong)}.nav-toggle{z-index:60;width:40px;height:40px;color:var(--text-strong);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin-right:-8px;transition:background-color .15s;display:none;position:relative}.nav-toggle:hover{background:var(--bg-elevated)}.nav-toggle__bar{background:currentColor;border-radius:2px;width:18px;height:2px;margin-top:-1px;margin-left:-9px;transition:transform .25s;position:absolute;top:50%;left:50%}.nav-toggle__bar:first-child{transform:translateY(-3px)rotate(0)}.nav-toggle__bar:nth-child(2){transform:translateY(3px)rotate(0)}.nav-toggle[aria-expanded=true] .nav-toggle__bar:first-child{transform:translateY(0)rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle__bar:nth-child(2){transform:translateY(0)rotate(-45deg)}.nav-menu{z-index:50;padding:0 var(--gutter);background:var(--bg);opacity:0;visibility:hidden;flex-direction:column;transition:opacity .2s,transform .2s,visibility 0s linear .2s;display:flex;position:fixed;inset:0;transform:translateY(-6px)}.nav-menu[data-open=true]{opacity:1;visibility:visible;transition:opacity .2s,transform .2s;transform:none}.nav-menu__head{min-height:72px;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.nav-menu__links{flex-direction:column;display:flex}.nav-menu__frame{border-inline:1px solid var(--border);flex:1;overflow:hidden}.nav-menu__link{font-family:var(--font-mono);letter-spacing:var(--track-mono-tight);text-transform:uppercase;color:var(--text-strong);border-bottom:1px solid var(--border);padding:16px 20px;font-size:1.25rem;font-weight:500;transition:color .15s}.nav-menu__link:hover{color:var(--text-muted)}.nav-menu__foot{border-bottom:1px solid var(--border);padding:16px 20px}.nav-menu__resume{width:100%}.nav-menu__link,.nav-menu__foot{opacity:0;transform:translate(-16px)}.nav-menu[data-open=true] .nav-menu__link,.nav-menu[data-open=true] .nav-menu__foot{animation:.45s cubic-bezier(.22,1,.36,1) forwards nav-stagger-in}.nav-menu[data-open=true] .nav-menu__link:first-child{animation-delay:80ms}.nav-menu[data-open=true] .nav-menu__link:nth-child(2){animation-delay:.14s}.nav-menu[data-open=true] .nav-menu__link:nth-child(3){animation-delay:.2s}.nav-menu[data-open=true] .nav-menu__link:nth-child(4){animation-delay:.26s}.nav-menu[data-open=true] .nav-menu__link:nth-child(5){animation-delay:.32s}.nav-menu[data-open=true] .nav-menu__foot{animation-delay:.38s}@keyframes nav-stagger-in{to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.nav-menu__link,.nav-menu__foot{opacity:1;transform:none}}@media (max-width:860px){.nav-right{display:none}.nav-toggle{display:inline-flex}}@media (min-width:861px){.nav-menu{display:none}}@media (max-width:480px){.wordmark{flex-direction:column;align-items:flex-start;gap:1px;line-height:1.2}}.eyebrow{font-family:var(--font-mono);font-size:var(--step-eyebrow);letter-spacing:var(--track-mono);text-transform:uppercase;color:var(--text-muted)}.lead{font-size:var(--step-lead);color:var(--text);max-width:56ch}.hairline{border:0;border-top:1px solid var(--border);height:0;margin-inline:calc(-1 * var(--gutter))}.btn-primary,.btn-secondary{font-family:var(--font-sans);white-space:nowrap;border-radius:var(--radius-pill);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding-block:9px;padding-inline:18px;font-size:15px;font-weight:500;line-height:20px;transition:transform .15s,opacity .15s;display:inline-flex}.btn-md{padding-block:8px;padding-inline:16px;font-size:14px;line-height:18px}.btn-sm{padding-block:7px;padding-inline:14px;font-size:13px;line-height:16px}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-secondary{background:var(--btn-white-bg);color:var(--btn-white-ink)}.btn-primary:hover,.btn-secondary:hover{opacity:.9}.btn-primary:active,.btn-secondary:active{transform:translateY(1px)}.btn-primary:focus-visible,.btn-secondary:focus-visible{border-radius:var(--radius-pill)}.tag{font-family:var(--font-mono);letter-spacing:var(--track-mono-tight);text-transform:uppercase;background:var(--primary);color:var(--on-primary);border-radius:var(--radius-sm);padding:.35rem .55rem;font-size:.6875rem;display:inline-block}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
