@font-face{font-family:Geist Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-sans-latin-400-normal-gapTbOY8.woff2) format("woff2"),url(/assets/geist-sans-latin-400-normal-BOaIZNA2.woff) format("woff")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-mono-latin-400-normal-DTRLJnHl.woff2) format("woff2"),url(/assets/geist-mono-latin-400-normal-B2yvC1Cq.woff) format("woff")}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}:root{--bg: #050505;--ink: #f5f5f0;--muted: #999994;--line: #343432;--header-height: 64px;--page-x: clamp(22px, 5vw, 88px);--section-y: clamp(96px, 12vw, 180px);--floating-control-bottom: 24px;--work-top: 132px;color:var(--ink);background:var(--bg);font-family:Geist Sans,Arial,sans-serif;font-synthesis:none}:root[data-theme=light]{--bg: #f3f3ed;--ink: #090909;--muted: #666661;--line: #bcbcb5}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;min-width:320px;background:var(--bg)}body,button,a{color:var(--ink)}a{text-decoration:none}button{font:inherit}button:focus-visible,a:focus-visible{outline:1px solid var(--ink);outline-offset:4px}main{min-height:100vh;overflow:clip;background:var(--bg);transition:color .25s ease,background-color .25s ease}@media(hover:hover)and (pointer:fine){html,a,button{cursor:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.pointer-atmosphere{position:fixed;z-index:1000;top:-18px;left:-18px;width:36px;height:36px;border-radius:50%;background:#fff;pointer-events:none;mix-blend-mode:difference;will-change:transform}.top-shelf{position:fixed;z-index:100;inset:0 0 auto;height:var(--header-height);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 var(--page-x);border:0;background:color-mix(in srgb,var(--bg) 78%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:opacity .4s ease,transform .5s cubic-bezier(.2,.7,.2,1)}.top-shelf[data-hidden=true]{opacity:0;transform:translateY(-105%);pointer-events:none}.wordmark,.top-shelf nav,.availability,.coordinate,.theme-control,.page-intro>p{font-family:Geist Mono,ui-monospace,monospace;font-size:9px;letter-spacing:.11em;text-transform:uppercase}.wordmark,.top-shelf nav a{display:inline-flex;min-height:44px;align-items:center}.wordmark{padding-right:12px}.top-shelf nav{display:flex;gap:clamp(2px,1.1vw,16px)}.top-shelf nav a{padding:0 clamp(6px,.65vw,10px)}.top-shelf nav a{color:var(--muted)}.top-shelf nav a:hover{color:var(--ink)}.availability{justify-self:end;display:flex;align-items:center;gap:8px;padding:10px 0 10px 12px;border:0;background:transparent}.availability i{width:5px;height:5px;border-radius:50%;background:currentColor;animation:status-pulse 2.7s ease-in-out infinite}.theme-control{position:fixed;z-index:101;right:var(--page-x);bottom:24px;display:grid;grid-template-columns:auto 46px auto;align-items:center;gap:8px;padding:9px 0;border:0;background:transparent;color:#fff;mix-blend-mode:difference;text-transform:uppercase}.theme-title{grid-column:1 / -1;justify-self:end;color:inherit}.theme-track{position:relative;display:block;width:46px;height:1px;background:color-mix(in srgb,currentColor 55%,transparent)}.theme-track i{position:absolute;top:-4px;left:calc(var(--theme-position) * 37px);width:9px;height:9px;border-radius:50%;background:currentColor;transition:left .4s cubic-bezier(.2,.8,.2,1)}.theme-control.is-dragging .theme-track i{transition:none}.hero-scene,.hero-sticky{min-height:100svh}.hero-sticky{position:relative;display:grid;place-items:center;padding:calc(var(--header-height) + 48px) var(--page-x) 80px}.infinity-control{position:absolute;z-index:4;bottom:var(--floating-control-bottom);left:var(--page-x);padding:9px 0;border:0;background:transparent;color:var(--muted);font-size:18px}.hero-copy{width:min(1180px,90vw)}.coordinate{margin:0 0 28px;color:var(--muted)}.hero-copy h1{max-width:1120px;margin:0;font-size:clamp(4rem,9.2vw,10rem);font-weight:400;line-height:.86;letter-spacing:-.065em}.secondary-quote{width:min(470px,62vw);margin:42px 0 0 auto;color:var(--muted);font-size:clamp(14px,1.2vw,18px);line-height:1.55}.scroll-cue{position:absolute;bottom:28px;left:50%;display:grid;width:36px;height:36px;place-items:center;transform:translate(-50%);animation:arrow-drift 1.35s ease-in-out infinite}.scroll-cue svg{width:18px;height:18px;stroke-width:1.4}@keyframes arrow-drift{50%{transform:translate(-50%,5px)}}@keyframes status-pulse{50%{opacity:.35;transform:scale(.7)}}.page-intro{min-height:82svh;display:grid;align-content:end;grid-template-columns:1fr minmax(260px,38%);gap:34px;padding:calc(var(--header-height) + 80px) var(--page-x) clamp(70px,9vw,130px)}.page-intro>p:first-child{grid-column:1 / -1;color:var(--muted)}.page-intro h1{margin:0;font-size:clamp(3.7rem,7.4vw,8rem);font-weight:400;line-height:.88;letter-spacing:-.06em}.page-intro>p:last-child{align-self:end;margin:0;color:var(--muted);line-height:1.6}@media(max-width:760px){.top-shelf{grid-template-columns:auto 1fr;gap:22px}.top-shelf nav{justify-self:end;max-width:64vw;overflow-x:auto;scrollbar-width:none}.availability{display:none}.hero-copy{width:100%}.hero-copy h1{font-size:clamp(3.4rem,16vw,6.4rem)}.secondary-quote{width:min(390px,82vw)}.page-intro{grid-template-columns:1fr}}@media(hover:none),(pointer:coarse){.pointer-atmosphere{display:none}}.editorial-section{position:relative;padding:var(--section-y) var(--page-x);border-top:1px solid var(--line);background:var(--bg)}.section-heading{display:flex;justify-content:space-between;gap:24px;margin-bottom:clamp(68px,9vw,128px);color:var(--muted);font-family:Geist Mono,ui-monospace,monospace;font-size:9px;letter-spacing:.11em;text-transform:uppercase}.section-heading p{margin:0}.body-copy,.micro-label,.technology-line{color:var(--muted)}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(44px,9vw,150px)}.about-layout h2{max-width:620px;margin:0;font-size:clamp(2.5rem,4.4vw,5rem);font-weight:400;line-height:.96;letter-spacing:-.05em}.about-layout>div{max-width:540px}.about-layout p{margin:0 0 24px;color:var(--muted);font-size:14px;line-height:1.7}.work-overview{padding-right:0;padding-left:0}.work-overview>.section-heading,.overview-intro,.overview-experiences,.overview-closing{margin-right:var(--page-x);margin-left:var(--page-x)}.work-overview>.section-heading{margin-bottom:clamp(44px,5vw,68px)}.overview-intro{min-height:32svh;display:grid;grid-template-columns:minmax(100px,18%) minmax(0,1fr) auto;gap:28px;align-items:start}.overview-intro>p,.overview-intro>a,.overview-chapter-label,.overview-experience header p,.overview-experience footer,.overview-experience li,.remaining-highlights,.overview-more-experience,.overview-skill-band,.overview-projects header p,.overview-project>div>p:first-child,.overview-project nav,.overview-project-progress,.overview-closing span,.overview-closing p,.overview-closing strong{font-family:Geist Mono,ui-monospace,monospace;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.overview-intro>p{margin:8px 0 0;color:var(--muted)}.overview-intro h2{max-width:850px;margin:0;font-size:clamp(3.2rem,6vw,7rem);font-weight:400;line-height:.89;letter-spacing:-.06em}.overview-intro>a{margin-top:9px;padding-bottom:3px;border-bottom:1px solid var(--line);color:var(--muted)}.overview-intro>a:hover{border-color:var(--ink);color:var(--ink)}.overview-chapter-label{margin:0 0 20px;color:var(--muted)}.overview-experience-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.overview-experience{position:relative;min-height:620px;display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr auto;gap:38px;align-content:start;overflow:hidden;padding:clamp(42px,5vw,72px) clamp(28px,4vw,64px) 30px}.overview-experience:first-child{padding-left:0;border-right:1px solid var(--line)}.overview-experience:last-child{padding-right:0}.overview-number{position:absolute;z-index:0;top:43%;right:1vw;color:color-mix(in srgb,var(--ink) 7%,transparent);font-size:clamp(13rem,28vw,32rem);font-weight:400;line-height:.7;letter-spacing:-.09em;transform:translateY(-50%);pointer-events:none}.overview-experience>header,.overview-experience-copy,.overview-experience>footer{position:relative;z-index:1}.overview-experience header p{margin:0 0 13px;color:var(--muted)}.overview-experience header h3{margin:0 0 12px;font-size:clamp(1.8rem,3vw,2.8rem);font-weight:400;letter-spacing:-.04em}.overview-experience-copy{align-self:start;max-width:680px}.overview-experience-copy>p:first-child{margin:0 0 38px;font-size:clamp(17px,1.45vw,22px);line-height:1.55}.overview-experience ol{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.overview-experience li{padding:12px 0;border-bottom:1px solid var(--line);color:var(--muted);line-height:1.5}.remaining-highlights{margin:14px 0 0;color:var(--muted)}.overview-experience>footer{grid-column:1 / -1;display:flex;justify-content:space-between;gap:24px;color:var(--muted)}.overview-experience>footer a{color:var(--ink)}.overview-more-experience{display:grid;grid-template-columns:minmax(130px,18%) 1fr auto;gap:24px;align-items:center;padding:17px 0;color:var(--muted)}.overview-more-experience>span{width:fit-content;padding:6px 8px;background:var(--ink);color:var(--bg)}.overview-more-experience p{margin:0}.overview-more-experience strong{font-weight:400;color:var(--ink)}.overview-more-experience:hover p{color:var(--ink)}.overview-more-experience strong{transition:transform .25s ease}.overview-more-experience:hover strong{transform:translate(4px)}.overview-skill-band{display:grid;grid-template-columns:minmax(100px,16%) 1fr auto;gap:28px;align-items:start;margin:0 calc(var(--page-x) * -1);padding:clamp(30px,4vw,58px) var(--page-x);background:var(--ink);color:var(--bg)}.overview-skill-band>span{opacity:.62}.overview-skill-band>div{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(22px,4vw,64px)}.overview-skill-band p{display:grid;gap:10px;margin:0;line-height:1.55}.overview-skill-band strong{font-size:12px;font-weight:400}.overview-skill-band i{font-style:normal}.overview-projects{--overview-project-count: 1;height:calc(92svh + (var(--overview-project-count) - 1) * 54svh);margin-top:0}.overview-projects-sticky{position:sticky;top:var(--header-height);height:calc(100svh - var(--header-height));overflow:hidden;padding:clamp(48px,6vw,78px) var(--page-x) 34px;background:var(--bg)}.overview-projects header{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:clamp(34px,4vw,54px)}.overview-projects header p{margin:0 0 10px;color:var(--muted)}.overview-projects header>p{margin:0}.overview-projects header h2{margin:0;font-size:clamp(2.6rem,4.5vw,5rem);font-weight:400;letter-spacing:-.05em}.overview-project-track{display:flex;gap:5vw;will-change:transform}.overview-project{position:relative;flex:0 0 76vw;min-height:43vh;display:grid;grid-template-columns:minmax(150px,24%) minmax(300px,1fr);gap:clamp(32px,7vw,110px);align-items:center;padding:34px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}.overview-project-number{color:color-mix(in srgb,var(--ink) 13%,transparent);font-size:clamp(8rem,17vw,18rem);line-height:.7;letter-spacing:-.08em}.overview-project>div{position:relative;z-index:1;max-width:710px}.overview-project>div>p:first-child{margin:0 0 24px;color:var(--muted)}.overview-project h3{margin:0 0 22px;font-size:clamp(2.6rem,5vw,6rem);font-weight:400;line-height:.9;letter-spacing:-.055em}.overview-project>div>p:not(:first-child){max-width:560px;margin:0;color:var(--muted);line-height:1.65}.overview-project nav{display:flex;gap:22px;margin-top:30px}.overview-project nav a{padding-bottom:3px;border-bottom:1px solid var(--line);color:var(--muted)}.overview-project nav a:hover{border-color:var(--ink);color:var(--ink)}.overview-project-progress{display:flex;align-items:center;gap:12px;margin:28px 0 0;color:var(--muted)}.overview-project-progress i{width:70px;height:1px;background:var(--line)}.overview-closing{min-height:0;display:grid;grid-template-columns:2fr 1fr;gap:clamp(42px,8vw,130px);align-items:start;margin-top:clamp(-110px,-8vw,-64px);padding-top:clamp(24px,3vw,44px)}.overview-closing>a{min-height:330px;display:flex;flex-direction:column;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.overview-closing span,.overview-closing p,.overview-closing strong{color:var(--muted)}.overview-closing h2{max-width:620px;margin:30px 0;font-size:clamp(2rem,3.8vw,4.6rem);font-weight:400;line-height:.94;letter-spacing:-.045em}.overview-personal h2{font-size:clamp(1.7rem,2.7vw,3rem)}.overview-closing p{line-height:1.6}.overview-closing strong{margin-top:auto;font-weight:400}.overview-closing a:hover strong{color:var(--ink)}@supports (animation-timeline: view()){.reveal-on-view{animation:overview-reveal both linear;animation-timeline:view();animation-range:entry 8% cover 30%}@keyframes overview-reveal{0%{opacity:.25;transform:translateY(28px)}to{opacity:1;transform:none}}}@media(max-width:900px){.overview-intro{grid-template-columns:110px 1fr}.overview-intro>a{grid-column:2;width:fit-content}.overview-experience-grid{grid-template-columns:1fr}.overview-experience{min-height:0;gap:38px;padding:64px 0 30px}.overview-experience:first-child{border-right:0;border-bottom:1px solid var(--line)}.overview-experience-copy{margin-left:14%}.overview-skill-band{grid-template-columns:1fr}.overview-project{grid-template-columns:120px 1fr}}@media(max-width:650px){.about-layout,.overview-intro,.overview-closing{grid-template-columns:1fr}.overview-intro{min-height:48svh}.overview-intro>a{grid-column:1}.overview-experience{min-height:0;align-content:start}.overview-experience-copy{margin-left:0}.overview-number{font-size:58vw}.overview-experience>footer{display:grid}.overview-more-experience{grid-template-columns:1fr auto}.overview-more-experience p{grid-column:1 / -1;grid-row:2}.overview-skill-band>div{grid-template-columns:1fr}.overview-projects{height:auto}.overview-projects-sticky{position:static;height:auto;overflow:visible}.overview-project-track{display:grid;gap:0;transform:none!important}.overview-project{width:100%;min-height:0;grid-template-columns:42px 1fr;gap:18px;padding:34px 0;border-bottom:0}.overview-project:last-child{border-bottom:1px solid var(--line)}.overview-project-number{align-self:start;padding-top:4px;font-size:clamp(2.2rem,10vw,3.2rem);line-height:1}.overview-project-progress{display:none}.overview-closing{min-height:0;margin-top:0}.overview-closing>a{border-top:0}}@media(prefers-reduced-motion:reduce){.overview-projects{height:auto}.overview-projects-sticky{position:static;height:auto;overflow:visible}.overview-project-track{display:grid;transform:none!important}.overview-project{width:100%}.overview-project-progress{display:none}}.work-section{padding-top:72px}.work-section>.section-heading{position:sticky;z-index:20;top:var(--header-height);margin-bottom:56px;padding-top:18px;background:var(--bg);transform:translateY(var(--work-heading-offset, 0))}.work-list{position:relative}.work-item{position:sticky;top:var(--work-top);min-height:calc(100svh - var(--work-top));padding-bottom:58px;background:var(--bg)}.work-marker{display:flex;justify-content:space-between;margin:0;padding:13px 0;border-top:1px solid var(--line);color:var(--muted);font-family:Geist Mono,monospace;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.work-details{display:grid;grid-template-columns:minmax(90px,13%) minmax(240px,30%) 1fr;gap:36px clamp(28px,5vw,78px);margin-top:clamp(34px,5vh,58px)}.work-period{display:flex;flex-direction:column;gap:7px;margin:0;color:var(--muted);font-family:Geist Mono,monospace;font-size:9px;text-transform:uppercase}.work-period i{width:1px;height:58px;background:var(--line)}.work-primary{display:flex;flex-direction:column}.work-primary h2{margin:0;font-size:clamp(2.6rem,4vw,4.9rem);font-weight:400;line-height:.9;letter-spacing:-.05em}.work-primary h3{margin:12px 0 28px;color:var(--muted);font-size:13px;font-weight:400}.work-primary .technology-line{margin-top:auto;font-family:Geist Mono,monospace;font-size:9px;text-transform:uppercase}.work-summary{max-width:680px;margin:0;font-size:clamp(14px,1.05vw,17px);line-height:1.65}.parent-company{margin:0 0 12px;font-family:Geist Mono,monospace;font-size:9px;text-transform:uppercase}.parent-company span{color:var(--muted)}.highlight-list{grid-column:2 / 4;margin:0;padding:0;list-style:none}.highlight-list li{border-top:1px solid var(--line)}.highlight-list button{position:relative;width:100%;display:grid;grid-template-columns:36px 1fr auto;gap:14px;padding:12px 0;border:0;background:transparent;color:var(--muted);text-align:left;transition:color .28s ease,padding .4s cubic-bezier(.2,.75,.2,1)}.highlight-list button:before{content:"";position:absolute;inset:0;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.2,.75,.2,1)}.highlight-list button:hover{padding-right:12px;padding-left:12px;color:var(--bg)}.highlight-list button:hover:before{transform:scaleX(1)}.highlight-list button span,.highlight-list button i{position:relative;z-index:1}.highlight-list button span:first-child{font-family:Geist Mono,monospace;font-size:9px}.highlight-list button i{font-style:normal}.projects-section{--project-count: 1;height:calc(100svh + (var(--project-count) - 1) * 78svh);border-top:1px solid var(--line);background:var(--bg)}.projects-sticky{position:sticky;top:0;height:100svh;overflow:hidden;padding:var(--section-y) var(--page-x) 52px;background:var(--bg)}.projects-sticky .section-heading{margin-bottom:clamp(60px,8vw,110px)}.projects-track{display:flex;gap:7vw;will-change:transform}.project-item{position:relative;flex:0 0 72vw;min-height:390px;display:grid;grid-template-columns:70px 1fr;align-content:center;gap:30px;padding:48px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-open{position:absolute;inset:0;border:0;background:transparent}.project-index{align-self:start;margin:7px 0 0;color:var(--muted);font-family:Geist Mono,monospace;font-size:9px}.project-copy{position:relative;z-index:1;max-width:850px;pointer-events:none}.project-copy h2{margin:0 0 24px;font-size:clamp(3rem,5.7vw,7rem);font-weight:400;line-height:.88;letter-spacing:-.06em}.project-copy .body-copy{max-width:590px;line-height:1.6}.project-copy .technology-line{margin-top:28px;font-family:Geist Mono,monospace;font-size:9px;text-transform:uppercase}.project-actions{display:flex;gap:24px;margin-top:32px;pointer-events:auto}.project-actions a,.project-actions button{padding:0 0 3px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--muted);text-transform:uppercase}.project-actions a:hover,.project-actions button:hover{color:var(--ink);border-color:var(--ink)}@media(max-width:900px){:root{--work-top: 116px}.work-details{grid-template-columns:90px 1fr}.work-primary,.work-summary,.highlight-list{grid-column:2}.projects-section{height:auto;padding:var(--section-y) var(--page-x)}.projects-sticky{position:static;height:auto;overflow:visible;padding:0}.projects-track{display:block;transform:none!important}.project-item{width:100%;min-height:450px}}@media(max-width:560px){.work-details{grid-template-columns:1fr}.work-period,.work-primary,.work-summary,.highlight-list{grid-column:1}.work-period{flex-direction:row;align-items:center}.work-period i{width:40px;height:1px}.project-item{grid-template-columns:36px 1fr}}.skills-index{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.skill-category{padding:34px 36px 20px 0;border-right:1px solid var(--line)}.skill-category+.skill-category{padding-left:36px}.skill-category:last-child{border-right:0}.skill-category header{display:grid;grid-template-columns:34px 1fr;align-items:baseline;margin-bottom:42px}.skill-category header span,.skill-category dd{color:var(--muted);font-family:Geist Mono,monospace;font-size:9px;text-transform:uppercase}.skill-category h2{margin:0;font-size:clamp(1.5rem,2.2vw,2.5rem);font-weight:400}.skill-category dl{margin:0}.skill-category dl div{display:grid;grid-template-columns:minmax(90px,42%) 1fr;gap:16px;padding:13px 0;border-top:1px solid var(--line)}.skill-category dt{font-size:13px}.skill-category dd{margin:0;line-height:1.5}.writing-room{display:grid;grid-template-columns:minmax(210px,27%) 1fr;gap:clamp(42px,8vw,130px)}.writing-register,.writing-feature,.writing-shelf{border-top:1px solid var(--line)}.writing-register{grid-row:1 / 3}.writing-register>p{margin:0;padding:14px 0 30px;color:var(--muted);font-family:Geist Mono,monospace;font-size:9px;text-transform:uppercase}.writing-register button,.writing-shelf button{width:100%;display:grid;gap:14px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--muted);text-align:left}.writing-register button{grid-template-columns:34px 1fr auto;padding:16px 0}.writing-register button:hover,.writing-register button.is-active,.writing-shelf button:hover,.writing-shelf button.is-active{color:var(--ink)}.writing-register button span,.writing-shelf button span{font-family:Geist Mono,monospace;font-size:9px;text-transform:uppercase}.writing-register button strong,.writing-shelf button strong{font-weight:400}.writing-feature{min-height:390px;padding:clamp(34px,5vw,70px) 0 70px}.writing-feature-meta{margin:0 0 60px;color:var(--muted);font-family:Geist Mono,monospace;font-size:9px;text-transform:uppercase}.writing-feature h2{max-width:760px;margin:0 0 28px;font-size:clamp(2.8rem,5.5vw,6.5rem);font-weight:400;line-height:.88;letter-spacing:-.055em}.writing-feature>p:not(.writing-feature-meta){max-width:560px;color:var(--muted);line-height:1.7}.writing-feature>span,.writing-empty,.empty-state{color:var(--muted);font-family:Geist Mono,monospace;font-size:9px;text-transform:uppercase}.writing-shelf{grid-column:2;border-bottom:1px solid var(--line)}.writing-shelf button{grid-template-columns:36px 1fr 56px;padding:13px 0}.writing-shelf button span:last-child{text-align:right}.contact-section{min-height:88svh}.contact-layout{display:grid;grid-template-columns:22% 1fr;gap:0 6vw}.contact-layout>.micro-label{max-width:220px;margin:0;line-height:1.6}.contact-layout h2{grid-column:2;max-width:850px;margin:0;font-size:clamp(3rem,5vw,5.8rem);font-weight:400;line-height:.9;letter-spacing:-.055em}.email-link{grid-column:2;width:fit-content;margin:48px 0 74px;padding-bottom:2px;border-bottom:1px solid currentColor;font-size:clamp(1.25rem,2.4vw,2.7rem);line-height:1.08}.contact-layout nav{grid-column:2;width:min(680px,100%);border-top:1px solid var(--line)}.contact-layout nav a{display:grid;grid-template-columns:1fr 1fr;padding:13px 0;border-bottom:1px solid var(--line);font-family:Geist Mono,monospace;font-size:9px;text-transform:uppercase}.contact-layout nav a span:last-child{color:var(--muted);text-align:right}.personal-library{padding:0 var(--page-x) var(--section-y)}.personal-section{scroll-margin-top:var(--header-height);display:grid;grid-template-columns:minmax(240px,34%) 1fr;gap:50px;min-height:48vh;padding:clamp(60px,8vw,110px) 0;border-top:1px solid var(--line)}.personal-section header{display:grid;grid-template-columns:38px 1fr;align-content:start;gap:14px}.personal-section header p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.personal-section header p:first-child{font-family:Geist Mono,monospace;font-size:9px}.personal-section header p:last-child{grid-column:2;max-width:340px}.personal-section h2{margin:0;font-size:clamp(2rem,3.5vw,4rem);font-weight:400;line-height:.95}.personal-section>.empty-state{align-self:start;margin:7px 0 0}.site-footer{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;padding:24px var(--page-x) 80px;border-top:1px solid var(--line);color:var(--muted);font-family:Geist Mono,monospace;font-size:9px;text-transform:uppercase}.site-footer span{justify-self:center}.site-footer>:last-child{justify-self:end}.site-footer--landing{grid-template-columns:1fr}.site-footer.site-footer--landing>span{justify-self:center}@media(max-width:900px){.skills-index{grid-template-columns:1fr}.skill-category,.skill-category+.skill-category{padding:30px 0;border-right:0;border-bottom:1px solid var(--line)}.writing-room{grid-template-columns:1fr}.writing-register{display:grid;grid-template-columns:repeat(3,1fr)}.writing-register>p{grid-column:1 / -1}.writing-feature,.writing-shelf{grid-column:1}}@media(max-width:620px){.writing-register,.contact-layout{grid-template-columns:1fr}.contact-layout>*{grid-column:1!important}.contact-layout h2{margin-top:36px}.personal-section{grid-template-columns:1fr;min-height:0}.site-footer{grid-template-columns:1fr auto}.site-footer>:last-child{grid-column:1 / -1;justify-self:start}}.detail-modal{width:min(1120px,calc(100% - 40px));max-width:none;max-height:calc(100svh - 40px);margin:auto;padding:0;overflow:auto;border:1px solid var(--line);border-radius:0;background:var(--bg);color:var(--ink)}.detail-modal::backdrop{background:#000000b8}.modal-topline{position:sticky;z-index:2;top:0;display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line);background:var(--bg);font-family:Geist Mono,monospace;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.modal-topline button{padding:0;border:0;background:transparent;color:var(--muted);cursor:pointer;text-transform:uppercase}.modal-layout{display:grid;grid-template-columns:minmax(280px,38%) 1fr;gap:clamp(50px,8vw,120px);min-height:70vh;padding:clamp(40px,6vw,86px)}.modal-layout header>p:first-child{margin:0 0 24px;color:var(--muted);font-family:Geist Mono,monospace;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.modal-layout header h2{margin:0 0 24px;font-size:clamp(2rem,3.5vw,4rem);font-weight:400;line-height:.95;letter-spacing:-.045em}.modal-layout header>p:not(:first-child){color:var(--muted);font-size:14px;line-height:1.65}.modal-layout header>div{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:34px;color:var(--muted);font-family:Geist Mono,monospace;font-size:9px;text-transform:uppercase}.modal-sections{border-top:1px solid var(--line)}.modal-sections section{display:grid;grid-template-columns:38px 1fr;column-gap:18px;padding:26px 0 30px;border-bottom:1px solid var(--line)}.modal-sections section span{color:var(--muted);font-family:Geist Mono,monospace;font-size:9px}.modal-sections section h3{margin:0 0 12px;font-size:16px;font-weight:400}.modal-sections section p{grid-column:2;margin:0;color:var(--muted);font-size:13px;line-height:1.65}.modal-empty{margin:0;padding:24px 0;color:var(--muted);font-family:Geist Mono,monospace;font-size:9px;line-height:1.6;text-transform:uppercase}
