@font-face{font-family:GeistSans;src:url(/_astro/geist-sans.B48wpBRb.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%;size-adjust:106.28%}:root{--font-geist-sans:"GeistSans", "GeistSans Fallback";color-scheme:light;--surface:#faf9f6;--text:#292824;--text-description:#55534e;--text-secondary:#6c6a64;--rule:#e7e5df;--hover-surface:#eeece6;--selection:#dfddd3;--theme-transition:.18s ease}:root[data-theme=dark]{color-scheme:dark;--surface:#1a1a19;--text:#e9e8e3;--text-description:#bdbbb5;--text-secondary:#a5a39c;--rule:#343430;--hover-surface:#2b2b27;--selection:#47463f}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--surface:#1a1a19;--text:#e9e8e3;--text-description:#bdbbb5;--text-secondary:#a5a39c;--rule:#343430;--hover-surface:#2b2b27;--selection:#47463f}}*{box-sizing:border-box}html{background:var(--surface);scrollbar-gutter:stable;-webkit-text-size-adjust:100%;min-width:320px;transition:background-color var(--theme-transition)}body{background:var(--surface);color:var(--text);font-family:var(--font-geist-sans), Arial, sans-serif;-webkit-font-smoothing:antialiased;transition:background-color var(--theme-transition), color var(--theme-transition);margin:0;font-size:.9375rem;line-height:1.6}::selection{background:var(--selection);color:var(--text)}h1,h2,h3,p{margin:0}a{color:inherit}button{font:inherit}a:focus-visible,button:focus-visible{outline:1.5px solid var(--text-secondary);outline-offset:3px;border-radius:2px}.portfolio{width:min(100% - 48px,580px);margin:0 auto;padding:clamp(60px,25px + 9vw,112px) 0 clamp(36px,17px + 4.8vw,64px)}.identity-heading{align-items:center;gap:16px;display:flex}.identity-heading>div{min-width:0}.portrait{object-fit:cover;border-radius:50%;flex-shrink:0;width:52px;height:52px;box-shadow:0 0 0 1px #0000000f}.identity h1{letter-spacing:-.045em;font-size:1.25rem;font-weight:550;line-height:1.4}.identity-name{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.nationality{flex-shrink:0;line-height:0;display:inline-flex}.identity-role{color:var(--text-secondary);margin-top:1px;font-size:.875rem}.introduction{letter-spacing:-.013em;text-wrap:pretty;max-width:53ch;margin-top:29px;font-size:1rem;line-height:1.75}.work-section{margin-top:clamp(45px,37px + 2vw,57px)}.section-label{color:var(--text-secondary);font-size:.8125rem;font-weight:450;line-height:1.5}.work-list{gap:30px;margin:24px 0 0;padding:0;list-style:none;display:grid}.work-heading{flex-wrap:wrap;align-items:baseline;column-gap:16px;display:flex}.work-heading h3{letter-spacing:-.015em;font-size:.9375rem;font-weight:550;line-height:1.5}.work-role{color:var(--text-secondary);flex-basis:100%;order:1;margin-top:2px;font-size:.875rem}.work-dates{white-space:nowrap;color:var(--text-secondary);font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-left:auto;font-size:.75rem}.work-description{color:var(--text-description);text-wrap:pretty;max-width:50ch;margin-top:10px;font-size:.875rem;line-height:1.7}.identity-role,.section-label,.work-role,.work-dates,.work-description{transition:color var(--theme-transition)}.contact-section{border-top:1px solid var(--rule);transition:border-color var(--theme-transition);justify-content:space-between;align-items:center;gap:16px;margin-top:43px;padding-top:18px;display:flex}.contact-links{flex-wrap:wrap;align-items:center;gap:23px;margin:0;padding:0;list-style:none;display:flex}.text-link{min-height:44px;color:var(--text-secondary);transition:color var(--theme-transition), transform .1s ease;align-items:center;gap:5px;font-size:.8125rem;text-decoration:none;display:inline-flex}.external-arrow{transition:transform .18s cubic-bezier(.2,.8,.2,1)}.text-link:focus-visible{color:var(--text)}.text-link:focus-visible .external-arrow{transform:translate(1px,-1px)}.text-link:active{transform:translateY(1px)}.theme-toggle{width:44px;height:44px;color:var(--text-secondary);cursor:pointer;transition:background-color var(--theme-transition), color var(--theme-transition), transform .1s ease;background:0 0;border:0;border-radius:50%;flex:0 0 44px;place-items:center;margin-right:-13px;padding:0;display:inline-grid;position:relative}.theme-toggle:focus-visible{color:var(--text);background:var(--hover-surface);border-radius:50%}.theme-toggle:active{transform:scale(.96)}.theme-toggle:disabled{visibility:hidden;cursor:default}.theme-icon{transition:opacity var(--theme-transition), transform .18s cubic-bezier(.2, .8, .2, 1);position:absolute}.theme-icon-sun{opacity:0;transform:rotate(-45deg)scale(.7)}.theme-icon-moon,.theme-toggle[data-mode=dark] .theme-icon-sun{opacity:1;transform:rotate(0)scale(1)}.theme-toggle[data-mode=dark] .theme-icon-moon{opacity:0;transform:rotate(45deg)scale(.7)}@media (hover:hover) and (pointer:fine){.text-link:hover{color:var(--text)}.text-link:hover .external-arrow{transform:translate(1px,-1px)}.theme-toggle:hover{color:var(--text);background:var(--hover-surface)}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:no-preference){.reveal{animation:.28s cubic-bezier(.2,.7,.2,1) both appear}.work-section.reveal{animation-delay:70ms}.contact-section.reveal{animation-delay:.12s}@keyframes appear{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}@media (width<=460px){.work-list{gap:28px}.work-description{margin-top:9px}.contact-links{gap:19px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
