:root{--bg: #060912;--bg-2: #0b1122;--surface: rgba(255, 255, 255, .04);--surface-2: rgba(255, 255, 255, .07);--border: rgba(255, 255, 255, .09);--text: #e8ecf6;--muted: #8a93ab;--brand-1: #38bdf8;--brand-2: #a78bfa;--brand-3: #f472b6;--radius: 18px;--ease: cubic-bezier(.22, 1, .36, 1);--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 var(--font-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit}h1,h2,h3{font-family:var(--font-display);line-height:1.05;margin:0;letter-spacing:-.02em}ul{margin:0;padding:0;list-style:none}.wrap{width:min(1180px,100% - 32px);margin-inline:auto}.muted{color:var(--muted)}#snow{position:fixed;inset:0;width:100%;height:100%;z-index:-2}#snow-front{position:fixed;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}.aurora{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;filter:blur(80px);opacity:.5}.aurora span{position:absolute;width:46vmax;height:46vmax;border-radius:50%;mix-blend-mode:screen;animation:drift 26s var(--ease) infinite alternate}.aurora span:nth-child(1){background:radial-gradient(circle,#0ea5e955,transparent 65%);top:-18vmax;left:-10vmax}.aurora span:nth-child(2){background:radial-gradient(circle,#8b5cf644,transparent 65%);top:-10vmax;right:-16vmax;animation-delay:-8s}.aurora span:nth-child(3){background:radial-gradient(circle,#ec489933,transparent 65%);top:30vmax;left:30vmax;animation-delay:-16s}@keyframes drift{0%{transform:translate(0) scale(1)}50%{transform:translate(6vmax,4vmax) scale(1.15)}to{transform:translate(-4vmax,8vmax) scale(.95)}}.nav{position:fixed;top:14px;left:50%;transform:translate(-50%);z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(1180px,100% - 32px);padding:10px 14px 10px 18px;border:1px solid var(--border);border-radius:999px;background:#080c188c;backdrop-filter:blur(14px) saturate(140%);transition:background .3s}.nav.scrolled{background:#080c18d9}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:600 17px var(--font-display)}.brand svg{width:26px;height:26px;color:var(--brand-1)}.brand em{font-style:normal;color:var(--muted)}.nav nav{display:flex;gap:4px}.nav nav a{text-decoration:none;padding:8px 14px;border-radius:999px;font-size:14px;color:var(--muted);transition:color .2s,background .2s}.nav nav a:hover{color:var(--text);background:var(--surface-2)}.nav .menu-inner{display:contents}.nav-toggle{display:none}@media (max-width: 640px){.nav.js-nav{flex-wrap:wrap;row-gap:0;border-radius:28px;padding:8px 8px 8px 16px;transition:background .3s,box-shadow .5s var(--ease)}.nav.js-nav.open{background:#080c18eb;box-shadow:0 0 0 100vmax #03050c8c,0 30px 60px -20px #000c}.js-nav .nav-toggle{display:grid;place-items:center;position:relative;width:42px;height:42px;padding:0;cursor:pointer;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text);transition:background .3s,border-color .3s}.js-nav .nav-toggle:hover,.js-nav.open .nav-toggle{background:var(--surface-2);border-color:color-mix(in srgb,var(--brand-1) 40%,var(--border))}.js-nav .nav-toggle:focus-visible{outline:2px solid var(--brand-1);outline-offset:3px}.js-nav .nav-toggle span{position:absolute;left:12px;width:18px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--brand-1),var(--brand-2));transition:translate .2s var(--ease) .2s,rotate .25s var(--ease),opacity .2s,scale .2s}.js-nav .nav-toggle span:nth-child(1){top:14px}.js-nav .nav-toggle span:nth-child(2){top:20px;width:12px}.js-nav .nav-toggle span:nth-child(3){top:26px}.js-nav.open .nav-toggle span{transition:translate .2s var(--ease),rotate .3s cubic-bezier(.3,1.6,.5,1) .18s,opacity .15s,scale .2s}.js-nav.open .nav-toggle span:nth-child(1){translate:0 6px;rotate:45deg}.js-nav.open .nav-toggle span:nth-child(2){opacity:0;scale:0 1}.js-nav.open .nav-toggle span:nth-child(3){translate:0 -6px;rotate:-45deg}.js-nav nav{flex-basis:100%;display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .45s var(--ease),visibility 0s .45s}.js-nav.open nav{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .45s var(--ease)}.js-nav .menu-inner{display:flex;flex-direction:column;min-height:0;overflow:hidden;counter-reset:menu}.js-nav .menu-inner a:first-child{margin-top:10px}.js-nav .menu-inner a:last-child{margin-bottom:6px}.js-nav nav a{display:flex;align-items:baseline;gap:14px;padding:14px 10px;border-radius:14px;font:600 22px var(--font-display);letter-spacing:-.01em;color:var(--text);border-top:1px solid var(--border);opacity:0;translate:0 -8px;transition:opacity .2s,translate .2s,background .2s}.js-nav nav a:first-child{border-top-color:transparent}.js-nav nav a:before{counter-increment:menu;content:"0" counter(menu);font:600 12px var(--font-mono);letter-spacing:.1em;color:var(--brand-1)}.js-nav nav a:after{content:"\2192";margin-left:auto;font-size:18px;color:var(--muted);translate:-6px 0;opacity:0;transition:translate .25s var(--ease),opacity .25s}.js-nav nav a:hover:after,.js-nav nav a:focus-visible:after{translate:0 0;opacity:1}.js-nav.open nav a{opacity:1;translate:0 0;transition:opacity .4s var(--ease),translate .5s var(--ease),background .2s}.js-nav.open nav a:nth-child(1){transition-delay:.08s,.08s,0s}.js-nav.open nav a:nth-child(2){transition-delay:.14s,.14s,0s}.js-nav.open nav a:nth-child(3){transition-delay:.2s,.2s,0s}}.hero{position:relative;min-height:100svh;display:grid;place-items:center;overflow:hidden;padding:120px 0 clamp(200px,30vh,300px)}.hero-inner{position:relative;z-index:2;text-align:center;width:min(980px,100% - 32px)}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 22px;font:600 12px var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--brand-1)}.hero-title{font-size:clamp(48px,10vw,128px);font-weight:700}.hero-title .line{display:block;overflow:hidden;padding-bottom:.08em}.hero-title .word{display:inline-block;transform:translateY(110%) rotate(4deg);opacity:0;transition:transform 1.1s var(--ease),opacity 1.1s var(--ease)}.loaded .hero-title .word{transform:none;opacity:1}.grad{background:linear-gradient(100deg,var(--brand-1),var(--brand-2) 45%,var(--brand-3) 80%,var(--brand-1));background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 7s linear infinite}@keyframes shine{to{background-position:-250% 0}}.hero-lead{max-width:620px;margin:28px auto 0;font-size:clamp(17px,2vw,20px);color:var(--muted)}.hero-stats{display:flex;justify-content:center;gap:clamp(24px,6vw,64px);margin-top:44px}.hero-stats div{display:grid}.hero-stats strong{font:700 clamp(30px,4vw,42px) var(--font-display)}.hero-stats span{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.12em}.scroll-cue{display:inline-block;margin-top:56px;width:26px;height:42px;border:2px solid var(--border);border-radius:14px;position:relative}.scroll-cue span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:var(--brand-1);animation:cue 1.8s var(--ease) infinite}@keyframes cue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}to{opacity:0;transform:translateY(16px)}}.mountains{position:absolute;left:0;bottom:0;width:100%;height:32vh;min-height:200px;z-index:1}.mountains .layer,.mountains .snow{will-change:transform}.mountains .snow{fill:#dbe7ff;opacity:.75}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--d, 0s)}.reveal.in{opacity:1;transform:none}.browser{--accent: var(--brand-1);position:relative;border-radius:14px;overflow:hidden;background:#0d1324;border:1px solid var(--border);box-shadow:0 40px 80px -30px #000c,0 0 0 1px #ffffff05,0 0 80px -20px color-mix(in srgb,var(--accent) 45%,transparent);transform-style:preserve-3d;transition:transform .6s var(--ease),box-shadow .6s var(--ease)}.browser-bar{display:flex;align-items:center;gap:7px;height:34px;padding:0 14px;background:#ffffff0a;border-bottom:1px solid var(--border)}.browser-bar i{width:10px;height:10px;border-radius:50%;background:#ffffff1f}.browser-bar i:nth-child(1){background:#ff5f57}.browser-bar i:nth-child(2){background:#febc2e}.browser-bar i:nth-child(3){background:#28c840}.browser-bar span{margin-left:12px;flex:1;max-width:260px;height:18px;border-radius:6px;background:#ffffff0d}.shot{position:relative;aspect-ratio:16 / 10;overflow:hidden}.shot img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform 1.2s var(--ease)}.browser:hover .shot img{transform:scale(1.03)}.browser:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(500px circle at var(--mx, 50%) var(--my, 50%),rgba(255,255,255,.09),transparent 45%)}.browser:hover:after{opacity:1}.placeholder{position:absolute;inset:0;display:none;padding:6%;background:radial-gradient(120% 90% at 85% 0%,color-mix(in srgb,var(--accent) 30%,transparent),transparent 60%),linear-gradient(160deg,#101830,#0a0f1e)}.shot.missing img{display:none}.shot.missing .placeholder{display:grid;grid-template-columns:22% 1fr;gap:5%}.ph-side,.ph-main{display:grid;align-content:start;gap:9px}.ph-main{gap:12px}.ph-line{height:9px;border-radius:5px;background:#ffffff12;position:relative;overflow:hidden}.ph-line.accent{background:color-mix(in srgb,var(--accent) 55%,transparent);width:70%}.ph-card{height:54px;border-radius:10px;border:1px solid rgba(255,255,255,.07);background:#ffffff08;display:flex;align-items:center;gap:12px;padding:0 14px}.ph-card:before{content:"";width:22px;height:22px;border-radius:7px;background:color-mix(in srgb,var(--accent) 50%,transparent);flex:none}.ph-card:after{content:"";height:8px;flex:1;border-radius:4px;background:#ffffff14}.ph-name{font:700 clamp(20px,3vw,34px) var(--font-display);color:color-mix(in srgb,var(--accent) 70%,white);margin-bottom:8px}.ph-line:after,.ph-card{background-image:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent);background-size:200% 100%;animation:shimmer 2.4s linear infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.featured{position:relative;padding:140px 0 120px}.featured-glow{position:absolute;inset:10% 0 auto;height:70%;pointer-events:none;background:radial-gradient(50% 50% at 70% 40%,color-mix(in srgb,var(--accent) 20%,transparent),transparent 70%)}.featured-head{text-align:center;max-width:820px;margin:0 auto 72px}.pulse{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 var(--accent);animation:pulse 2s infinite}@keyframes pulse{70%{box-shadow:0 0 0 10px transparent}to{box-shadow:0 0 0 0 transparent}}.featured-title{font-size:clamp(64px,13vw,168px);font-weight:700;letter-spacing:-.045em;background:linear-gradient(180deg,#fff 30%,color-mix(in srgb,var(--accent) 80%,#fff));-webkit-background-clip:text;background-clip:text;color:transparent}.featured-tagline{font:500 clamp(19px,2.4vw,26px) var(--font-display);color:var(--muted);margin:18px 0 0}.featured-stage{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;align-items:center}.featured-copy p{font-size:18px;color:#c3cadb;margin:0 0 28px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips li{padding:7px 14px;border-radius:999px;font-size:13px;font-weight:500;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 9%,transparent);color:color-mix(in srgb,var(--accent) 60%,white)}.chips li{display:inline-flex;align-items:center;gap:7px}.chips li svg{width:14px;height:14px;flex:none}.platforms{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 18px}.platforms-label{font:600 11px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.project .chips li{padding:5px 11px;font-size:12px;gap:6px}.project .chips li svg{width:13px;height:13px}.device-stack{position:relative;padding-bottom:70px;perspective:1400px}.terminal{position:absolute;right:-18px;bottom:0;width:min(440px,78%);border-radius:12px;overflow:hidden;background:#050810eb;backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);box-shadow:0 30px 60px -20px #000000e6,0 0 50px -15px color-mix(in srgb,var(--accent) 50%,transparent);animation:float 7s ease-in-out infinite}@keyframes float{50%{transform:translateY(-10px)}}.term-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--border);font:12px var(--font-mono);color:var(--muted)}.term-bar i{width:9px;height:9px;border-radius:50%;background:#fff2}.term-bar span{margin-left:8px}#term{margin:0;padding:14px 16px 18px;height:196px;overflow:hidden;font:12.5px/1.7 var(--font-mono);color:#cfe7f7;white-space:pre-wrap;word-break:break-all}#term .p{color:var(--accent)}#term .ok{color:#4ade80}#term .dim{color:var(--muted)}#term .cursor{display:inline-block;width:7px;height:1.1em;vertical-align:-2px;background:var(--accent);animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.highlight-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:90px}.hl{position:relative;padding:26px 22px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);overflow:hidden;transition:transform .5s var(--ease),border-color .5s}.hl:before{content:"";position:absolute;inset:0;opacity:0;transition:opacity .5s;background:radial-gradient(300px circle at var(--mx, 50%) var(--my, 0%),color-mix(in srgb,var(--accent) 16%,transparent),transparent 60%)}.hl:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.hl:hover:before{opacity:1}.hl b{position:relative;display:block;font:600 12px var(--font-mono);color:var(--accent);margin-bottom:14px}.hl h3{position:relative;font-size:20px;margin-bottom:8px}.hl p{position:relative;margin:0;font-size:14.5px;color:var(--muted)}.stack-line{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;margin-top:48px;font:13px var(--font-mono);color:var(--muted)}.stack-line li:before{content:"\25b8  ";color:var(--accent)}.projects{padding:120px 0 80px;position:relative}.section-head{max-width:640px;margin-bottom:90px}.section-head h2{font-size:clamp(38px,6vw,68px)}.section-head p:not(.eyebrow){color:var(--muted);font-size:18px;margin:18px 0 0}.project{--accent: var(--brand-1);display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center;margin-bottom:140px;position:relative}.project:nth-child(2n){grid-template-columns:.85fr 1.15fr}.project:nth-child(2n) .project-media{order:2}.project-media{perspective:1400px;position:relative}.project-media:before{content:"";position:absolute;inset:12% 8% -6%;border-radius:40px;filter:blur(60px);opacity:.35;background:var(--accent);z-index:-1}.project-index{font:600 13px var(--font-mono);color:var(--accent);letter-spacing:.1em}.project-kind{display:inline-block;margin-left:10px;font-size:13px;color:var(--muted)}.project-status{display:inline-flex;align-items:center;gap:7px;margin-left:12px;padding:3px 10px;border-radius:999px;vertical-align:1px;font:600 11px var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}.project-status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;animation:status-pulse 1.8s ease-in-out infinite}@keyframes status-pulse{50%{opacity:.25}}.stamp{position:absolute;z-index:2;top:13%;right:-3%;padding:8px 16px;pointer-events:none;font:700 clamp(14px,1.7vw,20px) var(--font-mono);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;color:var(--accent);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(4px);border:3px double var(--accent);border-radius:6px;outline:1px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:4px;box-shadow:0 18px 40px -16px #000000e6;transform:rotate(-7deg)}.project-media.in .stamp{animation:stamp-in .45s .7s cubic-bezier(.2,1.4,.4,1) backwards}@keyframes stamp-in{0%{opacity:0;transform:rotate(-16deg) scale(1.9)}}.project h3{font-size:clamp(34px,4.5vw,54px);margin:14px 0 12px;hyphens:auto;overflow-wrap:break-word}.project .tagline{font:500 19px/1.45 var(--font-display);color:color-mix(in srgb,var(--accent) 55%,white);margin:0 0 18px}.project .summary{color:#b8c0d3;margin:0 0 24px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.tags li{padding:6px 12px;border-radius:8px;font-size:13px;background:var(--surface-2);border:1px solid var(--border)}.tags li:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:8px;vertical-align:2px}.stack{font:12.5px var(--font-mono);color:var(--muted)}.project-media.has-detail{margin-bottom:12%}.project-media .detail{position:absolute;width:52%;bottom:-14%;left:-6%;z-index:1;box-shadow:0 30px 60px -20px #000000e6,0 0 0 1px #ffffff0a}.project:nth-child(2n) .project-media .detail{left:auto;right:-6%}.project-media .detail .browser-bar{height:24px;padding:0 10px;gap:5px}.project-media .detail .browser-bar i{width:7px;height:7px}.coming{position:relative;text-align:center;padding:80px 24px;border-radius:28px;border:1px dashed rgba(255,255,255,.16);background:var(--surface);overflow:hidden}.coming h3{font-size:clamp(30px,4vw,44px);position:relative}.coming p{color:var(--muted);margin:10px 0 0;position:relative}.coming-list{position:relative;display:grid;gap:20px;max-width:900px;margin:40px auto 0;text-align:left}.coming-list:empty{display:none}.coming-card{--accent: var(--brand-1);display:grid;grid-template-columns:1fr 1.1fr;gap:28px;align-items:center;padding:20px;border-radius:20px;background:color-mix(in srgb,var(--bg) 70%,transparent);border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));backdrop-filter:blur(6px)}.coming-media{position:relative}.coming-media.has-detail{margin-bottom:20%}.coming-media .detail{position:absolute;width:54%;bottom:-24%;right:-5%;z-index:1;box-shadow:0 24px 48px -16px #000000e6,0 0 0 1px #ffffff0a}.coming-media .detail .browser-bar{height:20px;padding:0 8px;gap:4px}.coming-media .detail .browser-bar i{width:6px;height:6px}.coming-card .project-status{margin:0 10px 0 0}.coming-card .project-kind{margin-left:0}.coming-card h4{font:700 clamp(26px,3vw,34px)/1.05 var(--font-display);letter-spacing:-.02em;margin:12px 0 8px}.coming .coming-tagline{font:500 16px/1.45 var(--font-display);color:color-mix(in srgb,var(--accent) 55%,white);margin:0 0 10px}.coming .coming-summary{font-size:14.5px;margin:0 0 16px}.coming-card .chips li{padding:5px 11px;font-size:12px;gap:6px}.coming-card .chips li svg{width:13px;height:13px}.coming-orbit{position:absolute;inset:0;display:grid;place-items:center}.coming-orbit span{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.06);animation:spin 30s linear infinite}.coming-orbit span:after{content:"";position:absolute;top:-4px;left:50%;width:8px;height:8px;border-radius:50%;background:var(--brand-1);box-shadow:0 0 14px var(--brand-1)}.coming-orbit span:nth-child(1){width:260px;height:260px}.coming-orbit span:nth-child(2){width:420px;height:420px;animation-duration:45s;animation-direction:reverse}.coming-orbit span:nth-child(2):after{background:var(--brand-2);box-shadow:0 0 14px var(--brand-2)}.coming-orbit span:nth-child(3){width:600px;height:600px;animation-duration:70s}.coming-orbit span:nth-child(3):after{background:var(--brand-3);box-shadow:0 0 14px var(--brand-3)}@keyframes spin{to{transform:rotate(360deg)}}.contact{padding:120px 0 100px}.contact-inner{max-width:920px}.contact .section-head{margin-bottom:40px}.contact-app .app{display:grid;grid-template-columns:180px minmax(0,1fr);gap:clamp(20px,4vw,40px);padding:clamp(20px,4vw,36px);background:radial-gradient(120% 90% at 85% 0%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 60%),linear-gradient(160deg,#101830,#0a0f1e)}.contact-app:after{display:none}.app-main{display:grid;align-content:start;gap:22px;min-width:0}.app-head{display:grid;gap:10px}.app-head .ph-name{margin-bottom:0}.app-head .ph-line.accent{width:40%}.contact-form,.contact-success{display:grid;gap:18px}.contact-form[hidden]{display:none}.field-row{display:grid;gap:18px}@media (min-width: 600px){.field-row{grid-template-columns:1fr 1fr}}.field{display:grid;gap:6px;min-width:0}.field label{font-size:14px;font-weight:500}.field input,.field textarea{width:100%;min-width:0;font:16px/1.5 var(--font-body);color:var(--text);background:var(--bg-2);border:1px solid var(--border);border-radius:12px;padding:12px 14px;transition:border-color .2s}.field textarea{resize:vertical;min-height:140px}.field input:hover,.field textarea:hover{border-color:#ffffff2e}.field input:focus-visible,.field textarea:focus-visible,.contact-form .btn:focus-visible,.contact-success h3:focus-visible{outline:2px solid var(--brand-1);outline-offset:2px}.field [aria-invalid=true]{border-color:#f87171}.field-error{margin:0;font-size:13px;color:#fca5a5}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-form altcha-widget{--altcha-max-width: 100%;--altcha-border-radius: 12px;--altcha-border-color: var(--border);--altcha-color-base: var(--bg-2);--altcha-color-base-content: var(--text);--altcha-color-primary: var(--brand-1);--altcha-checkbox-outline-color: var(--brand-1)}.contact-note{margin:0;font-size:14px;color:var(--muted)}.contact-note a{color:var(--brand-1)}.contact-noscript{margin:0;color:var(--muted)}.btn{justify-self:start;padding:12px 26px;border:0;border-radius:999px;cursor:pointer;font:600 16px var(--font-display);color:#060912;background:linear-gradient(100deg,var(--brand-1),var(--brand-2));transition:transform .2s var(--ease),opacity .2s}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:progress;transform:none}.form-status{margin:0;min-height:1.5em;font-size:14px;color:var(--muted)}.form-status.err{color:#fca5a5}.contact-success h3{font-size:clamp(22px,3vw,28px)}.contact-success p{margin:0;color:var(--muted)}.marquee{overflow:hidden;padding:40px 0;border-block:1px solid var(--border);margin-top:60px;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}.marquee-track{display:flex;gap:48px;width:max-content;animation:marquee 45s linear infinite;font:600 clamp(22px,3vw,34px) var(--font-display);color:#ffffff29}.marquee-track span{white-space:nowrap;transition:color .3s}.marquee-track span:hover{color:var(--text)}@keyframes marquee{to{transform:translate(-50%)}}.footer{padding:40px 0 50px;font-size:14px}.footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.footer-links{display:flex;gap:20px}.footer-links a{color:var(--muted);text-decoration:none}.footer-links a:hover,.footer-links a[aria-current]{color:var(--text)}.footer a:focus-visible,.nav a:focus-visible,.legal a:focus-visible,.contact a:focus-visible{outline:2px solid var(--brand-1);outline-offset:3px;border-radius:4px}.legal{max-width:720px;padding:150px 0 80px}.legal h1{font-size:clamp(34px,6vw,56px);margin-bottom:18px;hyphens:auto;overflow-wrap:break-word}.legal h2{font-size:21px;margin:40px 0 10px}.legal h2[id]{scroll-margin-top:110px}.legal p,.legal address{color:#c3cadb;margin:0 0 14px;font-style:normal}.legal .lead{font-size:18px;color:var(--muted)}.legal a{color:var(--brand-1)}.legal mark.todo{background:#facc152e;color:#fde68a;padding:0 4px;border-radius:4px}.rider{position:fixed;left:0;top:0;z-index:1;width:48px;height:68px;pointer-events:none;opacity:0;transition:opacity .6s var(--ease);will-change:transform}.rider.on{opacity:1}.rider svg{width:100%;height:100%;overflow:visible}.rider .solid{fill:var(--text)}.rider .body .solid{stroke:var(--bg);stroke-width:1.2}.rider .line{fill:none;stroke:var(--text);stroke-width:1.3;stroke-linecap:round}.rider .ring{fill:none;stroke:var(--text);stroke-width:1}.rider-biker .line{stroke-width:1.8}.rider-biker .bar{stroke-width:2.6}.rider-biker .arm{stroke-width:3}.rider .body{transition:transform .25s ease-out}.ski-trail{position:absolute;left:0;top:0;z-index:1;width:100%;pointer-events:none;overflow:visible}.ski-trail polyline{fill:none;stroke:#e2ecff2e;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.rider.over{z-index:3}.ski-trail-over{position:absolute;inset:0;z-index:1;width:100%;height:100%}.highlight-grid .hl:nth-child(2n){background:color-mix(in srgb,#fff 4%,var(--bg))}.ski-fx{position:fixed;inset:0;z-index:1;width:100%;height:100%;pointer-events:none}.featured,.projects,.marquee,.contact,.footer{position:relative;z-index:2}@media (max-width: 960px){.featured-stage,.project,.project:nth-child(2n){grid-template-columns:minmax(0,1fr);gap:36px}.project:nth-child(2n) .project-media{order:0}.highlight-grid{grid-template-columns:repeat(2,1fr)}.project{margin-bottom:100px}}@media (max-width: 960px){.project-media .detail,.project:nth-child(2n) .project-media .detail{left:auto;right:0;width:50%}.stamp{right:2%}.coming-card{grid-template-columns:minmax(0,1fr)}.coming-media .detail{right:0}}@media (max-width: 600px){.nav:not(.js-nav) nav a{padding:8px 10px}.highlight-grid{grid-template-columns:1fr}.terminal{position:relative;right:auto;width:100%;margin-top:-40px}.device-stack{padding-bottom:0}#term{font-size:11.5px;height:180px}.shot.missing .placeholder,.contact-app .app{grid-template-columns:1fr}.ph-side{display:none}.featured,.projects{padding-top:90px}}@media (max-width: 400px){.nav:not(.js-nav) .brand span{display:none}}@media (max-width: 380px){.nav:not(.js-nav){gap:8px;padding-left:14px}.nav:not(.js-nav) nav a{padding:8px 7px;font-size:13px}.brand{font-size:15px;gap:8px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}.reveal,.hero-title .word{opacity:1;transform:none}html{scroll-behavior:auto}}
