:root{--bg:#05080a;--bg-2:#0a120f;--surface:#0a16118c;--ink:#dcffe8;--muted:#86ad98;--accent:#39ff88;--accent-2:#22e1ff;--line:#39ff8833;--on-accent:#02140a;--font-display:"JetBrains Mono", monospace;--font-body:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--radius:16px;--border-w:1px;--shadow:0 20px 60px -20px #0009;--blur:14px;--gutter:clamp(16px, 4vw, 56px);--maxw:1240px;--ease:cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}body{background:var(--bg);color:var(--ink);font:400 17px/1.6 var(--font-body);-webkit-font-smoothing:antialiased;margin:0;transition:background-color .4s,color .4s;overflow-x:hidden}::selection{background:var(--accent);color:var(--on-accent)}img,video,canvas{max-width:100%;display:block}a{color:inherit}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}kbd{font-family:var(--font-mono);border:1px solid var(--line);background:color-mix(in srgb, var(--ink) 8%, transparent);border-radius:4px;padding:.05em .45em;font-size:.85em}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.mono{font-family:var(--font-mono)}.muted{color:var(--muted)}.small{font-size:.85rem}.accent-text{color:var(--accent)}.text-link{color:var(--accent);transition:background-size .35s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;text-decoration:none}.text-link:hover{background-size:100% 1px}[data-reveal]{transition:opacity .9s var(--ease), translate 1.1s var(--ease), clip-path 1.1s var(--ease)}.js-reveal [data-reveal]:not(.is-revealed){opacity:0;clip-path:inset(12% 0 0);translate:0 60px}.matrix-rain{z-index:0;pointer-events:none;transition:opacity .6s;position:fixed;inset:0}main,.footer{z-index:1;position:relative}.scroll-progress{z-index:60;background:linear-gradient(90deg, var(--accent), var(--accent-2));transform-origin:0;height:3px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.nav{z-index:50;padding:14px var(--gutter);border-bottom:1px solid #0000;align-items:center;gap:24px;transition:background .3s,border-color .3s,padding .3s;display:flex;position:fixed;top:0;left:0;right:0}.nav-scrolled{background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:blur(var(--blur)) saturate(1.3);border-bottom-color:var(--line);padding-block:10px}.logo{font-family:var(--font-display);align-items:baseline;font-size:1.5rem;font-weight:800;text-decoration:none;display:flex}.logo-mark{color:var(--accent)}.logo-cursor{animation:1s step-end infinite blink}.nav nav{gap:4px;margin-left:auto;display:flex}.nav nav a{border-radius:var(--radius);color:var(--muted);padding:6px 12px;font-size:.92rem;text-decoration:none;transition:color .2s,background .2s}.nav nav a:hover{color:var(--ink);background:color-mix(in srgb, var(--accent) 10%, transparent)}.nav-num{font-family:var(--font-mono);color:var(--accent);margin-right:6px;font-size:.7em}.theme-switcher{align-items:center;gap:10px;display:flex}.swatches{border:1px solid var(--line);background:color-mix(in srgb, var(--bg) 60%, transparent);border-radius:999px;gap:6px;padding:5px;display:flex}.swatch{background:conic-gradient(var(--sw-a) 0 50%, var(--sw-c) 50% 75%, var(--sw-b) 75%);width:20px;height:20px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 25%, transparent);transition:transform .25s var(--ease), box-shadow .25s;border:0;border-radius:50%;padding:0}.swatch:hover{transform:scale(1.2)}.swatch[aria-checked=true]{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--accent)}.mode-toggle{background:0 0;border:0;padding:0}.mode-track{border:1px solid var(--line);background:color-mix(in srgb, var(--ink) 8%, transparent);border-radius:999px;width:52px;height:28px;display:block;position:relative}.mode-knob{background:var(--accent);width:22px;height:22px;color:var(--on-accent);transition:transform .4s var(--ease);border-radius:50%;place-items:center;font-size:13px;display:grid;position:absolute;top:2px;left:2px}.mode-track[data-mode=light] .mode-knob{transform:translate(24px)}.theme-name{font-family:var(--font-mono);color:var(--muted);min-width:9ch;font-size:.75rem}.btn{border-radius:var(--radius);border:var(--border-w) solid var(--accent);white-space:nowrap;transition:transform .25s var(--ease), box-shadow .25s, background .25s, color .25s;align-items:center;gap:8px;padding:12px 20px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 50%, transparent)}.btn-primary:hover{box-shadow:0 0 28px -2px color-mix(in srgb, var(--accent) 70%, transparent)}.btn-ghost{background:color-mix(in srgb, var(--bg) 40%, transparent);color:var(--ink);border-color:var(--line)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.btn:disabled{opacity:.6;cursor:progress}.magnetic{transition:transform .35s var(--ease);display:inline-block}.kicker{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 8px;font-size:.78rem}.badge{background:var(--accent);color:var(--on-accent);border-radius:999px;margin-right:6px;padding:2px 8px;display:inline-block}.tags{flex-wrap:wrap;gap:6px;margin:14px 0 0;padding:0;list-style:none;display:flex}.tags li{font-family:var(--font-mono);border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:4px 10px;font-size:.72rem}.launch-row{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.card-surface{background:var(--surface);border:var(--border-w) solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(var(--blur));box-shadow:var(--shadow)}.hero{z-index:1;isolation:isolate;align-items:center;min-height:100svh;display:grid;position:relative;overflow:hidden}.hero-fluid{z-index:-2;width:100%;height:100%;position:absolute;inset:0}.hero-fluid[data-fallback]{background:radial-gradient(60% 60% at 30% 40%, color-mix(in srgb, var(--accent) 30%, transparent), transparent), radial-gradient(50% 50% at 75% 60%, color-mix(in srgb, var(--accent-2) 25%, transparent), transparent), var(--bg)}.hero:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(55% 60% at 22% 52%, color-mix(in srgb, var(--bg) 62%, transparent), transparent 75%);position:absolute;inset:0}.hero-fade{z-index:-1;background:linear-gradient(transparent, var(--bg));pointer-events:none;height:30%;position:absolute;inset:auto 0 0}.hero-grid{width:min(var(--maxw), 100% - 2 * var(--gutter));pointer-events:none;grid-template-columns:1.3fr 1fr;align-items:center;gap:40px;margin:0 auto;padding:110px 0 80px;display:grid}.hero-grid button,.hero-grid a{pointer-events:auto}.eyebrow{font-family:var(--font-mono);color:var(--muted);letter-spacing:.06em;font-size:.8rem}.blink{color:var(--accent);animation:1.2s step-end infinite blink}.hero-title{font-family:var(--font-display);letter-spacing:-.03em;text-shadow:0 2px 30px color-mix(in srgb, var(--bg) 70%, transparent);margin:8px 0 18px;font-size:clamp(3rem,9vw,7.5rem);font-weight:800;line-height:.95}.decode{white-space:pre;display:inline-block}.hero-sub{font-family:var(--font-mono);min-height:1.6em;margin:0;font-size:clamp(1.05rem,2.2vw,1.4rem)}.typewriter{color:var(--accent-2)}.caret{vertical-align:-.15em;background:var(--accent);width:.6em;height:1.1em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}.hero-lede{max-width:52ch;color:var(--ink);opacity:.88;text-shadow:0 1px 12px color-mix(in srgb, var(--bg) 80%, transparent);margin:18px 0 28px}.hero-cta{flex-wrap:wrap;gap:12px;display:flex}.hero-sigil{width:min(100%,460px);filter:drop-shadow(0 0 40px color-mix(in srgb, var(--accent) 25%, transparent));justify-self:end}.scroll-hint{font-family:var(--font-mono);letter-spacing:.3em;color:var(--muted);background:0 0;border:0;justify-items:center;gap:8px;font-size:.7rem;display:grid;position:absolute;bottom:22px;left:50%;translate:-50%}.scroll-line{background:linear-gradient(var(--accent), transparent);width:1px;height:46px;animation:drip 1.8s var(--ease) infinite;transform-origin:top}.section{width:min(var(--maxw), 100% - 2 * var(--gutter));margin:0 auto;padding:clamp(80px,12vw,150px) 0 0}.section-head{max-width:760px;margin-bottom:40px}.section-num{font-family:var(--font-mono);color:var(--accent);letter-spacing:.2em;text-transform:uppercase;margin:0;font-size:.8rem}.section-title{font-family:var(--font-display);letter-spacing:-.02em;margin:10px 0 14px;font-size:clamp(2.3rem,6vw,4.5rem);line-height:1}.section-lede{color:var(--muted);margin:0;font-size:1.05rem}.project-name{font-family:var(--font-display);margin:0 0 8px;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.05}.project-name.xl{font-size:clamp(2.4rem,5vw,3.8rem)}.summary{color:var(--ink);opacity:.85;margin:0}.flagship{margin-bottom:28px;padding:clamp(20px,3vw,36px)}.flagship-top{grid-template-columns:1fr 1.15fr;align-items:center;gap:clamp(20px,3vw,40px);display:grid}.clip{border-radius:calc(var(--radius) * .6);border:1px solid var(--line);background:var(--bg);width:100%;overflow:hidden}.clip-bare{background:0 0;border:0;overflow:visible}.evolution{border-top:1px dashed var(--line);margin-top:32px;padding-top:26px}.timeline{justify-content:space-between;max-width:420px;margin-bottom:22px;display:flex;position:relative}.tl-rail{background:var(--line);z-index:0;height:2px;position:absolute;top:9px;left:9px;right:9px}.tl-fill{background:var(--accent);transform-origin:0;height:100%;transition:transform .6s var(--ease);display:block}.tl-node{z-index:1;text-align:left;color:var(--muted);background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:6px;padding:0;display:flex;position:relative}.tl-node:last-of-type{text-align:right;align-items:flex-end}.tl-dot{border:2px solid var(--line);background:var(--bg);border-radius:50%;width:20px;height:20px;transition:all .3s}.tl-node.on .tl-dot{border-color:var(--accent);background:var(--accent);box-shadow:0 0 16px var(--accent)}.tl-tag{font-family:var(--font-mono);color:var(--ink);font-weight:700}.tl-label{font-size:.8rem}.tl-node.on{color:var(--accent)}.evolution-body{grid-template-columns:1fr 1.6fr;align-items:start;gap:clamp(20px,3vw,40px);display:grid}.changelog ul{margin:10px 0 16px;padding:0;list-style:none}.changelog li{border-bottom:1px solid var(--line);animation:slideIn .5s var(--ease) both;padding:7px 0;font-size:.95rem}.plus{font-family:var(--font-mono);color:var(--accent);margin-right:6px;font-weight:700}.compare{aspect-ratio:1440/750;border-radius:calc(var(--radius) * .6);border:1px solid var(--line);-webkit-user-select:none;user-select:none;touch-action:pan-y;cursor:ew-resize;position:relative;overflow:hidden}.compare img{object-fit:cover;object-position:top;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.compare-before{clip-path:inset(0 calc(100% - var(--pos)) 0 0)}.compare-handle{top:0;bottom:0;left:var(--pos);background:var(--accent);width:2px;box-shadow:0 0 14px var(--accent);position:absolute;translate:-1px}.compare-handle span{background:var(--accent);width:40px;height:40px;color:var(--on-accent);border-radius:50%;place-items:center;font-weight:700;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}.compare-label{font-family:var(--font-mono);color:#fff;background:#000000a6;border-radius:4px;padding:3px 8px;font-size:.7rem;position:absolute;top:10px}.compare-label.left{left:10px}.compare-label.right{right:10px}.compare-range{opacity:0;pointer-events:none;position:absolute;inset:0}.compare:has(.compare-range:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.project-grid{grid-template-columns:repeat(2,1fr);gap:28px;display:grid}.tilt{perspective:1100px;--rx:0deg;--ry:0deg;--mx:50%;--my:50%}.tilt-inner{height:100%;transform:rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;transition:transform .5s var(--ease);position:relative}.tilt[data-hover] .tilt-inner{transition:transform .12s linear}.tilt-glare{border-radius:var(--radius);pointer-events:none;opacity:0;background:radial-gradient(circle at var(--mx) var(--my), color-mix(in srgb, var(--accent) 22%, transparent), transparent 55%);mix-blend-mode:screen;transition:opacity .3s;position:absolute;inset:0}.tilt[data-hover] .tilt-glare{opacity:1}.project-card article{flex-direction:column;height:100%;display:flex;overflow:hidden}.card-media .clip{border:0;border-bottom:1px solid var(--line);border-radius:0}.card-body{flex-direction:column;flex:1;padding:22px 24px 26px;display:flex}.card-body .launch-row{margin-top:auto;padding-top:20px}.detail-backdrop,.terminal-backdrop{z-index:80;padding:var(--gutter);background:color-mix(in srgb, var(--bg) 70%, transparent);-webkit-backdrop-filter:blur(6px);place-items:center;animation:.3s both fadeIn;display:grid;position:fixed;inset:0}.detail{width:min(1000px,100%);max-height:calc(100svh - 2 * var(--gutter));background:color-mix(in srgb, var(--bg) 92%, transparent);grid-template-columns:1.2fr 1fr;display:grid;position:relative;overflow:auto}.detail-media img{object-fit:cover;object-position:top;width:100%;height:100%}.detail-body{padding:30px}.detail dl{margin:16px 0 24px}.detail dt{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-size:.75rem}.detail dd{margin:2px 0 14px;font-size:.95rem}.detail-close{z-index:2;border:1px solid var(--line);background:var(--bg);border-radius:50%;width:38px;height:38px;font-size:1.4rem;line-height:1;position:absolute;top:10px;right:10px}.remix{grid-template-columns:auto 1fr;align-items:center;gap:clamp(24px,4vw,60px);display:grid}.phone{width:clamp(220px,26vw,320px);box-shadow:0 0 0 2px #3a3d44, 0 30px 80px -20px #000000b3, 0 0 60px -10px color-mix(in srgb, var(--accent) 35%, transparent);background:linear-gradient(145deg,#2a2d33,#0c0d10);border-radius:38px;padding:12px 10px;position:relative}.phone-notch{z-index:2;background:#000;border-radius:10px;width:22%;height:14px;position:absolute;top:16px;left:50%;translate:-50%}.phone-screen{aspect-ratio:9/16;background:#000;border-radius:29px;align-content:center;display:grid;overflow:hidden}.phone-screen .clip{border:0;border-radius:0}.remix-panel{padding:clamp(20px,3vw,32px)}.panel-title{font-family:var(--font-display);margin:4px 0 16px;font-size:1.6rem}.field{gap:6px;margin-bottom:14px;display:grid}.field span{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.75rem}.field input,.field textarea{border-radius:calc(var(--radius) * .5);border:var(--border-w) solid var(--line);background:color-mix(in srgb, var(--bg) 70%, transparent);resize:vertical;width:100%;padding:12px 14px;transition:border-color .2s,box-shadow .2s}.field input:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);outline:none}.color-row{flex-wrap:wrap;gap:14px;margin:4px 0 16px;display:flex}.color-field{color:var(--muted);align-items:center;gap:8px;font-size:.85rem;display:flex}.color-field input{border:2px solid var(--line);background:0 0;border-radius:50%;width:38px;height:38px;padding:0;overflow:hidden}.color-field input::-webkit-color-swatch-wrapper{padding:0}.color-field input::-webkit-color-swatch{border:0;border-radius:50%}.preset-row{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.chip{border:1px solid var(--line);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:.85rem;display:inline-flex}.chip:hover{border-color:var(--accent)}.chip-dots{display:flex}.chip-dots i{width:12px;height:12px;box-shadow:0 0 0 1.5px var(--bg);border-radius:50%;margin-left:-3px}.scene-strip{margin-top:clamp(60px,8vw,100px);overflow:hidden}.strip-label{margin:0 0 18px}.scene-track{gap:clamp(20px,3vw,40px);width:max-content;padding-bottom:20px;display:flex}.scene{margin:0}.scene .phone{width:clamp(200px,20vw,250px)}.scene figcaption{font-family:var(--font-display);margin-top:14px;font-size:1.15rem}.scene figcaption small{font-family:var(--font-body);color:var(--muted);max-width:240px;font-size:.82rem;display:block}.skills{--sx:-999px;--sy:-999px;position:relative}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.skill-group{padding:20px 22px}.skill-group h3{font-family:var(--font-display);margin:0 0 12px;font-size:1.15rem}.skill-group ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.skill-group li{background:color-mix(in srgb, var(--accent) 10%, transparent);border:1px solid var(--line);transition:background .2s, color .2s, transform .2s var(--ease);border-radius:999px;padding:5px 11px;font-size:.85rem}.skill-group li:hover{background:var(--accent);color:var(--on-accent);transform:translateY(-2px)}.skills-secret{z-index:3;pointer-events:none;font-family:var(--font-mono);white-space:pre-wrap;color:var(--accent);background:var(--bg);-webkit-mask-image:radial-gradient(circle 120px at calc(var(--sx) + 20px) calc(var(--sy) + 20px), #000 60%, transparent 100%);-webkit-mask-image:radial-gradient(circle 120px at calc(var(--sx) + 20px) calc(var(--sy) + 20px), #000 60%, transparent 100%);mask-image:radial-gradient(circle 120px at calc(var(--sx) + 20px) calc(var(--sy) + 20px), #000 60%, transparent 100%);margin:0;padding:20px;font-size:.95rem;line-height:1.55;position:absolute;inset:-20px;overflow:hidden}.contact{max-width:860px;padding:clamp(22px,4vw,44px)}.contact-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.contact-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:8px;display:flex}.honeypot{width:1px;height:1px;position:absolute;left:-9999px}.demo-note{margin:14px 0 0}.form-error{color:#ff5d6c;margin:14px 0 0}.sent{text-align:center;justify-items:center;gap:10px;padding:30px 0;display:grid}.sent-ring{border:3px solid var(--accent);width:90px;height:90px;box-shadow:0 0 30px var(--accent), inset 0 0 20px var(--accent);animation:ping 1.4s var(--ease) both;border-radius:50%}.sent-title{font-family:var(--font-display);color:var(--accent);margin:0;font-size:clamp(1.6rem,4vw,2.4rem)}.footer{width:min(var(--maxw), 100% - 2 * var(--gutter));border-top:1px solid var(--line);color:var(--muted);margin:clamp(80px,10vw,140px) auto 0;padding:28px 0 40px;font-size:.9rem}.footer-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.footer-row p{margin:0}.footer-hint{font-family:var(--font-mono);color:var(--muted);opacity:.7;background:0 0;border:0;margin-top:18px;padding:0;font-size:.78rem}.footer-hint:hover{opacity:1;color:var(--accent)}.terminal{border:1px solid color-mix(in srgb, var(--accent) 50%, transparent);color:#b9ffcf;width:min(760px,100%);height:min(460px,80svh);box-shadow:0 30px 90px -20px #000, 0 0 50px -10px color-mix(in srgb, var(--accent) 50%, transparent);animation:termIn .35s var(--ease) both;background:#020804f0;border-radius:12px;flex-direction:column;font-family:JetBrains Mono,monospace;font-size:.9rem;display:flex;overflow:hidden}.terminal-bar{background:#ffffff0d;border-bottom:1px solid #ffffff14;align-items:center;gap:7px;padding:10px 14px;display:flex}.terminal-bar .dot{background:#ff5f57;border-radius:50%;width:12px;height:12px}.terminal-bar .dot:nth-child(2){background:#febc2e}.terminal-bar .dot:nth-child(3){background:#28c840}.terminal-title{color:#7fae8e;margin-left:10px;font-size:.8rem}.terminal-close{color:#7fae8e;background:0 0;border:0;margin-left:auto;font-size:1.3rem;line-height:1}.terminal-body{flex:1;padding:14px 16px;overflow:auto}.tl{white-space:pre-wrap;word-break:break-word;min-height:1.5em}.tl-err{color:#ff7b7b}.tl-in{display:flex}.prompt{color:#39ff88;flex:none}.tl-in input{color:#e8fff0;caret-color:#39ff88;background:0 0;border:0;outline:0;flex:1;padding:0}.boot{z-index:100;color:#39ff88;background:#000;place-items:center;padding:20px;font-family:JetBrains Mono,monospace;font-size:clamp(.75rem,2.4vw,1rem);display:grid;position:fixed;inset:0}.boot pre{white-space:pre-wrap;min-width:min(560px,100%);margin:0}.boot-granted{color:#fff;text-shadow:0 0 20px #39ff88,2px 0 #ff2bd6,-2px 0 #00f0ff;margin-top:14px;font-size:1.8em;font-weight:800;animation:.3s steps(2,end) 2 glitch}.boot-leave{animation:.6s cubic-bezier(.7,0,.3,1) forwards bootOut}.konami{z-index:90;text-align:center;color:#39ff88;text-shadow:0 0 18px #39ff88;background:#0000008c;place-content:center;gap:8px;font-family:JetBrains Mono,monospace;font-size:clamp(1.1rem,3.5vw,2rem);animation:.4s both fadeIn;display:grid;position:fixed;inset:0}.konami p{margin:0}.toaster{z-index:95;gap:8px;display:grid;position:fixed;bottom:20px;left:50%;translate:-50%}.toast{border-radius:var(--radius);background:var(--bg);border:1px solid var(--accent);font-family:var(--font-mono);animation:slideIn .4s var(--ease) both;padding:10px 16px;font-size:.85rem}@media (pointer:fine){html.has-cursor,html.has-cursor a,html.has-cursor button{cursor:none}html.has-cursor input,html.has-cursor textarea{cursor:text}}.cursor-layer{z-index:200;pointer-events:none;position:fixed;inset:0}.cursor-ring,.cursor-dot{will-change:transform;border-radius:50%;position:fixed;top:0;left:0}.cursor-ring{border:1.5px solid var(--accent);mix-blend-mode:difference;width:34px;height:34px;transition:border-color .2s,background .2s,width .2s,height .2s}.cursor-ring[data-hot=true]{background:color-mix(in srgb, var(--accent) 18%, transparent)}.cursor-dot{background:var(--accent);width:7px;height:7px}html:not(.has-cursor) .cursor-layer{display:none}@keyframes blink{50%{opacity:0}}@keyframes drip{0%{opacity:1;transform:scaleY(0)}70%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}@keyframes slideIn{0%{opacity:0;transform:translate(-14px)}}@keyframes fadeIn{0%{opacity:0}}@keyframes termIn{0%{opacity:0;transform:translateY(20px)scale(.97)}}@keyframes ping{0%{opacity:0;transform:scale(.2)}60%{opacity:1;transform:scale(1.15)}to{transform:scale(1)}}@keyframes glitch{0%{transform:translate(2px,-1px)skew(8deg)}50%{transform:translate(-3px,1px)skew(-6deg)}to{transform:none}}@keyframes bootOut{0%{clip-path:inset(0)}30%{clip-path:inset(48% 0);filter:brightness(2)}to{clip-path:inset(50%);opacity:0}}@keyframes flicker{0%,to{opacity:.97}48%{opacity:1}50%{opacity:.92}}::view-transition-old(root){animation-duration:.45s}::view-transition-new(root){animation-duration:.45s}::view-transition-group(*){animation-duration:.5s;animation-timing-function:cubic-bezier(.16,1,.3,1)}[data-theme=noir][data-mode=dark] .section-title,[data-theme=noir][data-mode=dark] .hero-title .accent-text{text-shadow:0 0 24px color-mix(in srgb, var(--accent) 45%, transparent)}[data-theme=noir] .card-surface{--blur:16px}[data-theme=retro]{--shadow:none;--blur:0px}[data-theme=retro] body{font-size:16px}[data-theme=retro] .hero-title,[data-theme=retro] .section-title{text-transform:uppercase;letter-spacing:.02em;font-weight:400}[data-theme=retro] .hero-title{font-size:clamp(3.5rem,11vw,9rem)}[data-theme=retro][data-mode=dark] body,[data-theme=retro][data-mode=dark] .card-surface{text-shadow:0 0 6px color-mix(in srgb, var(--ink) 55%, transparent)}[data-theme=retro] .card-surface{border-style:double;border-width:3px}[data-theme=retro] .btn{text-transform:uppercase;font-family:var(--font-mono);letter-spacing:.06em;font-size:1.15rem}[data-theme=retro] .btn-primary:before{content:"> "}.crt{z-index:150;pointer-events:none;background:repeating-linear-gradient(#00000029 0 1px,#0000 1px 3px),radial-gradient(#0000 60%,#00000073 100%);animation:.15s infinite flicker;position:fixed;inset:0}[data-mode=light] .crt{background:repeating-linear-gradient(#5a320012 0 1px,#0000 1px 3px),radial-gradient(#0000 60%,#5a32002e 100%)}[data-theme=cyber]{--chamfer:polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 18px 100%, 0 calc(100% - 18px))}[data-theme=cyber] .card-surface,[data-theme=cyber] .btn,[data-theme=cyber] .clip,[data-theme=cyber] .compare{clip-path:var(--chamfer)}[data-theme=cyber] .btn{--chamfer:polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));text-transform:uppercase;letter-spacing:.1em;font-family:var(--font-display);font-size:.8rem}[data-theme=cyber] .card-surface{border-left:3px solid var(--accent)}[data-theme=cyber] .section-title,[data-theme=cyber] .hero-title{text-transform:uppercase;text-shadow:3px 0 color-mix(in srgb, var(--accent) 80%, transparent), -3px 0 color-mix(in srgb, var(--accent-2) 80%, transparent)}[data-theme=cyber] .project-name:hover,[data-theme=cyber] .section-title:hover{animation:.35s steps(3,end) infinite rgbGlitch}@keyframes rgbGlitch{0%{text-shadow:4px 0 var(--accent), -4px 0 var(--accent-2);transform:translate(0)}33%{text-shadow:-5px 2px var(--accent), 5px -2px var(--accent-2);clip-path:inset(10% 0 30%);transform:translate(2px,-1px)skew(-4deg)}66%{text-shadow:3px -2px var(--accent), -3px 2px var(--accent-2);clip-path:inset(40% 0 5%);transform:translate(-2px,1px)}to{clip-path:none}}[data-theme=cyber][data-mode=light] body{background-image:radial-gradient(color-mix(in srgb, var(--accent) 18%, transparent) 1px, transparent 1.4px);background-size:7px 7px}[data-theme=brutal]{--border-w:4px;--blur:0px;--shadow:10px 10px 0 var(--ink)}[data-theme=brutal] .card-surface{border-color:var(--ink)}[data-theme=brutal] .hero-title,[data-theme=brutal] .section-title,[data-theme=brutal] .project-name{text-transform:uppercase;letter-spacing:-.04em;font-weight:400}[data-theme=brutal] .hero-title{font-size:clamp(3.4rem,12vw,10rem);line-height:.85}[data-theme=brutal] .hero-title .accent-text{background:var(--accent);color:var(--on-accent);padding:0 .1em}[data-theme=brutal] .btn{border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);text-transform:uppercase;font-weight:700}[data-theme=brutal] .btn:hover{box-shadow:8px 8px 0 var(--ink);transform:translate(-3px,-3px)}[data-theme=brutal] .btn:active{box-shadow:0 0 0 var(--ink);transform:translate(5px,5px)}[data-theme=brutal] .btn-ghost{background:var(--bg);color:var(--ink)}[data-theme=brutal] .tags li,[data-theme=brutal] .skill-group li,[data-theme=brutal] .swatches,[data-theme=brutal] .chip,[data-theme=brutal] .badge{border:2px solid var(--ink);border-radius:0}[data-theme=brutal] .tilt-glare{display:none}[data-theme=brutal] .section-num{background:var(--ink);color:var(--bg);padding:2px 8px;display:inline-block}[data-theme=brutal] .phone{box-shadow:10px 10px 0 var(--accent);border-radius:0}[data-theme=brutal] .phone-screen{border-radius:0}[data-theme=brutal] .cursor-ring{border-width:3px;border-radius:0}[data-theme=exec]{--shadow:0 30px 60px -30px #0a122273}[data-theme=exec] .hero-title,[data-theme=exec] .section-title,[data-theme=exec] .project-name{letter-spacing:-.01em;font-weight:500}[data-theme=exec] .hero-title{font-size:clamp(3.4rem,9.5vw,8rem);font-style:italic}[data-theme=exec] .hero-title .accent-text{font-style:normal}[data-theme=exec] .kicker,[data-theme=exec] .section-num,[data-theme=exec] .eyebrow,[data-theme=exec] .nav nav a{letter-spacing:.24em;text-transform:uppercase;font-size:.72rem}[data-theme=exec] .btn{text-transform:uppercase;letter-spacing:.18em;padding:14px 26px;font-size:.75rem;font-weight:600}[data-theme=exec] .card-surface{border-image:linear-gradient(135deg, var(--accent), transparent 40%, transparent 60%, var(--accent)) 1}[data-theme=exec] .section-head:after{content:"";background:var(--accent);width:80px;height:1px;margin-top:22px;display:block}[data-theme=exec] .typewriter,[data-theme=exec] .accent-text{color:var(--accent)}[data-theme=exec] .cursor-ring{mix-blend-mode:normal;border-width:1px}[data-theme=exec] .tilt-glare{background:linear-gradient(115deg, transparent 30%, color-mix(in srgb, var(--accent) 25%, transparent) 50%, transparent 70%);background-size:250% 100%;background-position:calc(100% - var(--mx)) 0;mix-blend-mode:normal}@media (width<=1000px){.nav nav{display:none}.theme-switcher{margin-left:auto}.flagship-top,.evolution-body{grid-template-columns:1fr}}@media (width<=900px){.hero-grid{grid-template-columns:1fr}.hero-sigil{opacity:.35;z-index:-1;width:240px;position:absolute;top:90px;right:-60px}.project-grid{grid-template-columns:1fr}.remix{grid-template-columns:1fr;justify-items:center}.remix-panel{width:100%}.scene-strip{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overflow-x:auto}.scene{scroll-snap-align:start}.detail{grid-template-columns:1fr}.detail-media img{max-height:260px}}@media (height<=820px){.scroll-hint{display:none}}@media (width<=600px){body{font-size:16px}.theme-name{display:none}.swatch{width:18px;height:18px}.contact-grid{grid-template-columns:1fr}.timeline{max-width:none}.card-body{padding:18px}[data-theme=brutal]{--shadow:6px 6px 0 var(--ink)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.crt{animation:none}}
