@font-face{font-family:interfaceFont;src:url(../media/Inter_VariableFont_opsz,wght-s.p.1ci5nhn25kwyu.ttf)format("truetype");font-display:swap;font-weight:100 900}@font-face{font-family:interfaceFont Fallback;src:local(Arial);ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.0%;size-adjust:107.89%}.interfacefont_e21ef508-module__ULLP5W__className{font-family:interfaceFont,interfaceFont Fallback}.interfacefont_e21ef508-module__ULLP5W__variable{--font-interface:"interfaceFont", "interfaceFont Fallback"}
@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.3gpqod6e6kd7d.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:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.1ay-qk1u8nydy.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:Outfit Fallback;src:local(Arial);ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.0%;size-adjust:99.82%}.outfit_64382253-module__pI0Ola__className{font-family:Outfit,Outfit Fallback;font-style:normal}.outfit_64382253-module__pI0Ola__variable{--font-outfit:"Outfit", "Outfit Fallback"}
*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;min-height:100%;line-height:1.5}body{min-height:100%;margin:0}h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}button,input,optgroup,select,textarea{font:inherit;margin:0}button,[type=button],[type=reset],[type=submit]{appearance:button;border:0}img,picture,video,canvas,svg{max-width:100%;display:block}fieldset{border:0;min-width:0;margin:0;padding:0}
:root{--black:#050505;--black-soft:#0a0a0a;--black-raised:#0f0f0f;--white:#f1f1ed;--muted:#9a9a94;--dim:#60605c;--line:#f1f1ed24;--line-strong:#f1f1ed57;--accent:#d8d2c4;--paper:#ebe8e0;--paper-ink:#0b0b0a;--ease:cubic-bezier(.22, 1, .36, 1)}html{background:var(--black);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:auto}html.is-portfolio-loading,html.is-portfolio-loading body{overflow:hidden}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}body{margin:0;overflow-x:hidden;background:var(--black)!important;color:var(--white)!important;font-family:var(--font-interface), "Helvetica Neue", sans-serif!important}html.is-portfolio-loading,html.is-portfolio-loading body{touch-action:none!important;overscroll-behavior:none!important;height:100vh!important;overflow:hidden!important}a{color:inherit;text-decoration:none}button,input,textarea{color:inherit;font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}::selection{background:var(--white);color:var(--black)}:focus-visible{outline:1px solid var(--white);outline-offset:5px}.portfolio-loader{z-index:500;background:var(--black);color:var(--white);contain:strict;isolation:isolate;place-items:center;animation:10ms linear 6s forwards portfolio-loader-failsafe;display:grid;position:fixed;inset:0;overflow:hidden}.darkroom-webgl-canvas{z-index:0;pointer-events:none;position:absolute;inset:0}.darkroom-webgl-canvas canvas{width:100%;height:100%;display:block}.portfolio-loader:before{content:"";opacity:.35;background:linear-gradient(#ffffff09 1px,#0000 1px) 0 0/100% 25vh,linear-gradient(90deg,#ffffff09 1px,#0000 1px) 0 0/25vw 100%;position:absolute;inset:0}.portfolio-loader__mark{z-index:1;transform-origin:50%;color:var(--white);letter-spacing:-.11em;will-change:transform, opacity;font-size:clamp(9rem,22vw,23rem);font-weight:570;line-height:.72;animation:.72s step-end infinite portfolio-loader-blink;display:block;position:relative}.portfolio-loader__progress{z-index:1;color:var(--dim);letter-spacing:.14em;font-size:.6rem;font-weight:650;position:absolute;bottom:2.5rem;right:3vw}.portfolio-loader.is-exiting{pointer-events:none;animation:portfolio-loader-exit .72s var(--ease) forwards}.portfolio-loader.is-exiting .portfolio-loader__mark{animation:portfolio-loader-mark-exit .72s var(--ease) forwards}@keyframes portfolio-loader-blink{0%,44%,to{opacity:1}45%,64%{opacity:.08}}@keyframes portfolio-loader-mark-exit{to{opacity:0;letter-spacing:.04em;transform:scale(1.5)}}@keyframes portfolio-loader-exit{55%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes portfolio-loader-failsafe{to{opacity:0;visibility:hidden}}.skip-link{z-index:300;background:var(--white);color:var(--black);transition:transform .24s var(--ease);padding:.8rem 1rem;font-size:.75rem;position:fixed;top:1rem;left:1rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.spatial-root{isolation:isolate;background:var(--black);position:relative;overflow:clip}.spatial-grid{z-index:0;opacity:.55;pointer-events:none;position:fixed;inset:-4rem;overflow:hidden}.spatial-grid__back,.spatial-grid__front{--pointer-grid-x:0px;--pointer-grid-y:0px;--scroll-grid-x:0px;--scroll-grid-y:0px;transform:translate3d(calc(var(--pointer-grid-x) + var(--scroll-grid-x)), calc(var(--pointer-grid-y) + var(--scroll-grid-y)), 0);will-change:transform;position:absolute;inset:-5vw}.spatial-grid__back{opacity:.26;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:8rem 8rem}.spatial-grid__front{opacity:.16;background:linear-gradient(115deg,#0000 0 49.92%,#ffffff1c 50%,#0000 50.08%) 0 0/26rem 26rem}.pointer-light{display:none!important}.project-cursor{display:none}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.project-cursor{z-index:220;mix-blend-mode:difference;opacity:0;pointer-events:none;will-change:transform, opacity;width:1px;height:1px;transition:opacity .2s;display:block;position:fixed;top:0;left:0}.project-cursor__dot{width:2.35rem;height:2.35rem;box-shadow:none;opacity:1;transition:transform .3s var(--ease), background-color .25s ease, box-shadow .25s ease, opacity .2s ease;background:#fff;border-radius:50%;position:absolute;top:0;left:0;transform:translate(-50%,-50%)scale(1)}.project-cursor__dot:after{content:"";opacity:0;width:.16rem;height:.16rem;transition:transform .25s var(--ease), opacity .2s ease;background:#fff;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}.spatial-root.is-project-light,.spatial-root.is-project-light a,.spatial-root.is-project-light button{cursor:none}.spatial-root.is-project-light .project-cursor{opacity:1}.spatial-root.is-project-light .project-cursor.is-outside{opacity:0}.project-cursor.is-interactive .project-cursor__dot{box-shadow:none;background:#fff;transform:translate(-50%,-50%)scale(1.45)}.project-cursor.is-interactive .project-cursor__dot:after{opacity:1;transform:translate(-50%,-50%)scale(1)}.project-cursor.is-interactive.is-pressed .project-cursor__dot{transform:translate(-50%,-50%)scale(1.15)}.project-cursor.is-copy .project-cursor__dot{transform:translate(-50%,-50%)scale(1.45)}.project-cursor.is-media .project-cursor__dot{transform:translate(-50%,-50%)scale(2)}}.page-progress{z-index:120;background:#ffffff17;height:1px;position:fixed;top:0;left:0;right:0}.page-progress__bar{transform-origin:0;background:var(--white);width:100%;height:100%}.site-nav{z-index:110;background:var(--black);min-height:5.25rem;transition:background-color .55s var(--ease), border-color .55s var(--ease), color .55s var(--ease);border-bottom:1px solid #ffffff14;grid-template-columns:1fr auto;align-items:center;padding:0 3vw;display:grid;position:fixed;top:0;left:0;right:0}.site-nav__name{letter-spacing:.14em;text-transform:uppercase;will-change:transform;width:fit-content;font-size:.7rem;font-weight:650}.site-nav__links{align-items:center;gap:clamp(1.4rem,2.7vw,3rem);display:flex}.site-nav__links a{color:var(--dim);letter-spacing:.12em;text-transform:uppercase;padding:1rem 0;font-size:.62rem;font-weight:620;transition:color .26s;position:relative}.site-nav__links a:after{transform-origin:100%;background:var(--white);content:"";height:1px;transition:transform .42s var(--ease);position:absolute;bottom:.55rem;left:0;right:0;transform:scaleX(0)}.site-nav__links a:hover,.site-nav__links a.is-active{color:var(--white)}.site-nav__links a:hover:after,.site-nav__links a.is-active:after{transform-origin:0;transform:scaleX(1)}.spatial-root.is-project-light .site-nav{background:var(--paper);color:var(--paper-ink);border-bottom-color:#0b0b0a1f}.spatial-root.is-project-light .site-nav__links a{color:#0b0b0a7a}.spatial-root.is-project-light .site-nav__links a:hover,.spatial-root.is-project-light .site-nav__links a.is-active{color:var(--paper-ink)}.spatial-root.is-project-light .site-nav__links a:after{background:var(--paper-ink)}.spatial-root.is-project-light .page-progress{background:#0b0b0a1a}.spatial-root.is-project-light .page-progress__bar{background:var(--paper-ink)}.site-nav__menu,.mobile-nav{display:none}.spatial-canvas{z-index:2;position:relative}.spatial-section{min-height:100vh;scroll-margin-top:5rem;position:relative}.camera-plane{will-change:transform;position:relative}.hero-section{isolation:isolate;min-height:100svh;padding:5.25rem 3vw 2.3rem;overflow:clip}.hero-section:before{z-index:0;content:"";pointer-events:none;background:radial-gradient(circle at 51% 48%,#ffffff13,#0000 30%),linear-gradient(#0000 70%,#0000005c);position:absolute;inset:5.25rem 0 0}.hero-name{--hero-name-size:clamp(5.75rem, 12.2vw, 12.4rem);pointer-events:none;margin:0;position:absolute;inset:5.25rem 0 0}.hero-name__word{will-change:transform;display:block;position:absolute}.hero-name__word--first{z-index:2;color:#f1f1edf0;font-size:var(--hero-name-size);top:16%;left:6.2vw}.hero-name__word--last{z-index:5;color:var(--white);font-size:var(--hero-name-size);top:56%;right:3vw}.hero-spotlight,.hero-dust{z-index:4;pointer-events:none;will-change:transform;position:absolute;inset:5.25rem 0 0;overflow:hidden}.hero-spotlight{mix-blend-mode:screen}.hero-spotlight:before{filter:blur(8px);content:"";opacity:.96;background:radial-gradient(at 56% 53%,#f2f1e91f,#e4e7e00b 36%,#0000 64%),conic-gradient(from 136deg at 27% -8%,#0000 0deg,#fffcef09 4deg,#f7f5ea2e 17deg,#e5e8e116 32deg,#0000 42deg);position:absolute;inset:-7% -5% -10%;-webkit-mask-image:radial-gradient(at 56% 48%,#000 0 50%,#000000c7 72%,#0000 96%);mask-image:radial-gradient(at 56% 48%,#000 0 50%,#000000c7 72%,#0000 96%)}.hero-dust{contain:paint;clip-path:polygon(20% 0,35% 0,74% 92%,40% 92%);opacity:.62;-webkit-mask-image:linear-gradient(#0000,#000 12% 82%,#0000);mask-image:linear-gradient(#0000,#000 12% 82%,#0000)}.hero-dust:before,.hero-dust:after{content:"";will-change:transform, opacity;background-repeat:repeat;position:absolute;inset:-12%}.hero-dust:before{background-image:radial-gradient(circle at 23% 31%,#fffceeeb 0 .75px,#0000 1.45px),radial-gradient(circle at 72% 68%,#ecefe6c7 0 1px,#0000 1.8px);background-position:0 0,73px 41px;background-size:247px 211px,331px 277px;animation:15s linear infinite hero-dust-drift}.hero-dust:after{filter:blur(.3px);background-image:radial-gradient(circle at 62% 26%,#fffcf1a8 0 .65px,#0000 1.35px),radial-gradient(circle at 37% 77%,#e6e9e28a 0 1.2px,#0000 2px);background-position:89px 18px,17px 106px;background-size:293px 239px,401px 317px;animation:22s linear -8s infinite reverse hero-dust-drift}@keyframes hero-dust-drift{0%{opacity:.48;transform:translate(-1.5%,4%)}50%{opacity:.92}to{opacity:.56;transform:translate(3.5%,-7%)}}.hero-name__scroll,.hero-name__text{display:block}.hero-name__scroll{will-change:transform;overflow:hidden}.hero-name__word--first .hero-name__scroll{margin-inline-end:-.1em;padding-inline-end:.1em}.hero-name__text{letter-spacing:-.085em;text-transform:uppercase;text-shadow:0 1rem 4rem #00000038;will-change:transform;font-weight:570;line-height:.78}.hero-name__word--last .hero-name__text{font-family:var(--font-outfit), "Helvetica Neue", sans-serif}.hero-portrait{z-index:3;pointer-events:none;will-change:transform;position:absolute;inset:5.25rem 0 0}.hero-portrait__scroll{transform-origin:52% 100%;will-change:transform;position:absolute;inset:0}.hero-portrait__image{object-fit:contain;filter:grayscale()contrast(1.14)brightness(1.03)drop-shadow(0 1.8rem 3.5rem #00000085);image-rendering:auto;transform-origin:bottom;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;width:auto;max-width:none;height:min(87svh,61vw);position:absolute;bottom:-2vh;left:50%;transform:translate(-50%)}.hero-summary{z-index:6;will-change:transform, opacity;width:min(31vw,29rem);position:absolute;bottom:2.3rem;left:3vw}.hero-role{min-width:0}.hero-role>p{color:var(--muted);letter-spacing:.11em;text-transform:uppercase;margin:0 0 .55rem;font-size:.65rem;font-weight:620}.hero-phrase{letter-spacing:-.04em;min-height:2.35em;font-size:clamp(1.35rem,2.15vw,2.35rem);font-weight:520;line-height:1.08;display:block;position:relative;overflow:hidden}.hero-phrase>span{animation:phrase-in .65s var(--ease) both;position:absolute;inset:0 auto auto 0}.hero-availability{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.7rem;margin:1.15rem 0 0;font-size:.66rem;display:flex}.hero-availability span{background:#b4bea8;border-radius:50%;width:.45rem;height:.45rem;box-shadow:0 0 .8rem #b4bea873}.hero-socials{z-index:6;will-change:transform, opacity;flex-direction:column;gap:.62rem;width:min(11rem,16vw);display:flex;position:absolute;top:31.5%;right:3vw}.hero-socials>span{color:var(--dim);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.5rem;font-size:.56rem;font-weight:650}.hero-socials a{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;will-change:transform;justify-content:space-between;align-items:center;gap:1rem;padding:.18rem 0;font-size:.62rem;font-weight:620;transition:color .22s;display:flex}.hero-socials a:hover{color:var(--white)}.hero-socials svg{width:.75rem}.hero-scroll{z-index:6;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;will-change:transform, opacity;align-items:center;gap:.7rem;font-size:.58rem;font-weight:650;transition:color .25s;display:flex;position:absolute;bottom:2.3rem;right:3vw}.hero-scroll:hover{color:var(--white)}.hero-scroll svg{width:.9rem}.skills-section{min-height:145vh;padding:21vh 0 18vh}.skills-section .camera-plane{transform-origin:50%;width:108vw;margin-left:-4vw}.skills-section h2,.contributions-section h2,.vision-section>.camera-plane>h2,.contact-section>.camera-plane>h2{letter-spacing:-.07em;margin:0;font-size:clamp(3.5rem,8.2vw,9rem);font-weight:540;line-height:.88}.skills-section h2{text-align:left;width:min(11ch,78vw);margin:0 0 14vh 11vw;font-size:clamp(3.4rem,7.2vw,7.8rem)}.skills-list{border-top:1px solid var(--line);width:104vw;margin-left:-2vw}.skill-line{border-bottom:1px solid var(--line);will-change:transform;grid-template-columns:clamp(10rem,14vw,14rem) 1fr;align-items:center;gap:4vw;min-height:10.5rem;padding:1rem 7vw;transition:opacity .35s,background .35s;display:grid}.skill-line h3{color:var(--dim);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.65rem;font-weight:650}.skill-line>div{flex-wrap:wrap;align-items:center;gap:.2rem 0;display:flex}.skill-line>div span{color:var(--muted);letter-spacing:-.055em;transition:color .26s ease, transform .36s var(--ease);font-size:clamp(1.6rem,3.05vw,3.65rem);font-weight:500}.skill-line>div span:after{color:var(--dim);content:"/";margin:0 .55em;font-weight:300}.skill-line>div span:last-child:after{display:none}.skills-list:has(.skill-line:hover) .skill-line:not(:hover){opacity:.25}.skill-line:hover{background:#ffffff06}.skill-line:hover h3,.skill-line:hover>div span{color:var(--white)}.projects-section{--project-line:#0b0b0a2b;--project-line-strong:#0b0b0a6b;--project-muted:#0b0b0a9e;isolation:isolate;background:var(--black);height:100svh;min-height:42rem;color:var(--paper-ink);overflow:hidden}.projects-section__surface{z-index:0;transform-origin:50% 100%;background:var(--paper);pointer-events:none;will-change:transform;position:absolute;inset:0;transform:scaleY(0)}.projects-depth{z-index:1;pointer-events:none;will-change:transform;position:absolute}.projects-depth--far{opacity:.06;width:180vw;top:33vh;left:13vw;overflow:hidden}.projects-depth--far span{color:#0000;-webkit-text-stroke:1px #0b0b0ab8;letter-spacing:-.085em;text-transform:uppercase;white-space:nowrap;width:max-content;font-size:clamp(9rem,19vw,20rem);font-weight:560;line-height:.75;display:block}.projects-depth--near{z-index:2;inset:0}.projects-depth--near i{transform-origin:0;background:linear-gradient(90deg, transparent, var(--project-line-strong), transparent);width:92vw;height:1px;position:absolute;transform:rotate(45deg)}.projects-depth--near i:first-child{top:10vh;left:35vw}.projects-depth--near i:nth-child(2){top:48vh;left:69vw}.projects-depth--near i:nth-child(3){top:76vh;left:5vw}.projects-section__hud{z-index:8;pointer-events:none;position:absolute;top:6.35rem;left:3vw;right:3vw}.projects-section__eyebrow{border-bottom:1px solid var(--project-line);width:min(48rem,64vw);color:var(--project-muted);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;padding-bottom:.55rem;font-size:.54rem;font-weight:650;display:flex}.projects-section__title{color:var(--paper-ink);letter-spacing:-.06em;text-wrap:balance;will-change:transform, opacity;margin:0;font-size:clamp(2.2rem,4.6vw,5rem);font-weight:540;line-height:.92}.projects-section__position{font-variant-numeric:tabular-nums;align-items:baseline;gap:.8rem;display:flex;position:absolute;top:.9rem;right:0}.projects-section__position span:first-child{letter-spacing:-.08em;font-size:clamp(2.4rem,5.2vw,5.8rem);font-weight:430;line-height:.8}.projects-section__position span:last-child{color:var(--project-muted);letter-spacing:.12em;font-size:.58rem}.projects-section__progress{background:var(--project-line);width:min(25rem,30vw);height:1px;position:absolute;top:4.9rem;right:0;overflow:hidden}.projects-section__progress-bar{transform-origin:0;background:var(--paper-ink);will-change:transform;width:100%;height:100%;display:block;transform:scaleX(0)}.projects-camera{z-index:3;position:absolute;inset:0;overflow:hidden}.projects-track{z-index:2;will-change:transform;position:absolute;top:0;left:0}.project-route-line{z-index:0;transform-origin:0;opacity:.38;background:repeating-linear-gradient(90deg,#0b0b0a57 0 .7rem,#0000 .7rem 1.4rem);height:1px;position:absolute;transform:rotate(45deg)}.project-stop{z-index:1;opacity:.38;transform-origin:50%;transition:opacity .5s ease, transform .7s var(--ease);will-change:transform, opacity;position:absolute;transform:scale(.98)}.project-stop--intro{place-items:center;width:90vw;min-height:56vh;display:grid}.project-intro__content{color:var(--white);will-change:color;flex-direction:column;align-items:center;display:flex}.project-stop--intro h2{color:inherit;letter-spacing:-.095em;text-transform:uppercase;margin:0;font-size:clamp(7rem,19vw,22rem);font-weight:560;line-height:.72}.project-intro__guide{color:inherit;letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:.55rem;margin-top:clamp(2rem,4vh,3.5rem);font-size:.58rem;font-weight:680;display:inline-flex}.project-intro__guide svg{width:1rem;height:1rem;animation:project-guide 1.4s var(--ease) infinite alternate}@keyframes project-guide{to{transform:translate(.28rem,.28rem)}}.project-stop.is-active{z-index:2;opacity:1;transform:scale(1)}.project-stop__index{color:var(--project-muted);letter-spacing:.16em;font-size:.56rem;font-weight:650;position:absolute;top:-1.75rem;left:0}.project-panel{width:90vw;min-height:56vh;color:var(--paper-ink);box-shadow:none;background:0 0;border:0;flex:none;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);align-items:center;gap:clamp(1.75rem,3.2vw,4.5rem);display:grid;position:relative}.project-panel--reversed{grid-template-columns:minmax(0,1fr) minmax(0,.72fr)}.project-stop:nth-child(2n) .project-panel{width:90vw}.project-panel__identity{min-width:0}.project-panel:not(.project-panel--reversed) .project-panel__identity{text-align:right;justify-self:end}.project-panel:not(.project-panel--reversed) .project-panel__identity p{margin-left:auto}.project-panel__identity h3{overflow-wrap:normal;letter-spacing:-.075em;-webkit-hyphens:none;hyphens:none;word-break:normal;max-width:none;margin:0;font-size:clamp(4rem,6.8vw,8.6rem);font-weight:540;line-height:.82}.project-panel__identity p{color:#0b0b0ad1;max-width:38ch;margin:clamp(1.4rem,3vh,2.4rem) 0 0;font-size:clamp(.74rem,.86vw,.92rem);line-height:1.65}.project-panel__media-column{min-width:0}.project-panel--reversed .project-panel__identity{grid-area:1/2}.project-panel--reversed .project-panel__media-column{grid-area:1/1}.project-panel__visual{aspect-ratio:16/9;border:3px solid var(--paper-ink);background:var(--paper-ink);contain:paint;width:100%;position:relative;overflow:hidden}.project-panel .project-media{min-height:0}.project-panel .project-media__asset{filter:none;transition:none}.project-media{will-change:transform;background:#0c0c0c;width:100%;height:100%;min-height:20rem;position:relative;overflow:hidden}.project-media__fallback{color:var(--white);background:linear-gradient(135deg,#ffffff09,#0000 45%),#0c0c0c;flex-direction:column;justify-content:space-between;padding:clamp(1.25rem,2.4vw,2.5rem);display:flex;position:absolute;inset:0}.project-media__fallback span{letter-spacing:-.075em;max-width:7ch;font-size:clamp(2.7rem,6vw,7rem);font-weight:540;line-height:.82}.project-media__fallback small{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;font-size:.58rem;font-weight:650}.project-media__asset{object-fit:cover;filter:saturate(.74)contrast(1.05);width:100%;height:100%;transition:transform .9s var(--ease), filter .6s ease}.project-media__video{z-index:1;position:absolute;inset:0}.projects-page__card:hover .project-media__asset{filter:saturate()contrast(1.02);transform:scale(1.025)}.project-media__light{z-index:2;opacity:0;background:radial-gradient(circle 12rem at var(--card-x) var(--card-y), #ffffff21, transparent 75%);mix-blend-mode:screen;pointer-events:none;transition:opacity .35s;position:absolute;inset:0}.project-media__building{height:100%;min-height:20rem;color:var(--muted);letter-spacing:-.05em;place-items:center;font-size:clamp(2rem,4vw,4.5rem);font-weight:500;display:grid}.project-panel__tech,.projects-page__tech{flex-wrap:wrap;gap:.4rem;margin-top:1.2rem;display:flex}.project-panel__tech span,.projects-page__tech span{border:1px solid var(--line);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding:.32rem .48rem;font-size:.49rem;font-weight:620}.project-panel__tech span{border-color:var(--project-line);color:var(--project-muted)}.project-panel__actions{border-top:0;justify-content:flex-start;align-items:center;gap:.55rem;margin-top:.8rem;padding-top:0;display:flex}.project-panel:not(.project-panel--reversed) .project-panel__actions{justify-content:flex-end}.project-panel__actions a,.project-panel__actions>span,.projects-page__actions a,.projects-page__actions>span{width:fit-content;color:var(--muted);letter-spacing:.09em;text-transform:uppercase;will-change:transform;align-items:center;gap:.5rem;font-size:.58rem;font-weight:650;transition:color .24s;display:inline-flex}.project-panel__actions a:hover,.projects-page__actions a:hover{color:var(--white)}.project-panel__actions a,.project-panel__actions>span{border:1px solid var(--paper-ink);min-height:2.35rem;color:var(--project-muted);padding:.65rem .82rem;transition:background-color .24s,color .24s}.project-panel__actions a:hover{background:var(--paper-ink);color:var(--paper)}.project-panel__actions svg,.projects-page__actions svg{width:.86rem}.all-projects-panel{width:90vw;min-height:56vh;color:var(--paper-ink);box-shadow:none;will-change:transform;background:0 0;border:0;flex:none;justify-content:space-between;align-items:center;gap:2rem;padding:0;display:flex}.all-projects-panel span{letter-spacing:-.075em;max-width:7ch;font-size:clamp(3rem,5.4vw,6.2rem);font-weight:540;line-height:.86}.all-projects-panel svg{flex:none;width:2rem;height:2rem}@keyframes phrase-in{0%{opacity:0;transform:translateY(85%)}}.contributions-section{justify-content:center;min-height:125vh;padding:25vh 5vw 18vh;display:flex}.contributions-section .camera-plane{flex-direction:column;align-items:center;width:min(100vw,84rem);display:flex}.contributions-section h2{text-align:center;margin:0 0 8vh}.contributions-panel{width:100%;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;justify-content:center;margin-top:0;padding:0;display:flex}.contribution-calendar{justify-content:center;width:100%;min-width:0;display:flex}.contribution-calendar__scroll{justify-content:center;width:100%;padding-bottom:.75rem;display:flex;overflow-x:auto}.contribution-calendar .react-activity-calendar{max-width:100%;color:var(--muted);margin:0 auto;font-size:.72rem}.contribution-calendar .react-activity-calendar rect[data-level="0"]{stroke:#ffffff0a;stroke-width:1px;rx:2px;fill:#121212!important}.contribution-calendar .react-activity-calendar rect[data-level="1"]{rx:2px;fill:#1a3d28!important}.contribution-calendar .react-activity-calendar rect[data-level="2"]{rx:2px;fill:#27653f!important}.contribution-calendar .react-activity-calendar rect[data-level="3"]{rx:2px;fill:#349457!important}.contribution-calendar .react-activity-calendar rect[data-level="4"]{rx:2px;fill:#44ce72!important}.contribution-skeleton,.content-loading{border:1px solid var(--line);background:#ffffff04;width:min(100%,52rem);min-height:12rem;margin:0 auto}.contribution-scroll-hint{display:none}.scribble-annotations{justify-content:space-between;gap:2rem;width:min(100%,54rem);margin-bottom:2.5rem;display:flex}.scribble-note{position:relative}.scribble-note--peak{transform:rotate(-1.8deg)}.scribble-note--streak{transform:rotate(1.5deg)}.scribble-note__content{flex-direction:column;gap:.5rem;display:flex}.scribble-note__badge{color:var(--white);letter-spacing:-.02em;padding:.35rem .85rem;font-size:clamp(.78rem,1vw,.95rem);font-weight:500;display:inline-block;position:relative}.scribble-note__badge strong{color:var(--accent);font-weight:650}.scribble-svg{pointer-events:none;position:absolute;overflow:visible}.scribble-svg--circle{width:calc(100% + 1.2rem);height:calc(100% + .7rem);inset:-.35rem -.6rem}.scribble-svg--underline{width:100%;height:1rem;bottom:-.4rem;left:0}.scribble-svg--arrow{flex:none;width:1.6rem;height:1.4rem}.scribble-note__caption{color:var(--muted);letter-spacing:.02em;align-items:center;gap:.4rem;margin:0;font-size:.72rem;font-style:italic;display:inline-flex}.scribble-footer{color:var(--dim);letter-spacing:.06em;text-transform:uppercase;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin-top:2rem;font-size:.72rem;display:flex}.scribble-footer__total strong{color:var(--white)}.scribble-footer__quote{color:var(--muted);text-transform:none;font-style:italic}.blog-section{min-height:120vh;padding:22vh 4vw 18vh}.blog-section>.camera-plane{width:min(90vw,76rem);margin:0 auto}.blog-section>.camera-plane>h2{letter-spacing:-.07em;margin:0 0 5vh;font-size:clamp(3.5rem,8.2vw,9rem);font-weight:540;line-height:.88}.blog-section__featured{border-top:1px solid var(--line-strong);background:0 0;flex-direction:column;padding:3rem 0 0;display:flex}.blog-section__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.blog-section__tag{border:1px solid var(--line);color:var(--accent);letter-spacing:.1em;text-transform:uppercase;padding:.3rem .6rem;font-size:.58rem;font-weight:650}.blog-section__meta{color:var(--dim);letter-spacing:.08em;text-transform:uppercase;gap:.6rem;font-size:.64rem;display:flex}.blog-section__title{letter-spacing:-.05em;margin:0 0 1.5rem;font-size:clamp(1.8rem,3.2vw,3.4rem);font-weight:530;line-height:1.05}.blog-section__title a{transition:color .25s}.blog-section__title a:hover{color:var(--accent)}.blog-section__preview{color:var(--muted);-webkit-line-clamp:7;-webkit-box-orient:vertical;margin:0 0 2.5rem;font-size:clamp(.92rem,1.1vw,1.12rem);line-height:1.7;display:-webkit-box;overflow:hidden}.blog-section__actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding-top:1.5rem;display:flex}.blog-section__btn{border:1px solid var(--white);background:var(--white);color:var(--black);letter-spacing:.1em;text-transform:uppercase;transition:transform .3s var(--ease), background .3s ease, color .3s ease;align-items:center;gap:.6rem;padding:.8rem 1.4rem;font-size:.68rem;font-weight:650;display:inline-flex}.blog-section__btn:hover{color:var(--white);background:0 0}.blog-section__btn svg{width:.9rem;height:.9rem}.blog-section__read-link{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:620;transition:color .24s}.blog-section__read-link:hover{color:var(--white)}.blog-archive-page{background:var(--black);min-height:100vh;color:var(--white);padding:0 4vw 8rem}.blog-archive-page__nav{border-bottom:1px solid var(--line);min-height:5.25rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.62rem;font-weight:650;display:flex}.blog-archive-page__nav a{align-items:center;gap:.7rem;display:inline-flex}.blog-archive-page__header{border-bottom:1px solid var(--line);flex-direction:column;gap:1rem;padding:6rem 0 4rem;display:flex}.blog-archive-page__eyebrow{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;font-size:.65rem;font-weight:650}.blog-archive-page__header h1{letter-spacing:-.06em;margin:0;font-size:clamp(2.5rem,5vw,5.5rem);font-weight:540;line-height:.95}.blog-archive-page__header p{max-width:50ch;color:var(--muted);margin:0;font-size:1.05rem;line-height:1.65}.blog-archive-page__list{grid-template-columns:repeat(auto-fill,minmax(min(100%,34rem),1fr));gap:2.5rem;padding-top:4rem;display:grid}.blog-card{border:1px solid var(--line);background:var(--black-raised);flex-direction:column;justify-content:space-between;padding:2.2rem;transition:border-color .3s;display:flex}.blog-card:hover{border-color:var(--line-strong)}.blog-card__meta{color:var(--dim);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1.2rem;font-size:.64rem;display:flex}.blog-card__category{color:var(--accent);align-items:center;gap:.3rem;font-weight:650;display:inline-flex}.blog-card__category svg,.blog-card__read svg{width:.75rem;height:.75rem}.blog-card__title{letter-spacing:-.04em;margin:0 0 1rem;font-size:1.65rem;font-weight:530;line-height:1.15}.blog-card__title a:hover{color:var(--accent)}.blog-card__summary{color:var(--muted);margin:0 0 1.8rem;font-size:.88rem;line-height:1.65}.blog-card__keywords{flex-wrap:wrap;gap:.4rem;margin-bottom:2rem;display:flex}.blog-card__keywords span{border:1px solid var(--line);color:var(--dim);letter-spacing:.06em;text-transform:uppercase;padding:.2rem .5rem;font-size:.52rem}.blog-card__footer{border-top:1px solid var(--line);padding-top:1.2rem}.blog-card__link{color:var(--white);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.5rem;font-size:.62rem;font-weight:650;transition:color .25s;display:inline-flex}.blog-card__link:hover{color:var(--accent)}.blog-card__link svg{width:.85rem;height:.85rem}.single-article-page{background:var(--black);min-height:100vh;color:var(--white);padding:0 4vw 8rem}.single-article-page__nav{border-bottom:1px solid var(--line);min-height:5.25rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.62rem;font-weight:650;display:flex}.single-article-page__nav a{align-items:center;gap:.7rem;display:inline-flex}.single-article-page__header{flex-direction:column;gap:1.5rem;width:min(100%,52rem);margin:6rem auto 4rem;display:flex}.single-article-page__meta{color:var(--dim);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.66rem;display:flex}.single-article-page__category{color:var(--accent);align-items:center;gap:.35rem;font-weight:650;display:inline-flex}.single-article-page__header h1{letter-spacing:-.06em;margin:0;font-size:clamp(2.4rem,4.5vw,4.8rem);font-weight:540;line-height:1.02}.single-article-page__keywords{flex-wrap:wrap;gap:.4rem;display:flex}.single-article-page__keywords span{border:1px solid var(--line);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding:.25rem .6rem;font-size:.58rem}.single-article-page__content{border-top:1px solid var(--line);width:min(100%,52rem);margin:0 auto;padding-top:3rem}.single-article-page__content p{color:#f1f1ede0;margin:0 0 2rem;font-size:clamp(1.05rem,1.25vw,1.25rem);line-height:1.75}.single-article-page__footer{border-top:1px solid var(--line);width:min(100%,52rem);margin:4rem auto 0;padding-top:3rem}.single-article-page__back-btn{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:650}.single-article-page__back-btn:hover{color:var(--white)}.contact-section{flex-direction:column;justify-content:center;min-height:100vh;padding:10vh 4vw 6vh;display:flex;position:relative;overflow:hidden}.contact-section__surface{z-index:1;background:var(--paper);transform-origin:0;will-change:transform;position:absolute;inset:0}.contact-section>.camera-plane{z-index:2;width:min(112vw,105rem);position:relative}.typeform-contact{grid-template-columns:minmax(24rem,1.1fr) minmax(26rem,1fr);gap:clamp(3rem,6vw,7rem);width:min(90vw,84rem);margin:0 auto 0 0;display:grid}.typeform-contact__info{text-align:left;flex-direction:column;justify-content:space-between;align-items:flex-start;display:flex}.contact-stacked-title{font-family:var(--font-outfit), sans-serif;text-align:left;letter-spacing:-.065em;text-transform:uppercase;color:var(--white);flex-direction:column;align-items:flex-start;margin:0;padding:0;font-size:clamp(4.8rem,9.2vw,10rem);font-weight:650;line-height:.82;transition:color .3s;display:flex}.contact-stacked-title span{display:block}.spatial-root.is-project-light .contact-stacked-title,.spatial-root.is-project-light .typeform-field__label,.spatial-root.is-project-light .typeform-field__num{color:#0b0b0a!important}.spatial-root.is-project-light .typeform-field__input{color:#0b0b0a!important;border-bottom-color:#0b0b0a66!important}.spatial-root.is-project-light .typeform-field__input::placeholder{color:#666660!important}.spatial-root.is-project-light .typeform-field__input:focus{border-bottom-color:#0b0b0a!important}.spatial-root.is-project-light .typeform-contact__email-link{color:#0b0b0a!important}.spatial-root.is-project-light .typeform-contact__copy-btn{color:#444440!important}.spatial-root.is-project-light .typeform-contact__copy-btn:hover{color:#0b0b0a!important}.spatial-root.is-project-light .typeform-contact__socials a{color:#555550!important}.spatial-root.is-project-light .typeform-contact__socials a:hover{color:#0b0b0a!important}.spatial-root.is-project-light .typeform-contact__submit{color:#f1f1ed!important;background:#0b0b0a!important;border-color:#0b0b0a!important}.spatial-root.is-project-light .typeform-contact__submit:hover{color:#0b0b0a!important;background:0 0!important}.typeform-contact__direct-meta{flex-direction:column;align-items:flex-start;gap:1.2rem;margin-top:2rem;display:flex}.typeform-contact__email-row{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.6rem;display:flex}.typeform-contact__email-link{color:var(--white);letter-spacing:-.01em;font-size:.86rem;font-weight:540;transition:color .25s}.typeform-contact__email-link:hover{color:var(--accent)}.typeform-contact__copy-btn{color:var(--muted);background:0 0;border:0;outline:0;justify-content:center;align-items:center;margin-left:.4rem;padding:.25rem;transition:color .2s,transform .2s;display:inline-flex}.typeform-contact__copy-btn:hover{color:var(--white);transform:scale(1.15)}.typeform-contact__copy-btn svg{width:.95rem;height:.95rem}.typeform-contact__socials{flex-wrap:wrap;justify-content:flex-start;gap:1.4rem;display:flex}.typeform-contact__socials a{color:var(--dim);letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;font-weight:650;transition:color .24s}.typeform-contact__socials a:hover{color:var(--white)}.typeform-contact__form{flex-direction:column;gap:1.5rem;display:flex}.typeform-field{flex-direction:column;gap:.35rem;display:flex}.typeform-field__label{color:var(--white);letter-spacing:-.02em;align-items:baseline;gap:.6rem;font-size:clamp(.95rem,1.1vw,1.15rem);font-weight:520;display:flex}.typeform-field__num{color:var(--accent);letter-spacing:.06em;font-size:.75rem;font-weight:650}.typeform-field__counter{color:var(--muted);letter-spacing:.02em;margin-left:auto;font-size:.68rem;font-weight:450}.spatial-root.is-project-light .typeform-field__counter{color:#666660!important}.typeform-field__input{resize:vertical;border:0;border-bottom:1px solid var(--line-strong);width:100%;color:var(--white);letter-spacing:-.02em;background:0 0;border-radius:0;outline:0;padding:.45rem 0;font-size:clamp(1rem,1.3vw,1.3rem);font-weight:460;transition:border-color .25s}.typeform-field__input::placeholder{color:#444440}.typeform-field__input:focus{border-color:var(--white)}.typeform-field__textarea{min-height:3.5rem}.typeform-security{visibility:hidden!important;opacity:0!important;pointer-events:none!important;height:0!important;display:none!important;overflow:hidden!important}.typeform-security p{color:var(--dim);margin:0;font-size:.68rem}.typeform-contact__actions{flex-wrap:wrap;align-items:center;gap:1.2rem;padding-top:.5rem;display:flex}.typeform-contact__submit{border:1px solid var(--white);background:var(--white);color:var(--black);letter-spacing:.1em;text-transform:uppercase;transition:background .25s ease, color .25s ease, transform .25s var(--ease);align-items:center;gap:.75rem;padding:.8rem 1.5rem;font-size:.65rem;font-weight:700;display:inline-flex}.typeform-contact__submit:hover{color:var(--white);background:0 0}.typeform-contact__submit:disabled{opacity:.3;cursor:not-allowed}.typeform-contact__feedback{color:var(--muted);letter-spacing:.02em;margin:0;font-size:.72rem}.typeform-contact__feedback.is-success{color:#4ade80}.typeform-contact__feedback.is-error{color:#f87171}.projects-page{background:linear-gradient(#ffffff09 1px, transparent 1px) 0 0 / 100% 9rem, var(--black);min-height:100vh;padding:0 3vw 8rem}.projects-page__nav{border-bottom:1px solid var(--line);min-height:5.25rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.62rem;font-weight:650;display:flex}.projects-page__nav a{align-items:center;gap:.7rem;display:inline-flex}.projects-page__nav svg{width:.9rem}.projects-page__header{grid-template-columns:13rem 1fr;align-items:end;gap:4vw;min-height:82vh;padding:12rem 0 5rem;display:grid}.projects-page__header p{color:var(--muted);letter-spacing:.13em;text-transform:uppercase;margin:0 0 1rem;font-size:.65rem;font-weight:650}.projects-page__header h1{letter-spacing:-.08em;max-width:10ch;margin:0;font-size:clamp(4rem,9.5vw,10rem);font-weight:540;line-height:.82}.projects-page__grid{border-top:1px solid var(--line);grid-template-columns:repeat(12,1fr);gap:12rem 2vw;padding-top:7rem;display:grid}.projects-page__card{content-visibility:auto;contain-intrinsic-size:0 850px;grid-column:span 7}.projects-page__card:nth-child(3n+2){grid-column:7/span 6;margin-top:12rem}.projects-page__card:nth-child(3n){grid-column:2/span 8}.projects-page__media{border:1px solid var(--line);height:min(54vw,39rem);padding:.45rem}.projects-page__media .project-media{height:100%;min-height:0}.projects-page__copy{grid-template-columns:minmax(12rem,.62fr) 1fr;gap:2rem;margin-top:1.8rem;display:grid}.projects-page__copy h2{letter-spacing:-.065em;margin:0;font-size:clamp(2rem,4vw,4.6rem);font-weight:520;line-height:.9}.projects-page__details>p{color:var(--muted);margin:0;font-size:.72rem;line-height:1.7}.projects-page__details>p+p{margin-top:1rem}.projects-page__actions{align-items:center;gap:1.4rem;margin-top:1.5rem;display:flex}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:980px){.site-nav__links{display:none}.site-nav__menu{border:1px solid var(--line);background:var(--black);justify-self:end;place-items:center;width:2.5rem;height:2.5rem;display:grid}.site-nav__menu svg{width:1rem}.mobile-nav{z-index:105;border-bottom:1px solid var(--line);background:var(--black);animation:menu-in .4s var(--ease) both;flex-direction:column;padding:1rem 3vw 2rem;display:flex;position:fixed;top:5.25rem;left:0;right:0}.mobile-nav a{border-bottom:1px solid var(--line);letter-spacing:-.03em;padding:1rem 0;font-size:1.35rem;font-weight:520}.spatial-root.is-project-light .site-nav__menu{background:var(--paper);color:var(--paper-ink);border-color:#0b0b0a33}.spatial-root.is-project-light .mobile-nav{background:var(--paper);color:var(--paper-ink);border-bottom-color:#0b0b0a24}.spatial-root.is-project-light .mobile-nav a{border-bottom-color:#0b0b0a1f}}@media (max-width:900px){.pointer-light{display:none}.hero-name{--hero-name-size:clamp(4.8rem, 14.5vw, 8rem)}.hero-name__word--first{top:22%}.hero-name__word--last{top:52%}.hero-portrait__image{height:min(76svh,88vw)}.hero-summary{width:min(42vw,24rem)}.hero-socials{width:9rem;top:32%}.skills-section .camera-plane,.blog-section>.camera-plane,.vision-section>.camera-plane,.contact-section>.camera-plane,.contributions-section .camera-plane{width:100%;min-width:0;max-width:100%;margin-left:0;transform:none!important}.skills-section{min-height:auto;padding:10rem 0}.skills-section h2{margin:0 1.2rem 6rem}.skill-line{grid-template-columns:8rem 1fr;padding-inline:1.2rem;transform:none!important}.projects-section{background:var(--black);height:auto;padding:9rem 1.2rem;overflow:visible}.projects-section__surface{inset:0;clip-path:none!important;transform:none!important}.projects-depth,.project-route-line{display:none}.projects-section__hud{position:relative;top:auto;left:auto;right:auto}.projects-section__eyebrow{width:100%}.projects-section__title{margin-top:.6rem;position:relative;top:auto;left:auto}.projects-section__position{justify-content:flex-end;margin-top:1.5rem;position:relative;top:auto;right:auto}.projects-section__progress{display:none}.projects-camera{position:relative;inset:auto;overflow:visible}.projects-track{flex-direction:column;gap:7rem;padding:7rem 0 0;display:flex;position:relative;top:auto;left:auto;width:auto!important;height:auto!important;transform:none!important}.project-stop{opacity:1;width:100%;position:relative;top:auto!important;left:auto!important;transform:none!important}.project-stop--intro{min-height:50svh}.project-intro__content{color:var(--paper-ink)!important}.project-panel,.project-stop:nth-child(2n) .project-panel{grid-template-columns:1fr;gap:0;width:100%;min-height:auto;transform:none!important}.project-panel__identity{border:0;min-height:auto;padding:0 0 2rem;text-align:left!important;grid-area:1/1!important;justify-self:stretch!important}.project-panel__media-column{grid-area:2/1!important}.project-panel__visual{border:3px solid var(--paper-ink);min-height:55vw}.project-panel__actions{margin-top:.8rem}.project-panel:not(.project-panel--reversed) .project-panel__actions{justify-content:flex-start}.all-projects-panel{width:100%;min-height:25rem}.contributions-section,.vision-section,.contact-section{min-height:auto;padding:11rem 1.2rem}.contributions-section h2,.contact-section>.camera-plane>h2{margin-left:0}.contributions-panel{width:100%;min-width:0;max-width:100%}.contributions-section .camera-plane{align-items:stretch}.contribution-calendar,.contribution-calendar__scroll{min-width:0;max-width:100%}.contribution-calendar__scroll{justify-content:flex-start}.vision-section>.camera-plane>h2{margin-right:0}.vision-layout{gap:7rem;min-height:auto;display:grid}.vision-group,.vision-group--1,.vision-group--2{width:100%;position:relative;top:auto;left:auto;right:auto}.contact-panel{grid-template-columns:1fr;gap:6rem;width:100%}.typeform-contact{grid-template-columns:minmax(0,1fr);gap:5rem;width:100%;margin:0}.contact-panel__copy{min-height:36rem}.projects-page__header{grid-template-columns:1fr}.projects-page__card,.projects-page__card:nth-child(3n+2),.projects-page__card:nth-child(3n){grid-column:1/-1;margin-top:0}}@media (max-width:600px){.site-nav{min-height:4.6rem;padding-inline:max(1rem, env(safe-area-inset-left)) max(1rem, env(safe-area-inset-right))}.site-nav__name{align-items:center;min-height:2.75rem;display:inline-flex}.site-nav__menu{width:2.75rem;height:2.75rem}.mobile-nav{padding-inline:1rem;top:4.6rem}.hero-section{min-height:100svh;padding:4.6rem 1rem 1.2rem}.hero-section:before{background:radial-gradient(circle at 54% 43%,#ffffff14,#0000 34%),linear-gradient(#0000 67%,#00000085);inset:4.6rem 0 0}.hero-name{--hero-name-size:clamp(3.4rem, 17vw, 4.8rem);inset:4.6rem 0 0}.hero-name__word--first{top:11.5%;left:1rem}.hero-name__word--last{top:20.5%;left:1rem;right:auto}.hero-portrait{inset:4.6rem 0 0}.hero-portrait__image{height:min(50svh,90vw);bottom:clamp(9rem,24svh,13rem);left:56%;transform:translate(-50%)}.hero-summary{z-index:10;width:min(76vw,18rem);bottom:4.3rem;left:1rem}.hero-role>p{margin-bottom:.35rem;font-size:.56rem}.hero-phrase{min-height:2.2em;font-size:clamp(.95rem,4.2vw,1.08rem)}.hero-phrase>span{display:block;position:relative;inset:auto}.hero-availability{gap:.45rem;margin-top:.65rem;font-size:.54rem}.hero-socials{top:auto;bottom:max(.45rem, env(safe-area-inset-bottom));z-index:10;flex-flow:row;justify-content:flex-start;align-items:center;gap:clamp(.65rem,3.3vw,1rem);width:auto;display:flex;left:1rem;right:1rem}.hero-socials>span{display:none}.hero-socials a{gap:.2rem;min-height:2.5rem;padding:.35rem 0;font-size:clamp(.47rem,2.1vw,.54rem)}.hero-socials svg{width:.62rem}.hero-scroll{display:none}.skills-section h2,.contributions-section h2,.vision-section>.camera-plane>h2,.contact-section>.camera-plane>h2{font-size:clamp(3.3rem,15vw,5.3rem)}.skills-section h2{width:min(10ch,100vw - 2rem);margin-inline:1rem;font-size:clamp(3rem,13vw,4.4rem)}.skills-section{padding:8rem 0 7rem}.skills-section h2{margin-bottom:4.5rem}.skills-list{width:100%;margin-left:0}.skill-line{grid-template-columns:1fr;gap:1.2rem;min-height:auto;padding-block:2rem;padding-inline:1rem}.skill-line>div span{font-size:1.45rem}.project-panel__visual,.project-panel .project-media{min-height:0}.projects-section{padding:0 1.2rem 8rem}.projects-track{gap:6rem;padding-top:4.6rem}.project-stop--intro{min-height:68svh}.project-stop--intro h2{max-width:100%;font-size:clamp(4rem,20vw,5.1rem);line-height:.78}.project-intro__guide{margin-top:2rem}.project-panel__identity{padding-bottom:2rem;padding-left:0;padding-right:0}.project-panel__identity h3{font-size:clamp(3rem,14vw,3.65rem)}.project-panel__identity p,.project-panel:not(.project-panel--reversed) .project-panel__identity p{max-width:none;margin:1.15rem 0 0;font-size:.86rem;line-height:1.58}.project-panel__actions{margin-top:.8rem}.project-panel__actions a,.project-panel__actions>span{min-height:2.75rem}.all-projects-panel{min-height:22rem;padding:0}.all-projects-panel span{font-size:3.5rem}.contributions-panel{margin-top:2.25rem;padding:0}.contributions-section{padding:8rem 1.2rem 7rem;overflow:hidden}.contributions-section h2{text-align:left;margin-bottom:4rem}.scribble-annotations{flex-direction:column;align-items:flex-start;gap:1.65rem;width:100%;margin-bottom:2.5rem}.scribble-note--peak,.scribble-note--streak{max-width:calc(100vw - 3rem)}.scribble-note--streak{align-self:flex-end}.contribution-calendar,.contribution-calendar__scroll{width:100%}.contribution-calendar__scroll{overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x;overflow-x:auto}.contribution-calendar__scroll::-webkit-scrollbar{display:none}.contribution-calendar .react-activity-calendar{flex:none;width:max-content;min-width:69rem;max-width:none;margin:0}.contribution-scroll-hint{width:100%;color:var(--dim);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;margin:0 0 .7rem;font-size:.56rem;font-weight:650;display:flex}.contribution-scroll-hint span{color:var(--muted);font-size:.85rem}.scribble-footer{justify-content:flex-start;line-height:1.6}.blog-section{min-height:auto;padding:8rem 1.2rem 7rem}.blog-section>.camera-plane{width:100%}.blog-section>.camera-plane>h2{margin-bottom:3.5rem;font-size:clamp(3.5rem,15vw,5rem)}.blog-section__featured{padding-top:2.25rem}.blog-section__header{align-items:flex-start}.blog-section__meta{width:100%}.blog-section__title{font-size:clamp(2rem,9.4vw,2.55rem);line-height:1.02}.blog-section__preview{-webkit-line-clamp:6;margin-bottom:2rem;font-size:.98rem;line-height:1.62}.blog-section__actions{align-items:stretch}.blog-section__btn,.blog-section__read-link{min-height:2.75rem}.blog-section__read-link{align-items:center;display:inline-flex}.vision-layout{margin-top:7rem}.vision-group>header{flex-direction:column;align-items:flex-start;padding-bottom:2rem}.vision-group>header h3{font-size:3rem}.vision-item{min-height:8rem}.contact-panel{margin-top:7rem}.contact-panel__copy{min-height:auto}.contact-panel__reasons{margin-top:3rem}.contact-panel__email{margin-top:4rem}.contact-section{min-height:auto;padding:8rem 1.2rem 7rem;overflow:hidden}.contact-section>.camera-plane,.typeform-contact{width:100%;min-width:0;max-width:100%}.typeform-contact{grid-template-columns:minmax(0,1fr);gap:5.5rem;margin:0;display:grid}.typeform-contact__info{gap:4.5rem}.contact-stacked-title{max-width:100%;color:var(--paper-ink);font-size:clamp(4.6rem,22vw,5.6rem)}.typeform-contact__direct-meta{gap:1.4rem;width:100%;margin-top:0}.typeform-contact__email-row{width:100%}.typeform-contact__email-link{min-height:2.75rem;color:var(--paper-ink);overflow-wrap:anywhere;align-items:center;display:inline-flex}.typeform-contact__copy-btn{color:#0b0b0a9e;width:2.75rem;height:2.75rem;margin-left:0}.typeform-contact__socials{gap:.25rem 1rem;width:100%}.typeform-contact__socials a{color:#0b0b0a9e;align-items:center;min-height:2.75rem;display:inline-flex}.typeform-contact__form{gap:2.25rem;width:100%;min-width:0}.typeform-field__label{color:var(--paper-ink);grid-template-columns:auto minmax(0,1fr);line-height:1.35;display:grid}.typeform-field__num{color:#0b0b0aa8}.typeform-field__counter{color:#0b0b0a94;grid-column:2;margin-left:0}.typeform-field__input{min-height:2.75rem;color:var(--paper-ink);border-bottom-color:#0b0b0a59;padding:.72rem 0;font-size:1rem}.typeform-field__input::placeholder{color:#0b0b0a6b}.typeform-field__textarea{min-height:7rem}.typeform-contact__submit{border-color:var(--paper-ink);background:var(--paper-ink);width:100%;min-height:3.25rem;color:var(--paper);justify-content:center}.projects-page{padding-inline:1rem}.projects-page__nav span{display:none}.projects-page__header{min-height:72vh}.projects-page__header h1{font-size:clamp(4rem,19vw,6.6rem)}.projects-page__grid{gap:7rem;padding-top:4rem}.projects-page__media{height:68vw}.projects-page__copy{grid-template-columns:1fr}}@media (max-width:340px){.hero-name__word--last .hero-name__text{letter-spacing:-.13em}}@media (pointer:coarse){.pointer-light{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.pointer-light{display:none}.camera-plane,[data-hero-depth],.hero-name__scroll,.hero-portrait__scroll,.projects-track,.project-panel,.skill-line,.spatial-grid__back,.spatial-grid__front{transform:none!important}.projects-section{height:auto;padding:9rem 3vw;overflow:visible}.projects-section__surface{transform:none!important}.project-intro__content{color:var(--paper-ink)!important}.projects-depth,.project-route-line{display:none}.projects-section__hud{position:relative;top:auto;left:auto;right:auto}.projects-section__title{position:relative;top:auto;left:auto}.projects-section__progress{display:none}.projects-camera{position:relative;inset:auto;overflow:visible}.projects-track{flex-direction:column;gap:7rem;padding-top:7rem;display:flex;position:relative;top:auto;left:auto;width:auto!important;height:auto!important}.project-stop{opacity:1;position:relative;top:auto!important;left:auto!important;transform:none!important}}@keyframes menu-in{0%{opacity:0;transform:translateY(-1rem)}}
