@font-face{font-family:Inter;src:url(/assets/inter-latin.woff2) format("woff2");font-style:normal;font-weight:100 900;font-display:swap}:root{--bg: #000;--red: #ff2116;--red-deep: #c4130c;--ink: #eceef2;--silver: #c9ccd3;--silver-dim: #7d8088;--chrome: linear-gradient( 115deg, #4b4d52 0%, #e9ebef 22%, #8d9098 42%, #ffffff 55%, #6c6f76 72%, #d7dae0 88%, #3f4146 100% )}*{box-sizing:border-box}html{background:#000;color:var(--ink);color-scheme:dark;scroll-behavior:auto}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;font-size:15px;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0}a{color:inherit;text-decoration:none}button:disabled{cursor:default;opacity:.35}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--red);outline-offset:6px}::selection{background:var(--red);color:#000}p{line-height:1.65}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:450}h1,h2{letter-spacing:-.065em}svg{display:block}header{height:100px;position:absolute;z-index:20;top:0;left:0;width:100%;display:flex;align-items:center;padding:0 3.3vw;gap:50px;background:linear-gradient(#000000f2 0%,#000000b8 60%,transparent)}header nav a,.brand-name,.language{text-shadow:0 0 10px #000,0 0 3px #000}.brand{display:flex;align-items:center;gap:16px;margin-right:auto}.mark{width:61px;height:35px}.brand-name{font-size:9px;line-height:1.4;letter-spacing:.1em;color:#a6a39e}header nav{display:flex;gap:43px}header nav a{text-transform:uppercase;font-size:12px;letter-spacing:.055em;position:relative}header nav a:before{content:"";position:absolute;width:5px;height:5px;background:var(--red);border-radius:50%;left:-12px;top:4px;opacity:0}header nav a.active:before,header nav a:hover:before{opacity:1}.language{display:flex;gap:7px;font:11px monospace}.language button{padding:5px 1px;color:#817d77}.language button[aria-pressed=true]{color:#eeeae4}.language>span{color:#5d5855;padding-top:5px}.mobile-menu{display:none}.red{color:var(--red)}.dim{color:#a19d97}.red-dot{display:inline-block;width:6px;height:6px;background:var(--red);border-radius:50%;flex-shrink:0}.mono,.eyebrow,.section-label,.command{display:flex;align-items:center;gap:10px;color:#a6a19b;font-size:9px}.section-label{display:flex;gap:12px;align-items:center;text-transform:uppercase}.text-link{font-size:12px;padding:10px 0;display:inline-flex;align-items:center;gap:15px;border-bottom:1px solid #55514b;transition:color .2s,border-color .2s}.text-link:hover{color:var(--red);border-color:var(--red)}.text-link>span:last-child{margin-left:10px}.experience{height:100svh;min-height:730px;position:relative;overflow:hidden;background:#000}.webgl-host{position:absolute;inset:0;touch-action:none}.webgl-host canvas{display:block;width:100%;height:100%}.hero-bottom{position:absolute;bottom:44px;left:3.4vw;right:3.4vw;display:flex;align-items:center;justify-content:space-between;gap:20px}.switch{display:flex;width:max-content;border:1px solid #34312e;border-radius:32px;padding:4px;background:#0a0a0cbd;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.switch button{padding:10px 18px;border-radius:25px;font:10px monospace;text-transform:uppercase;letter-spacing:.03em;color:#aaa49e;transition:background .2s,color .2s}.switch button.active{background:#e8e4dd;color:#0b0b0b}.switch button:not(.active):hover{color:#fff;background:#202020}.experience-keyboard{position:absolute;bottom:105px;left:3.4vw;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.experience-keyboard:focus{width:auto;height:auto;clip-path:none;background:#090909;padding:12px;z-index:5}.loading{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);display:flex;flex-direction:column;gap:14px;font:10px monospace;text-transform:uppercase;letter-spacing:.08em;background:#090909e8;padding:25px;border:1px solid #262323;pointer-events:none}.loading-line{display:block;width:160px;height:1px;background:linear-gradient(90deg,var(--red),#402c2b);animation:load 1.5s infinite}@keyframes load{50%{opacity:.3}}.scene-error{position:absolute;top:40%;left:50%;transform:translate(-50%);max-width:500px;width:80%;padding:25px;background:#101010;border:1px solid #853c36;z-index:6;font-size:13px}.error-index{position:absolute;bottom:200px;left:50%;transform:translate(-50%)}.static-hero{position:absolute;right:10%;top:48%;max-width:400px}.static-hero p{font-size:25px}.motion-toggle{position:fixed;bottom:10px;right:3.4vw;font-size:9px;color:#aaa39b;z-index:25;background:#090909dd;border-radius:15px;padding:5px 9px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.page-wrap{padding:150px 6.2vw 90px}.command{color:#8e8881;font-size:10px}.source-note{color:#8d8781;font-size:10px;margin-top:36px}.about-title{font-size:clamp(65px,16vw,245px);line-height:.86;margin:50px 0 100px;letter-spacing:-.085em}.about-title span{display:block;font-size:18px;letter-spacing:.05em;color:#9b948b;margin-top:35px}.about-opening{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;margin-bottom:150px}.bio p:first-child{font-size:26px;letter-spacing:-.02em;line-height:1.5}.bio p+p{color:#a49d94;font-size:15px;margin-top:32px}.approach-section{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;border-top:1px solid #3a342e;padding-top:35px;margin-bottom:125px}.approach-section h2,.timeline h2,.skills-section h2{font-size:38px;letter-spacing:-.045em}.approach-label{position:relative}.about-sculpture{position:relative;width:100%;height:340px;margin-top:30px;overflow:hidden;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse,black 38%,transparent 73%);mask-image:radial-gradient(ellipse,black 38%,transparent 73%)}.approaches section{display:grid;grid-template-columns:30px 1fr;column-gap:15px;padding:0 0 35px;margin-bottom:35px;border-bottom:1px solid #36312d}.approaches h3{font-size:24px;letter-spacing:-.03em;margin-bottom:15px}.approaches .mono{padding-top:5px;font-size:10px}.approaches p{grid-column:2;color:#a9a199;font-size:14px;margin-bottom:0}.timeline,.skills-section{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;border-top:1px solid #3a342e;padding-top:35px;margin-bottom:115px}.timeline-row{display:grid;grid-template-columns:110px 1fr;gap:22px;padding-bottom:28px;margin-bottom:28px;border-bottom:1px solid #34302c}.timeline-row>.mono{color:var(--red);font-size:10px;padding-top:4px}.timeline-row h3{font-size:20px;margin-bottom:13px}.timeline-row p{font-size:12px;margin:0 0 8px}.skills-cloud{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:40px}.skills-cloud span,.tags span{padding:10px 13px;border:1px solid #403931;border-radius:3px;font-size:11px;color:#c0b7ab}.skills-section h3{font-size:16px}.certificates{display:flex;gap:10px}.certificates>div{flex:1;border-top:1px solid #554637;padding-top:16px;display:flex;flex-direction:column;gap:9px}.certificates strong{font-size:21px;font-weight:450}.certificates span{font:10px monospace}.interests{border-top:1px solid #3a342e;padding-top:35px}.interests p{font-size:clamp(26px,3.7vw,55px);line-height:1.35;letter-spacing:-.04em;max-width:1000px;margin:40px 0}.contact-page h1{font-size:clamp(100px,17vw,260px);line-height:.86;position:relative;margin:65px 0;letter-spacing:-.075em}.contact-info{display:grid;grid-template-columns:1fr;border-top:1px solid #3a3c42;padding:30px 0 40px}footer{margin:20px 3.4vw 0;border-top:1px solid #3e362e;padding:40px 0 45px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;font-size:12px}.footer-top p{font-size:12px;margin-top:20px;color:var(--silver-dim)}.footer-top>a,.footer-top>.footer-links{justify-self:end}.footer-nav{display:flex;flex-direction:column;gap:12px;justify-self:center}.footer-name{font-size:19.5vw;line-height:1.05;letter-spacing:-.09em;font-weight:520;position:relative;margin:55px 0 30px;color:#dcd5c9}.footer-bottom{border-top:1px solid #3e362e;padding-top:20px;display:flex;justify-content:space-between;color:#a99c8d;font-size:9px}.project-dialog{border:1px solid #4a4138;padding:0;max-width:950px;width:calc(100% - 50px);max-height:90svh;background:#0b0b0b;color:#ebe5dc;overscroll-behavior:contain}.project-dialog::backdrop{background:#000b;-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px)}.dialog-inner{padding:30px 50px 40px}.detail-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:25px;border-bottom:1px solid #39332e;margin-bottom:38px;font-size:10px}.detail-top>span{display:flex;align-items:center;gap:10px}.detail-top button{display:flex;align-items:center;gap:20px}.detail-top button span{font-size:25px}.project-dialog h2{font-size:clamp(42px,6vw,85px);line-height:1.03;margin:20px 0 38px}.detail-section{border-top:1px solid #39332e;padding:24px 0;display:grid;grid-template-columns:170px 1fr;gap:25px}.detail-section>.mono{color:#a79c8e;padding-top:5px}.detail-section p{font-size:14px;margin:0}.tags{display:flex;gap:8px;flex-wrap:wrap}.detail-actions{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #39332e;padding-top:15px}.detail-actions>.mono{font-size:9px;max-width:300px;line-height:1.5}.skip-link{position:fixed;top:10px;left:10px;z-index:100;background:#ede5db;color:#080808;padding:12px;transform:translateY(-160%)}.skip-link:focus{transform:none}@media(min-width:1600px){.hero-bottom{bottom:50px}}@media(max-width:1000px){.page-wrap{padding:140px 5vw 70px}.about-opening,.approach-section,.timeline,.skills-section{gap:6%;grid-template-columns:1fr 1.3fr}.bio p:first-child{font-size:22px}.timeline-row{grid-template-columns:1fr;gap:12px}}@media(max-width:650px){header{height:82px;padding:0 22px;gap:18px}.brand-name{display:none}.mark{width:50px;height:29px}.mobile-menu{display:block;font-size:19px;order:3;padding:5px}.language{font-size:10px;gap:5px}.language button{padding:7px 3px}header nav{display:none;position:absolute;top:76px;left:15px;right:15px;background:#101010f5;border:1px solid #37312c;padding:30px;gap:30px;flex-direction:column}header nav.is-open{display:flex}header nav a{font-size:19px}.experience{min-height:740px}.eyebrow{font-size:8px}.hero-bottom{left:22px;right:22px;bottom:45px;gap:10px;flex-wrap:wrap}.switch button{padding:10px 13px;font-size:9px}.motion-toggle{right:22px;font-size:8px;bottom:10px}.page-wrap{padding:117px 22px 50px}.about-title{font-size:22vw;margin:45px 0 60px;overflow-wrap:anywhere}.about-title span{font-size:12px;margin-top:23px;letter-spacing:.035em}.about-opening,.approach-section,.timeline,.skills-section{display:block;margin-bottom:65px}.bio p:first-child{font-size:22px}.bio p+p{font-size:14px}.approach-section h2,.timeline h2,.skills-section h2{font-size:34px;margin-bottom:35px}.about-sculpture{width:65%;height:220px;margin:0 0 35px auto}.approaches h3{font-size:23px}.timeline-row{grid-template-columns:1fr}.interests p{font-size:29px}.contact-page h1{font-size:27vw;margin:60px 0}.footer-top{grid-template-columns:1fr 1fr;gap:25px}.footer-top>a,.footer-top>.footer-links{grid-column:1/3;justify-self:start;margin-top:10px}.footer-nav{justify-self:end}.footer-name{font-size:20vw;margin:45px 0 25px}.footer-bottom{font-size:8px;gap:15px;flex-wrap:wrap}.footer-bottom span:last-child{display:none}footer{margin:20px 22px 0;padding-top:30px}.project-dialog{width:calc(100% - 22px);max-height:92svh}.dialog-inner{padding:20px}.detail-top{font-size:9px;margin-bottom:27px;gap:8px}.detail-top button{gap:9px}.detail-section{grid-template-columns:1fr;gap:14px}.detail-section p{font-size:13px}.detail-actions{align-items:start;flex-direction:column}.static-hero{left:22px;right:22px;top:53%;max-width:300px}.static-hero p{font-size:23px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(max-width:650px){.experience{min-height:780px}.static-hero{top:50%}}@media(max-width:650px){.contact-page h1{font-size:24vw}}header{background:linear-gradient(#000000e6,#0000)}header.is-fixed{position:fixed}.brand-name{color:var(--silver)}header nav a:before{background:var(--red);box-shadow:0 0 8px var(--red)}.text-link{border-bottom-color:#55585f}.switch{border:1px solid #5c5f66;background:linear-gradient(#0c0c0ec8,#000000c8);box-shadow:inset 0 1px #ffffff1c,0 0 0 1px #0009}.switch button{color:var(--silver)}.switch button.active{background:var(--chrome);color:#000;font-weight:600}.red-dot{box-shadow:0 0 10px var(--red)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.experience{min-height:640px;background:var(--bg)}.experience>.webgl-host{inset:0}.hero-bottom{justify-content:flex-start;pointer-events:none}.hero-bottom>*{pointer-events:auto}.works-page{position:relative;padding:0 6.2vw;background:var(--bg);overflow-x:clip}.works-list{--shear: 0deg;--shift: 0px;padding:18vh 0 22vh}.works-copy{display:flex;flex-direction:column}.work-row{display:flex;align-items:baseline;gap:28px;width:100%;text-align:left;padding:0;margin:0;line-height:.98;font-size:clamp(40px,5.6vw,96px);font-weight:560;letter-spacing:-.045em;text-transform:uppercase;color:#4c4f57;transform:skew(var(--shear)) translate(calc(var(--shift) * (1 + var(--i) * .04)));transform-origin:left center;will-change:transform,color;transition:color .25s ease;white-space:nowrap}.work-row:hover,.work-row:focus-visible{color:var(--ink);outline:none}.work-row:hover .row-title{background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent}.work-row:active{color:var(--red)}.row-kind{font-size:10px;letter-spacing:.08em;color:var(--red);opacity:0;transform:translateY(-.4em);transition:opacity .25s}.work-row:hover .row-kind,.work-row:focus-visible .row-kind{opacity:1}.works-pill{position:fixed;left:50%;bottom:26px;transform:translate(-50%);display:flex;gap:10px;align-items:center;padding:12px 20px;border:1px solid #5c5f66;border-radius:30px;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--silver);font-size:10px;text-transform:uppercase;letter-spacing:.08em;z-index:5;pointer-events:none}.works-pill sup{font-size:8px}[data-reveal]{opacity:0;transform:translateY(46px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--delay, 0) * 90ms)}[data-reveal].is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none}}.about-title{background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent;padding-top:.14em;margin-top:calc(50px - .14em)}.about-title span{background:none;-webkit-text-fill-color:var(--silver-dim);color:var(--silver-dim)}.about-opening{grid-template-columns:1fr;margin-bottom:120px}.bio{max-width:980px}.bio p+p{max-width:760px;color:#a9acb3}.timeline-label{position:relative}.ripple{width:100%;height:150px;margin-top:38px;overflow:visible;opacity:.9;filter:drop-shadow(0 0 6px #ffffff22)}.ripple-line{animation:ripple 9s ease-in-out infinite alternate;animation-delay:calc(var(--d) * -.9s);transform-origin:center}@keyframes ripple{0%{transform:translateY(-6px) scaleY(.92)}to{transform:translateY(6px) scaleY(1.08)}}.timeline-row>.mono{color:var(--red)}.skills-cloud span,.tags span{border-color:#4a4d54;color:var(--silver)}.certificates>div{border-top:1px solid #5c5f66}.contact-page{min-height:0}footer{border-top:1px solid #3a3c42}.footer-name{background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent;white-space:nowrap;overflow:hidden;letter-spacing:-.075em}.footer-bottom{border-top:1px solid #3a3c42;color:var(--silver-dim)}.footer-nav a:hover{color:var(--red)}.project-dialog{border:1px solid #6a6d74;background:#000;box-shadow:inset 0 1px #ffffff1a,0 40px 120px #000}@media(max-width:1000px){.work-row{font-size:clamp(40px,8vw,84px)}.works-page{padding:0 5vw}}@media(max-width:650px){.experience{min-height:560px;height:100svh}.hero-bottom{bottom:26px;justify-content:center}.works-page{padding:0 18px}.work-row{font-size:clamp(30px,10.5vw,44px);letter-spacing:-.035em;line-height:1.05;gap:12px;white-space:normal}.row-kind{display:none}.works-pill{bottom:42px;font-size:9px;padding:10px 16px}.motion-toggle{bottom:8px}.about-title{overflow-wrap:normal;font-size:21vw}.ripple{height:100px;margin:20px 0 30px}.footer-name{font-size:21vw}[data-reveal]{transform:translateY(28px)}}.relic{position:relative;width:100%;height:100%;pointer-events:none}.relic canvas{display:block;width:100%;height:100%}.about-sculpture{height:360px;-webkit-mask-image:radial-gradient(ellipse,black 55%,transparent 82%);mask-image:radial-gradient(ellipse,black 55%,transparent 82%);filter:drop-shadow(0 0 28px #ff211622)}.contact-hero{position:relative;margin:65px 0 0}.contact-hero h1{margin:0}.contact-relic{position:absolute;z-index:3;right:0;bottom:0;width:min(44%,600px);height:min(100%,clamp(300px,48vh,500px));pointer-events:none;-webkit-mask-image:radial-gradient(ellipse at center,black 55%,transparent 84%);mask-image:radial-gradient(ellipse at center,black 55%,transparent 84%);filter:drop-shadow(0 0 40px #ff211618)}.contact-page h1{position:relative;z-index:2;margin-bottom:0}.contact-info{position:relative;z-index:4;margin-top:40px;background:transparent}.contact-links{list-style:none;margin:0;padding:6px 0 0;display:grid;gap:16px;max-width:620px}.contact-links li{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:baseline;border-bottom:1px solid #3a3c42;padding-bottom:12px}.contact-links .mono{font-size:10px;color:var(--silver-dim)}.contact-links a{font-size:19px;letter-spacing:-.02em;color:var(--silver);transition:color .25s,transform .35s;overflow-wrap:anywhere}.contact-links a:hover{color:var(--red);transform:translate(4px)}.footer-links{display:flex;flex-direction:column;gap:12px;justify-self:end;text-align:right}.footer-links a:hover{color:var(--red)}.skills-label{position:relative}.skill-group{margin-bottom:26px}.skill-group>.mono{display:block;color:var(--red);font-size:10px;margin-bottom:12px}.skill-group .skills-cloud{margin-bottom:0}.skills-section h3{margin-top:40px}.wipe{position:fixed;inset:0;z-index:60;pointer-events:none;background:#000;transform:translateY(102%);display:grid;place-items:center}.wipe:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--red),#ffd9d6 35%,#7d8088 60%,var(--red));box-shadow:0 0 24px var(--red)}.wipe-mark{font-size:12px;letter-spacing:.4em;color:var(--silver-dim);opacity:0;transform:translateY(10px)}.wipe.out{transform:translateY(0);transition:transform .34s cubic-bezier(.76,0,.24,1)}.wipe.out .wipe-mark{opacity:1;transform:none;transition:all .25s .2s ease}.wipe.in{transform:translateY(-102%);transition:transform .46s cubic-bezier(.76,0,.24,1)}main{animation:page-in .7s cubic-bezier(.2,.7,.2,1) both}main.is-out{opacity:0;transform:translateY(-18px) scale(.995);transition:opacity .3s ease,transform .34s cubic-bezier(.76,0,.24,1)}@keyframes page-in{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}[data-reveal]{transition-delay:calc(var(--delay, 0) * 70ms)}header nav a{transition:color .25s ease,letter-spacing .35s cubic-bezier(.2,.7,.2,1)}header nav a:hover{color:#fff;letter-spacing:.12em}header nav a:before{transition:opacity .25s ease,transform .35s cubic-bezier(.2,.7,.2,1);transform:scale(.4)}header nav a.active:before,header nav a:hover:before{transform:scale(1)}header nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:var(--chrome);transition:right .35s cubic-bezier(.76,0,.24,1)}header nav a:hover:after{right:0}.language button{transition:color .25s ease,text-shadow .25s ease,transform .3s cubic-bezier(.2,.7,.2,1)}.language button:hover{transform:translateY(-1px);color:#fff}.language button[aria-pressed=true]{text-shadow:0 0 10px #000,0 0 8px #ff211688}.switch button,.text-link,.motion-toggle{transition:color .25s ease,background .3s ease,transform .3s cubic-bezier(.2,.7,.2,1)}.text-link:hover,.motion-toggle:hover{transform:translate(3px)}[data-reduced=true] main,[data-reduced=true] .ripple-line{animation:none}@media(prefers-reduced-motion:reduce){main,.ripple-line{animation:none}.wipe,main.is-out,header nav a,header nav a:before,header nav a:after,.language button,[data-reveal]{transition:none}main.is-out{opacity:1;transform:none}}@media(max-width:1000px){.skill-group{margin-bottom:20px}}@media(max-width:650px){.about-sculpture{width:100%;height:240px;margin:0 0 20px}.contact-hero{margin-top:60px}.contact-relic{width:48%;top:-16vw;bottom:auto;height:36vw}.contact-info{margin-top:28px}.contact-links li{grid-template-columns:1fr;gap:4px}.contact-links a{font-size:16px}.footer-links{text-align:left;justify-self:start}header nav a:hover{letter-spacing:.055em}}
