@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/167cd0713aa75522-s.1nzccunaoxsdm.woff2)format("woff2");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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/e455bcff747f0d5e-s.1wuo3gtslpr33.woff2)format("woff2");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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/791bf8c4bb753ed6-s.p.0ggqn9ig56u4s.woff2)format("woff2");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:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_950dbf7b-module__MD6Wsq__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_950dbf7b-module__MD6Wsq__variable{--font-fraunces:"Fraunces", "Fraunces Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");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:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");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-weight:400;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");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-weight:500;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");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 Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_8e1b1c2a-module__OyRuAW__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_8e1b1c2a-module__OyRuAW__variable{--font-jetbrains:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--paper:#f4f1ea;--paper-raised:#fbfaf6;--ink:#1a1815;--ink-soft:#4a4640;--ink-muted:#8a857c;--line:#e0dbd0;--accent:#a8442a;--accent-ink:#8a3520;--accent-wash:#efe7dd;--gilt:#b08a4f;--font-display:var(--font-fraunces), "Georgia", serif;--font-body:var(--font-inter), -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:var(--font-jetbrains), "Courier New", monospace;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:40px;--space-6:48px;--space-8:64px;--space-10:80px;--page-max-width:1080px;--nav-height:56px;--radius-sm:4px;--radius-md:8px;--ease-reveal:cubic-bezier(.22, 1, .36, 1);--duration-reveal:.52s;--duration-hover:.22s;--duration-card:.2s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:17px}body{font-family:var(--font-body);color:var(--ink);background-color:var(--paper);font-feature-settings:"liga", "kern";font-weight:400;line-height:1.72}body:before{content:"";pointer-events:none;z-index:9999;opacity:.03;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");width:100%;height:100%;position:fixed;top:0;left:0}a{color:var(--accent);transition:color var(--duration-hover) ease;text-decoration:none}a:hover{color:var(--accent-ink)}img{max-width:100%;display:block}ul,ol{list-style:none}hr{border:none;border-top:1px solid var(--line);margin:var(--space-3) 0}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink);font-weight:400;line-height:1.15}.display-xl{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-optical-sizing:auto;font-size:clamp(2.6rem,6vw,5.25rem);font-weight:400;line-height:1.02}.h1,h1{font-size:clamp(2.2rem,4vw,3.4rem);font-weight:400}h2{font-size:1.6rem;font-weight:400}.prose{max-width:65ch}.prose p{margin-bottom:var(--space-3);color:var(--ink);font-size:1.15rem;line-height:1.72}.prose p:last-child{margin-bottom:0}.prose a{color:var(--accent);background-image:linear-gradient(var(--accent), var(--accent));transition:background-size var(--duration-hover) ease;background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;padding-bottom:1px}.prose a:hover{background-size:100% 1px;text-decoration:none}.mono-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-muted);font-size:.8rem;font-weight:400}.link-underline{color:var(--ink);background-image:linear-gradient(var(--accent), var(--accent));transition:background-size var(--duration-hover) ease, color var(--duration-hover) ease;background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;padding-bottom:2px;text-decoration:none}.link-underline:hover{color:var(--accent);background-size:100% 1px;text-decoration:none}.page-nav{z-index:100;background-color:var(--paper);border-bottom:1px solid #0000;transition:border-color .3s;position:sticky;top:0}.page-nav--scrolled{border-bottom-color:var(--line)}.nav{max-width:var(--page-max-width);height:var(--nav-height);justify-content:flex-end;align-items:center;gap:var(--space-4);padding:0 var(--space-3);margin:0 auto;display:flex}.nav__logo{font-family:var(--font-display);color:var(--ink);align-items:center;gap:var(--space-1);margin-right:auto;font-size:1.1rem;font-weight:400;text-decoration:none;display:flex}.nav__logo:hover{color:var(--ink);text-decoration:none}.nav__logo-separator{color:var(--ink-muted);margin:0 2px}.nav__links{align-items:center;gap:var(--space-3);display:flex}.nav__link{font-family:var(--font-body);color:var(--ink-soft);transition:color var(--duration-hover) ease;padding-bottom:2px;font-size:.88rem;font-weight:500;text-decoration:none;position:relative}.nav__link:hover{color:var(--ink);text-decoration:none}.nav__link--active{color:var(--ink)}.nav__link--active:after{content:"";background-color:var(--accent);height:1.5px;position:absolute;bottom:-2px;left:0;right:0}.nav__link:focus-visible,.nav__logo:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}.nav__hamburger{cursor:pointer;padding:var(--space-1);color:var(--ink);background:0 0;border:none;display:none}.nav__hamburger:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}.nav__hamburger svg{display:block}.nav__mobile-menu{top:var(--nav-height);background-color:var(--paper);padding:var(--space-3) var(--space-3);border-bottom:1px solid var(--line);z-index:99;gap:var(--space-1);flex-direction:column;display:none;position:fixed;left:0;right:0}.nav__mobile-menu.is-open{display:flex}.nav__mobile-link{font-family:var(--font-body);color:var(--ink-soft);padding:var(--space-1) 0;transition:color var(--duration-hover) ease;font-size:1rem;font-weight:500;text-decoration:none}.nav__mobile-link:hover{color:var(--ink);text-decoration:none}.nav__mobile-link--active{color:var(--accent)}.nav__mobile-link:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}.nav__mobile-overlay{z-index:98;display:none;position:fixed;inset:0}.nav__mobile-overlay.is-open{display:block}.page-layout{flex-direction:column;min-height:100vh;display:flex}.page-content{max-width:var(--page-max-width);padding:clamp(4rem, 12vh, 9rem) var(--space-3) var(--space-10);width:100%;margin:0 auto}.hero{min-height:calc(100vh - var(--nav-height));max-width:var(--page-max-width);padding:clamp(4rem, 12vh, 9rem) var(--space-3);flex-direction:column;justify-content:center;margin:0 auto;display:flex}.hero__eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-muted);margin-bottom:var(--space-4);font-size:.8rem;font-weight:400}.hero__headline{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-optical-sizing:auto;max-width:20ch;margin-bottom:var(--space-4);font-size:clamp(2rem,4.5vw,3.6rem);font-weight:400;line-height:1.12}.hero__headline-word{margin-right:.28em;display:inline-block}.hero__rule{background-color:var(--line);width:0;height:1px;margin-bottom:var(--space-5);transition:width .8s var(--ease-reveal) .4s}.hero__rule.is-visible{width:min(100%,560px)}.hero__body{color:var(--ink-soft);max-width:52ch;margin-bottom:var(--space-5);font-size:1.15rem;line-height:1.72}.hero__links{gap:var(--space-2);flex-direction:column;display:flex}.hero__link{font-family:var(--font-body);color:var(--ink);background-image:linear-gradient(var(--accent), var(--accent));transition:background-size var(--duration-hover) ease, color var(--duration-hover) ease, gap var(--duration-hover) ease;background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;align-items:center;gap:6px;width:fit-content;padding-bottom:2px;font-size:1.05rem;font-weight:500;text-decoration:none;display:inline-flex}.hero__link:hover{color:var(--accent);background-size:100% 1px;gap:10px;text-decoration:none}.hero__link:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}.bio-article{max-width:78ch;margin:0 auto}.bio-header{align-items:center;gap:var(--space-5);margin-bottom:clamp(3rem,6vh,5rem);display:flex}.bio-portrait{border:1px solid var(--line);filter:grayscale()contrast(1.1)sepia(20%)saturate(.8);width:185px;height:auto;transition:filter .5s var(--ease-reveal), transform .5s var(--ease-reveal);cursor:default;flex-shrink:0}.bio-portrait:hover{filter:grayscale(0%)contrast()sepia(0%)saturate();transform:scale(1.08)}.bio-tagline{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(2rem,3.5vw,3rem);font-weight:400;line-height:1.1}@media (max-width:640px){.bio-header{align-items:flex-start;gap:var(--space-3);flex-direction:column}}.bio-tagline .accent-letter{color:var(--accent)}.bio-section{margin-bottom:clamp(4rem,10vh,8rem)}.bio-section__kicker{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-muted);margin-bottom:var(--space-2);font-size:.8rem;font-weight:400}.bio-section h2{font-family:var(--font-display);margin-bottom:var(--space-3);color:var(--ink);font-size:1.6rem;font-weight:400}.bio-section p{margin-bottom:var(--space-3);color:var(--ink);font-size:1.15rem;line-height:1.72}.bio-section p:last-child{margin-bottom:0}.bio-section a{color:var(--accent);background-image:linear-gradient(var(--accent), var(--accent));transition:background-size var(--duration-hover) ease;background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;padding-bottom:1px}.bio-section a:hover{background-size:100% 1px;text-decoration:none}.pull-quote{font-family:var(--font-display);color:var(--accent);padding:var(--space-6) 0;margin:var(--space-6) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:55ch;font-size:clamp(1.4rem,3vw,1.8rem);font-style:italic;font-weight:400;line-height:1.35}.page-header{margin-bottom:clamp(3rem,8vh,6rem)}.page-header__kicker{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-muted);margin-bottom:var(--space-2);font-size:.8rem;font-weight:400}.page-header__title{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:var(--space-2);color:var(--ink);font-size:clamp(2.2rem,4vw,3.4rem);font-weight:400}.page-header__subtitle{color:var(--ink-soft);max-width:52ch;font-size:1.15rem;line-height:1.6}.tabs{gap:var(--space-1);margin-bottom:var(--space-5);border-bottom:1px solid var(--line);padding-bottom:0;display:flex}.tabs__tab{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);padding:var(--space-1) var(--space-2);cursor:pointer;transition:color var(--duration-hover) ease;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;font-size:.8rem;font-weight:400;position:relative}.tabs__tab:hover{color:var(--ink)}.tabs__tab--active{color:var(--accent);border-bottom-color:var(--accent)}.tabs__tab:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}.tabs__content{min-height:200px}.projects-list{gap:var(--space-3);flex-direction:column;display:flex}.card{border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-3);background-color:var(--paper-raised);transition:transform var(--duration-card) ease, border-color var(--duration-card) ease}.card:hover{border-color:var(--ink-muted);transform:translateY(-2px)}.card__header{margin-bottom:var(--space-1);justify-content:space-between;align-items:flex-start;display:flex}.card__title{font-family:var(--font-display);color:var(--ink);font-size:1.2rem;font-weight:400}.card__body{color:var(--ink-soft);margin-bottom:var(--space-2);font-size:.94rem;line-height:1.6}.card__footer{justify-content:space-between;align-items:center;display:flex}.card__tags{color:var(--ink-muted);font-size:.76rem;font-family:var(--font-mono);letter-spacing:.04em}.card__link{color:var(--accent);transition:gap var(--duration-hover) ease, color var(--duration-hover) ease;align-items:center;gap:4px;font-size:.88rem;font-weight:500;text-decoration:none;display:inline-flex}.card__link:hover{color:var(--accent-ink);gap:8px;text-decoration:none}.status-chip{font-size:.76rem;font-weight:500;font-family:var(--font-mono);letter-spacing:.04em;border-radius:99px;align-items:center;gap:6px;padding:2px 10px;display:inline-flex}.status-chip--active{background-color:var(--accent-wash);color:var(--accent)}.status-chip--hold{color:var(--gilt);background-color:#f5efe0}.status-chip__dot{border-radius:50%;width:6px;height:6px}.status-chip--active .status-chip__dot{background-color:var(--accent)}.status-chip--hold .status-chip__dot{background-color:var(--gilt)}.quiet-invite{border-top:1px solid var(--line);padding-top:var(--space-4);margin-top:var(--space-4);color:var(--ink-soft);font-size:1rem;line-height:1.72}.quiet-invite a{color:var(--accent);background-image:linear-gradient(var(--accent), var(--accent));transition:background-size var(--duration-hover) ease;background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;padding-bottom:1px}.quiet-invite a:hover{background-size:100% 1px;text-decoration:none}.contact-content{max-width:78ch}.contact-content p{margin-bottom:var(--space-3);color:var(--ink);font-size:1.15rem;line-height:1.72}.contact-channels{gap:var(--space-2);margin-bottom:var(--space-5);flex-direction:column;display:flex}.contact-channel{align-items:baseline;gap:var(--space-2);display:flex}.contact-channel__label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-muted);flex-shrink:0;min-width:80px;font-size:.76rem}.contact-channel__link{color:var(--ink);background-image:linear-gradient(var(--accent), var(--accent));transition:background-size var(--duration-hover) ease, color var(--duration-hover) ease;background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;padding-bottom:1px;font-size:1rem;text-decoration:none}.contact-channel__link:hover{color:var(--accent);background-size:100% 1px;text-decoration:none}.availability-section{border-top:1px solid var(--line);padding-top:var(--space-5);margin-top:var(--space-5)}.availability-section h2{font-family:var(--font-display);margin-bottom:var(--space-2);font-size:1.6rem;font-weight:400}.availability-section p{color:var(--ink-soft);font-size:1rem;line-height:1.72}.contact-closing{border-top:1px solid var(--line);padding-top:var(--space-4);margin-top:var(--space-5);color:var(--ink-soft);font-size:1rem;font-style:italic}.contact-form-section{border-top:1px solid var(--line);padding-top:var(--space-5);margin-top:var(--space-5)}.contact-form-section h2{font-family:var(--font-display);margin-bottom:var(--space-1);font-size:1.6rem;font-weight:400}.contact-form-intro{color:var(--ink-soft);margin-bottom:var(--space-4);font-size:1rem}.contact-form{gap:var(--space-3);flex-direction:column;max-width:640px;display:flex}.contact-form__row{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.contact-form__field{flex-direction:column;gap:6px;display:flex}.contact-form__label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-muted);font-size:.76rem;font-weight:400}.contact-form__input{font-family:var(--font-body);color:var(--ink);background-color:var(--paper-raised);border:1px solid var(--line);border-radius:var(--radius-sm);transition:border-color var(--duration-hover) ease, box-shadow var(--duration-hover) ease;width:100%;padding:10px 14px;font-size:.95rem}.contact-form__input::placeholder{color:var(--ink-muted);opacity:.6}.contact-form__input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #a8442a14}.contact-form__input:disabled{opacity:.5;cursor:not-allowed}.contact-form__textarea{resize:vertical;min-height:120px;line-height:1.6}.contact-form__btn{font-family:var(--font-body);color:var(--paper);background-color:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--duration-hover) ease, transform var(--duration-hover) ease;width:fit-content;padding:10px 28px;font-size:.95rem;font-weight:500}.contact-form__btn:hover:not(:disabled){background-color:var(--accent-ink);transform:translateY(-1px)}.contact-form__btn:active:not(:disabled){transform:translateY(0)}.contact-form__btn:disabled{opacity:.65;cursor:not-allowed}.contact-form__btn--outline{color:var(--accent);border:1px solid var(--accent);background-color:#0000}.contact-form__btn--outline:hover:not(:disabled){background-color:var(--accent-wash);color:var(--accent-ink)}.contact-form__btn-sending{align-items:center;gap:8px;display:inline-flex}.contact-form__spinner{border:2px solid #f4f1ea66;border-top-color:var(--paper);border-radius:50%;width:14px;height:14px;animation:.6s linear infinite formSpin}@keyframes formSpin{to{transform:rotate(360deg)}}.contact-form-success{padding:var(--space-4);background-color:var(--paper-raised);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius-sm);max-width:640px}.contact-form-success p{color:var(--ink);margin-bottom:var(--space-3);font-size:1rem}.contact-form-success strong{color:var(--accent)}.contact-form-error{color:#b33;border-radius:var(--radius-sm);background-color:#fdf2f2;border:1px solid #f0d5d5;padding:8px 14px;font-size:.88rem}@media (max-width:640px){.contact-form__row{grid-template-columns:1fr}}.my-time-container{border:1px solid var(--line);border-radius:var(--radius-md);background-color:var(--paper-raised);max-width:1024px;margin:0 auto;overflow:hidden}.my-time-container iframe{border:0;width:100%;min-height:700px;display:block}.my-time-fallback{text-align:center;padding:var(--space-3);color:var(--ink-soft);font-size:.94rem}.my-time-fallback a{color:var(--accent)}.footer{padding-top:var(--space-4);padding-bottom:var(--space-4);border-top:1px solid var(--line);margin-top:clamp(4rem,10vh,8rem)}.footer__top{justify-content:space-between;align-items:flex-start;gap:var(--space-5);flex-wrap:wrap;display:flex}.footer__group{flex-direction:column;gap:6px;display:flex}.footer__group-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-muted);font-size:.7rem;font-weight:400}.footer__group-links{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.footer__group-links a{color:var(--ink-soft);transition:color var(--duration-hover) ease;font-size:.82rem;text-decoration:none}.footer__group-links a:hover{color:var(--accent);text-decoration:none}.footer__bottom{margin-top:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--line);font-family:var(--font-mono);color:var(--ink-muted);letter-spacing:.04em;font-size:.7rem}.footer-dropdown{position:relative}.footer-dropdown__trigger{font-family:var(--font-mono);color:var(--ink-muted);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--duration-hover) ease, border-color var(--duration-hover) ease;letter-spacing:.04em;background:0 0;align-items:center;gap:5px;padding:4px 10px;font-size:.76rem;font-weight:400;display:inline-flex}.footer-dropdown__trigger:hover{color:var(--accent);border-color:var(--accent)}.footer-dropdown__arrow{transition:transform .2s}.footer-dropdown__arrow--open{transform:rotate(180deg)}.footer-dropdown__menu{background:var(--paper-raised);border:1px solid var(--line);border-radius:var(--radius-md);min-width:220px;padding:var(--space-1) 0;z-index:20;animation:.18s ease-out slideUp;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 -2px 12px #1a18150f}@keyframes slideUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.footer-dropdown__item{padding:8px var(--space-2);justify-content:space-between;align-items:center;text-decoration:none;transition:background-color .15s;display:flex}.footer-dropdown__item:hover{background-color:var(--accent-wash);text-decoration:none}.footer-dropdown__item-name{color:var(--ink);font-size:.82rem;font-weight:500}.footer-dropdown__item-category{color:var(--ink-muted);font-size:.7rem;font-family:var(--font-mono)}.footer-dropdown__divider{background:var(--line);height:1px;margin:4px 0}.footer-dropdown__view-all{padding:8px var(--space-2);color:var(--accent);font-size:.78rem;font-weight:500;text-decoration:none;transition:background-color .15s;display:block}.footer-dropdown__view-all:hover{background-color:var(--accent-wash);text-decoration:none}.mt-3{margin-top:var(--space-3)}.mt-5{margin-top:var(--space-5)}.mt-8{margin-top:var(--space-8)}@media (prefers-reduced-motion:no-preference){.fade-in{opacity:0;transition:opacity var(--duration-reveal) var(--ease-reveal), transform var(--duration-reveal) var(--ease-reveal);transform:translateY(12px)}.fade-in.is-visible{opacity:1;transform:translateY(0)}.fade-in.is-visible:nth-child(2){transition-delay:70ms}.fade-in.is-visible:nth-child(3){transition-delay:.14s}.fade-in.is-visible:nth-child(4){transition-delay:.21s}.hero__headline-word{opacity:0;transition:opacity .6s var(--ease-reveal), transform .6s var(--ease-reveal);transform:translateY(16px)}.hero.is-visible .hero__headline-word{opacity:1;transform:translateY(0)}.hero__headline-word:first-child{transition-delay:0s}.hero__headline-word:nth-child(2){transition-delay:70ms}.hero__headline-word:nth-child(3){transition-delay:.14s}.hero__headline-word:nth-child(4){transition-delay:.21s}.hero__headline-word:nth-child(5){transition-delay:.28s}.hero__headline-word:nth-child(6){transition-delay:.35s}.hero__headline-word:nth-child(7){transition-delay:.42s}.hero__headline-word:nth-child(8){transition-delay:.49s}.hero__headline-word:nth-child(9){transition-delay:.56s}.hero__headline-word:nth-child(10){transition-delay:.63s}.hero__headline-word:nth-child(11){transition-delay:.7s}.hero__headline-word:nth-child(12){transition-delay:.77s}.hero__headline-word:nth-child(13){transition-delay:.84s}.hero__headline-word:nth-child(14){transition-delay:.91s}.hero__headline-word:nth-child(15){transition-delay:.98s}.hero__body,.hero__links{opacity:0;transition:opacity var(--duration-reveal) var(--ease-reveal), transform var(--duration-reveal) var(--ease-reveal);transform:translateY(12px)}.hero.is-visible .hero__body{transition-delay:.9s}.hero.is-visible .hero__links{transition-delay:1s}.hero.is-visible .hero__body,.hero.is-visible .hero__links{opacity:1;transform:translateY(0)}.card{transition:transform var(--duration-card) ease, border-color var(--duration-card) ease}}@media (prefers-reduced-motion:reduce){.fade-in,.hero__headline-word,.hero__body,.hero__links,.hero__rule{opacity:1!important;transition:none!important;transform:none!important}.hero__rule{width:min(100%,560px)!important}}noscript+.fade-in,.no-js .fade-in{opacity:1;transform:none}@media (max-width:768px){body{padding-top:var(--nav-height)}.nav{padding:0 var(--space-3);background-color:var(--paper);border-bottom:1px solid var(--line);max-width:none;position:fixed;top:0;left:0;right:0}.nav__links{display:none}.nav__hamburger{display:flex}.page-content{padding:var(--space-5) var(--space-2) var(--space-8)}.hero{padding:var(--space-6) var(--space-3);min-height:auto}.hero__headline{font-size:clamp(2rem,8vw,3rem)}.bio-portrait{width:120px}.tabs{-webkit-overflow-scrolling:touch;gap:0;overflow-x:auto}.tabs__tab{white-space:nowrap;padding:var(--space-1) var(--space-2);font-size:.76rem}.footer__top{gap:var(--space-3);flex-direction:column}.footer-dropdown__menu{left:0;right:auto}.contact-channel{flex-direction:column;gap:4px}.contact-channel__label{min-width:auto}}@media (max-width:480px){.hero__headline,.bio-tagline,.page-header__title{font-size:1.8rem}}
