/* ============================================================
   TEAM PROMETHEUS — CINEMATIC LANDING
   Awwwards-caliber scroll-driven experience
   ============================================================ */

/* ── RESET & BASE ──────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{
  font-family:'Inter',system-ui,sans-serif;
  background:#030508;
  color:rgba(255,255,255,.6);
  overflow-x:hidden;
  cursor:default;
  line-height:1.6;
}
a{color:inherit;text-decoration:none;cursor:pointer}
button{background:none;border:none;color:inherit;cursor:pointer;font-family:inherit}
ul{list-style:none}
img,video,canvas{display:block}
.hidden{display:none!important}

/* ── LENIS 120FPS SMOOTH SCROLL ACCELERATION ───────────────── */
html.lenis, html.lenis body {
  height: auto;
}
.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}
.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}
.lenis.lenis-stopped {
  overflow: hidden;
}
.lenis.lenis-smooth iframe {
  pointer-events: none;
}

/* ── CUSTOM CURSOR (GPU COMPOSITED - ZERO REFLOW) ──────────── */
.cur{
  position:fixed;top:0;left:0;width:6px;height:6px;border-radius:50%;
  background:#00e5ff;
  box-shadow:0 0 10px #00e5ff;
  pointer-events:none;z-index:10000;
  transform:translate3d(-50%,-50%,0);
  will-change:transform;
  opacity:0;
  transition:width .15s,height .15s,background .15s,opacity .2s;
}
.cur.active{opacity:1}
.cur.hover{width:10px;height:10px;background:#ffb300;box-shadow:0 0 12px #ffb300}
.cur-ring{
  position:fixed;top:0;left:0;width:38px;height:38px;border-radius:50%;
  border:1.5px solid rgba(0,229,255,.5);
  box-shadow:0 0 14px rgba(0,229,255,.25);
  pointer-events:none;z-index:9999;
  transform:translate3d(-50%,-50%,0);
  will-change:transform;
  opacity:0;
  transition:width .2s ease-out,height .2s ease-out,border-color .2s,opacity .2s,box-shadow .2s;
}
.cur-ring.active{opacity:1}
.cur-ring.hover{width:54px;height:54px;border-color:rgba(255,179,0,.8);box-shadow:0 0 20px rgba(255,179,0,.4)}

/* ── PRELOADER (3D ROCKET ASSEMBLY & LAUNCH) ────────────────── */
.preloader{
  display:none!important;
  position:fixed;inset:0;z-index:9000;
  background:#030508;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
  transition:opacity .8s cubic-bezier(.16,1,.3,1),visibility .8s;
}
.preloader.done{opacity:0;visibility:hidden;pointer-events:none}
.loader-canvas{
  position:absolute;inset:0;width:100%;height:100%;
  pointer-events:none;z-index:1;
}
.loader-vignette{
  position:absolute;inset:0;pointer-events:none;z-index:2;
  background:radial-gradient(ellipse at center, transparent 48%, rgba(3,5,8,.6) 78%, #030508 100%),
             linear-gradient(to bottom, rgba(3,5,8,.75) 0%, transparent 16%, transparent 84%, rgba(3,5,8,.88) 100%);
}
.pre-hud-top{
  position:absolute;top:0;left:0;right:0;padding:26px 36px;
  display:flex;align-items:center;justify-content:space-between;
  z-index:10;pointer-events:auto;
}
.pre-brand{display:flex;align-items:center;gap:10px}
.pre-dot{
  width:9px;height:9px;border-radius:50%;background:#00e5ff;
  box-shadow:0 0 14px #00e5ff;
  animation:pulse-dot 1.2s ease-in-out infinite;
}
.dot-red{background:#ff3d3d;animation:pulse-dot 1.4s ease-in-out infinite}
@keyframes pulse-dot{0%,100%{opacity:1}50%{opacity:.3}}
.pre-label{
  font-family:'Syne',sans-serif;font-size:12px;font-weight:700;
  letter-spacing:3px;color:rgba(255,255,255,.9);text-transform:uppercase;
}
.pre-mission-chips{
  display:flex;gap:14px;align-items:center;
}
.pre-chip{
  font-family:'JetBrains Mono',monospace;font-size:10px;
  padding:5px 12px;border-radius:999px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  backdrop-filter:blur(10px);color:rgba(255,255,255,.6);
  display:flex;gap:6px;align-items:center;letter-spacing:1px;
}
.chip-k{color:rgba(255,255,255,.35)}
.chip-v{color:#fff;font-weight:600}
.chip-cyan{color:#00e5ff;text-shadow:0 0 10px rgba(0,229,255,.4)}
.pre-skip-btn{
  font-family:'JetBrains Mono',monospace;font-size:11px;
  letter-spacing:1.5px;color:rgba(255,255,255,.8);
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);
  border-radius:999px;padding:8px 18px;display:flex;align-items:center;gap:8px;
  cursor:pointer;backdrop-filter:blur(16px);
  transition:all .25s ease;
}
.pre-skip-btn:hover{
  background:rgba(0,229,255,.15);border-color:#00e5ff;color:#fff;
  box-shadow:0 0 24px rgba(0,229,255,.35);
  transform:translateY(-1px);
}
.pre-bottom-dock{
  position:absolute;bottom:30px;left:50%;transform:translateX(-50%);
  width:min(680px,92vw);z-index:10;
  background:rgba(6,10,18,.76);backdrop-filter:blur(24px) saturate(160%);
  border:1px solid rgba(255,255,255,.12);border-radius:14px;
  padding:16px 22px;
  box-shadow:0 24px 60px rgba(0,0,0,.75), inset 0 1px 0 rgba(255,255,255,.1);
}
.pre-status-line{
  display:flex;justify-content:space-between;align-items:center;
  margin-bottom:12px;
}
.pre-status-badge{
  display:flex;align-items:center;gap:8px;
  font-family:'JetBrains Mono',monospace;font-size:11px;
  letter-spacing:1.5px;color:rgba(255,255,255,.9);text-transform:uppercase;
  font-weight:500;
}
.badge-pulse{
  width:6px;height:6px;border-radius:50%;background:#00ff88;
  box-shadow:0 0 10px #00ff88;
  animation:pulse-dot 1s ease-in-out infinite;
}
.pre-fps-badge{
  font-family:'JetBrains Mono',monospace;font-size:9.5px;
  color:#00e5ff;letter-spacing:1px;font-weight:600;
  background:rgba(0,229,255,.08);padding:3px 8px;border-radius:4px;
  border:1px solid rgba(0,229,255,.2);
}
.pre-track{
  width:100%;height:3px;background:rgba(255,255,255,.08);
  border-radius:2px;overflow:hidden;margin-bottom:10px;
}
.pre-fill{
  height:100%;width:0;
  background:linear-gradient(90deg,#00e5ff,#7c4dff,#ff2a2a);
  border-radius:2px;
  box-shadow:0 0 12px rgba(0,229,255,.6);
  transition:width .12s cubic-bezier(.2,0,0,1);
}
.pre-row{display:flex;justify-content:space-between;align-items:center}
.pre-hint{
  font-family:'JetBrains Mono',monospace;font-size:9.5px;
  letter-spacing:1.5px;color:rgba(255,255,255,.4);text-transform:uppercase;
}
.pre-pct-wrap{
  font-family:'JetBrains Mono',monospace;font-size:13px;
  font-weight:700;color:#fff;display:flex;align-items:baseline;gap:2px;
}
.pre-pct{color:#00e5ff;text-shadow:0 0 10px rgba(0,229,255,.5)}
.pre-pct-unit{font-size:10px;color:rgba(255,255,255,.5)}

@media(max-width:768px){
  .pre-hud-top{padding:16px 20px}
  .pre-mission-chips{display:none}
  .pre-bottom-dock{bottom:20px;padding:14px 16px}
  .pre-status-badge{font-size:9.5px}
  .pre-fps-badge{display:none}
}

/* ── FIXED CANVAS ──────────────────────────────────────────── */
#seq-canvas{
  position:fixed;top:0;left:0;
  width:100vw;height:100vh;
  z-index:0;
  object-fit:contain;
  pointer-events:none;
  transform:translateZ(0);
  will-change:transform;
  backface-visibility:hidden;
}

/* ── FIXED NAV ─────────────────────────────────────────────── */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 32px;height:60px;
  background:rgba(3,5,8,.5);
  backdrop-filter:blur(20px) saturate(1.5);
  -webkit-backdrop-filter:blur(20px) saturate(1.5);
  border-bottom:1px solid rgba(255,255,255,.04);
  opacity:0;transform:translateY(-20px);
  transition:opacity .6s ease,transform .6s ease;
}
.nav.visible{opacity:1;transform:none}
.nav-left,.nav-right{display:flex;align-items:center;gap:12px}
.nav-dot{width:6px;height:6px;border-radius:50%;background:#00e5ff}
.nav-brand{font-size:12px;font-weight:700;letter-spacing:3px;color:rgba(255,255,255,.85)}
.nav-chip{
  font-size:9px;letter-spacing:1.5px;font-weight:600;
  color:rgba(255,255,255,.4);
  padding:3px 8px;border-radius:4px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
}
.nav-links{display:flex;gap:6px}
.nav-links a{
  font-size:11px;letter-spacing:.8px;font-weight:500;
  color:rgba(255,255,255,.4);
  padding:6px 12px;border-radius:6px;
  transition:color .2s,background .2s;
}
.nav-links a:hover{color:rgba(255,255,255,.85);background:rgba(255,255,255,.05)}
.nav-hl{color:#00e5ff!important}
.nav-icon{
  width:36px;height:36px;border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
  transition:background .2s;
}
.nav-icon:hover{background:rgba(255,255,255,.08)}
.nav-icon svg{width:16px;height:16px;stroke:rgba(255,255,255,.5)}
.nav-cta{
  font-size:11px;font-weight:600;letter-spacing:1px;
  padding:8px 16px;border-radius:8px;
  background:rgba(0,229,255,.1);
  border:1px solid rgba(0,229,255,.2);
  color:#00e5ff;
  transition:background .2s,border-color .2s;
}
.nav-cta:hover{background:rgba(0,229,255,.18);border-color:rgba(0,229,255,.35)}

/* ── AUTONOMOUS DIRECTOR TOUR ──────────────────────────────── */
.nav-tour-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(0, 229, 255, 0.12);
  border: 1px solid rgba(0, 229, 255, 0.4);
  color: #00e5ff;
  padding: 6px 14px;
  border-radius: 100px;
  font-size: 11px;
  letter-spacing: 1px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.25s ease;
  box-shadow: 0 0 15px rgba(0, 229, 255, 0.2);
}
.nav-tour-btn:hover {
  background: rgba(0, 229, 255, 0.25);
  box-shadow: 0 0 25px rgba(0, 229, 255, 0.5);
  transform: translateY(-1px);
}
.tour-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ff2a85;
  box-shadow: 0 0 10px #ff2a85;
  animation: tourPulse 1.4s ease-in-out infinite;
}
@keyframes tourPulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.4); opacity: 0.6; }
}
.tour-director-hud {
  position: fixed;
  top: 18px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10000;
  width: min(92%, 860px);
  background: rgba(6, 10, 18, 0.88);
  backdrop-filter: blur(20px) saturate(1.5);
  -webkit-backdrop-filter: blur(20px) saturate(1.5);
  border: 1px solid rgba(0, 229, 255, 0.35);
  border-radius: 14px;
  padding: 12px 18px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.85), 0 0 30px rgba(0, 229, 255, 0.2);
  display: flex;
  flex-direction: column;
  gap: 8px;
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.tour-director-hud.hidden {
  display: none !important;
}
.tour-hud-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.tour-hud-status {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 700;
  color: #00e5ff;
  letter-spacing: 1.5px;
}
.tour-rec-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #ff2a85;
  box-shadow: 0 0 12px #ff2a85;
  animation: tourPulse 1.2s infinite;
}
.tour-step-caption {
  font-size: 12px;
  color: #ffffff;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-shadow: 0 0 10px rgba(255, 255, 255, 0.3);
}
.tour-hud-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.tour-btn-action {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.18);
  color: #f1f5f9;
  font-family: inherit;
  font-size: 10.5px;
  padding: 5px 10px;
  border-radius: 6px;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s;
}
.tour-btn-action:hover {
  background: rgba(0, 229, 255, 0.2);
  border-color: #00e5ff;
  color: #00e5ff;
}
.tour-btn-close:hover {
  background: rgba(255, 42, 133, 0.2);
  border-color: #ff2a85;
  color: #ff2a85;
}
.tour-progress-bar {
  width: 100%;
  height: 4px;
  background: rgba(255, 255, 255, 0.08);
  border-radius: 2px;
  overflow: hidden;
}
.tour-progress-fill {
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, #00e5ff, #7c4dff, #ff2a85);
  transition: width 0.3s linear;
}

