/* ============================================================
   Project Chimera — Cyberpunk Landing
   Palette: #0A0A0A base / #00FFFF cyan / #FF00FF magenta / #39FF14 acid
   ============================================================ */

:root{
  --black:#0A0A0A;
  --bg:#060709;
  --midnight:#001F3F;
  --purple:#2A0A2A;
  --cyan:#00FFFF;
  --pink:#FF00FF;
  --acid:#39FF14;
  --yellow:#FFFF00;
  --silver:#808080;
  --white:#FFFFFF;
  --line:rgba(0,255,255,.18);
  --line-pink:rgba(255,0,255,.22);
  --glow-cyan:0 0 8px rgba(0,255,255,.7),0 0 22px rgba(0,255,255,.4);
  --glow-pink:0 0 8px rgba(255,0,255,.7),0 0 22px rgba(255,0,255,.4);
}

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}

body{
  background:var(--bg);
  color:#cfe9ef;
  font-family:'Rajdhani','Share Tech Mono',monospace;
  font-weight:400;
  line-height:1.6;
  overflow-x:hidden;
  cursor:none;
  -webkit-font-smoothing:antialiased;
}

::selection{background:var(--cyan);color:#000}

/* ===== Scrollbar ===== */
::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-track{background:#020305}
::-webkit-scrollbar-thumb{background:linear-gradient(var(--cyan),var(--pink));border-radius:0}

/* ===== Background layers ===== */
.bg-grid{
  position:fixed;inset:0;z-index:-3;
  background-image:
    linear-gradient(rgba(0,255,255,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,255,255,.06) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:radial-gradient(ellipse 80% 80% at 50% 40%,#000 40%,transparent 100%);
  -webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 40%,#000 40%,transparent 100%);
  animation:gridPan 20s linear infinite;
}
@keyframes gridPan{to{background-position:48px 48px}}

.bg-noise{
  position:fixed;inset:0;z-index:-2;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/></svg>");
}

#particles{position:fixed;inset:0;z-index:-1;pointer-events:none}

.scanlines{
  position:fixed;inset:0;z-index:50;pointer-events:none;
  background:repeating-linear-gradient(to bottom,transparent 0,transparent 2px,rgba(0,255,255,.04) 3px,transparent 4px);
  mix-blend-mode:overlay;
}
.scanlines--fixed{opacity:.5}

.cursor-glow{
  position:fixed;width:280px;height:280px;border-radius:50%;
  left:0;top:0;pointer-events:none;z-index:1;
  background:radial-gradient(circle,rgba(0,255,255,.10),transparent 60%);
  transform:translate(-50%,-50%);transition:opacity .3s;
  mix-blend-mode:screen;
}

/* ===== Boot screen ===== */
.boot-screen{
  position:fixed;inset:0;z-index:1000;background:var(--black);
  display:flex;align-items:center;justify-content:center;
  transition:opacity .6s ease,visibility .6s;
}
.boot-screen.hide{opacity:0;visibility:hidden}
.boot-inner{text-align:center;width:min(420px,80vw)}
.boot-logo{
  font-family:'Orbitron';font-weight:900;font-size:clamp(2rem,8vw,4rem);
  letter-spacing:.3em;color:var(--cyan);text-shadow:var(--glow-cyan);
  margin-bottom:1.5rem;position:relative;
}
.boot-bar{height:3px;background:rgba(0,255,255,.12);overflow:hidden;border:1px solid var(--line)}
.boot-bar-fill{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--cyan),var(--pink));box-shadow:var(--glow-cyan)}
.boot-log{
  margin-top:1rem;font-family:'Share Tech Mono';font-size:.7rem;color:var(--acid);
  text-align:left;min-height:4.2em;opacity:.8;
}

/* ===== HUD Nav ===== */
.hud-nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:1rem clamp(1rem,4vw,3rem);
  background:linear-gradient(180deg,rgba(6,7,9,.9),transparent);
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--line);
  transition:padding .3s,background .3s;
}
.hud-nav.scrolled{padding:.6rem clamp(1rem,4vw,3rem);background:rgba(6,7,9,.92)}
.hud-brand{
  font-family:'Orbitron';font-weight:800;letter-spacing:.25em;font-size:.95rem;
  color:var(--cyan);text-shadow:0 0 6px rgba(0,255,255,.5);display:flex;align-items:center;gap:.1em;
}
.hud-bracket{color:var(--pink)}
.hud-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--acid);margin-left:.6em;box-shadow:0 0 8px var(--acid);animation:blink 1.4s infinite}
@keyframes blink{50%{opacity:.2}}

