:root{--bg:#06060a;--ink:#f4f4fb;--ink-soft:#9a9ab0;--accent:#6d5dfc;--accent2:#00d4ff;--accent3:#ff4d8d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}:focus-visible{outline:2px solid var(--accent2);outline-offset:3px;border-radius:4px}a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}::selection{background:var(--accent2);color:var(--bg)}::selection{background:var(--accent2);color:var(--bg)}html,body,#root{width:100%;height:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,sans-serif;overflow:hidden}.canvas{position:fixed;inset:0}.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}.worklist.sr-only:focus-within{clip:auto;white-space:normal;width:auto;height:auto;margin:0 auto;position:static;overflow:visible}.hero-spacer{height:clamp(210px,34vh,400px)}.nav{z-index:50;mix-blend-mode:difference;justify-content:space-between;align-items:center;padding:24px clamp(20px,5vw,64px);display:flex;position:fixed;top:0;left:0;right:0}.logo{letter-spacing:.04em;color:#fff;align-items:center;gap:6px;font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:700;text-decoration:none;display:inline-flex}.logo .bolt{object-fit:contain;width:14px;height:14px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.links{align-items:center;gap:clamp(16px,3vw,40px);display:flex}.links a{color:#fff;letter-spacing:.02em;font-size:14px;text-decoration:none}.navcta{border:1px solid #fff6;border-radius:999px;padding:8px 16px}.overlay{pointer-events:none;width:100%}.overlay a,.overlay button,.card,.workrow,.cta,.contact-form,.contact-form input,.contact-form textarea,.contact-form button{pointer-events:auto}.panel{will-change:opacity, transform;flex-direction:column;justify-content:center;width:100%;min-height:100vh;padding:max(90px,10vh) clamp(20px,8vw,140px) max(40px,4vh);display:flex}.panel.center{text-align:center;align-items:center}.panel.hero-panel{text-align:center;justify-content:space-between;align-items:center;padding-top:clamp(70px,10vh,120px);padding-bottom:clamp(40px,7vh,80px)}.hero-bottom{flex-direction:column;align-items:center;gap:30px;display:flex}.panel.poke{text-align:center;justify-content:space-between;align-items:center;padding-top:clamp(90px,14vh,150px);padding-bottom:clamp(60px,10vh,110px)}.sm-heading{margin-bottom:0;font-size:clamp(32px,5vw,64px)}.poke-top .eyebrow{margin-bottom:14px}.poke-hint{letter-spacing:.3em;color:var(--ink-soft);font-family:Space Grotesk,sans-serif;font-size:12px;animation:2.4s ease-in-out infinite pulse}.gallery-hint{margin-top:28px}.eyebrow{letter-spacing:.35em;color:var(--accent2);margin-bottom:20px;font-family:Space Grotesk,sans-serif;font-size:13px}.display{letter-spacing:-.02em;text-wrap:balance;font-family:Space Grotesk,sans-serif;font-size:clamp(48px,11vw,150px);font-weight:700;line-height:.95}.display.sm{font-size:clamp(40px,8vw,100px)}.heading{text-wrap:balance;margin-bottom:36px;font-family:Space Grotesk,sans-serif;font-size:clamp(40px,7vw,96px);font-weight:700;line-height:1}.grad{background:linear-gradient(100deg, var(--accent), var(--accent2) 50%, var(--accent3));color:#0000;-webkit-background-clip:text;background-clip:text}.lede{max-width:560px;color:var(--ink-soft);margin-top:28px;font-size:clamp(16px,2vw,21px);line-height:1.6}.scrollhint{letter-spacing:.3em;color:var(--ink-soft);margin-top:56px;font-family:Space Grotesk,sans-serif;font-size:12px;animation:1.8s ease-in-out infinite bob}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}.cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;max-width:1000px;display:grid}.card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff08;border:1px solid #ffffff14;border-radius:18px;padding:32px 28px;transition:transform .4s,border-color .4s,background .4s}.card:hover{border-color:var(--accent2);background:#6d5dfc14;transform:translateY(-6px)}.card-n{color:var(--accent2);letter-spacing:.2em;font-family:Space Grotesk,sans-serif;font-size:13px}.card h3{margin:14px 0 10px;font-family:Space Grotesk,sans-serif;font-size:24px}.card p{color:var(--ink-soft);font-size:15px;line-height:1.5}.worklist{border-top:1px solid #ffffff1a;max-width:880px;margin-top:40px}.workrow{color:var(--ink);border-bottom:1px solid #ffffff1a;align-items:center;gap:clamp(16px,3vw,32px);padding:28px 4px;font-family:Space Grotesk,sans-serif;font-size:clamp(24px,4vw,44px);text-decoration:none;transition:padding .35s;display:flex}.workrow:hover{padding-left:24px}.workrow-n{color:var(--accent2);letter-spacing:.2em;opacity:.7;flex-shrink:0;font-size:13px;transition:opacity .35s}.workrow:hover .workrow-n{opacity:1}.workrow-text{flex:1;height:1.15em;position:relative;overflow:hidden}.workrow-text-inner{flex-direction:column;transition:transform .5s cubic-bezier(.65,0,.35,1);display:flex}.workrow-text .line{line-height:1.15}.workrow-text .line-accent{color:var(--accent2)}.workrow:hover .workrow-text-inner{transform:translateY(-50%)}.workrow .arrow{color:var(--accent2);flex-shrink:0;transition:transform .35s cubic-bezier(.2,.7,.3,1)}.workrow:hover .arrow{transform:translate(8px)}.cta{color:#06060a;background:linear-gradient(100deg, var(--accent2), var(--accent));border-radius:999px;margin-top:44px;padding:18px 40px;font-family:Space Grotesk,sans-serif;font-size:20px;text-decoration:none;transition:transform .3s,box-shadow .3s;display:inline-block;box-shadow:0 0 #00d4ff00}.cta:hover{transform:translateY(-3px);box-shadow:0 14px 40px #00d4ff66}.cta-micro{color:var(--ink-soft);margin-top:16px;font-size:13px}.foot{color:var(--ink-soft);letter-spacing:.1em;margin-top:60px;font-size:13px}.contact-form{text-align:left;flex-direction:column;gap:18px;width:100%;max-width:440px;margin:40px auto 0;display:flex}.contact-form .field{flex-direction:column;gap:7px;display:flex}.contact-form label{letter-spacing:.15em;text-transform:uppercase;color:var(--ink-soft);font-family:Space Grotesk,sans-serif;font-size:12px}.contact-form input,.contact-form textarea{width:100%;color:var(--ink);background:#ffffff0a;border:1px solid #ffffff24;border-radius:12px;padding:13px 15px;font-family:Inter,sans-serif;font-size:15px;transition:border-color .25s,background .25s}.contact-form textarea{resize:vertical;min-height:108px}.contact-form input:hover,.contact-form textarea:hover{border-color:#ffffff47}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent2);background:#00d4ff0d;outline:none}.contact-form input[aria-invalid=true],.contact-form textarea[aria-invalid=true]{border-color:var(--accent3)}.contact-form .cta{cursor:pointer;border:0;align-self:flex-start;margin-top:8px;font-size:17px}.contact-form .cta:disabled{opacity:.6;cursor:default;box-shadow:none;transform:none}.field-err{color:var(--accent3);font-size:13px}.field-err a{color:var(--accent2)}.contact-sent{color:var(--accent2);text-align:center;padding:24px 0;font-family:Space Grotesk,sans-serif;font-size:20px}.cta-repeat{letter-spacing:.02em;color:var(--accent2);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #0000;margin-top:40px;padding:0;font-family:Space Grotesk,sans-serif;font-size:15px;text-decoration:none;transition:border-color .3s;display:inline-block}.cta-repeat:hover{border-color:var(--accent2)}.section-dots{z-index:60;flex-direction:column;gap:14px;display:flex;position:fixed;top:50%;right:clamp(16px,3vw,32px);transform:translateY(-50%)}.section-dot{cursor:pointer;background:#ffffff40;border:1px solid #0000;border-radius:50%;width:8px;height:8px;padding:0;transition:background .3s,transform .3s,border-color .3s}.section-dot:hover{background:#ffffff8c;transform:scale(1.2)}.section-dot.is-active{background:var(--accent2);border-color:#00d4ff66;transform:scale(1.35)}@media (width<=760px){.section-dots{display:none}}@media (prefers-reduced-motion:reduce){.logo .bolt,.scrollhint,.poke-hint,.gallery-hint{animation:none}}.project-detail{max-width:720px;min-height:100vh;margin:0 auto;padding:max(140px,22vh) clamp(20px,8vw,140px) 100px}.project-detail .lede{max-width:640px;margin-bottom:8px}.project-detail.epic{align-items:center;width:100%;max-width:none;min-height:100vh;padding:max(120px,16vh) clamp(24px,9vw,180px) clamp(80px,12vh,140px);display:flex;position:relative;overflow:hidden}.epic-glow{filter:blur(30px);z-index:0;background:radial-gradient(42% 55% at 28% 32%,#6d5dfc6b,#0000 70%),radial-gradient(38% 50% at 74% 58%,#00d4ff4d,#0000 70%),radial-gradient(34% 46% at 56% 82%,#ff4d8d3d,#0000 70%);height:130%;animation:18s ease-in-out infinite alternate auroraDrift;position:absolute;inset:-30% -10% auto}@keyframes auroraDrift{0%{transform:translate(-3%,-2%)scale(1.05)rotate(-1deg)}to{transform:translate(4%,3%)scale(1.15)rotate(2deg)}}.epic-inner{z-index:1;max-width:900px;position:relative}.epic-title{letter-spacing:-.02em;text-wrap:balance;margin:18px 0 26px;font-family:Space Grotesk,sans-serif;font-size:clamp(44px,9vw,128px);font-weight:700;line-height:.94}.epic-desc{max-width:620px;color:var(--ink);font-size:clamp(17px,2.1vw,23px);line-height:1.55}.epic-metric{letter-spacing:.04em;color:var(--accent2);background:#00d4ff0f;border:1px solid #00d4ff59;border-radius:999px;margin:26px 0 10px;padding:10px 18px;font-family:Space Grotesk,sans-serif;font-size:clamp(18px,2.4vw,26px);font-weight:500;display:inline-block}.epic-note{max-width:560px;color:var(--ink-soft);margin-top:22px;font-size:clamp(14px,1.7vw,17px);line-height:1.6}.epic-actions{flex-wrap:wrap;align-items:center;gap:20px 28px;margin-top:44px;display:flex}.epic-actions .cta{margin-top:0}.reveal{opacity:0;animation:.7s cubic-bezier(.2,.7,.3,1) forwards revealUp;animation-delay:var(--d,0s);transform:translateY(26px)}@keyframes revealUp{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.epic-glow{animation:none}.reveal{opacity:1;animation:none;transform:none}}.grain{pointer-events:none;z-index:40;opacity:.05;mix-blend-mode:overlay;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'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}
