.navbar{align-items:center;background:#0000;display:flex;font-family:var(--mono);justify-content:space-between;left:0;padding:1.75rem 6vw 1.25rem;position:fixed;right:0;top:0;transition:border-color .3s ease,transform .35s ease,opacity .3s ease;z-index:10}.navbar--scrolled{border-bottom:1px solid var(--border)}.navbar--hidden{opacity:0;pointer-events:none;transform:translateY(-120%)}.navbar__brand{font-size:16px;letter-spacing:.2em;line-height:24px;text-transform:uppercase}.navbar__links{display:flex;gap:2rem}.navbar__link{align-items:baseline;display:inline-flex;font-size:14px;gap:.4rem;letter-spacing:.2em;line-height:22px;position:relative;text-transform:uppercase}.navbar__link-main{white-space:nowrap}.navbar__link-side{font-size:11px;letter-spacing:.08em;line-height:16px;max-width:0;opacity:0;overflow:hidden;text-transform:none;transform:translateX(-.2rem);transition:max-width .35s ease,opacity .2s ease,transform .35s ease;white-space:nowrap}.navbar__link-side--before{order:-1}.navbar__link:after{background:var(--accent);bottom:-6px;content:"";height:1px;left:0;position:absolute;transform:scaleX(.05);transform-origin:left;transition:transform .35s cubic-bezier(.76,0,.24,1);width:100%}.navbar__link:hover:after{transform:scaleX(1)}.navbar__link:hover{letter-spacing:.26em}.navbar__link:hover .navbar__link-side{max-width:13rem;opacity:.85;transform:translateX(0)}@media screen and (max-width:900px){.navbar__links{display:none}}.cursor{border:1.5px solid;height:12px;transform:translate3d(-100px,-100px,0) translate(-50%,-50%) scale(1);transition:transform .14s cubic-bezier(.22,1,.36,1);width:12px}.cursor,.cursor-dot{border-radius:50%;left:0;mix-blend-mode:difference;pointer-events:none;position:fixed;top:0;will-change:transform;z-index:9999}.cursor-dot{background:currentColor;height:4px;transform:translate3d(-100px,-100px,0) translate(-50%,-50%);width:4px}.cursor--active{transform:translate(-50%,-50%) scale(2.5)}.social{bottom:7vw;display:flex;flex-direction:column;gap:.8rem;left:1.8vw;position:fixed;z-index:10}.social a{border:1px solid var(--border);border-radius:7px;display:grid;height:28px;place-items:center;transition:background .3s ease,color .3s ease,border-color .3s ease;width:28px}.social a:hover{background:var(--accent);border-color:var(--accent);color:var(--bg)}@media screen and (max-width:900px){.social{bottom:2rem;left:1.5rem}}@keyframes letterShake{0%{transform:translate(0) rotate(0deg)}15%{transform:translate(-4px,2px) rotate(-3deg)}30%{transform:translate(4px,-2px) rotate(3deg)}45%{transform:translate(-3px,3px) rotate(-2deg)}60%{transform:translate(3px,-1px) rotate(2deg)}75%{transform:translate(-2px,2px) rotate(-1deg)}90%{transform:translate(2px,-1px) rotate(1deg)}to{transform:translate(0) rotate(0deg)}}.letter-shake{animation:letterShake .5s cubic-bezier(.36,.07,.19,.97);display:inline-block}.hero-name-letter{color:#fff;font-family:HK Grotesk Wide,Outfit,Arial,sans-serif;font-weight:800}.hero-name-letter--water{-webkit-text-stroke:1.8px #fffffff2;text-stroke:1.8px #fffffff2;--fill:0;color:#0000;contain:paint;isolation:isolate;position:relative}.hero-name-letter--water:before{color:#fff;transition:clip-path .52s cubic-bezier(.18,.74,.24,1);will-change:clip-path}.hero-name-letter--water:after,.hero-name-letter--water:before{clip-path:inset(calc((1 - var(--fill))*100%) 0 0 0);content:attr(data-char);font-family:HK Grotesk Wide,Outfit,Arial,sans-serif;font-weight:800;inset:0;position:absolute}.hero-name-letter--water:after{background:linear-gradient(95deg,#ffffff1a,#fffffff2 35%,#fff3 52%,#ffffffd9 70%,#ffffff14);-webkit-background-clip:text;background-clip:text;background-position:0 50%;background-size:180% 100%;color:#0000;opacity:0;pointer-events:none;transform:none;will-change:background-position,opacity,clip-path}.hero-name-letter--water.letter-shake:after{opacity:.9}.hero-name-letter--water[data-flow=fill].letter-shake:after{animation:heroLiquidFillPulse .56s cubic-bezier(.16,.82,.22,1) 1}.hero-name-letter--water[data-flow=drain].letter-shake:after{animation:heroLiquidDrainPulse .56s cubic-bezier(.16,.82,.22,1) 1}@keyframes heroLiquidFillPulse{0%{background-position:0 50%;opacity:.2}28%{background-position:70% 50%;opacity:.95}56%{background-position:35% 50%;opacity:.75}to{background-position:100% 50%;opacity:0}}@keyframes heroLiquidDrainPulse{0%{background-position:100% 50%;opacity:.2}28%{background-position:30% 50%;opacity:.95}56%{background-position:65% 50%;opacity:.75}to{background-position:0 50%;opacity:0}}@media (max-width:768px){.hero-name-letter--water:after{display:none}.hero-name-letter--water:before{transition-duration:.28s}}.no-select{user-select:none;-webkit-user-select:none}.widget-card{transition:box-shadow .2s ease}.widget-card:active{box-shadow:0 30px 80px #000000e6;cursor:grabbing}@media (max-width:768px){.widget-card{max-width:calc(100vw - 24px)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.terminal-cursor{animation:blink 1s step-end infinite;background:#00ff41;display:inline-block;height:14px;margin-left:1px;vertical-align:text-bottom;width:8px}.terminal-body::-webkit-scrollbar{width:3px}.terminal-body::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}@media (max-width:720px){.hero-container{overflow:visible!important;padding:0 20px;text-align:center}.hero-container .memo-card{max-width:90%}.hero-container .main-name{font-size:14vw!important;line-height:1!important}.hero-container .subtitle{font-size:4vw!important;letter-spacing:3px!important}.hero-container .location-pill{max-width:85%;text-align:left}}.marquee{background:var(--bg);border-bottom:1px solid var(--border);border-top:1px solid var(--border);color:var(--accent);overflow:hidden}.marquee--inverted{background:var(--bg);color:var(--text)}.marquee__track{animation:marquee 20s linear infinite;display:flex;font-family:var(--mono);gap:2rem;letter-spacing:.2em;padding:1.5rem 0;text-transform:uppercase;width:max-content}.marquee__track span{white-space:nowrap}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.ripple-text{display:inline-block;line-height:1;position:relative}.ripple-text__canvas{inset:0;pointer-events:none;position:absolute}.section{padding:clamp(4.5rem,10vw,9rem) 6vw;position:relative}.section__header{align-items:center;display:flex;gap:1.5rem;margin-bottom:2.5rem}.section__header:after{background:var(--border);content:"";flex:1 1;height:1px}.section__number{color:var(--muted);font-family:var(--mono);font-size:16px;line-height:24px}.section-title{font-family:var(--serif);font-size:clamp(2rem,4vw,4rem);font-weight:400;letter-spacing:0}.soft-text{opacity:.85}.about{padding-left:8vw;padding-right:8vw}.about__grid{grid-gap:3rem;align-items:start;display:grid;gap:3rem;grid-template-columns:minmax(120px,200px) 1fr}.about__badge{color:#ffffff1f;font-family:var(--serif);font-size:4rem}.about__text{font-family:var(--serif);font-size:clamp(1.2rem,2.5vw,2rem);line-height:1.4;margin-bottom:1.5rem}.about__skills{color:var(--muted);font-family:var(--mono);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase}@media screen and (max-width:900px){.about__grid{grid-template-columns:1fr}}.experience{padding:clamp(4.5rem,10vw,9rem) 6vw}.experience__rows{grid-gap:2rem;display:grid;gap:2rem}.experience__row{cursor:pointer;padding-left:40px;transition:background .3s cubic-bezier(.76,0,.24,1)}.experience__rule{background:var(--border);height:1px;width:100%}.experience__grid{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:minmax(60px,90px) minmax(0,1fr) minmax(200px,280px) minmax(140px,180px);padding:2rem 0}.experience__num{color:var(--muted);font-size:16px;line-height:24px}.experience__title{grid-gap:1rem;display:grid;gap:1rem}.experience__heading{font-family:var(--serif);font-size:clamp(2rem,4vw,46px);font-weight:400;line-height:.95;transition:transform .3s ease}.experience__row:hover .experience__heading{transform:translateY(-4px)}.experience__desc{font-size:.9rem;letter-spacing:.18em}.experience__desc,.experience__meta{color:var(--muted);text-transform:uppercase}.experience__meta{grid-gap:.5rem;display:grid;font-size:.8rem;gap:.5rem;letter-spacing:.16em}.experience__company{color:var(--accent)}.experience__location{color:var(--muted)}.experience__year{align-items:center;color:var(--accent);display:flex;font-family:var(--mono);font-size:.9rem;gap:.5rem;justify-content:flex-end;text-align:right}.experience__arrow{opacity:0;transform:translateX(-8px);transition:all .3s cubic-bezier(.76,0,.24,1)}.experience__row:hover{background:#ffffff0a}.experience__row:hover .experience__arrow{opacity:1;transform:translateX(0)}@media screen and (max-width:900px){.experience__grid{grid-template-columns:1fr}.experience__year{text-align:left}}@media screen and (max-width:600px){.experience__grid{grid-template-columns:1fr}.experience__year{text-align:left}}.skills{background:var(--bg);padding:clamp(4.5rem,10vw,9rem) 6vw}.skills__grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.skills__card{border:1px solid var(--border);display:flex;flex-direction:column;gap:.6rem;min-height:140px;padding:1.5rem;transition:background .3s ease,color .3s ease,border-color .3s ease}.skills__card:hover{background:var(--accent);border-color:var(--accent);color:var(--bg)}.skills__title{font-family:var(--serif);font-size:1.4rem;font-weight:400;transition:transform .3s ease}.skills__card:hover .skills__title{transform:translateX(8px)}.skills__meta{color:var(--muted);font-size:.9rem}.skills__card:hover .skills__meta{color:#0a0a0ab3}@media screen and (max-width:900px){.skills__grid{grid-template-columns:1fr}}.creative{padding:clamp(4.5rem,10vw,9rem) 6vw}.creative__grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.creative__card{border:1px solid var(--border);display:flex;flex-direction:column;gap:1rem;justify-content:space-between;min-height:160px;padding:1.75rem;transition:background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease}.creative__card:hover{background:var(--accent);border-color:var(--accent);color:var(--bg);transform:translateY(-6px)}.creative__item{font-family:var(--serif);font-size:1.6rem;font-weight:400;letter-spacing:.12em;text-transform:uppercase}@media screen and (max-width:600px){.creative__grid{grid-template-columns:1fr}}.testimonials{padding:clamp(4.5rem,10vw,9rem) 8vw}.testimonials__grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.testimonial-card{background:#ffffff05;border:1px solid var(--border);display:flex;flex-direction:column;gap:1rem;min-height:200px;padding:1.5rem;transition:transform .3s ease,border-color .3s ease}.testimonial-card:hover{border-color:var(--accent);transform:translateY(-6px)}.testimonial-card__quote{color:var(--accent);font-size:.95rem;line-height:1.6}.testimonial-card__author{color:var(--muted);font-size:.85rem;margin-top:auto}.gallery-section{background:#000;padding:8rem 4rem}.gallery-header{align-items:baseline;border-top:1px solid #ffffff1f;gap:2rem;margin-bottom:4rem;padding-top:2rem}.gallery-header:after{display:none}.gallery-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.gallery-card{cursor:crosshair;overflow:hidden;position:relative}.gallery-card-inner{aspect-ratio:4/3;background:#111;border:1px solid #ffffff14;overflow:hidden;width:100%}.gallery-card-label{color:#ffffff80;font-family:var(--mono);font-size:.75rem;left:1rem;letter-spacing:.1em;position:absolute;top:1rem;z-index:2}.gallery-image-fallback{display:block;height:100%;object-fit:cover;width:100%}.gallery-card:hover .gallery-card-inner{border-color:#ffffff40;transition:border-color .3s ease}@media screen and (max-width:900px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:600px){.gallery-grid{grid-template-columns:1fr}.gallery-section{padding:4rem 1.5rem}}.contact{justify-content:center;min-height:100vh;overflow-x:hidden;padding-bottom:1.2rem;padding-top:6rem;text-align:center}.contact,.contact__content{align-items:center;display:flex;flex-direction:column}.contact__content{gap:1.5rem}.contact__title{font-family:var(--serif);font-size:clamp(2.08rem,6vw,6.8rem);margin-bottom:2rem}.contact__email{background:#ffffff08;border:1px solid var(--border);border-radius:10px;display:inline-block;font-family:var(--mono);font-size:clamp(.8rem,1.6vw,1.6rem);letter-spacing:.2em;margin-bottom:1rem;padding:.56rem .8rem;text-transform:uppercase;transition:background .25s ease,border-color .25s ease,color .25s ease}.contact__email:hover{background:var(--accent);border-color:var(--accent);color:var(--bg)}.contact__links{display:flex;flex-wrap:wrap;font-family:var(--mono);font-size:.8rem;gap:2rem;justify-content:center;letter-spacing:.2em;text-transform:uppercase}.contact__links a{background:#ffffff08;border:1px solid var(--border);border-radius:10px;padding:.65rem .9rem;transition:background .25s ease,border-color .25s ease,color .25s ease}.contact__links a:hover{background:var(--accent);border-color:var(--accent);color:var(--bg)}.contact__top-control{align-items:center;display:flex;flex-direction:column;gap:.35rem;margin-bottom:3rem;margin-top:5rem;pointer-events:none;position:relative;z-index:2}.contact__top-hint{color:#ffffff9e;font-family:var(--mono);font-size:.58rem;font-weight:400;letter-spacing:.07em;text-transform:lowercase}.contact__top-button{animation:batarang-reveal-down .75s cubic-bezier(.22,1,.36,1) 1,batarang-drift 1.9s ease-in-out .75s infinite;background:#0000;border:0;cursor:grab;height:2.8rem;padding:0;pointer-events:auto;width:2.8rem}.contact__top-button-wrap{pointer-events:auto}.contact__top-button:active{cursor:grabbing}.contact__top-button img{filter:brightness(0) invert(1);height:100%;object-fit:contain;width:100%}.contact__top-button--launching{animation:batarang-throw .95s cubic-bezier(.38,0,.2,1) forwards;pointer-events:none}@keyframes batarang-drift{0%{transform:translateZ(0) rotate(-6deg)}50%{transform:translate3d(-.18rem,-.14rem,0) rotate(3deg)}to{transform:translateZ(0) rotate(-6deg)}}@keyframes batarang-reveal-down{0%{opacity:0;transform:translate3d(0,-1.8rem,0) rotate(-300deg) scale(.74)}to{opacity:1;transform:translateZ(0) rotate(0deg) scale(1)}}@keyframes batarang-throw{0%{opacity:1;transform:translateZ(0) rotate(0deg) scale(1)}45%{opacity:1;transform:translate3d(-3vw,-34vh,0) rotate(1turn) scale(.88)}to{opacity:.14;transform:translate3d(-7vw,-68vh,0) rotate(760deg) scale(.66) skewX(-14deg)}}@media screen and (max-width:900px){.contact__top-control{margin-bottom:2.2rem;margin-top:3.2rem}.contact__top-button{height:2.35rem;width:2.35rem}.contact__top-hint{font-size:.5rem}}.footer{align-items:center;border-top:1px solid var(--border);color:var(--muted);display:flex;font-family:var(--mono);font-size:.75rem;justify-content:space-between;letter-spacing:.2em;padding:1.5rem 6vw 3rem;text-transform:uppercase}@media screen and (max-width:900px){.footer{flex-direction:column;gap:1rem;text-align:center}}.fx3d-root{height:100%;overflow:hidden;position:relative;width:100%}.fx3d-canvas{display:block;height:100%;width:100%}.app{background:var(--bg);color:var(--text);min-height:100vh}@font-face{font-display:swap;font-family:HK Grotesk Wide;font-style:normal;font-weight:400;src:url(/static/media/HKGroteskWide-Regular.271cfe3c29941945e3d1.otf) format("opentype")}@font-face{font-display:swap;font-family:HK Grotesk Wide;font-style:normal;font-weight:800;src:url(/static/media/HKGroteskWide-ExtraBold.a8a66d549dae7b1e3188.otf) format("opentype")}:root{--bg:#000;--text:#fff;--accent:#fff;--muted:#fff9;--border:#ffffff1f;--mono:"Helvetica Now Display",-apple-system,BlinkMacSystemFont,"avenir next",avenir,"segoe ui","helvetica neue",helvetica,Cantarell,Ubuntu,roboto,noto,arial,sans-serif;--serif:"Helvetica Now Display",-apple-system,BlinkMacSystemFont,"avenir next",avenir,"segoe ui","helvetica neue",helvetica,Cantarell,Ubuntu,roboto,noto,arial,sans-serif}*{box-sizing:border-box;margin:0;padding:0}#root,body,html{min-height:100%}#root,body{background:#000;background:var(--bg);color:#fff;color:var(--text)}body{cursor:none;font-family:Helvetica Now Display,-apple-system,BlinkMacSystemFont,avenir next,avenir,segoe ui,helvetica neue,helvetica,Cantarell,Ubuntu,roboto,noto,arial,sans-serif;font-family:var(--mono);letter-spacing:.01em}a{color:inherit;text-decoration:none}.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.76,0,.24,1),transform .8s cubic-bezier(.76,0,.24,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-line{transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.76,0,.24,1)}.reveal-line.is-visible{transform:scaleX(1)}@media (hover:none){body{cursor:auto}.cursor,.cursor-dot{display:none}}
/*# sourceMappingURL=main.d7835311.css.map*/