@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-opsz-normal-D9N6E8K1.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-opsz-normal-IcJDqblK.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-opsz-normal-Cre6nC2_.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-ext-400-normal-C_uLvvQ5.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-ext-400-normal-Bh0R7Dhr.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-vietnamese-400-normal-ByoDsISC.woff2)format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-cyrillic-ext-600-normal-Dj6eZy5f.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-ext-600-normal-DVvC-yKp.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-cyrillic-600-normal-EVf6-Yzo.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-600-normal-8K4wrrwR.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-greek-600-normal-H7WoG9Et.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-600-normal-mc2nkWzM.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-vietnamese-600-normal-Dtizs43-.woff2)format("woff2"),url(/assets/jetbrains-mono-vietnamese-600-normal-OWROknRo.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-ext-600-normal-BfB_LPfz.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-600-normal-DObL3zCW.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-600-normal-BfsvjouI.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#08090a;--surface-1:#0f1011;--surface-2:#151618;--surface-3:#1b1c1f;--bg-2:var(--surface-1);--line-strong:#f4f3ef29;--edge:inset 0 1px 0 #ffffff0d;--fg:#f4f3ef;--muted:#8b8b92;--line:#f4f3ef14;--accent:#2f5bff;--accent-ink:#5a85ff;--gold:#ffc940;--radius:22px;--gutter:clamp(16px, 4vw, 56px);--font:"Bricolage Grotesque Variable", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.5;overflow-x:hidden}body:after{content:"";z-index:50;pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit;text-decoration:none}a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}section[id],header[id],main[id]{scroll-margin-top:96px}.skip-link{z-index:110;background:var(--fg);color:var(--bg);border-radius:999px;padding:10px 16px;font-weight:600;transition:transform .2s;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus-visible{transform:none}[data-motion=paused] .marquee-track,[data-motion=paused] .status-live:before,[data-motion=paused] .cursor-ring span{animation-play-state:paused}img{max-width:100%;display:block}.mono{font-family:var(--mono);letter-spacing:.02em;text-transform:uppercase;font-size:.78rem}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.cursor-ring{z-index:100;pointer-events:none;display:none;position:fixed;top:0;left:0}.has-cursor .cursor-ring{display:block}.cursor-ring span{border:1.5px solid #f4f3ef80;border-radius:50%;width:36px;height:36px;margin:-18px 0 0 -18px;transition:transform .25s cubic-bezier(.2,.8,.2,1),background .2s,border-color .2s;display:block}.cursor-ring[data-state=hover] span{border-color:var(--accent);background:#2f5bff2e;transform:scale(1.7)}.cursor-ring[data-state=catch] span{border-color:var(--gold);border-style:dashed;animation:2s linear infinite spin;transform:scale(1.4)}.cursor-ring.pressed span{transform:scale(.7)}@keyframes spin{to{rotate:360deg}}.nav{top:calc(14px + env(safe-area-inset-top));left:calc(var(--gutter) + env(safe-area-inset-left));right:calc(var(--gutter) + env(safe-area-inset-right));z-index:40;border:1px solid var(--line);-webkit-backdrop-filter:blur(16px)saturate(1.4);background:#0a0a0b8c;border-radius:999px;justify-content:space-between;align-items:center;gap:16px;padding:10px 10px 10px 18px;display:flex;position:fixed}.nav-logo{align-items:center;gap:10px;font-size:1.15rem;font-weight:700;display:flex}.nav-logo img{width:30px}.nav-links{gap:4px;display:flex}.nav-links a{color:var(--muted);border-radius:999px;padding:8px 14px;font-size:.95rem;transition:color .2s,background .2s}.nav-links a:hover{color:var(--fg);background:var(--line)}.hud{position:relative}.hud-score{border:1px solid var(--line);background:var(--bg-2);color:var(--fg);font:inherit;border-radius:999px;align-items:center;gap:10px;padding:8px 14px;transition:transform .2s cubic-bezier(.3,1.6,.5,1),border-color .2s;display:flex}.hud-score:hover{border-color:var(--accent)}.hud-score.bump{border-color:var(--gold);transform:scale(1.12)}.hud-score img{width:20px}.hud-score .mono{font-size:.85rem}.hud-score em{color:var(--gold);font-style:normal}.hud-trophies{border-left:1px solid var(--line);color:var(--muted);padding-left:10px}.hud-trophies:before{content:"★ ";color:var(--gold)}.hud-panel{overscroll-behavior:contain;border:1px solid var(--line);border-radius:var(--radius);width:min(340px,100vw - 32px);max-height:calc(100dvh - 100px);box-shadow:var(--edge);-webkit-backdrop-filter:blur(20px);background:#151618f0;padding:18px;animation:.25s cubic-bezier(.2,.9,.3,1.2) pop-in;position:absolute;top:calc(100% + 10px);right:0;overflow-y:auto}.hud-panel header{justify-content:space-between;align-items:baseline;margin-bottom:12px;display:flex}.hud-panel header .mono{color:var(--muted)}.hud-panel ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.hud-panel li{opacity:.55;background:#ffffff08;border-radius:14px;align-items:center;gap:12px;padding:10px 12px;display:flex}.hud-panel li.got{opacity:1;background:#ffc94014}.hud-panel li>span{color:var(--gold);font-size:1.1rem}.hud-panel li strong,.hud-panel li small{display:block}.hud-panel li small{color:var(--muted)}.hud-actions{justify-content:space-between;gap:12px;display:flex}.hud-reset{color:var(--muted);background:0 0;border:0;margin-top:12px;padding:0}.hud-reset:hover{color:var(--fg)}@keyframes pop-in{0%{opacity:0;transform:translateY(-6px)scale(.97)}}kbd{border:1px solid var(--line-strong);background:linear-gradient(180deg, var(--surface-3), var(--surface-1));min-width:22px;color:var(--fg);font-family:var(--mono);text-align:center;border-bottom-width:2px;border-radius:6px;padding:1px 7px;font-size:.72rem;display:inline-block}.hud-howto{background:var(--surface-1);color:var(--muted);border-radius:14px;gap:8px;margin:0 0 14px;padding:12px 14px;font-size:.9rem;list-style:none;display:grid}.hud-howto kbd{margin-right:8px}.hero{background:radial-gradient(60% 50% at 50% 45%, #2f5bff29, transparent 70%), var(--bg);place-items:center;min-height:100dvh;display:grid;position:relative;overflow:hidden}.playground{touch-action:manipulation;width:100%;height:100%;position:absolute;inset:0}.hero-inner{z-index:1;padding:0 var(--gutter);text-align:center;pointer-events:none;position:relative}.eyebrow{color:var(--muted);margin:0 0 12px}.kinetic{letter-spacing:-.02em;-webkit-user-select:none;user-select:none;margin:0;font-size:clamp(4.2rem,17vw,16rem);font-weight:300;line-height:.9}.kinetic span{font-variation-settings:"wght" 300;transition:font-variation-settings .35s cubic-bezier(.2,.8,.2,1),transform .35s cubic-bezier(.2,.8,.2,1);animation:.9s cubic-bezier(.2,.9,.2,1) both rise;display:inline-block}.kinetic span:last-child{color:var(--accent-ink)}@keyframes rise{0%{opacity:0;transform:translateY(.4em)}}.hero-sub{text-wrap:balance;color:#f4f3efcc;max-width:34ch;margin:18px auto 32px;font-size:clamp(1.1rem,2.2vw,1.6rem)}.hero-ctas{pointer-events:auto;flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.btn{white-space:nowrap;border-radius:999px;align-items:center;padding:15px 28px;font-size:1.02rem;font-weight:650;transition:background .25s,color .25s,border-color .25s,transform .25s cubic-bezier(.3,1.6,.5,1);display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:#4169ff;transform:translateY(-2px)}.btn-ghost{-webkit-backdrop-filter:blur(8px);background:#0a0a0b80;border:1px solid #f4f3ef38}.btn-ghost:hover{border-color:var(--fg)}.marquee{border-block:1px solid var(--line);background:var(--bg-2);padding:22px 0;overflow:hidden}.marquee-track{width:max-content;animation:40s linear infinite marquee;display:flex}.marquee-group{display:flex}.marquee span{letter-spacing:-.02em;white-space:nowrap;align-items:center;gap:32px;padding-right:32px;font-size:clamp(1.6rem,4vw,3rem);font-weight:600;display:flex}.marquee span:nth-child(2n){color:#0000;-webkit-text-stroke:1px #f4f3ef80}.marquee img{opacity:.6;width:30px}@keyframes marquee{to{transform:translate(-50%)}}.section{padding:clamp(64px, 8vw, 112px) var(--gutter);max-width:1400px;margin:0 auto;position:relative}.section-head{gap:14px;margin-bottom:clamp(36px,6vw,72px);display:grid}.section-head h2,.contact-title{text-wrap:balance;letter-spacing:-.04em;max-width:16ch;margin:0;font-size:clamp(2.4rem,6.5vw,5.5rem);font-weight:600;line-height:.98}.section-head p{max-width:48ch;color:var(--muted);margin:0;font-size:1.15rem}.bento{grid-template-columns:repeat(6,1fr);gap:14px;display:grid}.card{--mx:50%;--my:50%;border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(420px circle at var(--mx) var(--my), #2f5bff1a, transparent 60%), var(--surface-1);min-height:300px;box-shadow:var(--edge);flex-direction:column;grid-column:span 3;padding:24px;transition:border-color .3s,background-color .3s,translate .3s cubic-bezier(.2,.8,.2,1);display:flex;position:relative;overflow:hidden}.card:hover{background-color:var(--surface-2);border-color:var(--line-strong);translate:0 -4px}.card-0{grid-column:span 4}.card-1,.card-2{grid-column:span 2}.card-3{grid-column:span 4}.card h3{letter-spacing:-.03em;margin:auto 0 10px;font-size:clamp(1.8rem,3.2vw,2.6rem);line-height:1}.card p{color:#f4f3efb8;max-width:42ch;margin:0 0 18px}.tags{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tags li{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:5px 10px;font-size:.7rem}.level-list{grid-template-columns:repeat(4,1fr);gap:clamp(20px,3vw,40px);margin:0;padding:0;list-style:none;display:grid}.level{border-top:1px solid var(--line);align-content:start;gap:14px;padding-top:26px;display:grid;position:relative}.level:before{content:"";background:linear-gradient(90deg, var(--accent), var(--gold));transform-origin:0;width:100%;height:2px;transition:transform 1.2s cubic-bezier(.2,.8,.2,1) .3s;position:absolute;top:-1px;left:0;transform:scaleX(0)}.level.in:before{transform:scaleX(1)}.level-head{justify-content:space-between;align-items:baseline;display:flex}.level-badge{color:var(--accent-ink);font-weight:600}.level h3{letter-spacing:-.025em;margin:0;font-size:clamp(1.5rem,2.4vw,2rem);font-weight:600;line-height:1.1}.level p{color:var(--muted);max-width:32ch;margin:0}.level-xp{color:var(--gold)}.work-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.work-row{--mx:50%;--my:50%;border-bottom:1px solid var(--line);isolation:isolate;grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr) auto 5.5em;align-items:center;gap:clamp(12px,3vw,40px);padding:clamp(18px,2.6vw,30px) 8px;display:grid;position:relative;overflow:hidden}.work-row:before{content:"";z-index:-1;background:radial-gradient(360px circle at var(--mx) var(--my), #2f5bff38, transparent 65%);opacity:0;transition:opacity .3s;position:absolute;inset:0}.work-row:hover:before{opacity:1}.work-name{letter-spacing:-.04em;font-size:clamp(1.6rem,4vw,3rem);font-weight:600;line-height:1;transition:translate .4s cubic-bezier(.2,.8,.2,1)}.work-row:hover .work-name{translate:14px}.work-kind,.work-year{color:var(--muted)}.filters{flex-wrap:wrap;gap:8px;margin-bottom:28px;display:flex}.chip{border:1px solid var(--line);background:var(--bg-2);color:var(--muted);font:inherit;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-size:.95rem;transition:color .2s,border-color .2s,background .2s,transform .2s cubic-bezier(.3,1.6,.5,1);display:inline-flex}.chip .mono{opacity:.7;font-size:.7rem}.chip:hover{color:var(--fg);border-color:#f4f3ef40}.chip.active{color:#fff;background:var(--accent);border-color:var(--accent);transform:scale(1.04)}.featured{grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:40px;display:grid}.project-card{--mx:50%;--my:50%;border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(500px circle at var(--mx) var(--my), #2f5bff1f, transparent 60%), var(--surface-1);min-height:320px;box-shadow:var(--edge);will-change:transform;flex-direction:column;transition:transform .25s ease-out,border-color .3s;animation:.6s cubic-bezier(.2,.8,.2,1) both card-in;display:flex;position:relative;overflow:hidden}.project-card:nth-child(2){animation-delay:60ms}.project-card:nth-child(3){animation-delay:.12s}.project-card:nth-child(4){animation-delay:.18s}.project-card:hover{background-color:var(--surface-2);border-color:var(--line-strong)}@keyframes card-in{0%{opacity:0;translate:0 24px}}.project-body{flex-direction:column;flex:1;padding:24px;display:flex}.project-shot{aspect-ratio:16/10;object-fit:cover;object-position:center top;border-bottom:1px solid var(--line);width:100%;height:auto;transition:transform .6s cubic-bezier(.2,.8,.2,1);display:block}.project-card:hover .project-shot{transform:scale(1.02)}.project-top{color:var(--muted);justify-content:space-between;gap:12px;display:flex}.status{border:1px solid var(--line);border-radius:999px;padding:3px 9px}.status-live{color:#7dffb0;border-color:#7dffb059}.status-live:before{content:"● ";animation:1.6s ease-in-out infinite blink}@keyframes blink{50%{opacity:.3}}.status-in-development{color:var(--gold);border-color:#ffc94059}.project-card h3{letter-spacing:-.035em;margin:auto 0 10px;padding-top:28px;font-size:clamp(2rem,4vw,3.2rem);line-height:1}.project-card p{color:#f4f3efbf;max-width:46ch;margin:0 0 20px}.project-bottom{justify-content:space-between;align-items:end;gap:12px;display:flex}.project-year,.work-blurb{color:var(--muted)}.work-blurb{font-size:.95rem;line-height:1.4}.project-link{vertical-align:top;margin-left:12px;font-size:.6em;transition:rotate .3s,color .3s;display:inline-block}.project-card:hover .project-link{color:var(--accent-ink);rotate:45deg}.work-list li{animation:.5s cubic-bezier(.2,.8,.2,1) both card-in}.clients{margin-top:56px}.clients-title{letter-spacing:-.02em;margin:0 0 18px;font-size:1.4rem}.client-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin:0;padding:0;list-style:none;display:grid}.client{--mx:50%;--my:50%;border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(240px circle at var(--mx) var(--my), #2f5bff1a, transparent 65%), var(--surface-1);box-shadow:var(--edge);gap:6px;padding:18px 20px;transition:background-color .3s,border-color .3s;animation:.5s cubic-bezier(.2,.8,.2,1) both card-in;display:grid}.client:hover{background-color:var(--surface-2);border-color:var(--line-strong)}.client strong{letter-spacing:-.02em;font-size:1.25rem}.client .mono{color:var(--muted);text-transform:none}.quest{border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);background:var(--surface-1);width:min(760px,100%);box-shadow:var(--edge);text-align:left;gap:18px;padding:clamp(22px,4vw,40px);display:grid}.quest-head{color:var(--muted);justify-content:space-between;display:flex}.quest-count{color:var(--gold)}.quest-bar{background:var(--line);border-radius:999px;height:6px;overflow:hidden}.quest-bar span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--gold));height:100%;transition:width .5s cubic-bezier(.3,1.4,.5,1);display:block}.quest-topics{border:0;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.quest-topics legend{color:var(--muted);margin-bottom:10px}.quest-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.quest label{gap:8px;display:grid}.quest label .mono{color:var(--muted)}.quest input,.quest textarea{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--fg);font:inherit;resize:vertical;border-radius:14px;padding:14px 16px;transition:border-color .2s,box-shadow .2s}.quest input:focus,.quest textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 4px #2f5bff2e}.quest textarea::placeholder{color:#8b8b92b3}.hp{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.quest-foot{gap:12px;display:grid}.quest-submit{background:var(--fg);color:var(--bg);font:inherit;border:0;border-radius:999px;justify-self:start;padding:16px 30px;font-size:1.05rem;font-weight:700;transition:background .25s,color .25s,transform .25s cubic-bezier(.3,1.6,.5,1),opacity .25s}.quest-submit:not(.ready){background:var(--surface-3);color:var(--fg)}.quest-submit:not(:disabled):hover{background:var(--accent);color:#fff;transform:scale(1.04)}.quest-submit:disabled{opacity:.45}.field-error{color:#ff9b9b;font-size:.88rem}.quest [aria-invalid=true]{border-color:#ff9b9b99}.quest-error{color:#ff8a8a;margin:0}.quest-error a{text-decoration:underline}.quest-done{text-align:center;justify-items:center;padding:56px 28px}.quest-done h3{letter-spacing:-.02em;margin:0;font-size:clamp(1.6rem,3.5vw,2.4rem)}.quest-done p{color:var(--muted);margin:0}.quest-trophy{background:var(--gold);width:72px;height:72px;color:var(--bg);border-radius:50%;place-items:center;font-size:2rem;animation:.5s cubic-bezier(.3,1.6,.5,1) pop-in;display:grid}.contact{text-align:center;flex-direction:column;align-items:center;display:flex}.contact-title{max-width:14ch;margin:16px 0 40px}.contact-title em{color:var(--accent-ink);font-style:normal}.contact-alt{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:12px;margin-top:40px;display:flex}.contact-alt a:hover{color:var(--fg)}.hidden-m{z-index:2;opacity:.16;background:0 0;border:0;width:26px;padding:4px;transition:opacity .3s,transform .3s;position:absolute}.hidden-m:hover{opacity:.6;transform:scale(1.2)rotate(-8deg)}.hidden-m.is-found{opacity:0;pointer-events:none}.hidden-m.is-burst{animation:.7s cubic-bezier(.2,.8,.2,1) forwards collect}.hidden-m.is-burst img{filter:drop-shadow(0 0 12px var(--gold)) sepia(1) saturate(6) hue-rotate(5deg)}@keyframes collect{40%{opacity:1;transform:scale(2.4)rotate(12deg)}to{opacity:0;transform:scale(.2)translateY(-60px)}}.hm-card{top:20px;right:20px}.hm-levels{right:var(--gutter);top:clamp(80px,12vw,160px)}.hm-work{bottom:clamp(40px,6vw,90px);left:45%}.hm-footer{right:var(--gutter);bottom:18px}.toast{z-index:60;-webkit-backdrop-filter:blur(16px);background:#121214eb;border:1px solid #ffc94066;border-radius:999px;align-items:center;gap:14px;padding:12px 20px 12px 12px;animation:3.6s cubic-bezier(.2,.9,.2,1) forwards toast;display:flex;position:fixed;bottom:24px;left:50%;translate:-50%;box-shadow:0 10px 40px #00000080}.toast-badge{background:var(--gold);width:40px;height:40px;color:var(--bg);border-radius:50%;place-items:center;font-size:1.2rem;display:grid}.toast small{font-family:var(--mono);text-transform:uppercase;color:var(--gold);font-size:.7rem;display:block}.toast strong{font-size:1.05rem}@keyframes toast{0%{opacity:0;transform:translateY(30px)scale(.9)}8%,88%{opacity:1;transform:none}to{opacity:0;transform:translateY(20px)}}.footer{padding:60px var(--gutter) 70px;border-top:1px solid var(--line);background:var(--bg-2);flex-wrap:wrap;justify-content:space-between;gap:40px;display:flex;position:relative}.footer-brand{align-items:center;gap:14px;font-size:2rem;display:flex}.footer-brand img{width:48px}.footer-cols{flex-wrap:wrap;gap:48px;display:flex}.footer-cols div{text-transform:none;align-content:start;gap:8px;display:grid}.footer-cols small{color:var(--muted);text-transform:uppercase}.footer-cols a:hover{color:var(--accent-ink)}.js .reveal{opacity:0;transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1);transform:translateY(28px)}.js .reveal.in{opacity:1;transform:none}.bento .reveal:nth-child(2),.level-list .reveal:nth-child(2){transition-delay:80ms}.bento .reveal:nth-child(3),.level-list .reveal:nth-child(3){transition-delay:.16s}.bento .reveal:nth-child(4),.level-list .reveal:nth-child(4){transition-delay:.24s}@media (width<=860px){.nav-links{display:none}.card,.card-0,.card-1,.card-2,.card-3{grid-column:span 6;min-height:240px}.work-row{grid-template-columns:1fr auto}.work-kind,.work-blurb{display:none}.client-grid{grid-template-columns:repeat(2,1fr)}.featured,.quest-row{grid-template-columns:1fr}.level-list{grid-template-columns:1fr 1fr;row-gap:36px}.hud-trophies{display:none}}@media (width<=560px){.level-list{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}.reveal{opacity:1;transform:none}}.hud-panel .hud-howto li{opacity:1;background:0 0;padding:0;display:block}.legal{max-width:820px;padding-top:clamp(120px,14vw,170px)}.legal-title{letter-spacing:-.04em;margin:0 0 32px;font-size:clamp(2.4rem,6vw,4rem);font-weight:600;line-height:1}.legal-body{color:#f4f3efc7;overflow-wrap:anywhere}.legal-body h2{color:var(--fg);letter-spacing:-.02em;text-wrap:balance;margin:44px 0 12px;font-size:1.4rem;font-weight:600}.legal-body p,.legal-body li{max-width:68ch}.legal-body a{color:var(--accent-ink);text-underline-offset:3px;text-decoration:underline}.legal-body ul{padding-left:1.2em}.kinetic-404{letter-spacing:-.06em;margin:0;font-size:clamp(6rem,24vw,18rem);font-weight:300;line-height:.85}.hero-404 .hero-sub{margin-top:24px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.card>:not(.card-visual):not(.hidden-m){z-index:1;position:relative}.card-visual{pointer-events:none;height:auto;position:absolute}.card-shot{border:1px solid var(--line-strong);opacity:.9;border-radius:14px;width:58%;transition:transform .6s cubic-bezier(.2,.8,.2,1);top:24px;right:-40px;transform:rotate(-4deg);-webkit-mask-image:linear-gradient(#000 55%,#0000 95%);mask-image:linear-gradient(#000 55%,#0000 95%)}.card-0:hover .card-shot{transform:rotate(-2deg)translateY(-6px)}.card-0 h3,.card-0 p,.card-0 .tags{max-width:44%}.card-mark{fill:none;width:30%;stroke:var(--accent-ink);stroke-width:10px;opacity:.85;top:26px;right:26px}.card-mark path{stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset 1.6s cubic-bezier(.6,0,.2,1),fill .6s 1.4s}.card-1.in .card-mark path{stroke-dashoffset:0;fill:#5a85ff1f}.card-1.in .card-mark path:nth-child(2){transition-delay:.2s,1.6s}.card-1.in .card-mark path:nth-child(3){transition-delay:.4s,1.8s}.card-2{background:radial-gradient(420px circle at var(--mx) var(--my), #2f5bff1a, transparent 60%), linear-gradient(150deg, #2f5bff38, transparent 60%), var(--surface-1)}.card-ui{filter:invert()hue-rotate(180deg)saturate(1.2);mix-blend-mode:screen;opacity:.9;width:min(30%,220px);top:50%;right:28px;transform:translateY(-50%)}.card-3 h3,.card-3 p,.card-3 .tags{max-width:50%}@media (width<=860px){.card-shot,.card-ui{width:100%;margin-bottom:18px;position:relative;top:auto;right:auto;transform:none}.card-shot{aspect-ratio:4/3;object-fit:cover;object-position:top;max-height:220px}.card-ui{width:60%;max-width:240px}.card-mark{width:96px;margin-bottom:20px;position:relative;top:auto;right:auto}.card-0 h3,.card-0 p,.card-0 .tags,.card-3 h3,.card-3 p,.card-3 .tags{max-width:none}}.consent{left:calc(16px + env(safe-area-inset-left));bottom:calc(16px + env(safe-area-inset-bottom));z-index:70;border:1px solid var(--line-strong);border-radius:var(--radius);width:min(420px,100vw - 32px);box-shadow:var(--edge);-webkit-backdrop-filter:blur(16px);background:#151618f5;gap:14px;padding:18px;animation:.3s cubic-bezier(.2,.9,.3,1.2) pop-in;display:grid;position:fixed}.consent p{color:#f4f3efd1;margin:0;font-size:.95rem}.consent a{color:var(--accent-ink);text-underline-offset:3px;text-decoration:underline}.consent-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.consent-actions .btn{justify-content:center;padding:12px 18px}.footer-link{color:inherit;font:inherit;text-align:left;background:0 0;border:0;padding:0}.footer-link:hover{color:var(--accent-ink)}
