.absolute{position:absolute}.relative{position:relative}.block{display:block}.hidden{display:none}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0/0.1),0 1px 2px -1px rgb(0 0 0/0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}:root{--bg:#050608;--navy:#080F1C;--g:#19ff6c;--gd:#0a7a35;--w:#e9f1ee;--o:#ff7a3c;--r:#ff3c5a;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}*,:after,:before,:root{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:70px}body{margin:0;background:var(--bg);color:var(--w);font:16px/1.7 system-ui,-apple-system,Segoe UI,sans-serif;overflow-x:hidden;cursor:crosshair}.px{line-height:1.5;letter-spacing:.02em}.px,h1,h2,h3{font-family:Press Start\ 2P,ui-monospace,monospace}h1,h2,h3{font-weight:400;margin:0}a{color:inherit;text-decoration:none}section{position:relative;padding:110px 20px;max-width:1080px;margin:0 auto}.sec-t{font-size:clamp(18px,3.4vw,30px);color:var(--g);text-shadow:0 0 14px rgba(25,255,108,.6);margin-bottom:28px}.wrap{max-width:1080px;margin:0 auto}#rain{width:100%;height:100%;z-index:50;opacity:.55}#rain,.scan{position:fixed;inset:0;pointer-events:none}.scan{z-index:60;background:repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0 1px,transparent 1px 3px);mix-blend-mode:multiply}.grain{position:fixed;inset:-50%;pointer-events:none;z-index:61;opacity:.07;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 baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");animation:gr .8s steps(4) infinite}@keyframes gr{25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-2%,-1%)}}#glow{width:360px;height:360px;margin:-180px 0 0 -180px;border-radius:50%;pointer-events:none;z-index:40;background:radial-gradient(circle,rgba(25,255,108,.1),transparent 65%);left:-999px}#glow,nav{position:fixed;top:0}nav{left:0;right:0;z-index:70;padding:calc(10px + env(safe-area-inset-top,0px)) 20px 10px;justify-content:space-between;background:linear-gradient(#050608ee,#05060800)}.logo,nav{display:flex;align-items:center}.logo{gap:10px;font-size:13px;color:var(--g)}.logo img{width:30px;height:30px;image-rendering:pixelated;border-radius:50%}.links{display:flex;gap:22px;font-family:Press Start\ 2P,monospace;font-size:10px}.links a{padding:6px 0;opacity:.8;transition:.15s}.links a:hover{color:var(--g);opacity:1;text-shadow:0 0 10px var(--g)}#mb{display:none;background:var(--bg);color:var(--g);border:3px solid var(--g);font:12px Press Start\ 2P,monospace;padding:10px 12px;cursor:pointer}@media(max-width:760px){#mb{display:block}.links{position:fixed;top:0;right:0;bottom:0;width:70%;flex-direction:column;background:#050608f5;border-left:3px solid var(--g);padding:90px 28px;transform:translateX(100%);transition:.25s steps(6);gap:26px;font-size:12px}.links.open{transform:none}}.btn{display:inline-block;font:11px/1 Press Start\ 2P,monospace;padding:16px 20px;color:var(--bg);background:var(--g);border:0;cursor:pointer;position:relative;box-shadow:inset -4px -4px 0 var(--gd),inset 4px 4px 0 #8dffb8,0 0 0 3px var(--bg),0 0 0 6px var(--g),0 0 22px rgba(25,255,108,.5);transition:transform .08s,box-shadow .15s}.btn:hover{transform:translate(-2px,-2px);box-shadow:inset -4px -4px 0 var(--gd),inset 4px 4px 0 #8dffb8,0 0 0 3px var(--bg),0 0 0 6px var(--g),0 0 36px rgba(25,255,108,.9),4px 4px 0 6px #0a7a3555}.btn:active{transform:translate(2px,2px)}.btn.o{background:transparent;color:var(--g);box-shadow:inset 0 0 0 3px var(--g),0 0 14px rgba(25,255,108,.25)}.btn.o:hover{background:rgba(25,255,108,.12)}.panel{background:rgba(8,15,28,.72);backdrop-filter:blur(6px);border:3px solid #1d3a2c;box-shadow:0 0 0 3px var(--bg),0 0 0 6px rgba(25,255,108,.35),0 20px 50px rgba(0,0,0,.6);padding:28px;position:relative}#hero{max-width:none;padding:0;height:100vh;height:100svh;min-height:560px;overflow:hidden}#city canvas,#hero canvas{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;image-rendering:pixelated;display:block}.hc{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;text-align:center;padding:12vh 20px 0;pointer-events:none}.hc>*{pointer-events:auto}.hc h1{font-size:clamp(34px,10vw,96px);color:var(--w);text-shadow:0 0 8px var(--g),0 0 30px var(--g),4px 4px 0 var(--gd);animation:fl 6s infinite}.tag{font-size:clamp(9px,1.7vw,14px);color:var(--g);margin-top:16px;text-shadow:0 0 10px var(--g)}.quote{font:clamp(20px,3vw,28px)/1.1 VT323,monospace;margin-top:14px;opacity:.9;text-shadow:0 2px 6px #000}.hb{position:absolute;bottom:calc(5vh + env(safe-area-inset-bottom,0px));left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:18px}.hb .row{display:flex;gap:22px;flex-wrap:wrap;justify-content:center}.status{font:22px VT323,monospace;color:var(--g)}.status i{display:inline-block;width:9px;height:9px;background:var(--g);margin-right:8px;box-shadow:0 0 10px var(--g);animation:bl 1s steps(2) infinite}@keyframes bl{50%{opacity:.15}}@keyframes fl{0%,92%,96%,to{opacity:1}94%{opacity:.7}97%{opacity:.85}}.addr{font:20px VT323,monospace;word-break:break-all;background:#02040a;border:2px dashed #1d5a3a;padding:12px 14px;margin:10px 0 18px;color:var(--g)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-top:26px}.card{border:2px solid #1d3a2c;background:#050a12;padding:14px;transition:.2s}.card:hover{border-color:var(--g);transform:translateY(-3px);box-shadow:0 0 18px rgba(25,255,108,.3)}.card small{display:block;font:9px Press Start\ 2P,monospace;color:#7d9b8c;margin-bottom:10px}.card b{font:12px Press Start\ 2P,monospace;color:var(--w)}.two{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}@media(max-width:760px){.two{grid-template-columns:1fr;gap:30px}}.big{font:clamp(24px,3.4vw,32px)/1.2 VT323,monospace}.mas{position:relative;width:min(100%,360px);margin:auto;aspect-ratio:1}.mas img{width:100%;height:100%;image-rendering:pixelated;display:block;filter:drop-shadow(0 0 24px rgba(25,255,108,.5))}.mas .gl{position:absolute;inset:0;mix-blend-mode:screen;opacity:0;animation:gl 4s infinite}.mas .gl.a{filter:hue-rotate(120deg) saturate(3)}.mas .gl.b{filter:hue-rotate(-60deg) saturate(4)}@keyframes gl{0%,90%,to{opacity:0;transform:none}91%{opacity:.8;transform:translate(-8px,2px);clip-path:inset(10% 0 55% 0)}93%{opacity:.8;transform:translate(8px,-3px);clip-path:inset(60% 0 8% 0)}95%{opacity:0}}.mas .gl.b{animation-delay:.15s}.mas{animation:bob 3s steps(6) infinite}@keyframes bob{50%{transform:translateY(-6px)}}#city .box{position:relative;aspect-ratio:16/10;border:3px solid var(--g);box-shadow:0 0 30px rgba(25,255,108,.3);overflow:hidden;background:#000}#city .box video{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;image-rendering:pixelated;display:block}.hs{position:absolute;border:2px dashed transparent;background:transparent;cursor:pointer;padding:0;transition:.15s}.hs:focus-visible,.hs:hover{border-color:var(--g);background:rgba(25,255,108,.12);outline:0}#tip{margin-top:16px;min-height:34px;font:24px VT323,monospace;color:var(--g)}.road{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative;margin-top:50px}.road:before{content:"";right:0;top:-26px;height:8px;background:repeating-linear-gradient(90deg,var(--g) 0 14px,transparent 14px 22px);box-shadow:0 0 12px var(--g)}.road:before,.train{position:absolute;left:0}.train{top:-40px;width:44px;height:26px;background:var(--g);box-shadow:inset -6px 0 0 var(--gd),0 0 16px var(--g);animation:tr 9s linear infinite;z-index:2}.train:after{content:"";position:absolute;top:6px;left:6px;width:12px;height:8px;background:#050608;box-shadow:16px 0 #050608}@keyframes tr{0%{left:-50px}to{left:100%}}.st{padding:20px 16px}.st:before{content:"";position:absolute;top:-34px;left:20px;width:22px;height:22px;background:var(--bg);border:4px solid var(--g);box-shadow:0 0 12px var(--g)}.st h3{font-size:10px;color:var(--g);margin-bottom:6px}.st h4{margin:0 0 14px;font:13px Press Start\ 2P,monospace}.st ul{margin:0;padding:0;list-style:none;font-size:15px;color:#c3d3cb}.st li:before{content:"▸ ";color:var(--g)}@media(max-width:900px){.road{grid-template-columns:1fr;padding-left:34px}.road:before{left:10px;right:auto;top:0;bottom:0;width:8px;height:auto;background:repeating-linear-gradient(0deg,var(--g) 0 14px,transparent 14px 22px)}.train{display:none}.st:before{top:24px;left:-34px}}#lore{text-align:center;max-width:760px}.ln{font:clamp(24px,3.6vw,34px)/1.35 VT323,monospace;margin:0 0 .9em;color:#c8d6cf}.ln.k{color:var(--g);font-family:Press Start\ 2P,monospace;font-size:clamp(12px,2vw,16px);text-shadow:0 0 14px var(--g);line-height:1.8}.rv{opacity:0;transform:translateY(22px);filter:blur(4px)}.rv.in{opacity:1;transform:none;filter:none;transition:opacity .8s,transform .8s steps(8),filter .6s}#join{text-align:center}#join .bx{padding:70px 20px;border:3px solid var(--g);background:radial-gradient(ellipse at 50% 120%,rgba(25,255,108,.22),transparent 65%),var(--navy);box-shadow:0 0 50px rgba(25,255,108,.25);overflow:hidden;position:relative}#pc{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}#join .row{display:flex;gap:22px;flex-wrap:wrap;justify-content:center;margin-top:34px;position:relative}footer{border-top:4px solid var(--g);box-shadow:0 -6px 30px rgba(25,255,108,.25);background:var(--bg);text-align:center;padding:50px 20px calc(40px + env(safe-area-inset-bottom,0px))}footer .fl{display:flex;gap:26px;justify-content:center;flex-wrap:wrap;margin:22px 0;font:10px Press Start\ 2P,monospace}footer .fl a:hover{color:var(--g)}footer small{font:20px VT323,monospace;color:#6f8a7c}.sr{position:absolute;left:-999px}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.rv{opacity:1;transform:none;filter:none}.train{display:none}}