@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(/_next/static/media/fc61cfb200d549a5.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(/_next/static/media/fe6c4b8cc116014d.p.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:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(/_next/static/media/8edf6d3506a17285.p.woff2) format("woff2");unicode-range:u+00??,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}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/b5963afcf1479527.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/5ed7d4ff5e59016d.p.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:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/84adbee2f2a7cb50.p.woff2) format("woff2");unicode-range:u+00??,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}.__className_cf1d2a{font-family:Newsreader}.__variable_cf1d2a{--font-newsreader:"Newsreader"}@font-face{font-family:Public Sans;font-style:italic;font-weight:100 900;font-display:swap;src:url(/_next/static/media/446f589ea57bd612.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Public Sans;font-style:italic;font-weight:100 900;font-display:swap;src:url(/_next/static/media/59d1810b4d3db001.p.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:Public Sans;font-style:italic;font-weight:100 900;font-display:swap;src:url(/_next/static/media/57d19091f37263d6.p.woff2) format("woff2");unicode-range:u+00??,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}@font-face{font-family:Public Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f7650dfaa438c37c.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Public Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/98baa4a7809fbf72.p.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:Public Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8bf7b2ceda89477b.p.woff2) format("woff2");unicode-range:u+00??,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}.__className_009051{font-family:Public Sans}.__variable_009051{--font-public-sans:"Public Sans"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc.p.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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e.p.woff2) format("woff2");unicode-range:u+00??,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}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc.p.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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e.p.woff2) format("woff2");unicode-range:u+00??,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}.__className_7dd7bb{font-family:JetBrains Mono;font-style:normal}.__variable_7dd7bb{--font-jetbrains-mono:"JetBrains Mono"}@layer od-layout{[hidden]:not([hidden=until-found i]){display:none!important}dialog:not([open]){display:none!important}:where(.od-stack,.od-row,.od-row-top,.od-cluster,.od-grid,.od-field,.od-stat,.od-cell,.od-tile)>:where(*){min-width:0}.od-stack{flex-direction:column}.od-row,.od-stack{display:flex;gap:var(--od-gap,8px)}.od-row{align-items:center}.od-row-top{align-items:flex-start}.od-cluster,.od-row-top{display:flex;gap:var(--od-gap,8px)}.od-cluster{flex-wrap:wrap;align-items:center}.od-fill{flex:1 1;min-width:0}.od-fixed{flex:none}.od-grid{display:grid;grid-gap:var(--od-gap,12px);gap:var(--od-gap,12px);grid-template-columns:repeat(var(--od-cols,3),minmax(0,1fr))}.od-cell,.od-field,.od-stat{display:grid;grid-gap:var(--od-gap,2px);gap:var(--od-gap,2px)}:where(.od-stat,.od-field,.od-cell)>:where(*){display:block}.od-tile{display:grid;grid-template-rows:auto 1fr}:where(.od-tile)>:where(*){display:block}.od-media{display:block;width:100%;height:auto;aspect-ratio:var(--od-ratio,auto)}.od-media-cover{object-fit:cover}.od-icon{display:inline-block;inline-size:var(--od-icon-size,1em);block-size:var(--od-icon-size,1em);flex:none}.od-truncate{display:block;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.od-clamp-2,.od-clamp-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.od-clamp-2{-webkit-line-clamp:2}.od-clamp-3{-webkit-line-clamp:3}.od-lines-2{min-height:calc(2 * 1.4em)}.od-nowrap{white-space:nowrap}.od-keep{word-break:keep-all;overflow-wrap:anywhere}.od-screen{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%}.od-scroll{overflow-y:auto;overscroll-behavior:contain;min-height:0}.od-rail{display:flex;gap:var(--od-gap,8px);overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding-inline:var(--od-rail-pad,16px);scroll-padding-inline:var(--od-rail-pad,16px)}.od-rail::-webkit-scrollbar{display:none}:where(.od-rail)>:where(*){flex:none;scroll-snap-align:start}:where(.od-rail)>:where(:last-child){-webkit-margin-end:var(--od-rail-pad,16px);margin-inline-end:var(--od-rail-pad,16px)}.od-spacer{flex:none;visibility:hidden;pointer-events:none}.od-touch{min-width:44px;min-height:44px}}:root [hidden]:where(:not([hidden=until-found i])){display:none}:root{--paper:#F6F4EE;--paper-2:#EEEBE3;--ink:#0F172A;--muted:#475569;--accent:#1E3A5F;--accent-ink:#F6F4EE;--accent-hover:#142A47;--hair:#CBD5E1;--hair-strong:#94A3B8;--focus:#1E3A5F;--status:#1F6F4A;--f-display:var(--font-newsreader),"Newsreader","Iowan Old Style","Palatino Linotype",Georgia,serif;--f-body:var(--font-public-sans),"Public Sans","Helvetica Neue",Arial,sans-serif;--f-mono:var(--font-jetbrains-mono),"JetBrains Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--fs-name:clamp(4rem,1.2rem + 12.5vw,12rem);--fs-h2:clamp(2.25rem,1.6rem + 2.6vw,3.75rem);--fs-h3:clamp(1.5rem,1.3rem + 0.8vw,2rem);--fs-lead:clamp(1.375rem,1.1rem + 1.1vw,2rem);--fs-metric:clamp(2.5rem,1.2rem + 5vw,5.5rem);--fs-body:1.0625rem;--fs-small:0.875rem;--fs-mono:0.75rem;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--s-10:128px;--gutter:clamp(20px,4.5vw,64px);--maxw:1360px;--header-h:64px;--t-fast:200ms;--t-reveal:400ms;--ease-out:cubic-bezier(0.22,1,0.36,1);--ease-in:cubic-bezier(0.55,0,1,0.45)}:root[data-theme=dark]{--paper:#0B1220;--paper-2:#111A2C;--ink:#EEF2F7;--muted:#A7B4C7;--accent:#A9C4E8;--accent-ink:#0B1220;--accent-hover:#C6D9F2;--hair:#26334A;--hair-strong:#4A5A74;--focus:#A9C4E8;--status:#6FCF9F}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#0B1220;--paper-2:#111A2C;--ink:#EEF2F7;--muted:#A7B4C7;--accent:#A9C4E8;--accent-ink:#0B1220;--accent-hover:#C6D9F2;--hair:#26334A;--hair-strong:#4A5A74;--focus:#A9C4E8;--status:#6FCF9F}}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:var(--fs-body);line-height:1.6;font-feature-settings:"kern","liga";text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;overflow-x:clip}body,dd,dl,figure,h1,h2,h3,h4,ol,p,ul{margin:0}ol,ul{padding:0;list-style:none}a{color:inherit}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:2px}main[id],section[id]{scroll-margin-top:calc(var(--header-h) + var(--s-5))}.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}.grid{display:grid;grid-template-columns:minmax(0,1fr);grid-column-gap:var(--s-6);column-gap:var(--s-6)}@media (min-width:1024px){.grid{grid-template-columns:repeat(12,minmax(0,1fr))}.col-rail{grid-column:1/span 3}.col-main{grid-column:4/span 9}.col-full{grid-column:1/-1}}.mono{font-family:var(--f-mono);font-size:var(--fs-mono);font-weight:500;letter-spacing:.08em;text-transform:uppercase;line-height:1.5}.muted{color:var(--muted)}.skip{position:absolute;top:var(--s-2);left:var(--s-2);z-index:100;padding:var(--s-3) var(--s-4);background:var(--accent);color:var(--accent-ink);font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;transform:translateY(-200%)}.skip:focus-visible{transform:none}.ul{text-decoration:none;background-image:linear-gradient(currentColor,currentColor),linear-gradient(var(--hair-strong),var(--hair-strong));background-repeat:no-repeat;background-position:0 100%,0 100%;background-size:0 2px,100% 1px;padding-bottom:2px;transition:background-size var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out)}@media (hover:hover){.ul:hover{background-size:100% 2px,100% 1px;color:var(--accent)}}.ul:focus-visible{background-size:100% 2px,100% 1px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:48px;padding:0 var(--s-5);border:1px solid var(--accent);border-radius:2px;font-family:var(--f-mono);font-size:.8125rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out),border-color var(--t-fast) var(--ease-out)}.btn .od-icon{--od-icon-size:16px}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-secondary{background:transparent;color:var(--accent)}@media (hover:hover){.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-ink)}.btn-secondary:hover{background:var(--accent);color:var(--accent-ink)}}.btn-sm{min-height:40px;padding:0 var(--s-4);font-size:var(--fs-mono)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--hair)}.nav-bar{display:flex;align-items:center;gap:var(--s-4);min-height:var(--header-h)}.brand{font-family:var(--f-display);font-size:1.25rem;font-weight:500;letter-spacing:-.01em;text-decoration:none;white-space:nowrap;margin-right:auto}.nav-links{display:none}.nav-links a{font-family:var(--f-mono);font-size:var(--fs-mono);font-weight:500;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--muted);padding:var(--s-3) 0;background-image:linear-gradient(var(--ink),var(--ink));background-repeat:no-repeat;background-position:0 calc(100% - 8px);background-size:0 1px;transition:background-size var(--t-fast) var(--ease-out),color var(--t-fast) var(--ease-out)}.nav-links a[aria-current=true]{color:var(--ink);background-size:100% 1px}@media (hover:hover){.nav-links a:hover{color:var(--ink);background-size:100% 1px}}.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-width:44px;min-height:44px;padding:0 var(--s-2);background:transparent;color:var(--ink);border:1px solid transparent;border-radius:2px;font-family:var(--f-mono);font-size:var(--fs-mono);font-weight:500;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.icon-btn .od-icon{--od-icon-size:18px}@media (hover:hover){.icon-btn:hover{border-color:var(--hair)}}.cv-long{display:none}@media (min-width:480px){.cv-long{display:inline}}.menu-btn:not([aria-expanded=true]) .i-close,.menu-btn[aria-expanded=true] .i-open,.theme-toggle .i-sun{display:none}:root[data-theme=dark] .theme-toggle .i-sun{display:inline-block}:root[data-theme=dark] .theme-toggle .i-moon{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle .i-sun{display:inline-block}:root:not([data-theme=light]) .theme-toggle .i-moon{display:none}}.mobile-panel{border-top:1px solid var(--hair);background:var(--paper)}.mobile-panel ul{padding:var(--s-2) 0 var(--s-5)}.mobile-panel li+li{border-top:1px solid var(--hair)}.mobile-panel a{display:flex;align-items:baseline;gap:var(--s-4);min-height:56px;padding:var(--s-3) 0;font-family:var(--f-display);font-size:1.75rem;letter-spacing:-.01em;line-height:1.2;text-decoration:none}.mobile-panel a .mono{color:var(--muted);min-width:2.5em}@media (min-width:1024px){.nav-links{display:flex;align-items:center;gap:var(--s-5)}.menu-btn,.mobile-panel{display:none!important}}.hero{padding:var(--s-8) 0 var(--s-9)}.hero-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s-2) var(--s-5);padding-bottom:var(--s-4);border-bottom:1px solid var(--ink);color:var(--muted)}.hero-name{font-family:var(--f-display);font-size:var(--fs-name);font-weight:400;line-height:1;letter-spacing:-.035em;margin:var(--s-6) 0 var(--s-5);margin-left:-.04em;overflow-wrap:anywhere}.hero-body{row-gap:var(--s-7)}.hero-role{font-style:italic;font-size:clamp(2rem,1.4rem + 2.8vw,4rem);font-weight:400;line-height:1.05;letter-spacing:-.02em;color:var(--accent)}.hero-role,.hero-tagline{font-family:var(--f-display)}.hero-tagline{margin-top:var(--s-5);max-width:34ch;font-size:var(--fs-lead);line-height:1.3;letter-spacing:-.01em}.hero-side{display:flex;flex-direction:column;gap:var(--s-5);padding-top:var(--s-5);border-top:1px solid var(--hair)}.status{display:flex;align-items:flex-start;gap:var(--s-3);color:var(--ink)}.status-mark{flex:none;width:10px;height:10px;margin-top:.3em;border-radius:50%;background:var(--status);box-shadow:0 0 0 4px color-mix(in srgb,var(--status) 22%,transparent)}.cta{display:flex;flex-wrap:wrap;gap:var(--s-3)}.cta-text{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;font-family:var(--f-mono);font-size:.8125rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.cta-text .od-icon{--od-icon-size:16px;transition:transform var(--t-fast) var(--ease-out)}@media (hover:hover){.cta-text:hover .od-icon{transform:translateX(4px)}}@media (min-width:1024px){.hero{padding:var(--s-9) 0 var(--s-10)}.hero-lead{grid-column:1/span 7}.hero-side{grid-column:9/span 4;align-self:end}}.impact{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:var(--s-6) var(--s-4) var(--s-6) 0;gap:var(--s-3);align-content:start}.metric:nth-child(odd){border-right:1px solid var(--hair)}.metric:nth-child(2n){padding-left:var(--s-4)}.metric:nth-child(n+3){border-top:1px solid var(--hair)}.metric-value{font-family:var(--f-display);font-size:var(--fs-metric);font-weight:400;line-height:1;letter-spacing:-.03em;white-space:nowrap;font-feature-settings:lining-nums tabular-nums;font-variant-numeric:lining-nums tabular-nums}.metric-cap{font-size:var(--fs-small);line-height:1.5;color:var(--muted);max-width:24ch}@media (min-width:1024px){.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.metric{padding:var(--s-7) var(--s-5) var(--s-7) var(--s-5)}.metric:first-child{padding-left:0}.metric:nth-child(n){border-top:0;border-right:1px solid var(--hair)}.metric:last-child{border-right:0}}.section{padding:var(--s-9) 0}.section+.section{border-top:1px solid var(--hair)}.sec-head{align-items:baseline;row-gap:var(--s-3);margin-bottom:var(--s-7)}.sec-num{color:var(--accent)}.sec-title{font-family:var(--f-display);font-size:var(--fs-h2);font-weight:400;line-height:1.05;letter-spacing:-.025em}@media (min-width:1024px){.section{padding:var(--s-10) 0}.sec-head{margin-bottom:var(--s-8)}}.profile-lead{font-family:var(--f-display);font-size:clamp(1.75rem,1.2rem + 2.2vw,3rem);font-weight:400;line-height:1.15;letter-spacing:-.02em;max-width:22ch}.profile-body{margin-top:var(--s-6);max-width:65ch;font-size:1.125rem;line-height:1.65}.profile-body+.profile-body{margin-top:var(--s-4)}.jobs{border-top:1px solid var(--ink)}.job{padding:var(--s-7) 0;row-gap:var(--s-4)}.job+.job{border-top:1px solid var(--hair)}.job-rail{display:flex;flex-direction:column;gap:var(--s-3)}.job-when{display:grid;grid-gap:2px;gap:2px}.job-when .dates{color:var(--ink)}.job-when .where{color:var(--muted)}.job-body{position:relative}.job-company{font-size:var(--fs-h3);font-weight:500;line-height:1.2;letter-spacing:-.01em}.job-company,.job-context{font-family:var(--f-display)}.job-context{margin-top:var(--s-2);font-style:italic;font-size:1.125rem;line-height:1.5;color:var(--muted);max-width:62ch}.roles{margin-top:var(--s-4);display:grid;grid-gap:var(--s-3);gap:var(--s-3)}.role{display:grid;grid-gap:2px;gap:2px}.role-title{font-weight:600;font-size:1.0625rem;line-height:1.4}.role-step{color:var(--muted)}.bullets{margin-top:var(--s-5);display:grid;grid-gap:var(--s-3);gap:var(--s-3);max-width:68ch}.bullets li{position:relative;padding-left:var(--s-6);line-height:1.6}.bullets li:before{content:"";position:absolute;left:0;top:.8em;width:16px;height:1px;background:var(--hair-strong)}@media (min-width:1024px){.job{padding:var(--s-8) 0}.job-body{padding-left:var(--s-6);border-left:1px solid var(--hair)}.job-body:before{content:"";position:absolute;left:-4px;top:.55em;width:7px;height:7px;background:var(--accent)}}.projects{display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--ink)}.project{display:grid;align-content:start;grid-gap:var(--s-3);gap:var(--s-3);padding:var(--s-6) 0}.project+.project{border-top:1px solid var(--hair)}.project-kind{color:var(--muted)}.project-name{font-family:var(--f-display);font-size:var(--fs-h3);font-weight:500;line-height:1.2;letter-spacing:-.01em;overflow-wrap:anywhere}.project-text{max-width:52ch}.project-link{margin-top:var(--s-2);justify-self:start;overflow-wrap:anywhere}@media (min-width:768px){.projects{grid-template-columns:repeat(3,minmax(0,1fr))}.project{padding:var(--s-6) var(--s-5) var(--s-6) 0}.project+.project{border-top:0;border-left:1px solid var(--hair);padding-left:var(--s-5)}}.skills{border-top:1px solid var(--ink)}.skill-row{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:var(--s-2);gap:var(--s-2);padding:var(--s-5) 0}.skill-row+.skill-row{border-top:1px solid var(--hair)}.skill-row dt{color:var(--accent)}.skill-row dd{font-size:1.125rem;line-height:1.6;max-width:68ch}@media (min-width:768px){.skill-row{grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:var(--s-6);align-items:baseline}}.edu{display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--ink)}.edu-item{display:grid;align-content:start;grid-gap:var(--s-2);gap:var(--s-2);padding:var(--s-6) 0}.edu-item+.edu-item{border-top:1px solid var(--hair)}.edu-label{color:var(--muted)}.edu-title{font-family:var(--f-display);font-size:var(--fs-h3);font-weight:500;line-height:1.2;letter-spacing:-.01em}@media (min-width:768px){.edu{grid-template-columns:repeat(2,minmax(0,1fr))}.edu-item{padding-right:var(--s-6)}.edu-item+.edu-item{border-top:0;border-left:1px solid var(--hair);padding-left:var(--s-6)}}.contact{background:var(--paper-2);border-top:1px solid var(--ink)}.contact .sec-head{margin-bottom:var(--s-6)}.contact-email{display:inline-block;font-family:var(--f-display);font-size:clamp(1.75rem,.9rem + 4.4vw,5rem);font-weight:400;line-height:1.1;letter-spacing:-.025em;overflow-wrap:anywhere;color:var(--ink)}.contact-intro{max-width:52ch;margin-bottom:var(--s-5);color:var(--muted);font-size:1.125rem}.contact-list{margin-top:var(--s-7);display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--hair)}.contact-list li{display:grid;grid-gap:var(--s-1);gap:var(--s-1);padding:var(--s-4) 0;border-bottom:1px solid var(--hair)}.contact-list .mono{color:var(--muted)}.contact-list a,.contact-list span:not(.mono){font-size:1.125rem;overflow-wrap:anywhere;justify-self:start}.contact .cta{margin-top:var(--s-7)}@media (min-width:768px){.contact-list{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--s-6)}}.site-footer{border-top:1px solid var(--hair)}.footer-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--s-3) var(--s-5);min-height:72px;padding-block:var(--s-4);color:var(--muted)}.footer-bar a{color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;min-height:44px}.sub-label{margin:var(--s-8) 0 var(--s-4);color:var(--accent)}.case-card-link{text-decoration:none}@media (hover:hover){.case-card-link:hover{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}}.case-hero{padding:var(--s-7) 0 var(--s-8)}.case-back{color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;min-height:44px;margin-block:calc(var(--s-3) * -1)}.case-title{margin:var(--s-7) 0 var(--s-5);max-width:18ch;font-size:clamp(2.5rem,1.4rem + 4.4vw,5.5rem);font-weight:400;line-height:1.02;letter-spacing:-.03em;text-wrap:balance}.case-dek,.case-title{font-family:var(--f-display)}.case-dek{max-width:40ch;font-style:italic;font-size:var(--fs-lead);line-height:1.3;letter-spacing:-.01em;color:var(--accent)}.case-figures .metric-value{font-size:clamp(2.25rem,1.2rem + 3.6vw,4.5rem);white-space:normal}@media (min-width:1024px){.case-figures[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.case-figures[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}}.case-body{padding:var(--s-8) 0 var(--s-9);row-gap:var(--s-7)}.case-meta{display:grid;grid-gap:var(--s-4);gap:var(--s-4);border-top:1px solid var(--ink);padding-top:var(--s-4)}.case-meta>div{display:grid;grid-gap:2px;gap:2px}.case-meta>div+div{border-top:1px solid var(--hair);padding-top:var(--s-4)}.case-meta dt{color:var(--muted)}.case-meta dd{color:var(--ink)}.case-meta dd li+li{margin-top:2px}@media (min-width:1024px){.case-body{padding:var(--s-9) 0 var(--s-10)}.case-rail{align-self:start;position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + var(--s-6))}}.case-main{display:grid;grid-gap:var(--s-8);gap:var(--s-8)}.case-h{display:grid;grid-gap:var(--s-2);gap:var(--s-2);margin-bottom:var(--s-5);font-family:var(--f-display);font-size:var(--fs-h3);font-weight:500;line-height:1.2;letter-spacing:-.01em}.case-prose{max-width:68ch;display:grid;grid-gap:var(--s-5);gap:var(--s-5)}.case-prose p{font-size:1.125rem;line-height:1.7}.case-prose .case-list{margin-top:0;max-width:none;gap:var(--s-4)}.case-prose .case-list li{font-size:1.0625rem;line-height:1.65}@media (min-width:1024px){.case-main{gap:var(--s-9)}.case-section{padding-left:var(--s-6);border-left:1px solid var(--hair)}}.case-more{padding:var(--s-9) 0;border-top:1px solid var(--hair);background:var(--paper-2)}.case-more-list{border-top:1px solid var(--ink)}.case-back-bottom{margin-top:var(--s-7)}@media (min-width:1024px){.case-more{padding:var(--s-10) 0}}@media (prefers-reduced-motion:no-preference){.js .reveal{opacity:0;transform:translateY(16px);transition:opacity var(--t-reveal) var(--ease-out),transform var(--t-reveal) var(--ease-out)}.js .reveal.is-in{opacity:1;transform:none}.js .metrics .reveal:nth-child(2){transition-delay:40ms}.js .metrics .reveal:nth-child(3){transition-delay:80ms}.js .metrics .reveal:nth-child(4){transition-delay:.12s}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media print{.cta,.footer-bar a,.site-header,.skip{display:none!important}.js .reveal{opacity:1!important;transform:none!important}}