@font-face{font-family:JetBrains Mono;font-style:normal;font-display:optional;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-wght-normal.B9CIFXIH.woff2)format("woff2-variations")}:root{color-scheme:light;--bg:#fffcf0;--fg:#100f0f;--fg-dim:#484640;--fg-faint:#6f6b65;--accent:#1d746d;--border:#e6e4d9;--selection:#bbdcce;--mono:"JetBrains Mono", ui-monospace, monospace}html[data-theme=dark]{color-scheme:dark;--bg:#100f0f;--fg:#fffcf0;--fg-dim:#cecdc3;--fg-faint:#a19e93;--accent:#3aa99f;--border:#343331;--selection:#274842}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{background:var(--bg);color:var(--fg-dim);font-family:var(--mono);-webkit-font-smoothing:antialiased;overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.8}::selection{color:var(--fg);background:var(--selection)}.wrap{width:min(100%,744px);margin-inline:auto;padding-inline:2rem}a{color:var(--fg);text-underline-offset:4px;text-decoration-thickness:1px}a:hover{color:var(--accent)}:where(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:5px}button{font:inherit;color:inherit;cursor:pointer}[hidden]{display:none!important}h1,h2,h3{color:var(--fg);margin:0;line-height:1.3}h1{letter-spacing:-.065em;font-size:clamp(2.35rem,8vw,3.75rem);font-weight:700}h2{letter-spacing:-.035em;font-size:1.18rem;font-weight:600}h3{font-size:.95rem;font-weight:600}p{margin:1rem 0 0}.accent{color:var(--accent)}.skip-link{z-index:10;color:var(--fg);background:var(--bg);padding:.5rem 1rem;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:none}.site-header{justify-content:space-between;align-items:center;gap:1rem;padding-top:clamp(2rem,7vw,3.5rem);display:flex}.wordmark{letter-spacing:-.055em;font-size:1rem;font-weight:700;text-decoration:none}nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.2rem;display:flex}nav a,nav button{min-height:44px;color:var(--fg-faint);align-items:center;padding:.3rem .55rem;font-size:.74rem;text-decoration:none;display:inline-flex}nav a:hover{text-decoration:underline}nav button{text-underline-offset:4px;background:0 0;border:0;text-decoration:underline}.intro{padding-top:clamp(3.75rem,10vw,6rem)}.eyebrow{color:var(--accent);letter-spacing:.06em;margin:0 0 .9rem;font-size:.7rem}.intro-line{color:var(--fg);letter-spacing:-.04em;margin:1.2rem 0 1.8rem;font-size:clamp(1.2rem,3.6vw,1.55rem);line-height:1.5}.intro>p:not(.eyebrow):not(.intro-line){max-width:39em}.section{margin-top:clamp(3rem,8vw,4.5rem);scroll-margin-top:2rem}.estudely{border-block:1px solid var(--border);padding-block:2rem}.estudely h2{font-size:1.6rem}.estudely h2 a{text-decoration:none}.estudely h2 span{color:var(--accent);font-size:1rem}.inline-links{flex-wrap:wrap;gap:.5rem 1.3rem;margin:1.5rem 0 0;padding:0;font-size:.76rem;list-style:none;display:flex}.inline-links a{padding-block:.25rem;display:inline-block}.section-heading,.work-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.4rem 1rem;display:flex}.small-note{color:var(--fg-faint);font-size:.68rem}.work-list{margin:1rem 0 0;padding:0;list-style:none}.work-list>li{border-bottom:1px solid var(--border);padding-block:1.25rem}.work-heading a{text-decoration:none}.work-heading a:hover{text-decoration:underline}.work-heading a span{color:var(--fg-faint);font-size:.8rem}.work-list p{margin-top:.5rem;font-size:.85rem;line-height:1.8}.directory-link{flex-wrap:wrap;align-items:baseline;gap:.4rem .7rem;font-size:.75rem;display:flex}.directory-link a,.link-divider{color:var(--fg-faint)}.offscreen p:not(.eyebrow){font-size:.9rem}.contact h2{font-size:1.6rem}.contact p:not(.eyebrow){font-size:.88rem}.email{color:var(--accent);margin-top:1.2rem;font-size:clamp(.85rem,3.7vw,1.1rem);display:inline-block}.social-links{margin-top:1.4rem}footer{border-top:1px solid var(--border);color:var(--fg-faint);flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;margin-top:4rem;padding-block:1.25rem 2.5rem;font-size:.66rem;display:flex}footer a{color:var(--fg-faint)}.not-found{padding-block:6rem}.not-found h1{font-size:2.5rem}@media (width<=520px){.wrap{padding-inline:1.25rem}body{font-size:15px}.site-header{flex-direction:column;align-items:flex-start;gap:.4rem}nav{justify-content:flex-start;gap:0}nav a,nav button{padding-inline:.4rem;font-size:.7rem}.work-heading{display:block}.small-note{margin-top:.35rem;display:block}.section-heading>.small-note{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