.hud-links{display:flex;gap:2rem;list-style:none}
.hud-links a{
  position:relative;font-family:'Share Tech Mono';text-decoration:none;
  color:#9fdce6;font-size:.8rem;letter-spacing:.2em;padding:.3em 0;
}
.hud-links a::before{content:attr(data-glitch)" ";color:var(--pink);opacity:.6}
.hud-links a::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:0;background:var(--cyan);box-shadow:var(--glow-cyan);transition:width .3s}
.hud-links a:hover{color:var(--cyan)}
.hud-links a:hover::after{width:100%}

.hud-cta{
  font-family:'Share Tech Mono';background:transparent;color:var(--cyan);
  border:1px solid var(--cyan);padding:.55em 1.1em;font-size:.78rem;letter-spacing:.2em;
  cursor:none;position:relative;overflow:hidden;transition:color .25s;
}
.hud-cta::before{content:"";position:absolute;inset:0;background:var(--cyan);transform:translateX(-101%);transition:transform .3s}
.hud-cta:hover{color:#000}
.hud-cta:hover::before{transform:translateX(0)}

.hud-burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:none;padding:.4em}
.hud-burger span{width:24px;height:2px;background:var(--cyan);box-shadow:var(--glow-cyan);transition:.3s}
.hud-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hud-burger.open span:nth-child(2){opacity:0}
.hud-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ===== Buttons ===== */
.btn{
  position:relative;display:inline-flex;align-items:center;gap:.7em;
  font-family:'Share Tech Mono';font-size:.85rem;letter-spacing:.18em;
  padding:.95em 1.6em;text-decoration:none;color:var(--cyan);
  background:transparent;border:none;cursor:none;overflow:hidden;
  clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));
}
.btn-bg{position:absolute;inset:0;border:1px solid var(--cyan);z-index:0}
.btn-text,.btn-arrow{position:relative;z-index:2}
.btn-arrow{color:var(--pink);transition:transform .25s}
.btn--primary .btn-bg::before{
  content:"";position:absolute;inset:0;background:linear-gradient(120deg,var(--cyan),var(--pink));
  transform:translateX(-101%);transition:transform .35s ease;
}
.btn--primary:hover{color:#000}
.btn--primary:hover .btn-bg::before{transform:translateX(0)}
.btn--primary:hover .btn-arrow{transform:translateX(4px)}
.btn--ghost{color:var(--silver)}
.btn--ghost .btn-bg{border-color:var(--line)}
.btn--ghost:hover{color:var(--cyan)}
.btn--ghost .btn-bg::before{content:"";position:absolute;inset:0;background:rgba(0,255,255,.08);opacity:0;transition:opacity .3s}
.btn--ghost:hover .btn-bg::before{opacity:1}
.btn--lg{padding:1.1em 2.2em;font-size:.95rem}

/* ===== Hero ===== */
.hero{
  position:relative;min-height:100vh;display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;
  padding:8rem 1.5rem 4rem;overflow:hidden;
}
.hero-warn{
  position:absolute;top:6rem;left:50%;transform:translateX(-50%);
  font-family:'Share Tech Mono';font-size:.72rem;letter-spacing:.3em;
  color:var(--yellow);opacity:.85;white-space:nowrap;
}
.blink{animation:blink 1s steps(2) infinite}

.hero-frame{position:relative;z-index:2;max-width:900px}
.hero-tag{
  font-family:'Share Tech Mono';font-size:.8rem;letter-spacing:.25em;color:var(--acid);
  margin-bottom:1.5rem;opacity:.9;
}
.hero-title{
  font-family:'Orbitron';font-weight:900;
  font-size:clamp(2.6rem,9vw,6.5rem);line-height:.98;letter-spacing:.02em;
  margin-bottom:1.5rem;
}

/* Glitch text */
.glitch{position:relative;display:inline-block;color:var(--white)}
.glitch--pink{color:var(--pink)}
.glitch::before,.glitch::after{
  content:attr(data-text);position:absolute;left:0;top:0;width:100%;
  clip-path:inset(0 0 0 0);
}
.glitch::before{color:var(--cyan);animation:glitchA 3s infinite linear alternate-reverse;mix-blend-mode:screen}
.glitch::after{color:var(--pink);animation:glitchB 2.4s infinite linear alternate-reverse;mix-blend-mode:screen}
@keyframes glitchA{
  0%,92%,100%{transform:translate(0);clip-path:inset(0 0 0 0)}
  93%{transform:translate(-3px,1px);clip-path:inset(20% 0 60% 0)}
  96%{transform:translate(3px,-1px);clip-path:inset(60% 0 10% 0)}
}
@keyframes glitchB{
  0%,90%,100%{transform:translate(0);clip-path:inset(0 0 0 0)}
  91%{transform:translate(3px,1px);clip-path:inset(40% 0 40% 0)}
  94%{transform:translate(-3px,-1px);clip-path:inset(10% 0 70% 0)}
}

.hero-sub{font-size:clamp(.95rem,1.6vw,1.15rem);color:#9fdce6;max-width:620px;margin:0 auto 2.5rem}
.hl{color:var(--cyan);text-shadow:0 0 8px rgba(0,255,255,.5);font-weight:600}

.hero-actions{display:flex;gap:1.2rem;justify-content:center;flex-wrap:wrap;margin-bottom:3rem}

.hero-stats{display:flex;gap:clamp(1.5rem,5vw,4rem);justify-content:center;flex-wrap:wrap}
.stat{display:flex;flex-direction:column;align-items:center}
.stat b{
  font-family:'Orbitron';font-weight:800;font-size:clamp(1.5rem,3.5vw,2.4rem);
  color:var(--cyan);text-shadow:var(--glow-cyan);line-height:1;
}
.stat span{font-family:'Share Tech Mono';font-size:.65rem;letter-spacing:.25em;color:var(--silver);margin-top:.5em}

/* Orbit visual */
.hero-orbit{
  position:absolute;right:-10%;top:50%;transform:translateY(-50%);
  width:min(700px,80vw);aspect-ratio:1;z-index:1;opacity:.55;pointer-events:none;
}
.orbit-ring{position:absolute;inset:0;border:1px solid var(--line);border-radius:50%}
.orbit-ring::after{content:"";position:absolute;width:8px;height:8px;background:var(--cyan);border-radius:50%;box-shadow:var(--glow-cyan);top:0;left:50%;transform:translate(-50%,-50%)}
.r1{transform:scale(.55);animation:spin 14s linear infinite}
.r2{transform:scale(.78);border-color:var(--line-pink);animation:spin 22s linear infinite reverse}
.r2::after{background:var(--pink);box-shadow:var(--glow-pink)}
.r3{transform:scale(1);border-style:dashed;animation:spin 34s linear infinite}
.orbit-core{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:120px;height:120px;border:1px solid var(--cyan);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-family:'Orbitron';font-weight:800;letter-spacing:.2em;color:var(--cyan);
  text-shadow:var(--glow-cyan);box-shadow:inset 0 0 30px rgba(0,255,255,.25),0 0 40px rgba(0,255,255,.2);
  animation:pulse 3s ease-in-out infinite;
}
.orbit-core i{position:absolute;inset:-6px;border:1px solid var(--line);border-radius:50%;animation:pulse 3s ease-in-out infinite .5s}
@keyframes spin{to{transform:rotate(360deg) scale(var(--s,1))}}
.r1{--s:.55}.r2{--s:.78}.r3{--s:1}
@keyframes pulse{50%{box-shadow:inset 0 0 50px rgba(0,255,255,.4),0 0 60px rgba(0,255,255,.35)}}

.scroll-cue{
  position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);
  font-family:'Share Tech Mono';font-size:.65rem;letter-spacing:.3em;color:var(--silver);
  display:flex;flex-direction:column;align-items:center;gap:.6em;
}
.scroll-cue i{width:1px;height:40px;background:linear-gradient(var(--cyan),transparent);position:relative;overflow:hidden}
.scroll-cue i::after{content:"";position:absolute;top:-40px;left:0;width:100%;height:40px;background:var(--cyan);animation:scrollLine 1.8s infinite}
@keyframes scrollLine{to{top:100%}}

/* ===== Sections ===== */
.section{
  position:relative;padding:clamp(4rem,9vw,8rem) clamp(1.2rem,5vw,4rem);
  max-width:1200px;margin:0 auto;
}
.section-head{margin-bottom:3.5rem}
.sec-num{font-family:'Share Tech Mono';color:var(--pink);letter-spacing:.3em;font-size:.8rem}
.sec-title{
  font-family:'Orbitron';font-weight:800;
  font-size:clamp(1.8rem,5vw,3rem);letter-spacing:.03em;color:var(--white);
  margin:.5rem 0 1rem;
}
.sec-line{height:1px;background:linear-gradient(90deg,var(--cyan),transparent)}

/* Reveal */
.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease}
.reveal.in{opacity:1;transform:none}

