:root{--bg: #e8e8ea;--text: #141519;--muted: #6b6d76;--line: rgba(20, 21, 25, .12);--font: "Space Grotesk", system-ui, sans-serif;--light: 255, 243, 209;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}::selection{background:var(--text);color:var(--bg)}.scene{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0}.grain{position:fixed;top:-50%;right:-50%;bottom:-50%;left:-50%;z-index:50;pointer-events:none;opacity:.16;mix-blend-mode:multiply;filter:grayscale(1);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain .6s steps(3) infinite}@keyframes grain{0%{transform:translate(0)}33%{transform:translate(-3%,2%)}66%{transform:translate(2%,-3%)}}.chrome{background:radial-gradient(ellipse 220px 140px at var(--lx, -999px) var(--ly, -999px),rgba(var(--light),1) 0%,rgba(var(--light),.55) 25%,rgba(var(--light),0) 65%),linear-gradient(100deg,#1b1c21,#8a8d97 18%,#2a2c32,#b4b7c0,#17181c 60%,#74777f 78%,#23252a);background-size:auto,250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sheen 6s ease-in-out infinite}@keyframes sheen{0%,to{background-position:0 0,0% 50%}50%{background-position:0 0,100% 50%}}.metal{background:repeating-linear-gradient(90deg,#fff0 0,#fff0 2px,#00000005 2px,#00000005 3px),linear-gradient(165deg,#f6f7f9,#dcdee2 42%,#eef0f2 52%,#cfd2d7);border:1px solid #bfc2c8;box-shadow:inset 0 1px #fff,inset 0 -1px #0000000f,0 12px 32px #14151e14}.pill{padding:8px 16px;border-radius:999px;font-size:.85rem}button.pill{font:inherit;font-size:.85rem;color:var(--text);cursor:pointer}button.pill:hover{filter:brightness(1.04)}.cursor{position:fixed;top:0;left:0;z-index:60;pointer-events:none;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff3d1,#bcbbb8 35%,#4a4d55 75%,#1b1c20);box-shadow:0 2px 6px rgba(0,0,0,calc(.25 * (1 - var(--sun, 0))));transition:transform .15s ease-out}.cursor:before,.cursor:after{content:"";position:absolute;border-radius:50%;pointer-events:none;opacity:var(--sun, 0)}.cursor:before{inset:calc(-5px * var(--sun, 0));background:radial-gradient(circle,#fffbea,#ffe48f 45%,#ffb84d)}.cursor:after{top:-70px;right:-70px;bottom:-70px;left:-70px;background:radial-gradient(circle,#ffe29699,#ffc86433 30%,#ffbe5000 70%);transform:scale(calc(.3 + .7 * var(--sun, 0)))}@media (hover: none){.cursor{display:none}}main,.footer{position:relative;z-index:1}.nav{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;justify-content:space-between;align-items:center;padding:calc(14px + env(safe-area-inset-top)) calc(clamp(16px,4vw,48px) + env(safe-area-inset-right)) 14px calc(clamp(16px,4vw,48px) + env(safe-area-inset-left));border-width:0 0 1px;border-radius:0}.logo{font-weight:700;font-size:1.3rem;letter-spacing:-.05em}.eyebrow{font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin:0 0 24px}.hero{min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:0 clamp(16px,4vw,48px) clamp(40px,8vh,90px)}.hero h1{margin:0;font-weight:500;letter-spacing:-.06em;line-height:.92;font-size:clamp(3.2rem,11vw,10rem)}.line{display:block;overflow:hidden;padding-bottom:.06em}.line .reveal{display:inline-block}.reveal{animation:rise 1.4s cubic-bezier(.2,.8,.1,1) both;animation-delay:var(--d, 0s)}@keyframes rise{0%{transform:translateY(100%);opacity:0;filter:blur(14px)}to{transform:none;opacity:1;filter:blur(0)}}.scroll-hint{margin:32px 0 0;font-size:.8rem;color:var(--muted);letter-spacing:.1em}.marquee{overflow:hidden;padding:18px 0;border-inline:0;border-radius:0;box-shadow:none}.track{display:flex;width:max-content;animation:slide 60s linear infinite;font-size:clamp(1.6rem,4vw,3rem);font-weight:300;letter-spacing:-.03em;white-space:nowrap}.track i{font-style:normal;color:var(--muted);font-size:.5em;vertical-align:middle;margin:0 .5em}@keyframes slide{to{transform:translate(-50%)}}.work{padding:clamp(80px,16vh,180px) clamp(16px,4vw,48px);display:grid;gap:20px;max-width:1300px}.work .tag{justify-self:start;margin-bottom:4px;color:var(--text)}.project{display:grid;grid-template-columns:auto 1fr;column-gap:clamp(16px,4vw,48px);padding:clamp(28px,4vw,48px);border-radius:28px;position:relative;overflow:hidden;isolation:isolate;transition:transform .6s cubic-bezier(.2,.8,.1,1)}.project:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(circle 280px at var(--cx, 50%) var(--cy, 50%),rgba(var(--light),.85),rgba(var(--light),0) 70%),radial-gradient(ellipse 600px 90px at var(--cx, 50%) var(--cy, 50%),rgba(var(--light),.35),rgba(var(--light),0) 70%);opacity:0;transition:opacity .4s}.project:hover:before{opacity:1}.project>:not(.num){grid-column:2}.num{grid-row:1 / span 4;font-size:.8rem;color:var(--muted);padding-top:1.2em}.name{font-size:clamp(3rem,10vw,8rem);font-weight:500;letter-spacing:-.06em;line-height:1}.tagline{font-size:clamp(1.2rem,2.6vw,1.9rem);font-weight:300;color:var(--text);margin-top:10px;letter-spacing:-.02em}.desc{max-width:52ch;margin-top:18px;color:var(--muted)}.go{margin-top:28px;justify-self:start;padding:12px 22px;border-radius:999px;background:linear-gradient(180deg,#3b3d45,#0f1014);color:#f2f3f6;font-weight:600;box-shadow:inset 0 1px #ffffff40,0 8px 24px #0000002e}a.project:hover{transform:translateY(-4px)}a.project:hover .name{background:radial-gradient(ellipse 260px 160px at var(--lx, 50%) var(--ly, 50%),rgb(var(--light)) 0%,#dcdad4 16%,#7d808a 38%,#2a2c32 62%,#141519 100%);-webkit-background-clip:text;background-clip:text;color:transparent}body:has(.project:hover) .cursor{box-shadow:0 0 18px 6px rgba(var(--light),.9),0 0 60px 20px rgba(var(--light),.5)}.soon{color:var(--muted)}.blur{filter:blur(6px);transition:filter .6s}.soon:hover .blur{filter:blur(0)}.manifesto{padding:clamp(80px,20vh,220px) clamp(16px,4vw,48px);font-size:clamp(2.4rem,8vw,7rem);font-weight:500;letter-spacing:-.06em;line-height:1}.manifesto p{margin:0}.manifesto p:nth-child(2){padding-left:1.5em}.manifesto p:nth-child(3){color:var(--muted);font-size:.32em;font-weight:300;letter-spacing:-.01em;margin-top:1.2em}.footer{display:flex;justify-content:space-between;align-items:center;padding:28px calc(clamp(16px,4vw,48px) + env(safe-area-inset-right)) calc(28px + env(safe-area-inset-bottom)) calc(clamp(16px,4vw,48px) + env(safe-area-inset-left));border-inline:0;border-bottom:0;box-shadow:none;color:var(--muted);font-size:.85rem}.modal{width:min(560px,calc(100vw - 32px));max-height:calc(100svh - 32px);padding:clamp(28px,5vw,44px);border-radius:28px;color:var(--text)}.modal::backdrop{background:#e8e8ea99}.modal[open]{animation:pop .5s cubic-bezier(.2,.8,.1,1)}@keyframes pop{0%{opacity:0;transform:translateY(16px) scale(.98)}}.modal h2{margin:0 0 28px;font-weight:500;letter-spacing:-.04em;line-height:1;font-size:clamp(1.8rem,5vw,2.6rem)}.modal-x{position:absolute;top:16px;right:18px;border:0;background:none;font:inherit;font-size:1.8rem;line-height:1;color:var(--muted);cursor:pointer}.contact{display:grid;gap:14px}.contact label{display:grid;gap:6px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.contact label span{text-transform:none;letter-spacing:0}.contact input,.contact textarea{font:inherit;font-size:1rem;text-transform:none;letter-spacing:0;color:var(--text);padding:12px 14px;border-radius:12px;border:1px solid #bfc2c8;resize:vertical;background:linear-gradient(180deg,#e4e6ea,#f4f5f7);box-shadow:inset 0 2px 4px #0000000f}.contact input:focus,.contact textarea:focus{outline:2px solid #33353c;outline-offset:1px}.contact .go{border:0;font:inherit;font-weight:600;cursor:pointer;margin-top:8px}.contact .go:disabled{opacity:.6;cursor:wait}.honey{display:none}.modal-note{color:var(--muted);margin:0}@media (prefers-reduced-motion: reduce){.reveal,.track,.grain,.chrome{animation:none}}
