@font-face{font-family:Cabinet;src:url('assets/cabinet-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Cabinet;src:url('assets/cabinet-500.woff2') format('woff2');font-weight:500;font-display:swap}@font-face{font-family:Cabinet;src:url('assets/cabinet-900.woff2') format('woff2');font-weight:900;font-display:swap}@font-face{font-family:Satoshi;src:url('assets/satoshi-normal.woff2') format('woff2');font-weight:400;font-display:swap}
*{box-sizing:border-box}:root{--cream:#f1eee5;--dark:#1c1c1a;--pad:3.6vw}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--dark);color:var(--cream);font-family:Cabinet,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid currentColor;outline-offset:7px}::selection{background:var(--hero-c);color:var(--dark)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:-100px;left:20px;padding:15px;background:var(--cream);color:var(--dark);z-index:100}.skip:focus{top:20px}.header{position:fixed;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:32px var(--pad);z-index:50;pointer-events:none}.header a{pointer-events:auto}.wordmark{font-weight:900;font-size:24px;line-height:.75;letter-spacing:-.05em;position:relative}.wordmark span{font-size:14px;position:absolute;right:-16px;top:-4px}.nav-pill{display:flex;gap:28px;align-items:center;padding:18px 28px;background:#ffffff23;border:1px solid #ffffff20;border-radius:99px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:var(--dark);font-family:Satoshi,Arial,sans-serif;font-size:14px}.nav-pill sup{font-size:10px}.nav-pill a{border-bottom:1px solid transparent;transition:border-color .3s}.nav-pill a:hover{border-color:currentColor}.header.on-dark .nav-pill{color:var(--cream)}
.case-hero{padding:10px;position:relative}.hero-frame{height:calc(100svh - 20px);min-height:540px;position:relative;border-radius:18px;isolation:isolate;overflow:hidden;transform-origin:50% 100%;background:var(--hero-a)}.color-field{position:absolute;inset:-10%;z-index:-1;background:radial-gradient(ellipse at 53% 49%,var(--hero-a) 0%,var(--hero-a) 29%,var(--hero-b) 55%,var(--hero-c) 82%,var(--hero-b) 100%);filter:blur(30px);transform:scale(1.12)}.hero-title{position:absolute;left:57%;top:23%;font-size:clamp(68px,8.8vw,165px);font-weight:400;line-height:.84;letter-spacing:-.055em;margin:0;z-index:3}.hero-title span{display:block}.hero-role{position:absolute;left:9%;top:64%;font-size:clamp(42px,6.8vw,120px);line-height:.85;letter-spacing:-.055em;font-weight:400;margin:0;z-index:3}.sculpture-space{position:absolute;inset:0;perspective:1100px;z-index:2;pointer-events:none}.project-sculpture{position:absolute;left:48%;top:49%;width:31vw;height:31vw;max-width:620px;max-height:620px;transform-style:preserve-3d;transform:translate(-50%,-50%) rotateX(-14deg) rotateY(-24deg) rotateZ(-13deg)}.logo-layer,.logo-face{position:absolute;inset:0;mask-image:var(--mark);-webkit-mask-image:var(--mark);mask-size:contain;-webkit-mask-size:contain;mask-position:center;-webkit-mask-position:center;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;mask-mode:var(--mask-mode);background:var(--hero-c);transform:translateZ(calc(var(--layer)*-2px))}.logo-layer:nth-child(3n){background:var(--hero-b)}.logo-face{background:linear-gradient(135deg,#fff4e8,var(--hero-c));transform:translateZ(1px)}.hero-bottom{position:absolute;bottom:28px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;align-items:flex-end;font-family:Satoshi,Arial,sans-serif;font-size:13px;line-height:1.5;z-index:4}.hero-bottom>span:last-child{text-align:right}.hero-bottom a{display:flex;gap:18px;align-items:center}.hero-bottom a span{font-size:22px}
.section-label{font-family:Satoshi,Arial,sans-serif;font-size:13px;display:flex;justify-content:space-between;gap:24px}.section-label h2{font:inherit;margin:0}.project-intro{padding:120px var(--pad) 100px}.intro-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:8vw;align-items:end;margin:80px 0}.intro-title{font-size:clamp(50px,7.4vw,135px);font-weight:400;line-height:.97;letter-spacing:-.05em;margin:0}.intro-title span{display:block}.intro-copy{font-family:Satoshi,Arial,sans-serif}.intro-copy p{font-size:17px;line-height:1.7;max-width:520px;margin:0 0 30px;color:#f1eee5ba}.live-link{display:inline-block;font-size:15px;border-bottom:1px solid #f1eee575;padding-bottom:8px}.project-facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #f1eee530;gap:5vw;padding-top:25px;margin:0}.project-facts dt{font-family:Satoshi,Arial,sans-serif;font-size:12px;color:#f1eee57a;margin-bottom:14px}.project-facts dd{margin:0;font-size:23px;letter-spacing:-.025em;line-height:1.3}
.showcase-track{position:relative;overflow:clip}.showcase-pin{position:relative;padding:100px var(--pad) 40px;min-height:100svh;overflow:hidden;isolation:isolate}.showcase-type{position:absolute;left:3%;top:24%;font-size:22vw;line-height:.82;letter-spacing:-.07em;font-weight:400;color:#f1eee510;margin:0;z-index:-1;white-space:nowrap}.showcase-type em{font-weight:400}.product-space{position:relative;perspective:1300px;display:flex;align-items:center;justify-content:center;min-height:73svh}.product-visual{width:85%;margin:0;transform-origin:center;filter:drop-shadow(0 30px 55px #0005)}.product-window{position:relative;aspect-ratio:var(--ratio);overflow:hidden;border-radius:16px;background:#191919;isolation:isolate}.product-window img{position:absolute;width:var(--image-width);max-width:none;height:auto;left:var(--image-x);top:var(--image-y)}.phone-preview{width:auto;height:68svh}.phone-preview .product-window{height:100%;width:auto;border-radius:28px}.game-preview{width:92%}.showcase-caption{font-family:Satoshi,Arial,sans-serif;font-size:13px;color:#f1eee59a;text-align:center;margin:25px auto 0;max-width:600px;line-height:1.5}
.project-story{position:relative;padding:90px var(--pad) 80px}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw;margin:65px 0 0}.story-visual{position:relative;align-self:start;position:sticky;top:140px}.story-art{position:relative;height:65svh;max-height:720px;min-height:360px;border-radius:50% 50% 24px 24px;background:var(--hero-a);overflow:hidden;display:flex;align-items:center;justify-content:center;isolation:isolate}.story-halo{position:absolute;inset:-25%;z-index:-1;background:radial-gradient(ellipse at 50% 42%,var(--hero-b),var(--hero-a) 48%,var(--hero-c) 85%);filter:blur(30px)}.story-mark{width:40%;height:40%;mask-image:var(--mark);-webkit-mask-image:var(--mark);mask-mode:var(--mask-mode);mask-size:contain;-webkit-mask-size:contain;mask-position:center;-webkit-mask-position:center;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;background:var(--cream)}.story-index{font-size:20vw;position:absolute;left:0;right:0;bottom:-3vw;line-height:1;text-align:center;opacity:.18;font-weight:500;letter-spacing:-.06em}.feature-chapter{min-height:65svh;display:flex;flex-direction:column;justify-content:center;padding:70px 0}.feature-number{font-family:Satoshi,Arial,sans-serif;font-size:13px;color:var(--hero-b);margin-bottom:30px}.feature-chapter h3{font-size:clamp(42px,5vw,90px);line-height:.98;letter-spacing:-.05em;font-weight:400;margin:0 0 30px}.feature-chapter p{font-family:Satoshi,Arial,sans-serif;font-size:17px;line-height:1.7;margin:0;max-width:510px;color:#f1eee5b5}.project-note{font-family:Satoshi,Arial,sans-serif;font-size:13px;line-height:1.6;max-width:560px;margin:40px 0 0 auto;color:#f1eee57a}
.next-track{position:relative;overflow:clip}.next-pin{position:relative;overflow:hidden;isolation:isolate}.wave-type{font-size:11vw;line-height:1;letter-spacing:-.03em;text-align:center;padding:130px var(--pad);margin:0}.wave-char{display:inline-block;white-space:pre}.static-dot{color:var(--hero-b)}.wave-seed{display:none}.next-project{display:flex;flex-direction:column;align-items:center;justify-content:center;height:85svh;position:relative;margin:10px;border-radius:18px;overflow:hidden;isolation:isolate;--mask-mode:var(--next-mask);background:var(--next-a)}.next-color{position:absolute;inset:-10%;z-index:-1;background:radial-gradient(ellipse at 53% 49%,var(--next-a) 0%,var(--next-a) 29%,var(--next-b) 55%,var(--next-c) 82%,var(--next-b) 100%);filter:blur(30px)}.next-label{font-family:Satoshi,Arial,sans-serif;font-size:13px;position:absolute;left:var(--pad);top:35px}.next-mark{width:25vw;height:28svh;background:var(--cream);mask-image:var(--next-mark);-webkit-mask-image:var(--next-mark);mask-mode:var(--next-mask);mask-size:contain;-webkit-mask-size:contain;mask-position:center;-webkit-mask-position:center;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;transition:transform .7s cubic-bezier(.22,1,.36,1)}.next-name{font-size:clamp(54px,12vw,210px);line-height:1;font-weight:400;letter-spacing:-.065em;margin-top:20px}.next-bottom{font-family:Satoshi,Arial,sans-serif;font-size:14px;position:absolute;left:var(--pad);bottom:35px}.next-project:hover .next-mark{transform:rotate(-10deg) translateY(-18px)}.project-footer{display:flex;justify-content:space-between;padding:40px var(--pad);gap:25px;font-family:Satoshi,Arial,sans-serif;font-size:13px;color:#f1eee58a}.project-footer>a:first-child{font-family:Cabinet,Arial,sans-serif;font-size:20px;font-weight:900;letter-spacing:-.05em}
.motion{scroll-behavior:auto}.motion .case-hero{height:175svh}.motion .hero-frame{position:sticky;top:10px;will-change:transform}.motion .project-sculpture,.motion .hero-title,.motion .hero-role{will-change:transform}.motion .showcase-track{height:230svh}.motion .showcase-pin{position:sticky;top:0;height:100svh;padding-top:100px}.motion .product-space{height:calc(100svh - 180px);min-height:0}.motion .product-visual{will-change:transform;max-width:1250px}.motion .showcase-caption{margin-top:0}.motion .next-track{height:420svh}.motion .next-pin{height:100svh;position:sticky;top:0}.motion .wave-type{position:absolute;inset:0;font-size:clamp(80px,15vw,280px);padding:0;z-index:3;pointer-events:none}.motion .wave-char{position:absolute;left:0;top:0;will-change:transform;background:linear-gradient(100deg,var(--cream),var(--hero-b),var(--hero-c));background-clip:text;-webkit-background-clip:text;color:transparent}.motion .static-dot{display:none}.motion .wave-seed{display:block;position:absolute;left:0;top:0;width:15px;height:15px;background:var(--hero-b);border-radius:50%;z-index:2}.motion .next-project{position:absolute;inset:10px;margin:0;height:auto;clip-path:circle(0px at 50% 78%);will-change:clip-path;z-index:4}.motion .next-label{top:100px}
@media(max-width:700px){:root{--pad:22px}.header{padding:28px}.wordmark{font-size:20px}.nav-pill{padding:15px 19px;gap:18px;font-size:12px}.nav-pill a:last-child{max-width:115px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.case-hero{padding:7px}.hero-frame{height:calc(100svh - 14px);min-height:530px;border-radius:16px}.hero-title{left:42%;top:25%;font-size:14vw}.hero-role{left:8%;top:66%;font-size:12vw}.project-sculpture{width:57vw;height:57vw;left:45%;top:48%}.hero-bottom{bottom:24px;left:22px;right:22px;font-size:12px;gap:25px}.hero-bottom>span:first-child{max-width:55%}.hero-bottom a{position:absolute;left:50%;bottom:76px;transform:translateX(-50%);white-space:nowrap;font-size:12px;gap:10px}.hero-bottom a span{font-size:18px}.motion .hero-frame{top:7px}.section-label{font-size:12px}.project-intro{padding:85px 22px}.intro-grid{grid-template-columns:1fr;gap:45px;margin:55px 0}.intro-title{font-size:13vw}.intro-copy p{font-size:16px;line-height:1.65}.project-facts{gap:20px;grid-template-columns:1fr}.project-facts div{display:grid;grid-template-columns:85px 1fr;gap:15px;align-items:baseline}.project-facts dt{font-size:12px;margin:0}.project-facts dd{font-size:20px}.showcase-pin{padding:80px 22px 40px;min-height:80svh}.product-space{min-height:60svh}.product-visual{width:100%}.phone-preview{width:auto;height:58svh}.product-window{border-radius:10px}.showcase-type{font-size:30vw;top:30%;left:2%}.showcase-caption{font-size:12px}.motion .showcase-track{height:190svh}.motion .showcase-pin{padding-top:85px}.motion .product-space{height:calc(100svh - 170px)}.project-story{padding:70px 22px}.story-grid{grid-template-columns:1fr;gap:20px;margin-top:35px}.story-visual{position:relative;top:auto}.story-art{height:48svh;min-height:280px;max-width:380px;margin:auto}.story-index{font-size:45vw;bottom:-6vw}.story-chapters{padding-top:25px}.feature-chapter{min-height:0;padding:45px 0;border-bottom:1px solid #f1eee524}.feature-number{margin-bottom:20px;font-size:12px}.feature-chapter h3{font-size:11vw;margin-bottom:25px}.feature-chapter p{font-size:16px;line-height:1.65}.project-note{font-size:12px;margin-top:35px}.wave-type{font-size:14vw;padding:100px 22px}.motion .wave-type{font-size:25vw}.next-project{margin:7px;border-radius:16px}.motion .next-project{inset:7px;border-radius:16px}.next-mark{width:46vw;height:25svh}.next-name{font-size:13vw}.next-label{font-size:12px;top:30px}.next-bottom{font-size:13px}.project-footer{flex-wrap:wrap;font-size:12px;align-items:center}.project-footer span{width:100%}.project-footer>a:first-child{font-size:18px}}
@media(max-height:600px) and (min-width:701px){.hero-frame{min-height:0}.hero-title{font-size:14svh}.hero-role{font-size:12svh}.project-sculpture{height:50svh;width:50svh}.hero-bottom{font-size:12px}.motion .showcase-pin{padding-top:95px}.phone-preview{height:60svh}.story-art{min-height:280px;height:65svh}.feature-chapter{min-height:85svh}.hero-title{top:22%}.hero-role{top:64%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* A level hero and straightforward project content. */
.project-preview{padding:35px var(--pad) 90px;display:flex;justify-content:center}.project-preview .product-visual{width:100%;max-width:1250px;filter:none}.project-preview .phone-preview{height:auto;width:min(340px,80vw)}.project-preview .phone-preview .product-window{height:auto;width:100%;border-radius:22px}.project-preview figcaption{font-family:Satoshi,Arial,sans-serif;font-size:13px;line-height:1.5;color:#f1eee599;text-align:center;max-width:650px;margin:25px auto 0}.project-story{padding-top:45px;padding-bottom:80px}.story-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4vw;margin-top:45px}.feature-chapter{min-height:0;display:block;padding:30px 0 0;border-top:1px solid #f1eee530}.feature-number{display:block;margin-bottom:28px}.feature-chapter h3{font-size:clamp(30px,3.3vw,56px);margin-bottom:25px}.feature-chapter p{font-size:16px;line-height:1.65}.project-note{margin:50px 0 0;max-width:650px}
@media(max-width:700px){.project-preview{padding:15px 22px 60px}.project-preview figcaption{font-size:12px}.project-story{padding:35px 22px 65px}.story-grid{grid-template-columns:1fr;gap:35px;margin-top:35px}.feature-chapter{padding-top:28px;border-bottom:0}.feature-chapter h3{font-size:38px}.feature-number{margin-bottom:18px}.project-note{margin-top:35px}}

.project-stack{padding:0 var(--pad) 75px}.stack-list{list-style:none;margin:35px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:0 34px}.stack-list li{font-size:clamp(22px,2.6vw,38px);font-weight:400;letter-spacing:-.03em;padding:16px 0;border-bottom:1px solid #f1eee530}@media(max-width:700px){.project-stack{padding:0 22px 60px}.stack-list{gap:0 24px;margin-top:22px}.stack-list li{font-size:24px;padding:13px 0}}

.motion .next-track{height:350svh}.project-intro{padding-top:90px;padding-bottom:65px}.intro-grid{margin:55px 0}.project-stack{padding-bottom:45px}