/* ===== Genesis ===== */
.genesis-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}
.genesis-text .lead{font-family:'Orbitron';font-weight:600;font-size:clamp(1.2rem,3vw,1.8rem);color:var(--cyan);margin-bottom:1.2rem;text-shadow:0 0 8px rgba(0,255,255,.3)}
.genesis-text p{margin-bottom:1rem;color:#a8c9d1}
.genesis-text em{font-style:normal;color:var(--pink);text-shadow:0 0 8px rgba(255,0,255,.4)}

.viz-panel{
  border:1px solid var(--line);background:rgba(0,20,30,.4);
  padding:1rem;position:relative;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));
}
.viz-head{display:flex;justify-content:space-between;font-family:'Share Tech Mono';font-size:.65rem;color:var(--acid);margin-bottom:.8rem;letter-spacing:.15em}
.viz-head span:first-child{color:var(--pink);animation:blink 1.2s infinite}
.viz-wave{height:90px;background:rgba(0,0,0,.4);position:relative;overflow:hidden}
.viz-wave svg{width:100%;height:100%}
.wave{fill:none;stroke-width:1.5}
.wave-a{stroke:var(--cyan);filter:drop-shadow(0 0 4px var(--cyan))}
.wave-b{stroke:var(--pink);filter:drop-shadow(0 0 4px var(--pink))}
.viz-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;margin-top:.6rem}
.viz-grid span{height:18px;background:rgba(0,255,255,.1);animation:eqBar 1.2s infinite ease-in-out}
.viz-grid span:nth-child(2n){animation-delay:.2s;background:rgba(255,0,255,.15)}
.viz-grid span:nth-child(3n){animation-delay:.4s}
@keyframes eqBar{50%{transform:scaleY(1.6);filter:brightness(1.5)}}

