@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/geist-cyrillic-ext-400-normal-ChfpGzr5.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-cyrillic-400-normal-DXusLSnH.woff2)format("woff2"),url(/assets/geist-cyrillic-400-normal-DkrqoNl2.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/geist-vietnamese-400-normal-C8xY9-dI.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-latin-ext-400-normal-CND6cjiG.woff2)format("woff2"),url(/assets/geist-latin-ext-400-normal-Bz1pQMyt.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-latin-400-normal-B40WzpMT.woff2)format("woff2"),url(/assets/geist-latin-400-normal-akEymXtG.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=)format("woff2"),url(data:font/woff;base64,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)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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-display:swap;font-weight:400;src:url(/assets/newsreader-latin-400-normal-BFBkh4jY.woff2)format("woff2"),url(/assets/newsreader-latin-400-normal-gRTjlS2D.woff)format("woff")}@font-face{font-family:Newsreader;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/newsreader-latin-400-italic-CEihAR-f.woff2)format("woff2"),url(/assets/newsreader-latin-400-italic-CNZoH1hn.woff)format("woff")}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/newsreader-latin-500-normal-B66TYsaK.woff2)format("woff2"),url(/assets/newsreader-latin-500-normal-DFwuUcdu.woff)format("woff")}@font-face{font-family:Newsreader;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/newsreader-latin-600-normal-30OJ_TG_.woff2)format("woff2"),url(/assets/newsreader-latin-600-normal-DUnT2r2g.woff)format("woff")}:root{--portfolio-font:Geist, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--page-bg);min-width:320px}.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.light{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:radial-gradient(circle at 50% -18%, var(--ambient-glow), transparent 34rem), var(--page-bg);min-width:320px;min-height:100vh;color:var(--muted);font-family:var(--portfolio-font);margin:0;font-size:14px;line-height:1.55;transition:color .18s,background-color .18s}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button{font:inherit}img{max-width:100%;display:block}::selection{background:var(--text);color:var(--page-bg)}#root{min-height:100vh}:root,.dark{--page-bg:#17191c;--surface:#1e2125;--surface-hover:#262a2f;--text:#f7f7f2;--muted:#c3c5c0;--quiet:#9a9e98;--line:#393d42;--accent:#aabfff;--ambient-glow:#89a0ba14;--tag-blue:#aabfff;--tag-green:#9fd4bd;--tag-amber:#e2bc91;--tag-violet:#d5adde;--tag-cyan:#9fcfd8;--column-gap:clamp(16px, 3vw, 28px)}.light{--page-bg:#f5f2ea;--surface:#ebe7de;--surface-hover:#e1dcd1;--text:#171813;--muted:#45473f;--quiet:#6e7068;--line:#cec8bc;--accent:#234fae;--ambient-glow:#5a4e3617;--tag-blue:#315ba8;--tag-green:#377558;--tag-amber:#956126;--tag-violet:#7b4e89;--tag-cyan:#34747e}.dark[data-dark-background=ink]{--page-bg:#101214;--surface:#181b1e;--surface-hover:#22262a;--line:#33383d;--ambient-glow:#9faab51a}.dark[data-dark-background=midnight]{--page-bg:#101827;--surface:#172135;--surface-hover:#202c43;--line:#34415a;--accent:#a9c4ff;--ambient-glow:#4c73be29}.dark[data-dark-background=espresso]{--page-bg:#1c1816;--surface:#25201d;--surface-hover:#302925;--line:#463c36;--accent:#d8b8a2;--ambient-glow:#b47a541c}.dark[data-dark-background=slate]{--page-bg:#182027;--surface:#202a32;--surface-hover:#2a363f;--line:#3d4b55;--accent:#afd0df;--ambient-glow:#739db121}.dark[data-dark-background=forest]{--page-bg:#111c18;--surface:#192720;--surface-hover:#23332b;--line:#364a40;--accent:#a9d5bb;--ambient-glow:#55946f21}.dark[data-dark-background=aubergine]{--page-bg:#1c151f;--surface:#271e2a;--surface-hover:#332738;--line:#49394e;--accent:#d6b6dc;--ambient-glow:#9d60a921}.dark[data-dark-background=deep-teal]{--page-bg:#0e1c1e;--surface:#17272a;--surface-hover:#203438;--line:#32494d;--accent:#9fd4d5;--ambient-glow:#46919424}.site-shell{width:min(100% - 32px,700px);margin:0 auto;padding:30px 0 88px}.masthead{gap:var(--column-gap);grid-template-columns:44px minmax(0,1fr) 28px;align-items:center;min-height:132px;padding:24px 0 50px;transition:grid-template-columns .36s cubic-bezier(.22,1,.36,1);display:grid}.masthead[data-portrait-visible=true]{grid-template-columns:93px minmax(0,1fr) 28px}.masthead__mark{border:1px solid var(--line);width:44px;height:44px;color:var(--text);cursor:pointer;letter-spacing:.08em;perspective:240px;transform-origin:50%;z-index:2;background:0 0;border-radius:0;padding:0;font-family:JetBrains Mono,monospace;font-size:11px;transition:border-color .18s,box-shadow .24s,transform .36s cubic-bezier(.22,1,.36,1);display:block;position:relative}.masthead__mark[data-flipped=true]{transform-origin:0;z-index:3;transform:scale(2.1);box-shadow:0 10px 32px #00000047}.masthead__mark-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .42s cubic-bezier(.22,1,.36,1);display:grid;position:relative}.masthead__mark[data-flipped=true] .masthead__mark-inner{transform:rotateY(180deg)}.masthead__mark-face{backface-visibility:hidden;grid-area:1/1;place-items:center;width:100%;height:100%;display:grid;overflow:hidden}.masthead__mark-back{transform:rotateY(180deg)}.masthead__mark-back img{object-fit:cover;object-position:65% 48%;width:100%;height:100%}.masthead__mark:hover{border-color:var(--muted)}.masthead__mark:focus-visible{outline:1px solid var(--accent);outline-offset:3px}.masthead__identity{min-width:0}.masthead__identity h1{color:var(--text);letter-spacing:-.025em;margin:0;font-size:clamp(20px,3.2vw,25px);font-weight:450;line-height:1.2}.masthead__identity p{color:var(--muted);margin:6px 0 0}.theme-toggle{justify-self:end;border:1px solid var(--line)!important;width:28px!important;min-width:28px!important;height:28px!important;color:var(--muted)!important;border-radius:0!important}.theme-toggle:hover{background:var(--surface-hover)!important;color:var(--text)!important}.background-picker{z-index:20;flex-direction:column;align-items:flex-end;gap:10px;font-family:JetBrains Mono,monospace;display:flex;position:fixed;bottom:22px;right:22px}.background-picker button{color:var(--muted);cursor:pointer;border-radius:0}.background-picker__toggle{border:1px solid var(--line);background:var(--surface);letter-spacing:.08em;align-items:center;gap:7px;height:36px;padding:0 11px;font-size:10px;display:flex;box-shadow:0 8px 30px #0000002e}.background-picker__toggle:hover,.background-picker__heading button:hover{background:var(--surface-hover);color:var(--text)}.background-picker__panel{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);width:232px;padding:14px;box-shadow:0 16px 45px #00000047}.background-picker__heading{justify-content:space-between;align-items:flex-start;margin-bottom:13px;display:flex}.background-picker__heading span,.background-picker__heading small{display:block}.background-picker__heading span{color:var(--text);letter-spacing:.05em;text-transform:uppercase;font-size:10px}.background-picker__heading small{color:var(--quiet);font-family:var(--portfolio-font);margin-top:3px;font-size:11px}.background-picker__heading button{background:0 0;border:0;place-items:center;width:24px;height:24px;padding:0;display:grid}.background-picker__options{grid-template-columns:1fr 1fr;gap:7px;display:grid}.background-picker__option{border:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:7px;min-width:0;padding:7px;font-size:9px;display:flex}.background-picker__option:hover,.background-picker__option[data-selected=true]{border-color:var(--muted);color:var(--text)}.background-picker__option[data-selected=true]{box-shadow:inset 0 0 0 1px var(--muted)}.background-picker__swatch{border:1px solid #ffffff2e;flex:0 0 18px;width:18px;height:18px}.background-picker button:focus-visible{outline:1px solid var(--accent);outline-offset:3px}.masthead__location{color:var(--quiet);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;justify-content:flex-end;align-items:center;gap:8px;margin:0;font-family:JetBrains Mono,monospace;font-size:10px;display:flex}.status-dot{background:#75c98c;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #75c98c14}.editorial-section{gap:var(--column-gap);border-top:1px solid var(--line);grid-template-columns:1fr 3fr;padding:54px 0;display:grid}.section-label{align-self:start}.section-label span{color:var(--quiet);letter-spacing:.08em;margin-bottom:8px;font-family:JetBrains Mono,monospace;font-size:11px;display:block}.section-label h2{max-width:110px;color:var(--text);margin:0;font-size:14px;font-weight:500;line-height:1.3}.section-content{min-width:0}.section-content>:first-child{margin-top:0}.section-content>:last-child{margin-bottom:0}.intro-copy p,.personal-note figcaption p{color:var(--muted);letter-spacing:0;margin:0;font-size:14px;line-height:1.55}.intro-copy__lead{max-width:470px;color:var(--text);letter-spacing:-.025em;font-size:clamp(20px,3.6vw,26px);font-weight:400;line-height:1.3}.intro-copy__lead+p{max-width:470px;color:var(--muted);margin-top:24px}.career-list{flex-direction:column;display:flex}.career-row{grid-template-columns:112px minmax(0,1fr);gap:16px;padding:0 0 38px;display:grid;position:relative}.career-row:last-child{padding-bottom:0}.career-row:not(:last-child):after{background:var(--line);content:"";transform-origin:0;height:1px;transition:transform .3s;position:absolute;bottom:19px;left:128px;right:0;transform:scaleX(.15)}.career-row:hover:after{transform:scaleX(1)}.career-period,.career-progression__period{color:var(--quiet);letter-spacing:.02em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:9px;line-height:1.5}.career-period{margin:0}.career-heading{align-items:flex-start;gap:14px;display:flex}.career-logo{border:1px solid var(--line);background:#fff;flex:0 0 42px;place-items:center;width:42px;height:42px;padding:5px;display:grid;overflow:hidden}.career-logo--full{background:0 0;padding:0}.career-logo img{object-fit:contain;width:100%;height:100%}.career-heading h3{color:var(--text);letter-spacing:-.01em;margin:0;font-size:14px;font-weight:500;line-height:1.35}.career-role,.career-progression__title{color:var(--muted);font-size:14px;font-weight:400;line-height:1.35}.career-role{margin:3px 0 0}.career-stack,.career-progression__stack{color:var(--quiet);letter-spacing:.01em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:9px;line-height:1.65}.career-stack{margin:13px 0 0 56px}.career-progression{border-left:1px solid var(--line);margin:17px 0 0 56px;padding-left:17px;position:relative}.career-progression__role{padding-bottom:20px;position:relative}.career-progression__role:last-child{padding-bottom:0}.career-progression__role:before{border:2px solid var(--page-bg);background:var(--muted);width:7px;height:7px;box-shadow:0 0 0 1px var(--line);content:"";border-radius:50%;position:absolute;top:5px;left:-21px}.career-progression__title{margin:0}.career-progression__period{margin:4px 0 0}.career-progression__stack{margin:8px 0 0}.link-buttons{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.link-button{border:1px solid var(--line);background:var(--surface);min-width:0;min-height:72px;color:var(--text);cursor:pointer;text-align:center;justify-content:center;align-items:center;gap:10px;padding:14px 10px;font-size:12px;text-decoration:none;transition:color .18s,border-color .18s,background-color .18s,transform .18s;display:flex}.link-button:hover{border-color:var(--muted);background:var(--surface-hover);transform:translateY(-2px)}.link-button:focus-visible,.theme-toggle:focus-visible{outline:1px solid var(--accent);outline-offset:3px}.link-button svg{width:18px;height:18px;color:var(--muted);flex:none;transition:color .18s}.link-button:hover svg{color:var(--text)}.projects-grid{grid-template-columns:1fr;gap:14px;display:grid}.project-card{border:1px solid var(--line);background:var(--surface);min-height:124px;color:inherit;flex-direction:column;padding:20px;text-decoration:none;transition:background-color .18s,border-color .18s,transform .18s;display:flex}.project-card:hover{border-color:var(--quiet);background:var(--surface-hover);transform:translateY(-2px)}.project-card__heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.project-card__heading h3{color:var(--text);letter-spacing:-.01em;margin:0;font-size:14px;font-weight:500;line-height:1.3}.project-card__heading svg{width:15px;height:15px;color:var(--quiet);flex:none;transition:color .18s,transform .18s}.project-card:hover .project-card__heading svg{color:var(--text);transform:translate(2px,-2px)}.project-card>p{color:var(--muted);margin:11px 0 20px;font-size:12px;line-height:1.5}.project-card__meta{color:var(--quiet);letter-spacing:.03em;text-transform:uppercase;flex-direction:column;align-items:flex-start;gap:10px;margin-top:auto;font-family:JetBrains Mono,monospace;font-size:8px;display:flex}.project-card__topics{flex-wrap:wrap;gap:5px;display:flex}.project-card__topics span{--tag-color:var(--tag-blue);border:1px solid color-mix(in srgb, var(--tag-color) 42%, var(--line));background:color-mix(in srgb, var(--tag-color) 11%, transparent);color:var(--tag-color);padding:3px 5px}.project-card__topics span:nth-child(5n+2){--tag-color:var(--tag-green)}.project-card__topics span:nth-child(5n+3){--tag-color:var(--tag-amber)}.project-card__topics span:nth-child(5n+4){--tag-color:var(--tag-violet)}.project-card__topics span:nth-child(5n+5){--tag-color:var(--tag-cyan)}.project-card:focus-visible{outline:1px solid var(--accent);outline-offset:3px;z-index:1;position:relative}.projects-status{border:1px solid var(--line);color:var(--quiet);margin:0;padding:24px;font-family:JetBrains Mono,monospace;font-size:9px}.projects-status a{color:var(--text)}.personal-note{grid-template-columns:112px minmax(0,1fr);align-items:start;gap:16px;margin:0;display:grid}.personal-note img{object-fit:cover;object-position:center;background:var(--surface);width:112px;height:148px}.personal-note figcaption p{max-width:470px}.inline-link{color:var(--accent);text-underline-offset:3px;font-weight:600;text-decoration-color:currentColor;text-decoration-thickness:1.5px;transition:color .18s,text-decoration-thickness .18s}.inline-link:hover{color:var(--text);text-decoration-thickness:2px}.inline-link:focus-visible{outline:1px solid var(--accent);outline-offset:3px;border-radius:2px}.personal-note figcaption span{color:var(--quiet);letter-spacing:.06em;text-transform:uppercase;margin-top:18px;font-family:JetBrains Mono,monospace;font-size:9px;display:block}.site-footer{border-top:1px solid var(--line);color:var(--quiet);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;gap:20px;padding-top:28px;font-family:JetBrains Mono,monospace;font-size:9px;display:flex}.site-footer p{margin:0}.site-footer a{color:var(--muted);text-decoration:none}.site-footer a:hover{color:var(--text)}.blog-shell{--blog-font:"Newsreader", Georgia, serif;width:min(100% - 32px,840px);min-height:100vh;font-family:var(--blog-font);margin:0 auto;padding:30px 0 96px}html[data-blog-font=sans] .blog-shell{--blog-font:var(--portfolio-font)}.blog-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:68px;display:flex}.blog-header__actions{align-items:center;gap:8px;display:flex}.blog-font-toggle{border:1px solid var(--line);height:28px;color:var(--muted);cursor:pointer;letter-spacing:.04em;text-transform:uppercase;background:0 0;border-radius:0;align-items:center;gap:6px;padding:0 9px;font-family:JetBrains Mono,monospace;font-size:9px;display:inline-flex}.blog-font-toggle span{color:var(--text);font-family:var(--blog-font);letter-spacing:0;text-transform:none;font-size:13px}.blog-font-toggle:hover{background:var(--surface-hover);color:var(--text)}.blog-font-toggle:focus-visible{outline:1px solid var(--accent);outline-offset:3px}.blog-back-link{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:8px;font-family:JetBrains Mono,monospace;font-size:10px;text-decoration:none;display:inline-flex}.blog-back-link:hover{color:var(--text)}.blog-back-link svg{width:14px;height:14px;transition:transform .18s}.blog-back-link:hover svg{transform:translate(-3px)}.blog-intro{max-width:600px;padding:52px 0 42px}.blog-kicker{color:var(--quiet);letter-spacing:.08em;text-transform:uppercase;margin:0 0 18px;font-family:JetBrains Mono,monospace;font-size:10px}.blog-intro h1,.blog-not-found h1,.blog-article__header h1{color:var(--text);letter-spacing:-.04em;margin:0;font-weight:450}.blog-intro h1{font-size:clamp(20px,3.2vw,25px);font-family:var(--blog-font);line-height:1.05}.blog-intro>p:last-child{max-width:470px;color:var(--muted);margin:28px 0 0;font-size:14px;line-height:1.65}.blog-index{border-top:3px double var(--line)}.blog-status{color:var(--quiet);margin:0;padding:42px 0;font-family:JetBrains Mono,monospace;font-size:11px}.blog-lead{border-bottom:1px solid var(--line)}.blog-lead>a{color:inherit;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:26px;padding:22px 0;text-decoration:none;display:grid}.blog-lead[data-has-image=false]>a{grid-template-columns:minmax(0,620px)}.blog-lead__copy{flex-direction:column;align-items:flex-start;display:flex}.blog-lead h2{color:var(--text);font-family:var(--blog-font);letter-spacing:-.035em;margin:14px 0 0;font-size:clamp(18px,2.8vw,23px);font-weight:500;line-height:1.02}.blog-lead__copy>p{color:var(--muted);margin:12px 0 0;font-size:14px;line-height:1.55}.blog-lead>a>img{object-fit:cover;filter:saturate(.88);width:100%;height:100%;min-height:220px;max-height:320px}.blog-read-link{color:var(--text);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:6px;margin-top:18px;font-family:JetBrains Mono,monospace;font-size:9px;display:inline-flex}.blog-read-link svg{width:13px;height:13px}.blog-grid{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.blog-card{border-left:1px solid var(--line);min-width:0}.blog-card:nth-child(3n+1){border-left:0}.blog-card:nth-child(n+4){border-top:1px solid var(--line)}.blog-card>a{height:100%;color:inherit;flex-direction:column;padding:20px;text-decoration:none;display:flex;position:relative}.blog-card>a>img{aspect-ratio:16/10;object-fit:cover;filter:saturate(.85);width:100%;margin-bottom:16px}.blog-card__meta,.blog-article__meta{color:var(--quiet);letter-spacing:.04em;text-transform:uppercase;flex-direction:column;gap:5px;font-family:JetBrains Mono,monospace;font-size:9px;display:flex}.blog-card__copy h2{color:var(--text);font-family:var(--blog-font);letter-spacing:-.025em;margin:12px 0 0;font-size:16px;font-weight:500;line-height:1.12}.blog-card__copy p{color:var(--muted);margin:9px 0 0;font-size:13px;line-height:1.5}.blog-card>a>svg{box-sizing:content-box;width:15px;height:15px;color:var(--quiet);align-self:flex-end;margin-top:auto;padding-top:16px;transition:color .18s,transform .18s}.blog-card>a:hover>svg{color:var(--text);transform:translate(3px,-3px)}.blog-card>a:hover h2{color:var(--accent)}.blog-shell--article{width:min(100% - 32px,680px)}.blog-article{padding-top:58px}.blog-article__header{max-width:650px;margin-bottom:50px}.blog-article__meta{flex-flow:wrap;gap:8px 18px;margin-bottom:22px}.blog-article__meta span:before{color:var(--line);content:"/";margin-right:18px}.blog-article__header h1{font-size:clamp(20px,3.6vw,26px);font-family:var(--blog-font);line-height:1.08}.blog-article__header>p{max-width:570px;color:var(--muted);margin:25px 0 0;font-size:15px;line-height:1.6}.blog-article__cover{object-fit:cover;border:1px solid var(--line);width:100%;max-height:480px;margin-bottom:54px}.blog-article__body{max-width:650px;color:var(--muted);font-size:15px;line-height:1.78}.blog-article__body>:first-child{margin-top:0}.blog-article__body h2,.blog-article__body h3,.blog-article__body h4{color:var(--text);font-family:var(--blog-font);letter-spacing:-.025em;font-weight:500;line-height:1.25}.blog-article__body h2{margin:2.2em 0 .75em;font-size:21px}.blog-article__body h3{margin:2em 0 .65em;font-size:17px}.blog-article__body p,.blog-article__body ul,.blog-article__body ol,.blog-article__body blockquote{margin:0 0 1.4em}.blog-article__body a{color:var(--accent);text-underline-offset:3px}.blog-article__body blockquote{border-left:2px solid var(--line);color:var(--text);padding-left:22px}.blog-article__body figure{margin:2.5em 0}.blog-article__body figure img{border:1px solid var(--line);width:100%}.blog-article__body figcaption{color:var(--quiet);letter-spacing:.03em;text-transform:uppercase;margin-top:10px;font-family:JetBrains Mono,monospace;font-size:9px}.blog-article__body code{background:var(--surface);color:var(--text);padding:.12em .35em;font-family:JetBrains Mono,monospace;font-size:.85em}.blog-not-found{padding-top:92px}.blog-not-found h1{margin-bottom:28px;font-size:clamp(32px,6vw,50px)}.reveal{opacity:0;animation:.65s cubic-bezier(.22,1,.36,1) forwards reveal}.reveal--one{animation-delay:60ms}.reveal--two{animation-delay:.13s}.reveal--three{animation-delay:.2s}@keyframes reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=820px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-card:nth-child(3n+1){border-left:1px solid var(--line)}.blog-card:nth-child(odd){border-left:0}.blog-card:nth-child(n+3){border-top:1px solid var(--line)}}@media (width<=680px){.site-shell{width:min(100% - 28px,700px);padding-top:12px}.masthead{grid-template-columns:44px minmax(0,1fr) 28px;gap:12px;padding-bottom:40px}.masthead[data-portrait-visible=true]{grid-template-columns:77px minmax(0,1fr) 28px}.masthead__mark[data-flipped=true]{transform:scale(1.75)}.masthead__location{grid-column:2;justify-content:flex-start}.editorial-section{grid-template-columns:1fr;gap:26px;padding:42px 0}.link-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}.blog-intro{padding:44px 0 38px}.blog-lead>a{grid-template-columns:1fr;gap:24px}.blog-lead>a>img{order:-1;min-height:220px;max-height:340px}.blog-article{padding-top:48px}.section-label{align-items:baseline;gap:10px;display:flex}.section-label span{margin:0}.section-label h2{max-width:none}}@media (width<=480px){.background-picker{bottom:14px;right:14px}.career-row,.personal-note{grid-template-columns:1fr;gap:12px}.career-row{padding-bottom:34px}.career-row:not(:last-child):after{bottom:17px;left:0;right:0}.career-period{order:-1}.personal-note img{width:100%;height:min(72vw,340px)}.link-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-grid{grid-template-columns:1fr}.project-card{min-height:124px}.link-buttons>:last-child:nth-child(odd){grid-column:1/-1}.blog-shell,.blog-shell--article{width:min(100% - 28px,760px);padding-top:12px}.blog-grid{grid-template-columns:1fr}.blog-card,.blog-card:nth-child(3n+1),.blog-card:nth-child(odd){border-left:0}.blog-card:nth-child(n+2){border-top:1px solid var(--line)}.blog-card>a{padding:20px 0}.site-footer{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;animation:none}.career-row:after,.link-button,.link-button svg,.project-card,.project-card__heading svg,.masthead,.masthead__mark,.masthead__mark-inner{transition:none}}:root{--react-pdf-annotation-layer:1;--annotation-unfocused-field-background:url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color:Highlight;--input-focus-outline:1px solid Canvas;--input-unfocused-border-color:transparent;--input-disabled-border-color:transparent;--input-hover-border-color:black;--link-outline:none}@media screen and (forced-colors:active){:root{--input-focus-border-color:CanvasText;--input-unfocused-border-color:ActiveText;--input-disabled-border-color:GrayText;--input-hover-border-color:Highlight;--link-outline:1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selecteditem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert();backdrop-filter:invert()}}.annotationLayer{pointer-events:none;transform-origin:0 0;z-index:3;position:absolute;top:0;left:0}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg)translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg)translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg)translateY(-100%)}.annotationLayer canvas{width:100%;height:100%;position:absolute}.annotationLayer section{text-align:initial;pointer-events:auto;box-sizing:border-box;transform-origin:0 0;margin:0;position:absolute}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{width:100%;height:100%;font-size:1em;position:absolute;top:0;left:0}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;vertical-align:top;width:100%;height:100%;margin:0}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{border:2px solid var(--input-disabled-border-color);cursor:not-allowed;background:0 0}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline);background:0 0;border-radius:2px}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-color:#0000;background-image:none}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline);border-radius:2px}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{content:"";background-color:canvastext;display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{width:1px;height:80%;left:45%}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;width:50%;height:50%;top:20%;left:30%}.annotationLayer .textWidgetAnnotation input.comb{padding-left:2px;padding-right:0;font-family:monospace}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{appearance:none}.annotationLayer .popupTriggerArea{width:100%;height:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none;position:absolute}.annotationLayer .popup{max-width:calc(180px * var(--total-scale-factor));box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto;background-color:#ff9;position:absolute}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{margin-left:calc(5px * var(--total-scale-factor));display:inline-block}.annotationLayer .popupContent{margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor));border-top:1px solid #333}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{width:100%;height:100%;position:absolute;top:0;left:0}.annotationLayer .annotationTextContent{opacity:0;color:#0000;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;position:absolute}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer:1;--highlight-bg-color:#b400aa;--highlight-selected-bg-color:#006400}@media screen and (forced-colors:active){:root{--highlight-bg-color:Highlight;--highlight-selected-bg-color:ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg)translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg)translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg)translate(-100%)}.textLayer{text-align:initial;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2;line-height:1;position:absolute;inset:0;overflow:hidden}.textLayer :is(span,br){color:#0000;white-space:pre;cursor:text;transform-origin:0 0;margin:0;position:absolute}.textLayer span.markedContent{height:0;top:0}.textLayer .highlight{background-color:var(--highlight-bg-color);border-radius:4px;margin:-1px;padding:1px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:0 0}.textLayer .endOfContent{z-index:-1;cursor:default;-webkit-user-select:none;user-select:none;display:block;position:absolute;inset:100% 0 0}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{width:0;height:0;display:none;position:absolute;top:0;left:0}
