:root{--bg:#07070a;--fg:#f5f1e8;--muted:#8a8794;--violet:#6b5bff;--coral:#ff5c39;--lime:#c6ff3d;--cyan:#29e0ff;--pink:#ff3d9a;--gutter:clamp(16px, 4vw, 56px);--display:"Syne", system-ui, sans-serif;--body:"Manrope", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-snap-type:y mandatory;background:var(--bg)}body{background:radial-gradient(1200px 800px at 80% -10%, #6b5bff2e, transparent 60%), radial-gradient(900px 700px at -10% 110%, #ff5c391f, transparent 60%), var(--bg);color:var(--fg);font-family:var(--body);-webkit-font-smoothing:antialiased;background-attachment:fixed;font-weight:300;line-height:1.6;overflow-x:hidden}::selection{background:var(--lime);color:var(--bg)}a{color:inherit;text-decoration:none}.mono{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}em{color:var(--cyan);font-style:normal}em.hl{color:var(--bg);background:var(--lime);padding:0 .15em}.webgl{z-index:0;pointer-events:none;position:fixed;inset:0}.webgl canvas{display:block}.grain{z-index:50;pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:.6s steps(4,end) infinite grain;position:fixed;inset:-50%}@keyframes grain{0%{transform:translate(0)}25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-1%,3%)}}body.has-cursor,body.has-cursor a,body.has-cursor button{cursor:none}body.has-cursor .cursor-dot{display:block}body.has-cursor .cursor-ring{display:grid}.cursor-dot,.cursor-ring{z-index:100;pointer-events:none;mix-blend-mode:difference;display:none;position:fixed;top:0;left:0}.cursor-dot{background:#fff;border-radius:50%;width:6px;height:6px;margin:-3px 0 0 -3px}.cursor-ring{place-items:center;width:38px;height:38px;margin:-19px 0 0 -19px;display:grid}.cursor-ring:before{content:"";border:1px solid #fff;border-radius:50%;transition:transform .35s cubic-bezier(.2,.9,.2,1),background .3s;position:absolute;inset:0}.cursor-ring span{font:500 .6rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#000;opacity:0;transition:opacity .2s;position:relative}.cursor-ring.is-label:before{background:#fff;transform:scale(2.2)}.cursor-ring.is-label span{opacity:1}.nav{z-index:40;padding:22px var(--gutter);mix-blend-mode:difference;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.nav__logo{font:800 1.35rem var(--display);letter-spacing:-.02em}.nav__logo sup{margin-left:2px;font-size:.55em}.nav__links{gap:clamp(14px,3vw,36px);font-size:.9rem;font-weight:400;display:flex}.nav__links a{position:relative}.nav__links a:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .4s cubic-bezier(.2,.9,.2,1);position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}.nav__links a:hover:after{transform-origin:0;transform:scaleX(1)}main{z-index:10;position:relative}.section{scroll-snap-align:start;scroll-snap-stop:always;height:100vh;min-height:100vh;padding:110px var(--gutter) 40px;position:relative}.eyebrow{color:var(--muted);margin-bottom:1.4rem;display:inline-block}h2{font:700 clamp(2rem, 4.6vw, 4.2rem) / 1.02 var(--display);letter-spacing:-.03em;margin-bottom:1.6rem}.split>span{opacity:0;animation:1s cubic-bezier(.2,.9,.2,1) forwards letter-in;display:inline-block;transform:translateY(110%)rotate(8deg)}@keyframes letter-in{to{opacity:1;transform:none}}[data-reveal]{opacity:0;filter:blur(8px);transition:opacity 1s cubic-bezier(.2,.9,.2,1),transform 1s cubic-bezier(.2,.9,.2,1),filter 1s;transform:translateY(40px)}[data-reveal].in{opacity:1;filter:none;transform:none}.hero{pointer-events:auto;flex-direction:column;justify-content:space-between;display:flex}.hero__meta{color:var(--muted);justify-content:space-between;display:flex}.hero__title{left:var(--gutter);font:800 clamp(2.4rem, 7.2vw, 7.5rem) / .9 var(--display);white-space:nowrap;letter-spacing:-.045em;text-transform:uppercase;mix-blend-mode:difference;pointer-events:none;transition:opacity .5s,filter .5s,transform .5s cubic-bezier(.2,.9,.2,1);position:absolute;bottom:clamp(150px,20vh,200px)}.hero__title.is-out{opacity:0;filter:blur(14px);transform:translateY(-18px)}.hero__title .line{padding-bottom:.04em;display:block;overflow:hidden}.line--outline{color:#0000;-webkit-text-stroke:1.5px var(--fg);padding-left:.6em}.hero__bottom{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.hero__tagline{color:#cfcbd6;max-width:34ch;font-size:clamp(.95rem,1.2vw,1.1rem);transition:opacity .5s,filter .5s,transform .5s cubic-bezier(.2,.9,.2,1)}.hero__tagline.is-out{opacity:0;filter:blur(8px);transform:translateY(-8px)}.scroll-hint{white-space:nowrap;align-items:center;gap:12px;display:flex}.scroll-hint__bar{background:linear-gradient(var(--fg), transparent);transform-origin:top;width:1px;height:46px;animation:1.8s ease-in-out infinite drip}@keyframes drip{0%{transform:scaleY(0)}50%{transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}.about{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;display:grid}.about__text{max-width:560px}.display-title{font:800 clamp(2.4rem, 4.8vw, 5.2rem) / .9 var(--display);letter-spacing:-.045em;text-transform:uppercase;white-space:nowrap;mix-blend-mode:difference;margin-bottom:2rem}.display-title .line{padding-bottom:.04em;display:block}.display-title .line--outline{padding-left:.35em}.about__body strong{color:var(--fg);font-weight:600}.about__body code{font:500 .88em var(--mono);color:var(--lime)}.about__body a{color:var(--cyan);border-bottom:1px solid}.about__label{color:var(--muted);margin:1.2rem 0 .4rem;display:block}.about__text p.about__li{text-indent:-1.1em;margin-bottom:.3rem;padding-left:1.1em}.about__li:before{content:"— ";color:var(--lime)}.about__text p{color:#cfcbd6;max-width:46ch;margin-bottom:1rem}.about__hit{background:0 0;border:0;align-self:stretch}.about__caption{color:var(--muted);pointer-events:none;flex-direction:column;align-items:flex-end;gap:4px;display:flex;position:absolute;bottom:36px;right:calc(68vh + 12px)}.stats{border-top:1px solid #f5f1e826;gap:clamp(20px,4vw,48px);margin-top:2.4rem;padding-top:1.6rem;list-style:none;display:flex}.stats strong{font:700 clamp(1.6rem, 2.6vw, 2.4rem) var(--display);color:var(--fg);display:block}.stats span{color:var(--muted);font-size:.62rem}.work{pointer-events:none;flex-direction:column;justify-content:space-between;display:flex}.work__caption{border-top:1px solid #f5f1e826;justify-content:space-between;align-items:baseline;gap:16px;padding-top:18px;display:flex}.work__title{font:700 clamp(1.4rem, 3.2vw, 2.6rem) var(--display);letter-spacing:-.02em;color:var(--muted);animation:.6s cubic-bezier(.2,.9,.2,1) title-in}.work__caption.is-active .work__title{color:var(--lime)}.work__tags{color:var(--muted);text-align:right}@keyframes title-in{0%{opacity:0;filter:blur(6px);transform:translateY(30%)}}.contact{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.contact__title{text-transform:uppercase;mix-blend-mode:difference;max-width:12ch;font-size:clamp(2.6rem,8vw,7.5rem);line-height:.95}.contact__title span{display:inline-block}.contact__mail{font:500 clamp(1.1rem, 2.6vw, 2rem) var(--display);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow-wrap:anywhere;background:#07070a59;border:1px solid #f5f1e859;border-radius:999px;max-width:100%;padding:.5em 1.2em;transition:color .4s,border-color .4s;position:relative;overflow:hidden}.contact__mail:before{content:"";z-index:-1;background:var(--lime);border-radius:inherit;transition:transform .5s cubic-bezier(.2,.9,.2,1);position:absolute;inset:0;transform:translateY(101%)}.contact__mail:hover{color:var(--bg);border-color:var(--lime)}.contact__mail:hover:before{transform:none}.footer{left:var(--gutter);right:var(--gutter);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex;position:absolute;bottom:28px}.footer ul{gap:22px;list-style:none;display:flex}.footer a{color:var(--fg);transition:color .3s}.footer a:hover{color:var(--c)}@media (width<=860px){.about{grid-template-columns:1fr;align-content:start}.about__text{z-index:1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#07070ab8;border-radius:16px;margin:0 -20px;padding:20px;position:relative}.about__hit,.about__caption{display:none}.about .about__caption{color:var(--muted);pointer-events:none;flex-direction:column;align-items:flex-end;gap:4px;display:flex;position:absolute;bottom:36px;right:calc(68vh + 12px)}.about__caption b{color:var(--lime);font-weight:500;animation:.6s cubic-bezier(.2,.9,.2,1) title-in;display:inline-block}.stats{flex-wrap:wrap}.nav__links{display:none}.hero__title{margin-top:auto;font-size:8.4vw;position:relative;bottom:auto;left:auto}.line--outline{-webkit-text-stroke-width:1px;padding-left:.3em}.display-title{font-size:11vw}.hero__bottom{flex-direction:column;align-items:flex-start;margin-top:28px}.hero__meta span:last-child{display:none}.footer{text-align:center;justify-content:center}}@media (prefers-reduced-motion:reduce){.grain,.scroll-hint__bar{animation:none}html{scroll-behavior:auto}}