/* ===== Module cards ===== */
.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.8rem}
.module-card{
  position:relative;padding:2.2rem 1.6rem 1.8rem;
  background:linear-gradient(160deg,rgba(0,30,40,.5),rgba(20,0,30,.3));
  border:1px solid var(--line);
  transition:transform .35s,border-color .35s,box-shadow .35s;
  opacity:0;transform:translateY(30px);
}
.in .module-card{opacity:1;transform:none;transition-delay:var(--d,.05s)}
.module-card:hover{
  transform:translateY(-8px);border-color:var(--cyan);
  box-shadow:0 0 30px rgba(0,255,255,.15);
}
.mc-corner{position:absolute;width:14px;height:14px;border:2px solid var(--cyan)}
.mc-corner.tl{top:-1px;left:-1px;border-right:none;border-bottom:none}
.mc-corner.tr{top:-1px;right:-1px;border-left:none;border-bottom:none}
.mc-corner.bl{bottom:-1px;left:-1px;border-right:none;border-top:none}
.mc-corner.br{bottom:-1px;right:-1px;border-left:none;border-top:none}
.mc-icon svg{width:52px;height:52px;fill:none;stroke:var(--cyan);stroke-width:1.5;margin-bottom:1.2rem;filter:drop-shadow(0 0 6px rgba(0,255,255,.5))}
.module-card:hover .mc-icon svg{stroke:var(--pink);filter:drop-shadow(0 0 8px rgba(255,0,255,.6))}
.module-card h3{font-family:'Orbitron';font-weight:600;font-size:1.2rem;color:var(--white);margin-bottom:.3rem}
.mc-code{font-family:'Share Tech Mono';font-size:.7rem;letter-spacing:.15em;color:var(--acid);margin-bottom:.9rem}
.module-card p{font-size:.92rem;color:#9fd0da}
.mc-bar{height:3px;background:rgba(0,255,255,.1);margin-top:1.2rem;overflow:hidden}
.mc-bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--cyan),var(--pink));box-shadow:var(--glow-cyan);transition:width 1.2s ease .3s}
.in .module-card .mc-bar span{width:var(--w)}

