@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sora-latin-ext-400-normal-Twk1CgKs.woff2)format("woff2"),url(/assets/sora-latin-ext-400-normal-BmhJC382.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:Sora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sora-latin-400-normal-CRt88UEn.woff2)format("woff2"),url(/assets/sora-latin-400-normal-OW7qkl5a.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:Sora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sora-latin-ext-500-normal-B5KKQIFO.woff2)format("woff2"),url(/assets/sora-latin-ext-500-normal-DwxUJRqY.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:Sora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sora-latin-500-normal-01eiPEn0.woff2)format("woff2"),url(/assets/sora-latin-500-normal-w58xtEt9.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:Sora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sora-latin-ext-600-normal-Cue1zdhl.woff2)format("woff2"),url(/assets/sora-latin-ext-600-normal-DLOJK0Ta.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:Sora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sora-latin-600-normal-Cdg4DaK0.woff2)format("woff2"),url(/assets/sora-latin-600-normal-1_7fyUAY.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:Sora;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sora-latin-ext-700-normal-DM0oy5s8.woff2)format("woff2"),url(/assets/sora-latin-ext-700-normal-Oc7uZIYt.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:Sora;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sora-latin-700-normal-9waGdLWo.woff2)format("woff2"),url(/assets/sora-latin-700-normal-BKPfQAnC.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}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f6f4ef;--ink:#15171c;--soft:#4e535e;--rule:#d6d2c8}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0d0f14;--ink:#eef0f5;--soft:#989eac;--rule:#2a2e38}}*{box-sizing:border-box}html{font-size:125%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Sora,ui-sans-serif,system-ui,sans-serif;line-height:1.45}.shell[data-v-2cfb3ef0]{max-width:38rem;margin:0 auto;padding:4rem 1.25rem 3rem}.wordmark[data-v-2cfb3ef0]{color:var(--ink);margin:0 0 1.6rem;font-size:1.6rem;font-weight:700;line-height:1;text-decoration:none;display:inline-block}.wordmark[data-v-2cfb3ef0]:hover{text-decoration:underline}.site-footer[data-v-2cfb3ef0]{color:var(--soft);border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;gap:.6rem;padding-top:.9rem;font-size:.72rem;display:flex}.site-footer a[data-v-2cfb3ef0]{color:inherit}.tagline[data-v-3d25f2dd]{margin:0 0 1.2rem;font-size:1.45rem;font-weight:500;line-height:1.25}.projects[data-v-3d25f2dd]{margin:0 0 1.4rem;padding:0;list-style:none}.project[data-v-3d25f2dd]{flex-direction:row;gap:.4rem;margin:0 0 .55rem;display:flex}.project-link[data-v-3d25f2dd]{color:var(--ink);font-weight:600;text-decoration:none}.project-link[data-v-3d25f2dd]:hover{text-decoration:underline}.project-blurb[data-v-3d25f2dd]{color:var(--soft)}.note[data-v-3d25f2dd]{margin:0 0 1.6rem}.tagline[data-v-5f89b335]{margin:0 0 1.2rem;font-size:1.45rem;font-weight:500;line-height:1.25}.note[data-v-5f89b335]{margin:0 0 1.6rem}.note a[data-v-5f89b335]{color:var(--ink);font-weight:600}.code[data-v-5f89b335]{color:var(--soft);margin:0;font-size:.72rem}
