.quiet-section.skills{grid-template-columns:minmax(0,1.6fr) minmax(220px,1fr);gap:clamp(32px,5vw,78px)}.skills-explorer{min-width:0}.skills .skill-list{padding:138px 0 0;min-width:0}.skills .skill-items button{padding:0;min-height:44px;font-family:Cormorant,Georgia,serif;font-size:30px;text-align:left;text-decoration-thickness:1px;text-underline-offset:7px;transition:color .25s}.skills .skill-items button:hover,.skills .skill-items button[aria-pressed=true]{color:var(--gold);text-decoration-line:underline}.skills .skill-group{margin-bottom:24px;padding-bottom:24px}.skills .skill-group h3{margin-bottom:13px}.skills-instruction{color:var(--muted);font-size:11px;line-height:1.7}.skills-terminal{margin-top:34px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#080a0c;font:12px/1.75 ui-monospace,Cascadia Code,Consolas,Liberation Mono,monospace}.terminal-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 18px;border-bottom:1px solid var(--line);color:var(--muted)}.terminal-label{display:inline-flex;align-items:center;gap:8px}.terminal-label svg{width:17px;height:17px;stroke:var(--gold)}.terminal-location{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--gold)}.terminal-viewport{height:292px;overflow:auto;overscroll-behavior:contain;padding:18px;scrollbar-width:thin;scrollbar-color:#676257 #080a0c}.terminal-viewport::-webkit-scrollbar{display:block;width:5px;height:5px}.terminal-viewport::-webkit-scrollbar-thumb{background:#676257;border-radius:3px}.terminal-viewport:focus-visible{outline-offset:-3px}.terminal-welcome{color:var(--muted);padding:3px 0}.terminal-welcome p:first-child{color:var(--ivory);margin-bottom:14px}.terminal-welcome code{color:var(--gold);font:inherit}.terminal-entry+.terminal-entry{margin-top:18px}.terminal-command{overflow-wrap:anywhere}.terminal-prompt{color:var(--muted)}.terminal-prompt>span:first-child{color:var(--gold)}.terminal-path{color:var(--ivory)}.terminal-listing{display:flex;flex-wrap:wrap;gap:3px 20px;padding-top:7px}.terminal-listing [data-directory=true]{color:var(--gold)}.terminal-text,.terminal-error{padding-top:5px;white-space:pre-wrap;overflow-wrap:anywhere}.terminal-error{color:#e8b7a1}.terminal-file{margin-top:10px}.terminal-file-name{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:6px 0;border-bottom:1px solid var(--line);color:var(--gold);font-size:11px}.terminal-file-name>span{color:var(--muted);font-size:10px}.terminal-file pre{margin:10px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.terminal-file code{font:inherit}.terminal-empty{padding:12px 0;color:var(--muted);font-style:italic}.terminal-input-row{display:flex;align-items:center;gap:10px;margin:0 18px;border-top:1px solid var(--line)}.terminal-dollar{color:var(--gold)}.terminal-input-row input{width:100%;min-width:0;min-height:50px;padding:8px 0;border:0;outline:none;border-radius:0;color:var(--ivory);background:transparent;caret-color:var(--gold);font:inherit;-webkit-user-select:text;user-select:text}.terminal-input-row:focus-within{border-color:var(--gold)}.terminal-input-row input::placeholder{color:var(--muted);opacity:1}.terminal-input-row button{display:grid;place-items:center;min-width:44px;min-height:44px;padding:0;color:var(--gold)}.terminal-input-row button:focus-visible{outline-offset:-5px}.terminal-hint{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;padding:0 18px 12px;color:var(--muted);font-size:10px}@media(max-width:900px){.quiet-section.skills{grid-template-columns:minmax(0,1.5fr) minmax(170px,1fr);gap:30px}.skills .skill-items{gap:8px 18px}}@media(max-width:760px){.quiet-section.skills{grid-template-columns:minmax(0,1fr);gap:34px}.skills .skill-list{padding:0}.skills-terminal{margin-top:28px}.terminal-viewport{height:270px}.terminal-input-row input{font-size:16px}.skills .skill-group{margin-bottom:22px;padding-bottom:22px}}.message-page{position:relative;min-height:100svh;z-index:1;isolation:isolate}.site-stars{--sky-play-state:paused;position:fixed;inset:0;width:calc(100% + 80px);height:100%;fill:var(--gold);stroke:none;pointer-events:none;z-index:0}.site-stars[data-ambient=true][data-page=message],body:has(#contact .paper-plane[data-flight=outbound]) .site-stars[data-ambient=true]{--sky-play-state:running}.site-stars circle{transform-box:fill-box;transform-origin:center;animation:message-star-twinkle var(--star-duration) var(--star-delay) ease-in-out infinite var(--sky-play-state)}.site-stars[data-page=message] .star-track{transform:translate(var(--star-travel))}body:has(#contact .paper-plane[data-flight=outbound],.message-page.is-arriving) .star-track{animation:flight-star-drift var(--flight-duration) cubic-bezier(.32,0,.4,1) both var(--sky-play-state)}body:has(#contact .paper-plane[data-flight=outbound],.message-page.is-arriving) .site-stars circle{animation:message-star-twinkle var(--star-duration) var(--star-delay) ease-in-out infinite var(--sky-play-state),flight-star-stretch var(--flight-duration) ease-in-out both var(--sky-play-state)}@keyframes flight-star-drift{0%{transform:translate(0)}to{transform:translate(var(--star-travel))}}@keyframes flight-star-stretch{0%,to{transform:scaleX(1)}24%,46%{transform:scaleX(var(--star-stretch))}78%{transform:scaleX(1.35)}}@keyframes message-star-twinkle{0%,18%,62%,to{opacity:var(--star-rest)}33%{opacity:var(--star-peak)}44%{opacity:calc(var(--star-rest)*.5)}49%{opacity:calc(var(--star-peak)*.72)}}.message-back{display:flex;align-items:center;gap:12px;font-family:Caveat,cursive;font-size:21px;color:var(--muted)}.message-back:hover{color:var(--ivory)}.message-back span{transition:transform .3s var(--ease)}.message-back:hover span{transform:translate(-5px)}.message-main{width:min(720px,calc(100% - 48px));margin:auto;padding:106px 0 90px}.message-plane{height:90px;display:flex;justify-content:center;overflow:visible}.message-plane .paper-plane{cursor:default}.message-plane .paper-plane[data-flight=idle] .paper-plane-art{animation:message-plane-hover 4.8s ease-in-out infinite paused}.message-page[data-ambient=true] .message-plane[data-visible=true] .paper-plane[data-flight=idle] .paper-plane-art{animation-play-state:running}@keyframes message-plane-hover{0%,to{transform:translateZ(0) rotate(-14deg)}25%{transform:translate3d(2px,-6px,0) rotate(-16.6deg)}50%{transform:translate3d(0,2px,0) rotate(-11.6deg)}75%{transform:translate3d(-2px,4px,0) rotate(-15.2deg)}}.message-main h1{font-family:Tangerine-bold,cursive;font-weight:700;font-size:clamp(68px,8vw,112px);line-height:1.05;text-align:center;margin:6px 0 16px;outline:none}#message-title:focus{outline:none}.message-intro{color:var(--muted);font-size:14px;line-height:1.8;text-align:center;margin:0 auto 40px;max-width:450px}.message-form{display:grid;gap:24px}.message-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px}.message-form label{display:grid;gap:9px;font-family:Caveat,cursive;font-size:23px;color:var(--gold)}.message-form input,.message-form textarea{box-sizing:border-box;min-width:0;width:100%;border:0;border-bottom:1px solid #d6be893d;border-radius:0;background:#ffffff03;padding:12px 0;color:var(--ivory);font:14px/1.7 Manrope,sans-serif;caret-color:var(--gold);outline:none;-webkit-user-select:text;user-select:text;transition:border-color .25s,background .25s}.message-form input::placeholder,.message-form textarea::placeholder{color:#aaa79f;opacity:1}.message-form input:focus,.message-form textarea:focus{border-color:var(--gold);background:#d6be8905}.message-form textarea{resize:vertical;min-height:130px;max-height:450px}.message-form input:disabled,.message-form textarea:disabled{opacity:.65}.message-form .message-honeypot{display:none}.message-send-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.message-count{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.message-submit{position:relative;display:flex;align-items:center;justify-content:center;gap:28px;min-height:56px;padding:10px 24px;font-family:Caveat,cursive;font-size:28px;color:var(--ivory);border:1px solid #d6be8970;border-radius:8px;overflow:hidden;isolation:isolate;transition:color .35s,border-color .35s,box-shadow .35s}.message-submit:before{content:"";position:absolute;inset:0;background:var(--gold);z-index:-1;clip-path:inset(0 100% 0 0);transition:clip-path .5s cubic-bezier(.16,1,.3,1)}.message-submit svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.3;transition:transform .45s cubic-bezier(.16,1,.3,1)}.message-submit:hover:not(:disabled),.message-submit:focus-visible{color:var(--void);border-color:var(--gold);box-shadow:0 8px 28px #d6be8919}.message-submit:hover:not(:disabled):before,.message-submit:focus-visible:before{clip-path:inset(0)}.message-submit:hover:not(:disabled) svg{transform:translate(5px) rotate(-12deg)}.message-feedback{margin:0;min-height:24px;font-size:13px;line-height:1.7;color:var(--muted)}.message-feedback.error{color:#e5b8a0}.message-feedback.sent{color:#c9d6b1}.message-email{font-size:12px;color:var(--muted);line-height:1.8;margin-top:18px;text-align:center}.message-email a{color:var(--ivory);text-decoration:underline;text-underline-offset:4px}.message-page .motion-toggle{position:absolute;bottom:22px;display:flex;gap:10px}.message-page.is-arriving .message-main>h1,.message-page.is-arriving .message-intro,.message-page.is-arriving .message-form,.message-page.is-arriving .message-email,.message-page.is-arriving .site-header{animation:message-surface-in 1s cubic-bezier(.16,1,.3,1) .75s both}.message-page.is-arriving .message-intro{animation-delay:.85s}.message-page.is-arriving .message-form{animation-delay:.95s}.message-page.is-arriving .message-email{animation-delay:1.05s}@keyframes message-surface-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}html[data-page-direction]::view-transition-old(root),html[data-page-direction]::view-transition-new(root){animation-duration:.5s;animation-timing-function:ease-in-out;mix-blend-mode:normal}html[data-page-direction]::view-transition-old(root){animation-name:flight-scene-out}html[data-page-direction]::view-transition-new(root){animation-name:flight-scene-in}@keyframes flight-scene-out{to{opacity:0}}@keyframes flight-scene-in{0%{opacity:0}}body.no-motion .message-page *,body.no-motion .message-page *:before,body.no-motion .site-stars circle,body.no-motion .star-track{transition:none!important;animation:none!important}@media(max-width:600px){.message-main{padding-top:100px}.message-pair{grid-template-columns:1fr;gap:24px}.message-plane{height:76px}.message-main h1{font-size:clamp(58px,18vw,72px)}.message-back{font-size:18px}.message-intro{font-size:13px;margin-bottom:30px}.message-submit{font-size:25px;padding:10px 18px;gap:18px}}@media(prefers-reduced-motion:reduce){.message-page *,.message-page *:before,.site-stars circle,.star-track{transition:none!important;animation:none!important}}@media(max-width:600px){.message-form input,.message-form textarea{font-size:16px}}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}@font-face{font-family:Cormorant;src:url(/assets/cormorant.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Tangerine-bold;src:url(/assets/Tangerine-Bold.ttf) format("truetype");font-display:swap;font-weight:700}@font-face{font-family:Tangerine-regular;src:url(/assets/Tangerine-Regular.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Ballet-regular;src:url(/assets/Ballet-Regular-VariableFont_opsz.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Manrope;src:url(/assets/manrope.ttf) format("truetype");font-display:swap;font-weight:400 700}@font-face{font-family:Allan;src:url(/assets/Allan-Regular.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Allan;src:url(/assets/Allan-Bold.ttf) format("truetype");font-display:swap;font-weight:700}@font-face{font-family:Caveat;src:url(/assets/Caveat-Bold.ttf) format("truetype");font-display:swap;font-weight:700}@font-face{font-family:Damion;src:url(/assets/Damion-Regular.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Lobster;src:url(/assets/Lobster-Regular.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Mr Dafoe;src:url(/assets/MrDafoe-Regular.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Permanent Marker;src:url(/assets/PermanentMarker-Regular.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:Plaster;src:url(/assets/Plaster-Regular.ttf) format("truetype");font-display:swap;font-weight:400}@font-face{font-family:"Press Start 2P";src:url(/assets/PressStart2P-Regular.ttf) format("truetype");font-display:swap;font-weight:400}:root{color-scheme:dark;--void:#030405;--ivory:#e9e5db;--muted:#aaa79f;--gold:#d6be89;--line:rgba(233,229,219,.18);--ease:cubic-bezier(.2,.75,.25,1);font-family:Manrope,sans-serif;font-weight:400;color:var(--ivory);background:var(--void);font-synthesis:none}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;scrollbar-width:none}*::-webkit-scrollbar{display:none}html{scrollbar-width:none}body{margin:0;overflow-x:clip}::selection{color:var(--void);background:var(--gold)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:disabled{opacity:.3;cursor:default}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:1px solid var(--gold);outline-offset:7px}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.2}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Cormorant,Georgia,serif;font-weight:400}h2{font-size:clamp(42px,4.4vw,68px);line-height:1.03;letter-spacing:-.03em}.hero-copy h1{font-family:Mr Dafoe,cursive;color:#e4e4cc}.hero-copy p{font-family:Caveat,cursive}.home-link span{font-family:Lobster,cursive;font-size:17px}.section-intro h2{font-family:Tangerine-bold,cursive;font-size:clamp(58px,6.54vw,128px)}.section-intro p{font-family:caveat,cursive;font-size:22px}.site-header nav a{font-family:caveat,cursive;font-size:17px}.work-heading h2{font-family:Tangerine-bold,cursive}.skills .skill-group h3{font-family:caveat,cursive;font-size:clamp(18px,1.41vw,22px)}.skills .skill-items button{font-family:Manrope,cursive;font-size:clamp(22px,1.925vw,30px)}.contact-neon-text{font-family:Tangerine-bold,cursive;font-size:clamp(80px,26vw,182px);color:#fff}.contact-sticky p{font-family:Tangerine-regular,cursive;font-size:clamp(28px,2.7vw,42px)}.screen-label span:first-child{font-family:Tangerine-regular,cursive}#cosmos{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}main{position:relative;z-index:1}.site-header{position:fixed;z-index:30;top:0;left:0;right:0;padding:32px 4.2vw;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.site-header a{pointer-events:auto;text-shadow:0 1px 14px #030405}.home-link{display:flex;align-items:center;gap:5px;font-size:14px;letter-spacing:.01em}.home-link svg{width:32px;height:32px}.site-header nav{display:flex;gap:30px;font-size:11px}.site-header nav a{position:relative;padding:10px 0;color:#bdbab1;transition:color .3s}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--ivory)}.site-header nav a:after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}.site-header nav a[aria-current]:after{transform:scaleX(1)}.skip-link{position:fixed;top:15px;left:20px;z-index:100;padding:12px;background:var(--void);transform:translateY(-150%)}.skip-link:focus{transform:none}.hero{height:100svh;min-height:620px;position:relative;display:grid;place-items:center}.hero-copy{text-align:center;will-change:transform,opacity;pointer-events:none;padding-bottom:20px}.hero h1{font-size:clamp(56px,calc(24px + 9.75vw),176px);line-height:1;letter-spacing:-.04em;text-shadow:0 2px 35px #030405b3}.hero-copy>p{font-size:12px;letter-spacing:.09em;margin-top:20px;color:#c5bca9;text-shadow:0 1px 12px #000}.hero-bottom{position:absolute;left:4.2vw;right:4.2vw;bottom:66px;display:flex;align-items:flex-end;justify-content:space-between;font-size:10px;line-height:1.8;color:var(--muted)}.scroll-link{position:absolute;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:16px;white-space:nowrap}.scroll-link svg{height:35px;width:16px}.quiet-section{max-width:1400px;margin:auto;min-height:66svh;padding:145px 9vw 125px;display:grid;grid-template-columns:1fr 1.15fr;gap:9vw;align-items:start;will-change:opacity}.section-intro p{font-size:12px;color:var(--muted);margin-top:25px}.certificate-list,.skill-list{padding-top:4px}.empty-content{padding:0 0 28px;border-bottom:1px solid var(--line)}.empty-content .empty-title{font-family:Cormorant,Georgia,serif;font-size:29px;color:#c8c3b8;margin-bottom:12px}.empty-content p{font-size:12px;line-height:1.9;color:var(--muted);max-width:330px}.empty-content span{display:block;margin-top:26px;font-size:10px;color:#bfae8b}.certificate{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 0;border-bottom:1px solid var(--line);transition:transform .6s var(--ease),color .6s}.certificate:first-child{padding-top:0}.certificate:hover{transform:translate(6px);color:var(--gold)}.certificate h3{font-size:27px}.certificate p{font-size:10px;color:var(--muted);margin-top:9px}.certificate>span{font-size:11px;color:var(--muted)}.skill-group{padding-bottom:26px;margin-bottom:26px;border-bottom:1px solid var(--line)}.skill-group h3{font-family:Manrope,sans-serif;font-size:11px;color:var(--muted);margin-bottom:18px}.skill-items{display:flex;flex-wrap:wrap;gap:14px 24px}.skill-items span{font-family:Cormorant,Georgia,serif;font-size:30px;display:inline-block;transition:transform .45s var(--ease),color .45s}.skill-items span:hover{color:var(--gold);transform:scale(1.06)}.work-section{position:relative;overflow-x:clip}.work-scroll{position:relative;height:250svh}.work-sticky{position:sticky;top:0;height:100svh;min-height:650px;padding-top:90px;overflow:clip;overflow-clip-margin:480px;clip-path:inset(-180px 0 -480px);display:flex;flex-direction:column;--light:184,151,95}.work-heading{display:flex;align-items:baseline;justify-content:space-between;margin:0 9vw;padding:clamp(130px,18svh,220px) 0 clamp(65px,10svh,110px);position:relative;z-index:3}.work-heading h2{font-size:clamp(50px,6.54vw,128px)}.work-heading>span{color:var(--muted);font-size:10px}.gallery-stage{position:relative;flex:1;min-height:280px;perspective:1300px;isolation:isolate;touch-action:pan-y}.gallery-orbit{position:absolute;inset:64px 0 24px;transform-style:preserve-3d;pointer-events:none}.project-screen{position:absolute;top:50%;left:50%;width:min(56vw,850px);aspect-ratio:1.75;background:#080a0b;transform-origin:center center;will-change:transform,opacity;transform-style:preserve-3d;cursor:pointer;pointer-events:auto}.screen-surface{position:relative;width:100%;height:100%;opacity:var(--screen-exit,1);-webkit-box-reflect:below 16px linear-gradient(transparent 35%,rgba(255,255,255,.11) 100%)}.project-description{position:absolute;left:0;right:0;bottom:calc(100% + 20px);text-align:left;font-size:clamp(12px,1.795vw,26px);font-weight:500;line-height:1.45;color:#f4eee3;text-shadow:0 0 16px #e5d7b947,0 2px 12px #030405;pointer-events:none;font-family:caveat,cursive}.description-size{visibility:hidden}.description-typed{position:absolute;inset:0}.description-readable{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.screen-inner{width:100%;height:100%;position:relative;overflow:hidden;border-radius:3px;box-shadow:0 16px 55px #0009}.project-screen canvas{display:block;width:100%;height:100%}.screen-label{position:absolute;bottom:22px;left:26px;font-size:10px;color:#dcd5c3;display:flex;gap:18px;align-items:center}.screen-label span:first-child{font-family:Cormorant,Georgia,serif;font-size:27px}.screen-label span+span{color:#b3ab9f}.work-bottom{position:relative;z-index:4;margin:12px 9vw 65px;display:flex;justify-content:space-between;align-items:center}.project-caption h3{font-size:36px;line-height:1.15}.project-caption p{font-size:11px;line-height:1.6;color:var(--muted);margin-top:8px}.gallery-controls{display:flex;align-items:center;gap:22px}.gallery-controls button{padding:12px;display:grid;place-items:center;transition:transform .3s,color .3s}.gallery-controls button:hover:not(:disabled){color:var(--gold);transform:scale(1.15)}.gallery-controls>span{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums;width:34px;text-align:center}.gallery-progress{position:absolute;bottom:30px;left:9vw;right:9vw;height:1px;background:#ffffff14}.gallery-progress span{display:block;width:33.333%;height:1px;background:#b9a378;transform-origin:left;will-change:transform}.contact-section{height:165svh;position:relative}.contact-sticky{position:sticky;top:0;height:100svh;min-height:620px;display:flex;align-items:center;justify-content:center;overflow:hidden}.star-message{position:absolute;bottom:17%;left:0;right:0;text-align:center;font-family:Cormorant,Georgia,serif;font-size:28px;color:#bfb4a0;pointer-events:none}.contact-content{position:relative;width:100%;text-align:center;padding:0 6vw;opacity:0;transform:translateY(30px);will-change:opacity,transform}.contact-content h2{font-size:clamp(65px,8.9vw,100px);line-height:.95;letter-spacing:-.04em;text-wrap:balance;text-shadow:0 8px 50px #0009;margin-bottom:50px}.contact-neon-text{display:inline-block;--contact-flicker-interval:6s;animation:contact-heading-flicker var(--contact-flicker-interval) linear infinite paused}.contact-section[data-active=true] .contact-neon-text{animation-play-state:running}@keyframes contact-heading-flicker{0%,34%,35%,37%,38%,40%,to,0%,34%,45%,57%,38%,40%,to{opacity:1}34.5%,37.4%,38.7%,37.4%{opacity:.3}}body.no-motion .contact-neon-text{animation:none}.motion-toggle{position:fixed;z-index:30;bottom:22px;left:4.2vw;display:flex;align-items:center;gap:8px;font-size:9px;color:#a7a59c;padding:6px 0}.motion-toggle svg{width:12px;height:12px}.motion-toggle:hover{color:var(--ivory)}.status{position:fixed;bottom:26px;left:50%;transform:translate(-50%);font-size:11px;color:var(--ivory);z-index:40;pointer-events:none}.noscript{position:fixed;bottom:0;left:0;right:0;background:#030405;color:var(--gold);padding:20px;text-align:center;z-index:50}body.no-motion .work-scroll{height:auto}body.no-motion .work-sticky{height:auto;min-height:0;position:relative;padding-bottom:60px;padding-top:0}body.no-motion .gallery-stage{min-height:0;padding:90px 7vw 70px;overflow-x:auto;overscroll-behavior:contain auto;scroll-snap-type:x mandatory}body.no-motion .gallery-orbit{position:relative;inset:auto;display:flex;gap:30px;width:max-content;transform:none}body.no-motion .project-screen{position:relative;left:auto;top:auto;flex:none;transform:none!important;opacity:1!important;width:min(78vw,750px);scroll-snap-align:center;-webkit-box-reflect:unset}body.no-motion .screen-surface{-webkit-box-reflect:unset}body.no-motion .work-bottom{margin-bottom:0}body.no-motion .contact-section{height:100svh;min-height:620px}body.no-motion .contact-content{opacity:1!important;transform:none!important}body.no-motion .star-message,body.no-motion .gallery-progress{display:none}@media(min-width:1600px){.quiet-section{padding-left:100px;padding-right:100px}.project-screen{width:55vw;max-width:950px}}@media(max-width:800px){.site-header{padding:25px 6vw}.home-link{font-size:12px;gap:4px}.home-link svg{width:26px;height:26px}.site-header nav{gap:19px;font-size:10px}.hero{min-height:600px}.hero-copy>p{font-size:10px;letter-spacing:.05em}.hero-bottom{left:6vw;right:6vw;bottom:78px;font-size:9px}.scroll-link{bottom:0}.quiet-section{padding:110px 8vw 90px;gap:45px;min-height:auto;grid-template-columns:1fr}.section-intro p{margin-top:16px}.certificate-list,.skill-list{max-width:100%;padding-left:16vw}.work-heading{margin:0 8vw;padding:130px 0 65px;display:block}.work-heading>span{display:block;margin-top:15px}.work-sticky{min-height:650px}.project-screen{width:74vw}.gallery-stage{perspective:900px}.work-bottom{margin:10px 8vw 85px;gap:20px}.project-caption h3{font-size:31px}.project-caption p{max-width:220px;font-size:10px}.gallery-controls{gap:4px}.gallery-controls button{padding:9px}.work-scroll{height:220svh}.screen-label{bottom:14px;left:16px}.screen-label span:first-child{font-size:23px}.screen-label span+span{font-size:8px}.gallery-progress{left:8vw;right:8vw;bottom:46px}.contact-content h2{font-size:12.8vw}.motion-toggle{left:6vw;bottom:20px}.star-message{font-size:24px}}@media(max-width:480px){.site-header{padding-top:22px;align-items:flex-start}.home-link span{display:none}.site-header nav{gap:17px;font-size:9px;padding-top:1px}.hero-copy{padding-bottom:22px}.hero-bottom .scroll-link{bottom:65px}.hero-bottom{bottom:72px}.work-bottom{align-items:flex-end;margin-bottom:90px}.project-caption p{max-width:175px}.project-caption h3{font-size:30px}.gallery-controls{gap:0}.certificate-list,.skill-list{padding-left:9vw}.work-sticky{min-height:600px}.screen-label span+span{display:none}.contact-content h2{font-size:14.2vw}.star-message{bottom:21%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}body.no-motion .gallery-stage{touch-action:pan-x pan-y;scroll-padding-inline:7vw}#cosmos>div{width:100%;height:100%}.project-screen{padding:0}.screen-inner>div:first-child{position:absolute!important;inset:0;width:100%;height:100%}.screen-inner canvas{filter:brightness(1.2)}.certificate img{object-fit:contain;flex-shrink:0;transition:transform .6s var(--ease);filter:saturate(.7)}.certificate:hover img{transform:scale(1.055);filter:saturate(1)}.certificate>div{flex:1}.certificate>svg{flex-shrink:0}.certificate p span{display:inline;margin-left:18px;color:var(--gold)}.certificate h3{font-size:26px}.contact-section{height:230svh}body.no-motion .contact-section{height:100svh}.graphics-unavailable{background:#030405;width:100%;height:100%}section:focus-visible{outline:none}body.no-motion .gallery-stage{touch-action:pan-x pan-y}@media(max-width:480px){.certificate{gap:14px}.certificate img{width:46px;height:46px}.certificate h3{font-size:22px}.certificate p span{margin-left:10px;font-size:9px}}#cosmic-cursor{position:fixed;left:-1px;top:-1px;width:24px;height:32px;z-index:100;pointer-events:none;opacity:0;fill:#eee9dc;stroke:#151617;stroke-width:1;will-change:transform}.cosmic-pointer #cosmic-cursor{opacity:1}.brand-orbit ellipse{transform-origin:16px 16px;transform:rotate(-30deg);animation:brand-orbit 5.6s ease-in-out infinite}.brand-orbit circle{animation:none}@keyframes brand-orbit{0%,to{transform:translateY(-1.2px) rotate(-30deg) scaleY(.82)}50%{transform:translateY(1.2px) rotate(-30deg) scaleY(1.12)}}body.no-motion .brand-orbit *{animation:none}body.no-motion .brand-orbit ellipse{transform:rotate(-30deg)}body.no-motion #cosmic-cursor{display:none}.contact-line{display:block;padding:.08em .03em}.contact-line>span{display:block;will-change:transform,opacity}.contact-action{will-change:transform,opacity}body.no-motion .contact-line>span,body.no-motion .contact-action{transform:none!important;opacity:1!important}.project-media,.project-media video,.project-media img{width:100%;height:100%}.project-media video,.project-media img{position:absolute;inset:0;display:block;object-fit:cover;pointer-events:none}.video-unavailable{position:absolute;top:18px;left:22px;font-size:10px;color:var(--muted)}.project-screen{--screen-focus:0;background:transparent}.project-screen[aria-pressed=true]{--screen-focus:1}.project-screen .screen-light{position:absolute;inset:0;pointer-events:none;transform:scale(1.12,1.16) translateZ(-1px);filter:blur(38px) saturate(1.35);opacity:calc(var(--screen-focus) * var(--screen-entry,1) * .85)}.screen-inner{background:#080a0b;box-shadow:0 16px 36px #0005}.screen-glass{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px #e9e5db1f;opacity:calc(.3 + var(--screen-focus) * .7)}.project-media .video-poster-source{visibility:hidden}.contact-action.social-icons{position:absolute;left:14vw;right:14vw;bottom:clamp(16px,3svh,130px);display:flex;justify-content:space-between;align-items:center;opacity:0}.social-icon{position:relative;isolation:isolate;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;color:var(--ivory);transition:color .4s var(--ease),transform .45s var(--ease)}.social-icon:before{content:"";position:absolute;width:32px;height:32px;border-radius:50%;background:#dac9a7;filter:blur(12px);opacity:0;transform:scale(.65);transition:opacity .45s var(--ease),transform .55s var(--ease)}.social-icon svg{position:relative;width:42px;height:42px;fill:currentColor;stroke:none}.social-icon:hover,.social-icon:focus-visible{color:#fff7e5;transform:scale(1.08);animation:contact-neon .9s linear}@keyframes contact-neon{0%,26%,34%,70%,78%,to{opacity:1}29%,74%{opacity:.3}}body.no-motion .social-icon{animation:none}.social-icon:hover:before,.social-icon:focus-visible:before{opacity:.5;transform:scale(1)}.social-icon:after{content:"";position:absolute;bottom:-7px;left:50%;width:86px;height:1px;transform:translate(-50%);background:linear-gradient(90deg,transparent,#fff5ddbb 28%,#fff9ef 50%,#fff5ddbb 72%,transparent);box-shadow:0 -3px 7px 1px #f5e7ca35,0 -13px 17px 3px #f5e7ca20;opacity:.65;transition:opacity .45s var(--ease),box-shadow .45s var(--ease)}.social-icon:hover:after,.social-icon:focus-visible:after{opacity:1;box-shadow:0 -3px 8px 1px #f5e7ca66,0 -15px 22px 4px #f5e7ca35}.paper-plane{display:inline-grid;place-items:center;position:relative;width:100px;height:90px;padding:0;border-radius:12px;cursor:pointer}.paper-plane-art{width:80px;height:80px;overflow:visible;fill:#030405;stroke:#fff;stroke-width:1.35;stroke-linejoin:round;transform:rotate(-14deg);filter:drop-shadow(0 0 1px #fff9) drop-shadow(0 0 5px #fff5);pointer-events:none}.paper-plane[data-flight=outbound] .paper-plane-art,.paper-plane[data-flight=returning] .paper-plane-art{will-change:transform}.plane-line,.plane-line>span{overflow:visible}.plane-line{position:relative;z-index:2}@media(max-width:800px){.project-description{font-size:15px;bottom:calc(100% + 18px)}.paper-plane{width:86px;height:76px}.paper-plane-art{width:66px;height:66px}.contact-action.social-icons{left:8vw;right:8vw;bottom:86px}.social-icon{width:48px;height:48px}.social-icon svg{width:24px;height:24px}.project-screen .screen-light{filter:blur(24px) saturate(1.35)}}.typing-text{display:inline-grid;position:relative;vertical-align:baseline;max-width:100%}.typing-reserve,.typing-ink{grid-area:1 / 1;white-space:pre-wrap}.typing-reserve{visibility:visible}.typing-ink{display:none;text-align:inherit}[data-typed]>.typing-reserve{visibility:hidden}[data-typed]>.typing-ink{display:block}.typing-readable{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skills .skill-items .typing-text,.skills .skill-items .typing-text span{font:inherit;color:inherit;letter-spacing:inherit;transform:none;transition:none}.skills .skill-items .typing-text{display:inline-grid}.certificate[data-scroll-reveal]{clip-path:inset(-10px -12px -10px -12px);opacity:1;transition:clip-path .86s cubic-bezier(.16,1,.3,1),opacity .6s ease,transform .6s var(--ease),color .6s}.certificate[data-scroll-reveal=before]{clip-path:inset(-10px 100% -10px 0);opacity:0}.certificate[data-scroll-reveal=after]{clip-path:inset(-10px 0 -10px 100%);opacity:0;transition-duration:.54s,.42s,.6s,.6s}.certificate[data-scroll-reveal]:focus-visible{clip-path:inset(-10px -12px -10px -12px);opacity:1}body.no-motion .certificate[data-scroll-reveal]{clip-path:none;opacity:1;transition:none}.screen-label{left:0;right:auto;width:max-content;max-width:100%;padding:4px 34px 6px 26px;gap:12px;border-radius:0 10px 10px 0;background:#0000007a;box-shadow:inset 0 1px 1px #ffffff1f,inset 0 -1px 2px #0003,0 5px 12px #0003;opacity:var(--screen-entry,1);clip-path:inset(0);transition:clip-path .9s cubic-bezier(.45,0,.2,1)}.screen-label[data-visible=false]{clip-path:inset(0 100% 0 0)}.screen-label[data-visible=true]{transition:clip-path 1.25s cubic-bezier(.45,0,.2,1)}.screen-label span:first-child{padding:0;color:#fff;background:none;text-shadow:0 1px 2px #000,0 2px 6px #000b;font-family:Caveat,cursive;font-size:clamp(22px,2.18vw,34px)}.screen-label span+span{background:none;color:#fff;text-shadow:0 1px 2px #000,0 2px 6px #000b}.contact-neon-text{position:relative;text-shadow:0 0 5px #ffffffa6,0 0 18px #ffffff80,0 0 45px #ffffff59,0 0 80px #ffffff26,0 8px 50px #0009}.contact-neon-text:after{content:"";position:absolute;left:2%;right:2%;bottom:.025em;height:1px;background:#fff;box-shadow:0 0 7px #ffffff70;transform-origin:left center;transform:scaleX(1)}.contact-neon-text[data-underlined=false]:after{transform:scaleX(0)}.contact-neon-text[data-underlined=true]:after{transform:scaleX(1);transition:transform 1.15s cubic-bezier(.16,1,.3,1)}body.no-motion .screen-label{opacity:1;clip-path:none;transition:none}body.no-motion .contact-neon-text:after{transform:none;transition:none}@media(max-width:600px){.screen-label{padding-inline:16px 9px}}@media(prefers-reduced-motion:reduce){.certificate[data-scroll-reveal]{clip-path:none;opacity:1;transition:none}.screen-label[data-visible]{opacity:1;clip-path:none;transition:none}.contact-neon-text:after{transform:none;transition:none}}