/* ===== Arch ===== */
.arch-wrap{display:grid;grid-template-columns:1.3fr 1fr;gap:3rem;align-items:center}
.arch-diagram{position:relative;height:300px;display:flex;align-items:center;justify-content:space-between;padding:0 1rem;border:1px dashed var(--line);background:rgba(0,15,25,.3)}
.arch-node{
  position:relative;z-index:2;width:90px;text-align:center;
  font-family:'Orbitron';font-weight:600;font-size:.7rem;letter-spacing:.1em;color:var(--cyan);
  padding:1.4em .4em;border:1px solid var(--cyan);
  background:rgba(0,20,30,.6);box-shadow:inset 0 0 18px rgba(0,255,255,.15);
}
.arch-node i{display:block;font-style:normal;font-size:.6rem;color:var(--pink);margin-top:.4em}
.arch-node.n-quantum{color:var(--pink);border-color:var(--pink);box-shadow:inset 0 0 18px rgba(255,0,255,.18)}
.arch-lines{position:absolute;inset:0;width:100%;height:100%;z-index:1}
.aline{fill:none;stroke:var(--cyan);stroke-width:1.5;filter:drop-shadow(0 0 3px var(--cyan));stroke-dasharray:6 4;animation:dash 2s linear infinite}
.aline.dash{stroke:var(--pink);filter:drop-shadow(0 0 3px var(--pink))}
@keyframes dash{to{stroke-dashoffset:-20}}
.arch-detail p{margin-bottom:1.5rem;color:#a8c9d1}
.arch-list{list-style:none}
.arch-list li{padding:.7rem 0;border-bottom:1px solid var(--line);font-size:.92rem;color:#bcd6dd;display:flex;gap:.8em;align-items:center}
.tag{font-family:'Share Tech Mono';font-size:.7rem;color:#000;background:var(--cyan);padding:.15em .5em;box-shadow:var(--glow-cyan)}

/* ===== Timeline ===== */
.timeline{position:relative;padding:1rem 0}
.tl-line{position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(var(--cyan),var(--pink));transform:translateX(-50%);box-shadow:var(--glow-cyan)}
.tl-item{position:relative;width:50%;padding:0 2.5rem 2.5rem 0;left:0}
.tl-item.right{left:50%;padding:0 0 2.5rem 2.5rem}
.tl-dot{
  position:absolute;right:-8px;top:.2rem;font-family:'Share Tech Mono';font-size:.65rem;
  letter-spacing:.15em;color:var(--acid);background:var(--bg);padding:.2em .6em;
  border:1px solid var(--line-pink);z-index:2;
}
.tl-item.right .tl-dot{right:auto;left:-8px}
.tl-dot::after{content:"";position:absolute;width:10px;height:10px;background:var(--cyan);border-radius:50%;box-shadow:var(--glow-cyan);top:50%;transform:translateY(-50%)}
.tl-item:not(.right) .tl-dot::after{right:-2.5rem}
.tl-item.right .tl-dot::after{left:-2.5rem}
.tl-card{border:1px solid var(--line);background:rgba(0,20,30,.4);padding:1.2rem 1.4rem;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px));transition:transform .3s,border-color .3s}
.tl-card:hover{transform:scale(1.02);border-color:var(--pink)}
.tl-date{font-family:'Share Tech Mono';font-size:.7rem;color:var(--pink);letter-spacing:.15em}
.tl-card h4{font-family:'Orbitron';font-weight:600;color:var(--cyan);margin:.4rem 0 .5rem;text-shadow:0 0 6px rgba(0,255,255,.3)}
.tl-card p{font-size:.9rem;color:#a8c9d1}

/* ===== Final CTA ===== */
.section--final{text-align:center;max-width:900px}
.final-inner{position:relative;padding:clamp(3rem,7vw,6rem) 2rem;border:1px solid var(--line);background:radial-gradient(ellipse at center,rgba(0,30,40,.5),transparent 70%)}
.final-glow{position:absolute;inset:0;background:radial-gradient(circle at 50% 30%,rgba(0,255,255,.15),transparent 60%);pointer-events:none}
.final-inner .sec-title{font-size:clamp(2rem,6vw,4rem)}
.final-sub{color:#9fd0da;margin:1rem auto 2.5rem;max-width:520px}
.register-form{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:2.5rem}
.rf-field{position:relative;min-width:280px;flex:1;max-width:380px}
.rf-field input{
  width:100%;background:transparent;border:none;border-bottom:1px solid var(--line);
  padding:1em 0 .6em;color:var(--cyan);font-family:'Share Tech Mono';font-size:.95rem;outline:none;
}
.rf-field label{position:absolute;left:0;top:1em;font-family:'Share Tech Mono';font-size:.8rem;color:var(--silver);letter-spacing:.1em;pointer-events:none;transition:.25s}
.rf-field input:focus~label,
.rf-field input:not(:placeholder-shown)~label{top:-.6em;font-size:.65rem;color:var(--acid)}
.rf-underline{position:absolute;left:0;bottom:0;width:0;height:2px;background:linear-gradient(90deg,var(--cyan),var(--pink));transition:width .3s}
.rf-field input:focus~.rf-underline{width:100%}
.rf-field.invalid input{border-color:var(--pink);color:var(--pink)}

.countdown{margin-top:1rem}
.cd-label{font-family:'Share Tech Mono';font-size:.7rem;letter-spacing:.3em;color:var(--silver)}
.cd{display:flex;gap:1.2rem;justify-content:center;margin-top:1rem}
.cd div{display:flex;flex-direction:column}
.cd b{font-family:'Orbitron';font-weight:800;font-size:clamp(1.6rem,4vw,2.6rem);color:var(--cyan);text-shadow:var(--glow-cyan)}
.cd span{font-family:'Share Tech Mono';font-size:.6rem;letter-spacing:.2em;color:var(--silver)}

/* ===== Footer ===== */
.footer{border-top:1px solid var(--line);padding:3rem clamp(1.2rem,5vw,4rem) 0;background:linear-gradient(180deg,transparent,rgba(0,10,20,.5))}
.foot-grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:2rem;max-width:1200px;margin:0 auto}
.foot-brand .hud-brand{font-size:.85rem;margin-bottom:1rem}
.foot-brand p{font-family:'Share Tech Mono';font-size:.7rem;color:var(--silver);letter-spacing:.1em;line-height:1.8}
.foot-links{display:flex;flex-direction:column;gap:.6rem}
.foot-links a{font-family:'Share Tech Mono';font-size:.75rem;color:#9fd0da;text-decoration:none;letter-spacing:.15em;transition:color .25s}
.foot-links a:hover{color:var(--cyan)}
.foot-sns{display:flex;gap:1.2rem}
.foot-sns a{font-family:'Orbitron';font-size:1.4rem;color:var(--silver);text-decoration:none;transition:.25s}
.foot-sns a:hover{color:var(--cyan);text-shadow:var(--glow-cyan);transform:translateY(-2px)}
.foot-bar{
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;
  margin-top:2.5rem;padding:1rem 0;border-top:1px solid var(--line);
  font-family:'Share Tech Mono';font-size:.65rem;color:var(--silver);letter-spacing:.15em;
}
.foot-barcode{letter-spacing:.1em;color:var(--cyan);opacity:.5}

/* ===== Modal ===== */
.modal{
  position:fixed;inset:0;z-index:500;display:flex;align-items:center;justify-content:center;
  background:rgba(0,0,0,.8);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:.3s;
}
.modal.open{opacity:1;visibility:visible}
.modal-box{
  position:relative;max-width:380px;width:90%;text-align:center;padding:3rem 2rem;
  background:linear-gradient(160deg,rgba(0,30,40,.95),rgba(20,0,30,.95));border:1px solid var(--cyan);
  box-shadow:0 0 50px rgba(0,255,255,.25);transform:scale(.9);transition:transform .3s;
}
.modal.open .modal-box{transform:scale(1)}
.modal-check{
  width:60px;height:60px;margin:0 auto 1.2rem;border:2px solid var(--acid);border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:1.6rem;color:var(--acid);
  box-shadow:0 0 20px rgba(57,255,20,.4);animation:pop .4s ease;
}
@keyframes pop{0%{transform:scale(0)}70%{transform:scale(1.15)}}
.modal-box h3{font-family:'Orbitron';font-weight:700;color:var(--cyan);margin-bottom:.6rem;letter-spacing:.05em}
.modal-box p{color:#9fd0da;font-size:.9rem;margin-bottom:1.5rem}

/* ===== Responsive ===== */
@media (max-width:900px){
  .genesis-grid,.arch-wrap{grid-template-columns:1fr}
  .hero-orbit{opacity:.3;right:-40%}
  .hud-links,.hud-cta{display:none}
  .hud-burger{display:flex}
  .hud-nav.open .hud-links{
    display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;
    background:rgba(6,7,9,.97);padding:1.5rem 2rem;gap:1.2rem;border-bottom:1px solid var(--line);
  }
  .hud-nav.open .hud-cta{display:inline-block;margin-left:auto}
}
@media (max-width:680px){
  .tl-line{left:8px}
  .tl-item,.tl-item.right{width:100%;left:0;padding:0 0 2rem 2.2rem}
  .tl-dot{left:-0!important;right:auto;left:0}
  .tl-item.right .tl-dot{left:0}
  .tl-dot::after,.tl-item:not(.right) .tl-dot::after,.tl-item.right .tl-dot::after{left:2rem;right:auto}
  .arch-node{width:64px;font-size:.6rem}
  .cd{gap:.7rem}
  body{cursor:auto}
  .cursor-glow{display:none}
  .btn{cursor:pointer}
}