/* ── TELEMETRY HUD ─────────────────────────────────────────── */
.hud{
  position:fixed;bottom:24px;left:50%;transform:translateX(-50%);
  z-index:100;display:flex;align-items:center;gap:28px;
  padding:10px 28px;border-radius:14px;
  background:rgba(3,5,8,.6);
  backdrop-filter:blur(16px) saturate(1.4);
  -webkit-backdrop-filter:blur(16px) saturate(1.4);
  border:1px solid rgba(255,255,255,.04);
  font-family:'JetBrains Mono',monospace;
  font-size:11px;
  opacity:0;transition:opacity .6s;
}
.hud.visible{opacity:1}
.hud-g{display:flex;align-items:center;gap:8px}
.hud-l{color:rgba(255,255,255,.25);letter-spacing:1.5px;font-size:9px;font-weight:600}
.hud-v{font-weight:600}
.v-cyan{color:#00e5ff}
.v-amber{color:#ffb300}
.v-green{color:#69f0ae}
.hud-bar{width:80px;height:3px;background:rgba(255,255,255,.06);border-radius:2px;overflow:hidden}
.hud-bar-f{height:100%;width:0;background:linear-gradient(90deg,#00e5ff,#7c4dff);border-radius:2px;transition:width .05s linear}
.hud-sound-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(0, 229, 255, 0.12);
  border: 1px solid rgba(0, 229, 255, 0.35);
  border-radius: 20px;
  padding: 4px 10px;
  color: #00e5ff;
  font-family: inherit;
  font-size: 10px;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all 0.2s ease;
  margin-left: 6px;
}
.hud-sound-btn:hover {
  background: rgba(0, 229, 255, 0.25);
  border-color: #00e5ff;
  box-shadow: 0 0 10px rgba(0, 229, 255, 0.4);
}
.hud-sound-btn.playing {
  background: rgba(255, 179, 0, 0.2);
  border-color: #ffb300;
  color: #ffb300;
  box-shadow: 0 0 12px rgba(255, 179, 0, 0.4);
}

/* ── SCROLL SECTIONS ───────────────────────────────────────── */
.act{
  position:relative;z-index:1;
  min-height:72vh;
  display:flex;align-items:center;
  padding:50px 0;
}
.act-hero{
  min-height:100vh;
  align-items:center;
  padding-top:6vh;
  padding-bottom:30px;
}
.act-inner{
  width:100%;max-width:1280px;margin:0 auto;padding:0 48px;
  perspective:1400px;
}
.act-left .card{max-width:540px}
.act-right{display:flex;justify-content:flex-end}
.act-right .card{max-width:560px}
.act-center{text-align:center;display:flex;flex-direction:column;align-items:center}
.act-center-wide{text-align:center}

/* ── 3D POP-OUT GLASS CARDS ────────────────────────────────── */
.card{
  opacity:0;
  transform-style:preserve-3d;
  transform:perspective(1200px) translateZ(-40px) translateY(40px) rotateX(6deg);
  transition:box-shadow .35s cubic-bezier(.16,1,.3,1),border-color .35s ease,transform .2s ease-out;
  will-change:transform,box-shadow;
}
.glass{
  background:linear-gradient(145deg,rgba(14,21,32,.86) 0%,rgba(6,9,16,.92) 100%);
  backdrop-filter:blur(28px) saturate(1.5);
  -webkit-backdrop-filter:blur(28px) saturate(1.5);
  border:1px solid rgba(0,229,255,.22);
  border-radius:24px;padding:36px 42px;
  box-shadow:
    0 25px 65px -12px rgba(0,0,0,.92),
    0 12px 32px -8px rgba(0,229,255,.2),
    inset 0 1px 2px rgba(255,255,255,.28),
    inset 0 -2px 4px rgba(0,229,255,.12);
  position:relative;
}
.glass::before{
  content:'';position:absolute;inset:0;
  border-radius:24px;padding:1px;
  background:linear-gradient(135deg,rgba(0,229,255,.45),rgba(124,77,255,.15) 45%,rgba(255,255,255,.06) 100%);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}
.glass:hover{
  border-color:rgba(0,229,255,.45);
  box-shadow:
    0 35px 85px -10px rgba(0,0,0,.96),
    0 18px 45px -5px rgba(0,229,255,.32),
    inset 0 1px 3px rgba(255,255,255,.38);
}
.glass-wide{max-width:100%}

/* ── 3D POP FOR CARD CHILDREN ──────────────────────────────── */
.card .pill{
  transform:translateZ(32px);
  background:rgba(0,229,255,.1);
  border:1px solid rgba(0,229,255,.35);
  color:#00e5ff;
  box-shadow:0 4px 16px rgba(0,229,255,.22);
}
.card .title-lg,.card .title-md{
  transform:translateZ(26px);
  text-shadow:0 6px 24px rgba(0,0,0,.9);
}
.card .body-md,.card .body-sm{
  transform:translateZ(18px);
}
.card .stat-row{
  transform:translateZ(28px);
}
.card .stat{
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.07);
  padding:10px 18px;
  border-radius:12px;
  box-shadow:0 8px 22px rgba(0,0,0,.45);
}

/* ── HERO TYPOGRAPHY (AWWWARDS EDITORIAL) ──────────────────── */
.hero-subline{
  font-family:'JetBrains Mono',monospace;
  font-size:11px;
  letter-spacing:4px;
  color:#00e5ff;
  font-weight:600;
  text-shadow:0 0 14px rgba(0,229,255,.6);
  margin-bottom:12px;
  text-transform:uppercase;
}
.hero-title{
  font-family:'Syne',sans-serif;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  margin:0 0 24px;
  text-transform:uppercase;
}
.hero-line{
  display:block;
  line-height:.92;
}
.hero-line-1{
  font-size:clamp(38px,6.2vw,84px);
  font-weight:800;
  letter-spacing:-.035em;
  background:linear-gradient(180deg,#ffffff 20%,rgba(255,255,255,.7) 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  filter:drop-shadow(0 4px 20px rgba(0,0,0,.9));
}
.hero-line-2{
  font-size:clamp(42px,7.5vw,100px);
  font-weight:900;
  letter-spacing:-.04em;
  position:relative;
}
.cosmic-text{
  background:linear-gradient(
    135deg,
    #ffffff 0%,
    #00e5ff 25%,
    #7c4dff 50%,
    #ff2a85 75%,
    #00e5ff 100%
  );
  background-size:300% 300%;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  animation:cosmicGradientFlow 7s ease-in-out infinite;
  display:inline-block;
  filter:drop-shadow(0 0 40px rgba(0,229,255,.6)) drop-shadow(0 0 80px rgba(124,77,255,.4));
}
@keyframes cosmicGradientFlow{
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
.hero-meta{
  display:inline-flex;
  align-items:center;
  gap:16px;
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  letter-spacing:2.5px;
  color:rgba(255,255,255,.5);
  padding:8px 20px;
  border-radius:100px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 10px 30px rgba(0,0,0,.5);
  margin-bottom:28px;
}
.meta-dot{
  width:4px;height:4px;
  border-radius:50%;
  background:#00e5ff;
  box-shadow:0 0 8px #00e5ff;
}

/* ── TYPOGRAPHY ────────────────────────────────────────────── */
.pill{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 14px;border-radius:100px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
  font-size:10px;font-weight:600;letter-spacing:2px;
  color:rgba(255,255,255,.35);
  margin-bottom:20px;text-transform:uppercase;
}
.pill svg{width:12px;height:12px;stroke:rgba(255,255,255,.3)}
/* ── BOX HEADINGS & TYPOGRAPHY (AWWWARDS EDITORIAL) ──────── */
.title-xl{
  font-family:'Syne',sans-serif;
  font-size:clamp(38px,5.5vw,72px);
  font-weight:800;
  letter-spacing:-.035em;
  line-height:1.06;
  background:linear-gradient(180deg,#ffffff 20%,rgba(255,255,255,.75) 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  filter:drop-shadow(0 4px 20px rgba(0,0,0,.8));
  margin-bottom:20px;
}
.title-lg{
  font-family:'Syne',sans-serif;
  font-size:clamp(24px,3.0vw,40px);
  font-weight:800;
  letter-spacing:-.025em;
  line-height:1.14;
  background:linear-gradient(180deg,#ffffff 25%,rgba(255,255,255,.78) 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  filter:drop-shadow(0 4px 16px rgba(0,0,0,.75));
  margin-bottom:16px;
  overflow-wrap: normal;
  word-break: keep-all;
}
.team-title-lg{
  font-size:clamp(22px,2.5vw,36px) !important;
  letter-spacing:-.015em !important;
  white-space:nowrap;
}
.title-md{
  font-family:'Syne',sans-serif;
  font-size:clamp(20px,2.4vw,28px);
  font-weight:800;
  letter-spacing:-.025em;
  line-height:1.2;
  background:linear-gradient(180deg,#ffffff 30%,rgba(255,255,255,.82) 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  filter:drop-shadow(0 2px 12px rgba(0,0,0,.7));
  margin-bottom:12px;
}
.title-sm{
  font-family:'Syne',sans-serif;
  font-size:16px;
  font-weight:800;
  letter-spacing:-.02em;
  color:#ffffff;
  background:linear-gradient(180deg,#ffffff 30%,rgba(255,255,255,.8) 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.grad{
  background:linear-gradient(135deg,#00e5ff 0%,#7c4dff 50%,#ff3d8b 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  filter:drop-shadow(0 0 25px rgba(0,229,255,.4));
  display:inline-block;
}
.body-lg{font-size:clamp(16px,1.4vw,20px);max-width:640px;margin:0 auto 32px;line-height:1.7}
.body-md{font-size:clamp(14px,1.1vw,16px);line-height:1.7;margin-bottom:24px;color:rgba(255,255,255,.55)}
.body-sm{font-size:13px;line-height:1.6;color:rgba(255,255,255,.45);margin-bottom:20px}

/* ── SCROLL HINT ───────────────────────────────────────────── */
.scroll-hint{
  display:flex;flex-direction:column;align-items:center;gap:10px;
  margin-top:48px;
  animation:float-hint 2.5s ease-in-out infinite;
}
.scroll-hint span{font-size:10px;letter-spacing:3px;color:rgba(255,255,255,.25);text-transform:uppercase}
.mouse{
  width:22px;height:36px;border-radius:11px;
  border:1.5px solid rgba(255,255,255,.2);
  display:flex;justify-content:center;padding-top:8px;
}
.wheel{
  width:3px;height:8px;border-radius:2px;background:rgba(255,255,255,.35);
  animation:scroll-wheel 2s ease-in-out infinite;
}
@keyframes scroll-wheel{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(10px)}}
@keyframes float-hint{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}

/* ── STAT ROW ──────────────────────────────────────────────── */
.stat-row{display:flex;gap:24px;flex-wrap:wrap}
.stat{display:flex;flex-direction:column;gap:2px}
.stat-v{font-family:'JetBrains Mono',monospace;font-size:16px;font-weight:700}
.stat-l{font-size:10px;letter-spacing:1.5px;color:rgba(255,255,255,.3);text-transform:uppercase}

/* ── REVEAL ENGINE ─────────────────────────────────────────── */
.reveal-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;text-align:left}
.reveal-badge{
  display:flex;align-items:center;gap:8px;
  font-size:10px;letter-spacing:1.5px;font-weight:600;
  color:rgba(255,255,255,.3);white-space:nowrap;
}
.reveal-stage{
  position:relative;
  width:100%;aspect-ratio:16/9;
  border-radius:12px;overflow:hidden;
  border:1px solid rgba(255,255,255,.06);
  background:#0a0c10;
  cursor:crosshair;
}
#reveal-canvas{width:100%;height:100%;display:block}
.reveal-hud{
  position:absolute;inset:0;padding:14px 18px;
  display:flex;flex-wrap:wrap;align-content:space-between;
  pointer-events:none;
}
.rh{
  font-family:'JetBrains Mono',monospace;
  font-size:10px;letter-spacing:1px;
  color:rgba(255,255,255,.35);
  width:50%;
}
.rh.tl{text-align:left}
.rh.tr{text-align:right}
.rh.bl{text-align:left}
.rh.br{text-align:right}
.reveal-controls{margin-top:16px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.rc-btns{display:flex;gap:6px}
.rc-b{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 14px;border-radius:8px;
  font-size:11px;font-weight:600;letter-spacing:.5px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
  transition:background .2s,border-color .2s;
}
.rc-b:hover{background:rgba(255,255,255,.08)}
.rc-b.active{background:rgba(0,229,255,.1);border-color:rgba(0,229,255,.25);color:#00e5ff}
.rc-b svg{width:14px;height:14px}
.rc-range{display:flex;align-items:center;gap:10px}
.rc-range label{font-size:9px;letter-spacing:2px;color:rgba(255,255,255,.25);font-weight:600}
.rc-range input[type=range]{
  -webkit-appearance:none;width:100px;height:3px;
  background:rgba(255,255,255,.1);border-radius:2px;outline:none;
}
.rc-range input[type=range]::-webkit-slider-thumb{
  -webkit-appearance:none;width:14px;height:14px;
  border-radius:50%;background:#00e5ff;cursor:pointer;
}

/* ── KUIPER SECTION ────────────────────────────────────────── */
.kuiper-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;text-align:left}
.kuiper-vis{
  position:relative;border-radius:14px;overflow:hidden;
  border:1px solid rgba(255,255,255,.06);
  aspect-ratio:16/9;
}
.kuiper-vid{width:100%;height:100%;object-fit:cover}
.kuiper-live{
  position:absolute;top:14px;left:14px;
  display:flex;align-items:center;gap:8px;
  font-size:10px;letter-spacing:1.5px;font-weight:600;
  color:rgba(255,255,255,.4);
}
.kuiper-text .pill{text-align:left}

/* ── DUAL MODES ────────────────────────────────────────────── */
.act-modes{min-height:88vh;padding:40px 0 70px}
.modes-head{margin-bottom:32px}
.modes-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;perspective:1200px}
.mode-card{
  text-align:left;cursor:pointer;
  transform-style:preserve-3d;
  transition:border-color .3s ease,transform .25s ease-out,box-shadow .3s ease;
  will-change:transform,box-shadow;
}
.mode-card:hover{
  border-color:rgba(0,229,255,.45);
  box-shadow:0 35px 85px -10px rgba(0,0,0,.95),0 16px 45px -5px rgba(0,229,255,.3);
  transform:translateY(-8px) translateZ(16px);
}
.mode-card .mc-icon{
  transform:translateZ(26px);
  box-shadow:0 8px 24px rgba(0,229,255,.2);
}
.mode-card .title-md{
  transform:translateZ(22px);
  text-shadow:0 4px 16px rgba(0,0,0,.8);
}
.mode-card .body-sm,.mode-card .mc-list{
  transform:translateZ(16px);
}
.mode-card .btn{
  transform:translateZ(28px);
}
.mc-top{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.mc-icon{
  width:44px;height:44px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
}
.mc-icon svg{width:22px;height:22px}
.mc-icon-l{background:rgba(0,229,255,.1);color:#00e5ff}
.mc-icon-l svg{stroke:#00e5ff}
.mc-icon-s{background:rgba(124,77,255,.1);color:#7c4dff}
.mc-icon-s svg{stroke:#7c4dff}
.mc-tag{
  font-size:9px;letter-spacing:1.5px;font-weight:700;
  color:rgba(255,255,255,.3);
}
.mc-list{margin-bottom:24px}
.mc-list li{
  display:flex;align-items:center;gap:8px;
  font-size:12px;color:rgba(255,255,255,.5);
  padding:6px 0;border-bottom:1px solid rgba(255,255,255,.03);
}
.mc-list li svg{width:14px;height:14px;stroke:#69f0ae}
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:12px 24px;border-radius:10px;
  font-size:13px;font-weight:600;letter-spacing:.5px;
  transition:background .2s,border-color .2s,transform .15s;
  width:100%;justify-content:center;
}
.btn svg{width:16px;height:16px}
.btn-l{
  background:rgba(0,229,255,.12);border:1px solid rgba(0,229,255,.25);color:#00e5ff;
}
.btn-l:hover{background:rgba(0,229,255,.2);transform:translateY(-2px)}
.btn-s{
  background:rgba(124,77,255,.12);border:1px solid rgba(124,77,255,.25);color:#7c4dff;
}
.btn-s:hover{background:rgba(124,77,255,.2);transform:translateY(-2px)}

/* ── ROCKET QUICK NAV POPUP (TOP OF HERO) ──────────────────── */
.rocket-hero-popup{
  margin:28px 0 32px;
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  animation:heroRocketFloat 3.8s ease-in-out infinite alternate;
  position:relative;
  z-index:25;
}
@keyframes heroRocketFloat{
  0%{transform:translateY(0px) rotate(0deg)}
  50%{transform:translateY(-8px) rotate(-1deg)}
  100%{transform:translateY(5px) rotate(0.8deg)}
}
.rocket-craft-group{
  display:flex;
  align-items:center;
  white-space:nowrap;
  will-change:transform;
  filter:drop-shadow(0 15px 35px rgba(0,0,0,.9));
}

/* ── Trailing Banner Ribbon ────────────────────────────────── */
.rocket-banner{
  display:flex;
  align-items:center;
  animation:bannerFlutter 2.2s ease-in-out infinite alternate;
  transform-origin:right center;
}
@keyframes bannerFlutter{
  0%{transform:rotate(0.8deg) translateY(-3px) skewY(-0.5deg)}
  50%{transform:rotate(-0.6deg) translateY(3px) skewY(0.4deg)}
  100%{transform:rotate(1.2deg) translateY(-2px) skewY(-0.8deg)}
}
.banner-tether-cables{
  width:38px;
  height:48px;
  position:relative;
  flex-shrink:0;
}
.tether-svg{
  width:100%;
  height:100%;
  display:block;
}
.banner-body{
  /* Green, Red, Yellow, Blue Smoke Nebula Glassmorphism */
  background:
    radial-gradient(circle at 10% 45%,rgba(0,255,136,.48),transparent 52%),
    radial-gradient(circle at 35% 65%,rgba(255,42,42,.46),transparent 52%),
    radial-gradient(circle at 65% 35%,rgba(255,208,0,.48),transparent 52%),
    radial-gradient(circle at 92% 55%,rgba(0,122,255,.50),transparent 55%),
    linear-gradient(135deg,rgba(15,22,36,.75) 0%,rgba(4,7,16,.88) 100%);
  background-size:220% 220%;
  animation:smokeFourColorFlow 7s ease-in-out infinite alternate;
  backdrop-filter:blur(32px) saturate(2) contrast(1.15);
  -webkit-backdrop-filter:blur(32px) saturate(2) contrast(1.15);
  border:1.5px solid rgba(255,255,255,.38);
  border-right:none;
  padding:14px 28px;
  border-radius:20px 0 0 20px;
  box-shadow:
    0 25px 60px -10px rgba(0,0,0,.92),
    0 0 35px rgba(0,255,136,.3),
    0 0 45px rgba(0,122,255,.3),
    inset 0 1.5px 2.5px rgba(255,255,255,.8),
    inset 0 -2px 4px rgba(255,208,0,.25);
  display:flex;
  align-items:center;
  gap:12px;
  position:relative;
}
@keyframes smokeFourColorFlow{
  0%{background-position:0% 30%}
  50%{background-position:100% 70%}
  100%{background-position:30% 100%}
}
.banner-links{
  display:flex;
  align-items:center;
  gap:12px;
  font-family:'Syne',sans-serif;
  font-weight:800;
  font-size:12px;
  letter-spacing:1px;
}
.r-link{
  color:#ffffff!important;
  text-decoration:none;
  padding:6px 12px;
  border-radius:8px;
  transition:background .2s,border-color .2s,box-shadow .2s,transform .15s;
  display:inline-flex;
  align-items:center;
  text-shadow:0 2px 10px rgba(0,0,0,.8);
  border:1px solid transparent;
}
.r-link:hover{
  background:rgba(255,255,255,.16);
  border-color:rgba(255,255,255,.4);
  color:#ffffff!important;
  transform:translateY(-2px);
  box-shadow:0 6px 20px rgba(0,229,255,.45),inset 0 1px 1px rgba(255,255,255,.6);
}
.r-link:hover .r-num{
  background:#00e5ff;
  color:#050810;
  box-shadow:0 0 10px #00e5ff;
}
.r-num{
  font-family:'JetBrains Mono',monospace;
  font-size:10px;
  color:#00e5ff;
  font-weight:700;
  margin-right:6px;
  padding:2px 6px;
  border-radius:4px;
  background:rgba(0,229,255,.18);
  border:1px solid rgba(0,229,255,.35);
  transition:all .15s;
}
.banner-links .r-link:nth-of-type(1) .r-num{color:#00ff88;background:rgba(0,255,136,.2);border-color:rgba(0,255,136,.45)}
.banner-links .r-link:nth-of-type(2) .r-num{color:#ffd000;background:rgba(255,208,0,.2);border-color:rgba(255,208,0,.45)}
.banner-links .r-link:nth-of-type(3) .r-num{color:#ff4444;background:rgba(255,68,68,.2);border-color:rgba(255,68,68,.45)}
.banner-links .r-link:nth-of-type(4) .r-num{color:#00a8ff;background:rgba(0,168,255,.2);border-color:rgba(0,168,255,.45)}
.r-dot{
  color:#ff3b8b;
  font-weight:900;
  font-size:14px;
  text-shadow:0 0 10px #ff3b8b;
}
.r-cta{
  background:linear-gradient(135deg,rgba(0,229,255,.35),rgba(124,77,255,.35));
  border:1px solid rgba(0,229,255,.6);
  color:#ffffff!important;
  padding:6px 14px;
  border-radius:8px;
  box-shadow:0 0 20px rgba(0,229,255,.4),inset 0 1px 1px rgba(255,255,255,.5);
}
.r-cta .r-num{
  background:rgba(255,42,133,.3);
  color:#ff77b6;
  border-color:rgba(255,42,133,.5);
}

/* ── Rocket Sprite & Thruster Flames ───────────────────────── */
.rocket-sprite{
  position:relative;
  width:240px;
  height:90px;
  flex-shrink:0;
  margin-left:-4px;
}
.rocket-svg{
  width:100%;
  height:100%;
  display:block;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.85));
}
.thruster-flame-wrap{
  position:absolute;
  left:18px;
  top:50%;
  transform:translateY(-50%);
  width:45px;
  height:40px;
  pointer-events:none;
}
.plasma-flame{
  position:absolute;
  left:0;
  width:38px;
  height:10px;
  border-radius:50% 0 0 50%;
  background:linear-gradient(90deg,#00e5ff 0%,#ff7700 40%,#ff0033 80%,transparent 100%);
  filter:blur(1px) drop-shadow(0 0 8px #ff5500);
  animation:flamePulse .12s infinite alternate;
  transform-origin:right center;
}
.flame-top{top:6px}
.flame-bot{bottom:6px;animation-delay:.06s}

@keyframes flamePulse{
  0%{transform:scaleX(0.85) scaleY(0.9);opacity:.85}
  50%{transform:scaleX(1.3) scaleY(1.15);opacity:1;filter:drop-shadow(0 0 14px #ff7700) drop-shadow(0 0 25px #00e5ff)}
  100%{transform:scaleX(0.9) scaleY(0.95);opacity:.9}
}

/* ── CHALLENGE SECTION ─────────────────────────────────────── */
.chal-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:32px;align-items:start;text-align:left}
.chal-vid{
  position:relative;border-radius:14px;overflow:hidden;
  border:1px solid rgba(0,229,255,.2);
  aspect-ratio:16/9;
  background:#030508;
  box-shadow:0 12px 35px rgba(0,0,0,.7);
}
.chal-video{width:100%;height:100%;object-fit:cover;display:block}
.chal-radar-sweep{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,229,255,.16) 0%,rgba(0,229,255,0) 60%);
  animation:radarScan 3.5s ease-in-out infinite alternate;
  pointer-events:none;
}
@keyframes radarScan{
  0%{transform:translateY(-80%);opacity:.2}
  100%{transform:translateY(80%);opacity:.7}
}
.chal-vid-caption{
  position:absolute;bottom:8px;left:10px;right:10px;
  display:flex;justify-content:space-between;align-items:center;
  font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:1px;
  color:rgba(255,255,255,.85);background:rgba(3,5,8,.8);
  backdrop-filter:blur(8px);padding:5px 10px;border-radius:6px;
  border:1px solid rgba(255,255,255,.1);pointer-events:none;
}
.chal-bench{display:flex;flex-direction:column;gap:8px}
.bench-item{
  padding:12px 16px;border-radius:10px;
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.04);
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  font-size:12px;
}
.bench-hl{
  background:rgba(0,229,255,.04);
  border-color:rgba(0,229,255,.12);
  margin-bottom:4px;
}
.bench-hl .pre-dot{background:#00e5ff}
.bench-n{font-weight:600;color:rgba(255,255,255,.75)}
.bench-d{font-size:11px;color:rgba(255,255,255,.35);margin-left:auto}

/* ── LAYMAN MODAL ──────────────────────────────────────────── */
.lm-overlay{
  position:fixed;inset:0;z-index:8000;
  display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .3s;pointer-events:none;
}
.lm-overlay.show{opacity:1;pointer-events:all}
.lm-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(8px)}
.lm-box{
  position:relative;z-index:1;
  width:min(900px,92vw);max-height:90vh;overflow-y:auto;
}
.lm-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.lm-close{
  width:36px;height:36px;border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);
  transition:background .2s;
}
.lm-close:hover{background:rgba(255,255,255,.1)}
.lm-close svg{width:16px;height:16px;stroke:rgba(255,255,255,.5)}
.lm-body{}
.lm-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.lm-canvas-col{}
.lm-hud{
  display:flex;justify-content:space-between;
  font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:1px;
  margin-bottom:10px;color:rgba(255,255,255,.4);
}
.lm-stage{
  border-radius:10px;overflow:hidden;
  border:1px solid rgba(255,255,255,.06);
  background:#0a0c10;
}
#lm-canvas{width:100%;height:auto;display:block}
.lm-btns{display:flex;gap:6px;margin-top:10px}
.lm-info-col h4{font-size:16px;font-weight:700;color:rgba(255,255,255,.85);margin-bottom:20px}
.lm-steps{display:flex;flex-direction:column;gap:16px}
.lm-step{display:flex;gap:14px;align-items:flex-start}
.lm-num{
  flex-shrink:0;width:28px;height:28px;border-radius:8px;
  background:rgba(0,229,255,.1);border:1px solid rgba(0,229,255,.2);
  display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:700;color:#00e5ff;
}
.lm-step strong{display:block;font-size:13px;color:rgba(255,255,255,.8);margin-bottom:2px}
.lm-step p{font-size:12px;color:rgba(255,255,255,.4);margin:0}
.lm-discovery{
  margin-top:20px;padding:16px;border-radius:10px;
  background:rgba(105,240,174,.06);
  border:1px solid rgba(105,240,174,.15);
  text-align:center;
}
.lm-discovery svg{width:28px;height:28px;stroke:#69f0ae;margin-bottom:6px}
.lm-discovery strong{display:block;margin-bottom:4px}
.lm-discovery p{font-size:12px;margin:0}

/* ── HACKATHON: HOW WE BUILT ───────────────────────────────── */
.arch-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:32px 28px;
  margin-top:36px;
  text-align:left;
}
.arch-grid .arch-item.arch-item-centered,
.arch-grid .arch-item:nth-child(4){
  grid-column: 2;
}
.arch-item{
  background:linear-gradient(165deg, rgba(14,22,36,0.95), rgba(7,11,18,0.98));
  border:1px solid rgba(0,229,255,.2);
  border-radius:18px;padding:28px 26px;
  display:flex;flex-direction:column;gap:14px;
  transform-style:preserve-3d;
  transition:border-color .3s,transform .25s ease-out,box-shadow .3s;
  box-shadow:0 16px 36px rgba(0,0,0,.65), inset 0 1px 0 rgba(255,255,255,.06);
}
.arch-item:hover{
  border-color:rgba(0,229,255,.55);
  transform:translateY(-6px) translateZ(12px);
  box-shadow:0 24px 50px rgba(0,0,0,.85),0 0 25px rgba(0,229,255,.3);
}
@media (max-width: 1024px) {
  .arch-grid{grid-template-columns:repeat(2, 1fr); gap:24px;}
  .arch-grid .arch-item.arch-item-centered,
  .arch-grid .arch-item:nth-child(4){grid-column: auto;}
}
@media (max-width: 680px) {
  .arch-grid{grid-template-columns:1fr; gap:18px;}
  .arch-grid .arch-item.arch-item-centered,
  .arch-grid .arch-item:nth-child(4){grid-column: auto;}
}
.arch-icon{
  width:42px;height:42px;border-radius:10px;
  background:rgba(0,229,255,.1);border:1px solid rgba(0,229,255,.25);
  display:flex;align-items:center;justify-content:center;
  color:#00e5ff;
}
.arch-icon svg{width:20px;height:20px;stroke:#00e5ff}
.title-sm{font-size:16px;font-weight:700;color:rgba(255,255,255,.9)}
.arch-tag{
  font-family:'JetBrains Mono',monospace;
  font-size:9px;letter-spacing:1.5px;font-weight:700;
  color:#00e5ff;margin-top:auto;padding-top:8px;
}

/* ── HACKATHON: RESOURCES USED ─────────────────────────────── */
.res-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
  margin-top:28px;text-align:left;
}
.res-card{
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.05);
  border-radius:14px;padding:20px;
  display:flex;flex-direction:column;gap:8px;
  transition:border-color .25s,transform .2s;
}
.res-card:hover{
  border-color:rgba(124,77,255,.4);
  transform:translateY(-4px);
  box-shadow:0 15px 35px rgba(0,0,0,.6);
}
.rc-head{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.85);font-size:13px}
.res-src{
  font-family:'JetBrains Mono',monospace;
  font-size:10px;letter-spacing:1px;color:#7c4dff;
  margin-top:auto;
}

/* ── HACKATHON: TEAM PROMETHEUS (2 MEMBERS) ────────────────── */
.team-grid-2{
  display:grid;grid-template-columns:1fr 1fr;gap:28px;
  margin-top:28px;text-align:left;max-width:960px;margin-left:auto;margin-right:auto;
}
.team-card{
  background:rgba(255,255,255,.025);
  border:1px solid rgba(0,229,255,.18);
  border-radius:20px;padding:32px;
  display:flex;flex-direction:column;gap:12px;
  transform-style:preserve-3d;
  transition:border-color .3s,transform .25s ease-out,box-shadow .3s;
}
.team-card:hover{
  border-color:rgba(0,229,255,.5);
  transform:translateY(-6px) translateZ(16px);
  box-shadow:0 25px 60px rgba(0,0,0,.8),0 10px 30px rgba(0,229,255,.25);
}
.team-avatar{
  width:52px;height:52px;border-radius:14px;
  background:linear-gradient(135deg,rgba(0,229,255,.15),rgba(124,77,255,.2));
  border:1px solid rgba(0,229,255,.3);
  display:flex;align-items:center;justify-content:center;
  color:#00e5ff;
}
.team-avatar svg{width:26px;height:26px;stroke:#00e5ff}
.team-name{
  font-family:'Syne',sans-serif;
  font-size:22px;
  font-weight:800;
  letter-spacing:-.025em;
  background:linear-gradient(180deg,#ffffff 30%,rgba(255,255,255,.82) 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.team-role{font-size:12px;font-weight:600;color:#00e5ff;letter-spacing:.5px}
.team-badge{
  font-family:'JetBrains Mono',monospace;
  font-size:9px;letter-spacing:1.5px;font-weight:700;
  color:rgba(255,255,255,.4);
  padding:4px 10px;border-radius:6px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
  width:fit-content;margin-top:auto;
}

/* ── HACKATHON: CONTACT & DOSSIER ──────────────────────────── */
.contact-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:16px;
  margin-top:28px;text-align:left;
}
.contact-item{
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.06);
  border-radius:16px;padding:22px 24px;
  display:flex;align-items:center;gap:16px;
  transition:border-color .25s,background .25s,transform .2s;
}
.contact-item:hover{
  border-color:rgba(0,229,255,.35);
  background:rgba(0,229,255,.04);
  transform:translateY(-3px);
}
.ci-icon{
  width:44px;height:44px;border-radius:12px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;color:#00e5ff;
}
.ci-icon svg{width:20px;height:20px;stroke:#00e5ff}
.contact-item strong{display:block;font-size:14px;color:rgba(255,255,255,.9);margin-bottom:2px}
.ci-arrow{margin-left:auto;width:18px;height:18px;stroke:rgba(255,255,255,.3);flex-shrink:0}
.contact-item:hover .ci-arrow{stroke:#00e5ff}

/* ── PARTICLES CANVAS (added by JS) ───────────────────────── */
#dust-canvas{
  position:fixed;inset:0;
  pointer-events:none;z-index:2;
}

/* ── RESPONSIVE ────────────────────────────────────────────── */
@media(max-width:992px){
  .nav-links{display:none}
  .nav{padding:0 20px}
  .act-inner{padding:0 24px}
  .kuiper-grid,.modes-grid,.chal-grid,.lm-grid,.arch-grid,.res-grid,.team-grid-2,.contact-grid{grid-template-columns:1fr}
  .act-right{justify-content:flex-start}
  .hud{
    bottom:12px;gap:12px;padding:8px 16px;
    font-size:9px;flex-wrap:wrap;justify-content:center;
  }
  .hud-bar{width:50px}
  .title-xl{font-size:clamp(32px,8vw,52px)}
  .banner-links{gap:8px;font-size:10px}
  .rocket-sprite{width:180px;height:70px}
}
@media(max-width:600px){
  .glass{padding:24px;border-radius:14px}
  .stat-row{gap:16px}
  .hud{display:none}
  .reveal-controls{flex-direction:column;align-items:stretch}
  .rc-btns{flex-wrap:wrap}
}

/* ── SMOOTH VIGNETTE OVERLAY ───────────────────────────────── */
body::after{
  content:'';position:fixed;inset:0;
  pointer-events:none;z-index:1;
  background:radial-gradient(ellipse at center,transparent 60%,rgba(3,5,8,.6) 100%);
}

/* ── MOBILE VIEWPORT & TOUCH OPTIMIZATION (DESKTOP PARITY PRESERVED) ── */
@media (max-width: 768px) {
  .rocket-hero-popup {
    width: 100%;
    overflow: hidden;
    margin: 16px 0 20px;
  }
  .rocket-craft-group {
    flex-direction: column;
    flex-wrap: wrap;
    white-space: normal;
    width: 100%;
    max-width: 100%;
  }
  .banner-tether-cables {
    display: none;
  }
  .rocket-sprite {
    width: 140px;
    height: 55px;
    margin: 0 auto 12px;
  }
  .banner-body {
    border-radius: 16px;
    border-right: 1.5px solid rgba(255, 255, 255, .38);
    padding: 10px 14px;
    width: 100%;
    box-sizing: border-box;
  }
  .banner-links {
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
    font-size: 11px;
  }
  .nav-chip {
    display: none;
  }
  .nav-brand {
    font-size: 12px;
  }
  .nav-cta {
    padding: 6px 10px;
    font-size: 11px;
  }
  .nav {
    padding: 0 14px;
  }
  .hero-sub {
    font-size: clamp(13px, 3.8vw, 16px);
    line-height: 1.5;
    max-width: 100%;
  }
  .hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
  }
  .hero-actions .btn {
    min-height: 44px;
    padding: 12px 20px;
  }
  #cur {
    display: none;
  }
  #cur-ring {
    display: none;
  }
  body {
    cursor: auto;
  }
}

@media (max-width: 480px) {
  .hero-line-1 {
    font-size: clamp(24px, 7vw, 36px);
    letter-spacing: -0.02em;
  }
  .hero-line-2 {
    font-size: clamp(26px, 8vw, 40px);
    letter-spacing: -0.02em;
  }
  .hero-meta {
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 12px;
    font-size: 8.5px;
    padding: 6px 14px;
    width: 100%;
  }
}

@media (hover: none) {
  #cur {
    display: none;
  }
  #cur-ring {
    display: none;
  }
  body {
    cursor: auto;
  }
}

@media (pointer: coarse) {
  #cur {
    display: none;
  }
  #cur-ring {
    display: none;
  }
  body {
    cursor: auto;
  }
}

/* ── CONSOLE USAGE GUIDE (AUDIENCE & WORKFLOWS) ───────────── */
.console-guide-wrap{
  margin-top:56px;
  text-align:left;
  width:100%;
}
.guide-head{
  margin-bottom:32px;
  text-align:center;
}
.guide-head .title-lg{
  font-size:clamp(22px, 3.2vw, 34px);
  color:#ffffff;
  font-weight:800;
  margin:10px 0 6px;
}
.guide-head .body-md{
  color:rgba(255,255,255,.9);
  font-size:15px;
}
.guide-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:28px;
}
.guide-card{
  background:#090d16;
  background:linear-gradient(165deg, rgba(14,20,32,0.98) 0%, rgba(7,11,18,0.99) 100%);
  border:1px solid rgba(255,255,255,.16);
  border-radius:20px;
  padding:32px 28px;
  box-shadow:0 24px 60px rgba(0,0,0,.9), 0 0 24px rgba(0,0,0,.7);
  display:flex;
  flex-direction:column;
  gap:20px;
  transition:border-color .3s, transform .25s, box-shadow .3s;
}
.guide-card-citizen{
  border-top:4px solid #00e5ff;
  border-left:1px solid rgba(0,229,255,.35);
}
.guide-card-scientist{
  border-top:4px solid #b388ff;
  border-left:1px solid rgba(179,136,255,.35);
}
.guide-card:hover{
  transform:translateY(-5px);
  box-shadow:0 30px 70px rgba(0,0,0,.95), 0 0 35px rgba(0,229,255,.2);
}
.guide-card-scientist:hover{
  box-shadow:0 30px 70px rgba(0,0,0,.95), 0 0 35px rgba(179,136,255,.2);
}
.guide-card-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.guide-mode-tag{
  font-family:'JetBrains Mono',monospace;
  font-size:12px;
  font-weight:700;
  letter-spacing:1.5px;
  display:flex;
  align-items:center;
  gap:8px;
}
.tag-citizen{
  color:#00e5ff;
}
.tag-scientist{
  color:#b388ff;
}
.guide-target-box{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  padding:16px 18px;
  color:#f8fafc;
  font-size:14px;
  line-height:1.6;
}
.guide-target-box strong{
  display:flex;
  align-items:center;
  gap:6px;
  margin-bottom:6px;
  font-size:11.5px;
  letter-spacing:1.5px;
  text-transform:uppercase;
  font-family:'JetBrains Mono',monospace;
  font-weight:700;
}
.target-citizen strong{
  color:#00e5ff;
}
.target-scientist strong{
  color:#c4b5fd;
}
.guide-target-box p{
  margin:0;
  color:#f1f5f9;
  font-size:13.5px;
  line-height:1.55;
  font-weight:500;
}
.guide-steps-list{
  display:flex;
  flex-direction:column;
  gap:18px;
  margin-top:4px;
}
.guide-step-row{
  display:flex;
  align-items:flex-start;
  gap:16px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.09);
  border-radius:12px;
  padding:16px 18px;
  transition:border-color .2s, background .2s;
}
.guide-step-row:hover{
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.2);
}
.guide-step-num{
  flex-shrink:0;
  width:36px;
  height:36px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:'JetBrains Mono',monospace;
  font-size:15px;
  font-weight:800;
  margin-top:2px;
}
.num-citizen{
  background:rgba(0,229,255,.2);
  color:#00ffff;
  border:2px solid #00e5ff;
  box-shadow:0 0 14px rgba(0,229,255,.35);
}
.num-scientist{
  background:rgba(179,136,255,.2);
  color:#e0b0ff;
  border:2px solid #b388ff;
  box-shadow:0 0 14px rgba(179,136,255,.35);
}
.guide-step-text{
  flex:1;
}
.guide-step-text strong{
  color:#ffffff;
  font-size:15.5px;
  font-weight:700;
  display:block;
  margin-bottom:5px;
  letter-spacing:0.3px;
}
.guide-step-text p{
  margin:0;
  font-size:13.5px;
  color:#e2e8f0;
  line-height:1.65;
  font-weight:400;
}

/* ── PROFESSIONAL CHALLENGE BREAKDOWN ─────────────────────── */
.chal-structured{
  margin-top:28px;
  display:flex;
  flex-direction:column;
  gap:24px;
  text-align:left;
}
.chal-points-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:32px 26px;
  margin-top:20px;
}
.chal-points-grid .chal-point-card.chal-point-centered,
.chal-points-grid .chal-point-card:nth-child(4){
  grid-column: 2;
}
@media (max-width: 1024px) {
  .chal-points-grid{grid-template-columns:repeat(2, 1fr); gap:22px;}
  .chal-points-grid .chal-point-card.chal-point-centered,
  .chal-points-grid .chal-point-card:nth-child(4){grid-column: auto;}
}
@media (max-width: 680px) {
  .chal-points-grid{grid-template-columns:1fr; gap:16px;}
  .chal-points-grid .chal-point-card.chal-point-centered,
  .chal-points-grid .chal-point-card:nth-child(4){grid-column: auto;}
}
.chal-point-card{
  background:linear-gradient(165deg, rgba(14,22,36,0.95), rgba(7,11,18,0.98));
  border:1px solid rgba(0,229,255,.2);
  border-radius:16px;
  padding:24px 26px;
  display:flex;
  flex-direction:column;
  gap:12px;
  box-shadow:0 14px 32px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.06);
  transition:border-color .28s, transform .22s ease-out, box-shadow .28s;
}
.chal-point-card:hover{
  border-color:rgba(0,229,255,.55);
  transform:translateY(-4px);
  box-shadow:0 20px 42px rgba(0,0,0,.8), 0 0 25px rgba(0,229,255,.25);
}
.chal-point-header{
  display:flex;
  align-items:center;
  gap:10px;
}
.chal-point-icon{
  width:32px;
  height:32px;
  border-radius:8px;
  background:rgba(0,229,255,.1);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#00e5ff;
  flex-shrink:0;
}
.chal-point-header strong{
  font-size:14px;
  color:#fff;
}
.chal-point-body{
  font-size:13px;
  color:rgba(255,255,255,.7);
  line-height:1.6;
}
.chal-equation-pill{
  display:inline-block;
  background:rgba(0,229,255,.1);
  border:1px solid rgba(0,229,255,.25);
  color:#00e5ff;
  font-family:'JetBrains Mono',monospace;
  font-size:11px;
  padding:2px 8px;
  border-radius:4px;
  margin:4px 0;
}

/* ── DETAILED RESOURCES (IMAGES + TECHNICAL) ───────────────── */
/* ── SECTION RESOURCES CONTAINER: EXPANDED VIEWPORT FIT ── */
.act-resources {
  min-height: auto !important;
  padding: 60px 0 100px !important;
}
.act-resources .card.glass-wide {
  max-width: 1320px !important;
  margin: 0 auto;
  padding: 40px 44px !important;
}

/* ── RESOURCES GRID: PERFECT 3x2 / 2x3 / 1x6 DUAL-ROW DESKTOP MATRIX ── */
.res-grid-tech {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-top: 32px;
  text-align: left;
  align-items: stretch;
}
@media (max-width: 1100px) {
  .res-grid-tech {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
}
@media (max-width: 680px) {
  .res-grid-tech {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .act-resources .card.glass-wide {
    padding: 24px 18px !important;
  }
}
.res-tech-card {
  background: linear-gradient(165deg, rgba(14,22,36,0.94), rgba(7,11,18,0.98));
  border: 1px solid rgba(0,229,255,.24);
  border-radius: 16px;
  padding: 24px 22px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 0 14px 34px rgba(0,0,0,.7), inset 0 1px 0 rgba(255,255,255,.08);
  transition: border-color .28s, transform .22s ease-out, box-shadow .28s;
  min-height: 270px;
}
.res-tech-card:hover {
  border-color: rgba(0,229,255,.65);
  transform: translateY(-5px);
  box-shadow: 0 22px 48px rgba(0,0,0,.85), 0 0 28px rgba(0,229,255,.28);
}
.res-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.res-badge{
  font-family:'JetBrains Mono',monospace;
  font-size:9.5px;
  font-weight:700;
  letter-spacing:1px;
  padding:4px 9px;
  border-radius:6px;
  background:rgba(0,229,255,.1);
  color:#00e5ff;
  border:1px solid rgba(0,229,255,.25);
}
.res-badge-purple{
  background:rgba(179,136,255,.1);
  color:#b388ff;
  border-color:rgba(179,136,255,.25);
}
.res-badge-amber{
  background:rgba(255,179,0,.1);
  color:#ffb300;
  border-color:rgba(255,179,0,.25);
}
.res-specs-list{
  list-style:none;
  padding:0;
  margin:4px 0 0;
  display:flex;
  flex-direction:column;
  gap:6px;
  font-size:12px;
  color:rgba(255,255,255,.7);
}
.res-specs-list li{
  display:flex;
  align-items:flex-start;
  gap:8px;
  line-height:1.45;
}
.res-specs-list li i{
  color:#00e5ff;
  width:14px;
  height:14px;
  flex-shrink:0;
  margin-top:2px;
}

/* ── RED GLOW HIGHLIGHT FOR CHALLENGE ─────────────────────── */
.challenge-red-glow {
  color: #ff2a5f !important;
  text-shadow: 
    0 0 10px rgba(255, 42, 95, 0.95),
    0 0 25px rgba(255, 42, 95, 0.85),
    0 0 45px rgba(255, 42, 95, 0.65),
    0 0 75px rgba(255, 42, 95, 0.45);
  font-weight: 900;
  letter-spacing: 0.5px;
  display: inline-block;
  animation: redPulseGlow 2.8s ease-in-out infinite alternate;
}

@keyframes redPulseGlow {
  0% {
    color: #ff2a5f;
    text-shadow: 
      0 0 10px rgba(255, 42, 95, 0.95),
      0 0 25px rgba(255, 42, 95, 0.85),
      0 0 45px rgba(255, 42, 95, 0.65);
  }
  100% {
    color: #ff5480;
    text-shadow: 
      0 0 15px rgba(255, 84, 128, 1),
      0 0 35px rgba(255, 42, 95, 0.95),
      0 0 65px rgba(255, 42, 95, 0.8),
      0 0 95px rgba(255, 42, 95, 0.5);
  }
}

.chal-pill-red {
  border-color: rgba(255, 42, 95, 0.45) !important;
  color: #ff5480 !important;
  background: rgba(255, 42, 95, 0.1) !important;
}
.chal-pill-red i {
  color: #ff2a5f !important;
}

.guide-badge-pill {
  font-family: 'JetBrains Mono', monospace;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  padding: 3px 8px;
  border-radius: 4px;
}
.pill-cyan {
  background: rgba(0, 229, 255, 0.12);
  color: #00e5ff;
  border: 1px solid rgba(0, 229, 255, 0.3);
}
.pill-purple {
  background: rgba(179, 136, 255, 0.12);
  color: #b388ff;
  border: 1px solid rgba(179, 136, 255, 0.3);
}

@media (max-width: 768px) {
  .guide-grid{grid-template-columns:1fr}
}



/* ── GUARANTEED PERMANENT VISIBILITY FOR ALL 6 RESOURCE CARDS ── */
.res-tech-card {
  opacity: 1 !important;
  visibility: visible !important;
}
