/* ════════════════════════════════════════════════════════════════════
   shared.css — THE HALO COMMUNITY SOCIAL
   Shared styles for all inner pages.
   ════════════════════════════════════════════════════════════════════ */


/* ── FONTS ── */

@font-face {
  font-family: 'HandelGothic';
  src: url('../HandelGothic.ttf') format('truetype');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
@font-face {
  font-family: 'HandelGothicCDN';
  src: url('https://db.onlinewebfonts.com/t/2ec22e38fd9a5612a8880a36b885c4f8.woff2') format('woff2'),
       url('https://db.onlinewebfonts.com/t/2ec22e38fd9a5612a8880a36b885c4f8.woff') format('woff'),
       url('../HandelGothic.ttf') format('truetype');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
@font-face {
  font-family: 'HighwayGothic';
  src: url('https://db.onlinewebfonts.com/t/734e5a726f37f261ff8a0d96260612a0.woff2') format('woff2'),
       url('https://db.onlinewebfonts.com/t/734e5a726f37f261ff8a0d96260612a0.woff') format('woff'),
       url('../HighwayGothic.ttf') format('truetype');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
@font-face {
  font-family: 'HighwayGothicExpanded';
  src: url('../HighwayGothicExpanded.ttf') format('truetype');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
@font-face {
  font-family:'HighwayGothic';
  src:url('../HWYGOTH.TTF') format('truetype');
  font-weight:400; font-display:swap;
}
@font-face {
  font-family:'HandelGothicBT';
  src:url('../HandelGo.ttf') format('truetype');
  font-weight:400; font-display:swap;
}
@font-face { font-family:'Spht'; src:url('../Spht.ttf') format('truetype'); font-weight:400; font-display:swap; }


/* ── VARIABLES ── */

:root {
  --shield:    #6892C2;
  --health:    #40C040;
  --yellow:    #FFE840;
  --ammo:      #FF8C00;
  --warn:      #FF3020;
  --navy:      #080E18;
  --navy-mid:  #0C1624;
  --border-1:  #1E2E4A;
  --border-hi: #2E4A7A;
  --txt:       #D8E8F4;
  --txt-dim:   #4A5888;
  --black:     #000000;
  --bg-deep:   #050D1A;

  --glow-shield: 0 0 6px rgba(104,146,194,0.5),  0 0 18px rgba(104,146,194,0.2);
  --glow-yellow: 0 0 6px rgba(255,232,64,0.5),   0 0 18px rgba(255,232,64,0.18);
  --glow-health: 0 0 6px rgba(64,192,64,0.45),   0 0 14px rgba(64,192,64,0.18);
  --glow-ammo:   0 0 6px rgba(255,140,0,0.5),    0 0 18px rgba(255,140,0,0.2);
  --shadow:      2px 2px 0 #000, 4px 4px 12px rgba(0,0,0,.9);

  --sq: scaleY(.85) scaleX(1.08);
  --MONO: 'Share Tech Mono',monospace;
  --HW: 'interstate','HighwayGothic','Highway Gothic','Barlow',Arial,sans-serif;
  --HG: 'ITC Handel Gothic Arabic W23Hv','HandelGothicBT','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
}


/* ── GLOBAL RESET ── */

*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; scroll-padding-top:72px; overflow-x:hidden; }
section[id] { scroll-margin-top:72px; }

body {
  background:var(--navy);
  color:var(--txt);
  font-family:'interstate','HighwayGothic','Highway Gothic','Barlow',Arial,sans-serif;
  font-weight: 600;
  overflow-x:hidden;
}


/* ── BACKGROUND LAYERS ── */

.space-bg {
  position:fixed; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(ellipse 140% 80% at 50% 0%, #0A1E3A 0%, transparent 50%),
    radial-gradient(ellipse 80% 60% at 85% 25%, #081428 0%, transparent 55%),
    linear-gradient(180deg, #040A14 0%, #080E18 30%, #060C16 70%, #040A14 100%);
}
.stars {
  position:fixed; inset:0; z-index:0; pointer-events:none;
  background-image:
    radial-gradient(.8px .8px at  6% 14%, rgba(255,255,255,.6) 0%,transparent 100%),
    radial-gradient(.8px .8px at 19% 71%, rgba(255,255,255,.5) 0%,transparent 100%),
    radial-gradient(1px  1px  at 31%  9%, rgba(255,255,255,.7) 0%,transparent 100%),
    radial-gradient(.8px .8px at 44% 55%, rgba(255,255,255,.4) 0%,transparent 100%),
    radial-gradient(.8px .8px at 58% 27%, rgba(255,255,255,.6) 0%,transparent 100%),
    radial-gradient(1px  1px  at 67% 82%, rgba(255,255,255,.5) 0%,transparent 100%),
    radial-gradient(.8px .8px at 79% 43%, rgba(255,255,255,.4) 0%,transparent 100%),
    radial-gradient(.8px .8px at 88%  6%, rgba(255,255,255,.7) 0%,transparent 100%),
    radial-gradient(.8px .8px at 93% 61%, rgba(255,255,255,.5) 0%,transparent 100%),
    radial-gradient(.8px .8px at 14% 90%, rgba(255,255,255,.4) 0%,transparent 100%),
    radial-gradient(.8px .8px at 37% 35%, rgba(255,255,255,.6) 0%,transparent 100%),
    radial-gradient(.8px .8px at 72% 18%, rgba(255,255,255,.5) 0%,transparent 100%);
}
.forerunner-texture {
  position:fixed; inset:0; z-index:1; pointer-events:none;
}
.forerunner-texture::before {
  content:''; position:absolute; inset:0;
  background-image:url('../tex_panels.png');
  background-repeat:repeat; background-size:256px 512px;
  opacity:.18; mix-blend-mode:screen;
}
.forerunner-texture::after {
  content:''; position:absolute; inset:0;
  background-image:url('../tex_wall.png');
  background-repeat:repeat; background-size:512px 256px;
  opacity:.10; mix-blend-mode:screen;
}
.grain {
  position:fixed; inset:0; z-index:1; pointer-events:none; opacity:.04;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:140px;
}


/* ── NAVIGATION ── */

nav:not([aria-label]) {
  position:fixed; top:0; left:0; right:0; z-index:100;
  background:var(--black);
  border-bottom:1px solid var(--border-1);
}
.nav-inner { display:flex; align-items:center; justify-content:space-between; height:58px; padding:0 44px; }
.nav-logo { display:block; line-height:0; text-decoration:none; }
.nav-logo-img { height:38px; width:auto; display:block; opacity:.95; }
.nav-brand { display:flex; align-items:center; gap:10px; }
.nav-powered-by { display:flex; align-items:center; gap:5px; border-left:1px solid rgba(104,146,194,.18); padding-left:10px; }
.nav-powered-lbl { font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.14em; color:var(--txt-dim); text-transform:uppercase; white-space:nowrap; }
.nav-scion-logo { height:26px; width:auto; opacity:.7; }
.nav-links { display:flex; gap:32px; list-style:none; }
.nav-links a {
  font-family:'interstate','HighwayGothic','Highway Gothic','Barlow',Arial,sans-serif; font-size:9px; font-weight:600;
  letter-spacing:.22em; text-transform:uppercase; color:var(--txt-dim);
  text-decoration:none; transition:color .15s;
}
.nav-links a:hover { color:var(--txt); }
.nav-links a::after { content:''; display:block; height:1px; background:var(--shield); transform:scaleX(0); transition:transform .15s; }
.nav-links a:hover::after { transform:scaleX(1); }
.nav-hud { display:flex; align-items:center; gap:16px; }
.nav-hud-status { display:flex; align-items:center; gap:6px; }
.nav-dot { width:4px; height:4px; border-radius:50%; background:var(--health); box-shadow:var(--glow-health); animation:navpulse 2.4s ease-in-out infinite; }
.nav-mono { font-family:'Share Tech Mono',monospace; font-size:10px; color:var(--txt); letter-spacing:.1em; line-height:1.7; text-align:right; opacity:.8; }
.nav-hamburger {
  display:none; flex-direction:column; gap:5px; cursor:pointer;
  padding:4px; background:none; border:none;
}
.nav-hamburger span {
  display:block; width:24px; height:1.5px; background:var(--txt-dim);
  transition:all .2s;
}
.nav-hamburger.open span:nth-child(1) { transform:rotate(45deg) translate(4px,4px); }
.nav-hamburger.open span:nth-child(2) { opacity:0; }
.nav-hamburger.open span:nth-child(3) { transform:rotate(-45deg) translate(4px,-4px); }
.nav-drawer {
  border-radius:0 0 8px 8px;
  position:fixed; top:58px; left:0; right:0; z-index:99;
  background:rgba(2,6,14,.98);
  border-bottom:1px solid var(--border-1);
  padding:0;
  max-height:0; overflow:hidden;
  transition:max-height .3s ease, padding .3s ease;
}
.nav-drawer.open { max-height:400px; padding:16px 0; }
.nav-drawer ul { list-style:none; display:flex; flex-direction:column; }
.nav-drawer a {
  display:block; padding:12px 28px;
  font-family:'interstate','HighwayGothic','Highway Gothic','Barlow',Arial,sans-serif; font-size:13px;
  letter-spacing:.2em; text-transform:uppercase;
  color:var(--txt-dim); text-decoration:none;
  border-bottom:1px solid rgba(26,58,90,.2);
  transition:color .15s, background .15s;
}
.nav-drawer a:hover { color:var(--shield); background:rgba(104,146,194,.04); }
@keyframes navpulse { 0%,100%{opacity:1} 50%{opacity:.3} }
.nav-hud-status span { font-family:'Share Tech Mono',monospace; font-size:8.5px; color:var(--health); letter-spacing:.12em; opacity:.75; display:inline-block; min-width:180px; white-space:nowrap; overflow:hidden; }


/* ── FOOTER ── */

footer {
  position:relative; z-index:2;
  border-top:1px solid var(--border-1);
  background:var(--black);
  padding:0;
}
.ft-bar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  padding:40px 44px;
  border-bottom:1px solid rgba(26,58,90,.3);
}
.ft-logo { display:block; line-height:0; }
.ft-logo-img { height:48px; width:auto; display:block; opacity:.9; }
.ft-brand { display:flex; flex-direction:row; align-items:center; gap:16px; }
.ft-powered-by { display:flex; align-items:center; gap:5px; }
.ft-powered-lbl { font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.14em; color:var(--txt-dim); text-transform:uppercase; white-space:nowrap; }
.ft-scion-logo { height:26px; width:auto; opacity:.65; }
.ft-nav {
  display:flex; gap:24px; list-style:none; flex-shrink:0;
}
.ft-nav a {
  font-family:'interstate','HighwayGothic','Highway Gothic','Barlow',Arial,sans-serif; font-size:10px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--txt-dim); text-decoration:none; transition:color .15s;
}
.ft-nav a:hover { color:var(--txt); }
.ft-mark {
  flex-shrink:0;
  opacity:.7; cursor:pointer;
  transition:opacity .2s;
}
.ft-mark:hover { opacity:1; }
.ft-soc {
  display:flex; gap:16px; align-items:center; flex-shrink:0;
}
.ft-soc a {
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:.12em;
  color:var(--txt-dim); text-decoration:none; transition:color .15s; white-space:nowrap;
}
.ft-soc a:hover { color:var(--txt); }
.fact-icon { width:14px; height:14px; flex-shrink:0; display:inline-flex; align-items:center; vertical-align:middle; color:var(--shield); filter:drop-shadow(0 0 4px rgba(104,146,194,.35)); }
.fact-icon svg { width:100%; height:100%; display:block; stroke:currentColor; fill:none; stroke-width:1.8; stroke-linecap:square; stroke-linejoin:miter; }
.fact-icon.fill svg { fill:currentColor; stroke:none; }
.ft-scan {
  font-family:'Share Tech Mono',monospace; font-size:7.5px;
  color:var(--txt-dim); opacity:.4; line-height:1.7; text-align:right;
  flex-shrink:0; display:block;
}
.ft-bot {
  display:flex; justify-content:space-between; align-items:center;
  padding:10px 44px;
}
.ft-copy { font-family:'interstate','HighwayGothic','Highway Gothic','Barlow',Arial,sans-serif; font-weight:600; font-size:11px; color:rgba(180,200,225,.55); letter-spacing:.06em; line-height:1.6; text-transform:uppercase; }
.ft-end { font-family:'Share Tech Mono',monospace; font-size:10px; color:rgba(180,200,225,.5); letter-spacing:.14em; }
#iwhbyd-trigger { cursor:default; user-select:none; }


/* ── PAGE HERO ── */

.page-hero {
  padding:80px 0 48px;
  border-bottom:1px solid var(--border-1);
  position:relative; z-index:2;
}
.page-hero-bg {
  position:absolute; inset:0; z-index:0;
  background:radial-gradient(ellipse 80% 100% at 75% 50%, rgba(0,100,160,.12) 0%, transparent 70%);
}
.page-eyebrow {
  font-family:'Share Tech Mono',monospace; font-size:9px;
  letter-spacing:.35em; color:var(--txt-dim);
  margin-bottom:20px; opacity:.8; line-height:1;
}
.page-title {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif; font-weight: 500;
  font-size:clamp(38px,7vw,88px);
  line-height:.88; color:var(--txt);
  text-transform:uppercase; letter-spacing:.03em;
  transform:scaleY(.85) scaleX(1.08); transform-origin:top left;
  display:block;
  text-shadow:2px 2px 0 #000, 4px 4px 14px rgba(0,0,0,.95), 0 0 50px rgba(104,146,194,.2);
  margin-bottom:12px;
}
.page-title span { color:var(--shield); }
.page-breadcrumbs{display:flex;flex-wrap:wrap;gap:10px 14px;margin:14px 0 0;padding:0;list-style:none;}
.page-breadcrumbs a{font-family:'Share Tech Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--shield);opacity:.9;text-decoration:none;display:inline-block;border-bottom:1px solid transparent;transition:all .18s ease;}
.page-breadcrumbs a::before{content:'[ ';} .page-breadcrumbs a::after{content:' ]';}
.page-breadcrumbs a:hover{color:#A8C8E8;opacity:1;border-bottom-color:rgba(104,146,194,.5);}
.page-breadcrumbs a:focus-visible{outline:1px solid var(--shield);outline-offset:2px;}
@media (max-width:640px){.page-breadcrumbs{gap:8px 10px}.page-breadcrumbs a{font-size:10px;letter-spacing:.14em}}
.page-sub { display:block; width:fit-content; max-width:100%;
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif; font-weight:500;
  font-size:clamp(11px,1.6vw,16px); color:var(--yellow);
  letter-spacing:.28em; text-transform:uppercase;
  transform-origin:left center;
  text-shadow:var(--glow-yellow); margin-bottom:32px;
  transform:scaleY(.85) scaleX(1.08); line-height:1;
}
.page-intro {
  font-family:'interstate','HighwayGothic','Highway Gothic','Barlow',Arial,sans-serif; font-weight: 600; font-size:17px;
  line-height:1.8; letter-spacing:.06em; text-transform:uppercase;
  color:var(--txt); opacity:.82; margin-bottom:24px;
}
.page-intro em { color:var(--yellow); font-style:normal; font-weight:600; }


/* ── HR UTILITIES ── */

hr.r-shield { border:none; height:1px; background:linear-gradient(90deg,transparent,var(--shield) 10%,var(--shield) 90%,transparent); box-shadow:var(--glow-shield); }
.page-hero .r-shield { margin-bottom:20px; }
hr.r-yellow { border:none; height:1px; background:linear-gradient(90deg,transparent,var(--yellow) 10%,var(--yellow) 90%,transparent); box-shadow:var(--glow-yellow); }
hr.r-health { border:none; height:1px; background:linear-gradient(90deg,transparent,var(--health) 10%,var(--health) 90%,transparent); box-shadow:var(--glow-health); }
hr.r-dim    { border:none; height:1px; background:linear-gradient(90deg,transparent,var(--border-1) 20%,var(--border-1) 80%,transparent); opacity:.4; }


/* ── BUTTONS ── */

.btn {
  display:inline-block;
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-weight:600; font-size:12px;
  letter-spacing:.22em; text-transform:uppercase;
  text-decoration:none; cursor:pointer;
  border-radius:5px; padding:12px 32px;
  transition:all .15s;
}
.btn:hover { opacity:.85; }
.btn-s {
  color:var(--navy); background:var(--shield); border:3px solid rgba(104,146,194,.35);
  border-radius:4px; padding:13px 36px; box-shadow:var(--glow-shield);
  animation:btnpulse 3.5s ease-in-out infinite;
}
@keyframes btnpulse{0%,100%{box-shadow:var(--glow-shield)}50%{box-shadow:0 0 12px rgba(104,146,194,.8),0 0 36px rgba(104,146,194,.4)}}
.btn-s:hover { background:transparent; color:var(--shield); }
.btn-o { color:var(--shield); background:transparent; border:1.5px solid var(--shield); border-radius:4px; padding:13px 34px; }
.btn-o:hover { background:rgba(104,146,194,.08); }
.btn-a { color:var(--navy); background:var(--ammo); border:2px solid var(--ammo); border-radius:4px; padding:13px 36px; box-shadow:var(--glow-ammo); }
.btn-a:hover { background:transparent; color:var(--ammo); }
.btn-row { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }


/* ── TYPOGRAPHY ── */

.t-handel {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif; font-weight: 500;
  text-transform:uppercase;
  transform-origin:left center; letter-spacing:.06em;
  transform:scaleY(.85) scaleX(1.08); display:inline-block;
}
.mono { font-family:'Share Tech Mono',monospace; }
em.y { color:var(--yellow); font-style:normal; }
em.s { color:var(--shield); font-style:normal; }
em.g { color:var(--yellow); font-style:normal; }


/* ── SECTION HEADER ── */

.sec-hdr { display:flex; align-items:center; width:100%; gap:0; margin-bottom:36px; min-height:32px; }
.sec-hdr hr { flex:1; }
.sec-hdr .r-shield { flex:1; margin-left:12px; }
.faq-section-icon { height:28px; width:auto; display:block; margin:0 8px; }
.sec-title {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-weight:500; text-transform:uppercase; letter-spacing:.1em;
  font-size:clamp(15px,2vw,22px); color:var(--txt);
  transform:scaleY(.85) scaleX(1.08); display:inline-block; line-height:1;
  transform-origin:left center; vertical-align:middle;
  text-shadow:1px 1px 0 #000; white-space:nowrap;
}
.sec-num {
  font-family:'Share Tech Mono',monospace; font-size:10px;
  color:var(--txt-dim); opacity:.45; letter-spacing:.1em;
}
.sec-num-tag {
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:.2em;
  color:rgba(104,146,194,.35); margin-right:16px; flex-shrink:0;
  vertical-align:middle; line-height:1;
}
.sec-slash {
  font-family:'Share Tech Mono',monospace; font-size:12px;
  color:rgba(104,146,194,.22); margin:0 14px; flex-shrink:0;
  vertical-align:middle; line-height:1;
}


/* ── LAYOUT UTILITIES ── */

.wrap {
  max-width:1200px; margin:0 auto; padding:0 52px;
  position:relative; z-index:2;
}
section { padding:76px 0; position:relative; z-index:2; }
section + section { padding-top:0; }
.col-2 { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
.col-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.g2 { display:grid; grid-template-columns:1fr 1fr; gap:14px; align-items:start; }
.g3 { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }


/* ── CE BOX ── */

.ce-box {
  position:relative;
  border:3px solid rgba(104,146,194,.35);
  border-radius:6px;
  background:linear-gradient(160deg, rgba(6,14,40,0.72) 0%, rgba(4,10,28,0.58) 100%);
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  padding:28px 32px;
  box-shadow:inset 0 0 40px rgba(104,146,194,.05), 0 4px 28px rgba(0,0,0,.5);
}
.ce-box::before, .ce-box::after { display:none; }
.ce-box.v-shield { border-color:rgba(104,146,194,.5); box-shadow:inset 0 0 40px rgba(104,146,194,.08), 0 4px 28px rgba(0,0,0,.5); }
.ce-box.v-yellow { border-color:rgba(255,232,64,.4);  box-shadow:inset 0 0 40px rgba(255,232,64,.05),  0 4px 28px rgba(0,0,0,.5); }
.ce-box.v-health { border-color:rgba(104,146,194,.35); }
.ce-box.v-ammo   { border-color:rgba(104,146,194,.45); box-shadow:inset 0 0 40px rgba(255,140,0,.05),   0 4px 28px rgba(0,0,0,.5); }
.ce-box.v-warn   { border-color:rgba(255,48,32,.75);  box-shadow:inset 0 0 40px rgba(255,48,32,.09),   0 4px 28px rgba(0,0,0,.5); }
.lbl {
  font-family:'Share Tech Mono',monospace; font-size:8.5px;
  letter-spacing:.26em; color:var(--txt-dim); text-transform:uppercase; opacity:.7; margin-bottom:8px;
}
.lbl.s { color:var(--shield); }
.lbl.h { color:var(--health); }
.lbl.y { color:var(--yellow); }
.lbl.a { color:var(--yellow); }


/* ── GHOST OVERLAY TEXT ── */

.ghost-wrap { position:relative; overflow:visible; padding-top:10px; min-height:60px; }
.ghost-num {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-weight:400; line-height:1;
  transform:scaleY(.85) scaleX(1.08); transform-origin:left center; display:inline-block;
  position:absolute; top:-8px; left:-8px;
  pointer-events:none; z-index:0;
  letter-spacing:.02em; text-transform:uppercase; user-select:none;
  color:rgba(104,146,194,.07); font-size:clamp(64px,7vw,100px);
}
.ghost-label {
  font-family:'Share Tech Mono',monospace; font-size:8px; letter-spacing:.28em;
  color:rgba(104,146,194,.4); text-transform:uppercase;
  margin-bottom:4px; position:relative; z-index:1; display:block;
}
.ghost-val {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:clamp(14px,1.8vw,20px); font-weight:400;
  color:var(--txt); letter-spacing:.06em; text-transform:uppercase;
  transform:scaleY(.85) scaleX(1.08); display:inline-block;
  transform-origin:left center; position:relative; z-index:1;
}


/* ── KEYFRAMES ── */

@keyframes sweep { 0%{top:-2px;opacity:0} 5%{opacity:1} 95%{opacity:.4} 100%{top:100vh;opacity:0} }
@keyframes hint-pulse { 0%,100%{opacity:.4} 50%{opacity:.8} }
@keyframes hint-fade { 0%,100%{opacity:.15} 50%{opacity:.4} }
@keyframes ind-pulse { 0%,100%{opacity:.35} 50%{opacity:.7} }


/* ── EASTER EGGS / OVERLAYS ── */

/* Konami — Flood Outbreak */
#flood-overlay {
  display:none;
  position:fixed; inset:0; z-index:9999;
  background:#000;
  flex-direction:column;
  align-items:center; justify-content:center;
  overflow:hidden; cursor:none;
}
#flood-overlay.active { display:flex; }
#flood-overlay::before {
  content:''; position:absolute; inset:0;
  background:
    radial-gradient(ellipse 80% 80% at 50% 50%, transparent 30%, rgba(0,80,0,.8) 100%),
    radial-gradient(ellipse 120% 120% at 50% 0%, rgba(0,40,0,.6) 0%, transparent 60%);
  animation:flood-vignette 2.4s ease-in-out infinite; z-index:0;
}
@keyframes flood-vignette { 0%,100%{opacity:.7} 50%{opacity:1} }
#flood-overlay::after {
  content:''; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.2) 2px,rgba(0,0,0,.2) 3px);
}
.flood-bg-text {
  position:absolute; inset:0; z-index:1;
  overflow:hidden; pointer-events:none;
  display:flex; flex-wrap:wrap; align-content:flex-start;
  opacity:.08; padding:8px;
}
.flood-bg-char {
  font-family:'Share Tech Mono',monospace; font-size:11px; line-height:1.4;
  color:#00ff00; animation:char-rain 1s linear infinite;
}
@keyframes char-rain {
  0%  {opacity:0;transform:translateY(-4px)} 10%{opacity:1} 90%{opacity:.5} 100%{opacity:0;transform:translateY(4px)}
}
.flood-main { position:relative; z-index:10; text-align:center; padding:40px; }
.flood-title {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif; font-weight:400;
  font-size:clamp(48px,8vw,110px); line-height:.88; letter-spacing:.04em; text-transform:uppercase;
  color:#00cc00;
  transform:scaleY(.85) scaleX(1.08); transform-origin:center center; display:inline-block;
  text-shadow:0 0 20px rgba(0,204,0,.8), 0 0 60px rgba(0,204,0,.4), 2px 2px 0 #000;
  animation:flood-title-glitch 3.1s ease-in-out infinite; margin-bottom:16px;
}
@keyframes flood-title-glitch {
  0%,100%{transform:scaleY(.85) scaleX(1.08) translate(0,0);filter:none;}
  4%{transform:scaleY(.85) scaleX(1.08) translate(-5px,0);filter:hue-rotate(40deg) brightness(1.5);}
  4.1%{transform:scaleY(.85) scaleX(1.08) translate(4px,0);filter:hue-rotate(-30deg);}
  4.2%{transform:scaleY(.85) scaleX(1.08) translate(0,0);filter:none;}
  51%{transform:scaleY(.85) scaleX(1.08) translate(0,0);opacity:1;}
  51.1%{opacity:.1} 51.2%{opacity:1} 51.3%{opacity:.3} 51.4%{opacity:1}
}
.flood-sub {
  font-family:'Share Tech Mono',monospace; font-size:10px; letter-spacing:.3em; text-transform:uppercase;
  color:rgba(0,200,0,.6); margin-bottom:32px; display:block;
}
.flood-terminal {
  width:100%; max-width:560px; margin:0 auto 32px;
  border:1px solid rgba(0,180,0,.3); border-radius:4px;
  background:rgba(0,10,0,.8); padding:20px 24px; text-align:left; position:relative;
  box-shadow:inset 0 0 30px rgba(0,100,0,.1), 0 0 40px rgba(0,150,0,.08);
}
.flood-terminal::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg,#00cc00,rgba(0,204,0,.1)); border-radius:4px 4px 0 0;
}
.flood-terminal-hdr {
  font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.22em;
  color:rgba(0,180,0,.5); text-transform:uppercase; margin-bottom:14px;
  padding-bottom:8px; border-bottom:1px solid rgba(0,180,0,.15); display:flex; justify-content:space-between;
}
.flood-terminal-body {
  font-family:'Share Tech Mono',monospace; font-size:8px; letter-spacing:.14em;
  color:rgba(0,220,80,.75); text-transform:uppercase; line-height:2; min-height:100px;
}
.flood-cursor {
  display:inline-block; width:7px; height:11px; background:#00cc00; vertical-align:middle;
  animation:flood-cur .7s step-end infinite;
}
@keyframes flood-cur { 0%,100%{opacity:1} 50%{opacity:0} }
.flood-close-hint {
  font-family:'Share Tech Mono',monospace; font-size:8px; letter-spacing:.22em;
  color:rgba(0,150,0,.4); text-transform:uppercase; margin-top:8px;
  animation:hint-pulse 2s ease-in-out infinite;
}
.flood-sweep {
  position:absolute; left:0; right:0; height:2px; z-index:5; pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(0,255,0,.5) 40%,rgba(0,255,0,.7) 50%,rgba(0,255,0,.5) 60%,transparent);
  animation:flood-sweep 5s linear infinite;
}
@keyframes flood-sweep { 0%{top:-2px;opacity:0} 5%{opacity:1} 95%{opacity:.5} 100%{top:100vh;opacity:0} }

/* IWHBYD Skull */
#iwhbyd-skull {
  position:relative; z-index:10; text-align:center;
  animation:skull-entrance .4s cubic-bezier(.175,.885,.32,1.275) both;
}
@keyframes skull-entrance {
  from{transform:scale(0) rotate(-15deg);opacity:0} to{transform:scale(1) rotate(0deg);opacity:1}
}
.skull-svg {
  width:clamp(120px,20vw,220px); height:clamp(120px,20vw,220px);
  filter:drop-shadow(0 0 20px rgba(255,255,255,.6)) drop-shadow(0 0 60px rgba(200,100,255,.5));
  animation:skull-float 3s ease-in-out infinite, skull-color 4.2s linear infinite;
}
@keyframes skull-float { 0%,100%{transform:translateY(0) rotate(-2deg)} 50%{transform:translateY(-16px) rotate(2deg)} }
@keyframes skull-color {
  0%{filter:drop-shadow(0 0 20px rgba(255,255,255,.6)) hue-rotate(0deg)}
  100%{filter:drop-shadow(0 0 20px rgba(255,255,255,.6)) hue-rotate(360deg)}
}
.skull-label {
  font-family:'Share Tech Mono',monospace; font-size:clamp(9px,1.2vw,12px); letter-spacing:.4em;
  color:rgba(255,255,255,.5); text-transform:uppercase; margin-top:16px; display:block;
  animation:label-flicker 3.7s ease-in-out infinite;
}
@keyframes label-flicker { 0%,100%{opacity:.5} 45%{opacity:.2} 46%{opacity:.8} 47%{opacity:.2} 48%{opacity:.5} }
.iwhbyd-title {
  font-family:'ITC Handel Gothic Arabic W23Hv','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:clamp(18px,3vw,42px); letter-spacing:.08em; text-transform:uppercase; color:#fff;
  transform:scaleY(.85) scaleX(1.08); transform-origin:center center; display:inline-block;
  text-shadow:0 0 20px rgba(255,255,255,.8), 0 0 60px rgba(200,100,255,.6);
  margin-top:20px; margin-bottom:8px; animation:title-glitch 5s ease-in-out infinite;
}
@keyframes title-glitch {
  0%,100%{transform:scaleY(.85) scaleX(1.08) translate(0,0);filter:none;}
  3%{transform:scaleY(.85) scaleX(1.08) translate(-4px,0);filter:hue-rotate(60deg);}
  3.1%{transform:scaleY(.85) scaleX(1.08) translate(3px,0);filter:hue-rotate(-40deg);}
  3.2%{transform:scaleY(.85) scaleX(1.08) translate(0,0);filter:none;}
}
#iwhbyd-terminal {
  max-width:600px; width:90%;
  border:1px solid rgba(200,100,255,.3); border-radius:4px;
  background:rgba(10,0,20,.8); padding:20px 24px;
  position:relative; z-index:10; text-align:left; margin-top:24px;
  box-shadow:0 0 40px rgba(150,0,255,.15);
}
#iwhbyd-terminal::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg,transparent,rgba(200,100,255,.6),transparent);
}
.iwhbyd-terminal-hdr {
  font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.24em;
  color:rgba(200,100,255,.5); text-transform:uppercase; margin-bottom:14px;
  padding-bottom:8px; border-bottom:1px solid rgba(200,100,255,.15); display:flex; justify-content:space-between;
}
.iwhbyd-body {
  font-family:'Share Tech Mono',monospace; font-size:8px; letter-spacing:.14em;
  color:rgba(220,180,255,.7); text-transform:uppercase; line-height:2; min-height:80px;
}
.iwhbyd-cursor {
  display:inline-block; width:7px; height:11px; background:rgba(200,100,255,.7); vertical-align:middle;
  animation:iwhbyd-cur .8s step-end infinite;
}
@keyframes iwhbyd-cur{0%,100%{opacity:1}50%{opacity:0}}
#iwhbyd-flash {
  display:none; position:fixed; inset:0; z-index:9998; background:#fff; pointer-events:none;
}
#iwhbyd-flash.active { display:block; animation:iwhbyd-flash-anim .6s ease-out forwards; }
@keyframes iwhbyd-flash-anim { 0%{opacity:1} 30%{opacity:.9} 100%{opacity:0} }
#iwhbyd-pickup {
  display:none; position:fixed; top:50%; left:50%; transform:translate(-50%,-50%);
  z-index:9999; text-align:center; pointer-events:none;
}
#iwhbyd-pickup.active { display:block; animation:iwhbyd-pickup-anim 3.5s ease forwards; }
@keyframes iwhbyd-pickup-anim {
  0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}
  15%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}
  25%{transform:translate(-50%,-50%) scale(1)}
  70%{opacity:1} 100%{opacity:0;transform:translate(-50%,-54%)}
}
.iwhbyd-skull-img { width:clamp(80px,12vw,160px); height:auto; aspect-ratio:120/130; filter:drop-shadow(0 0 16px rgba(255,255,255,.7)) drop-shadow(0 2px 8px rgba(0,0,0,.6)); }
.iwhbyd-pickup-title {
  font-family:'ITC Handel Gothic Arabic W23Hv','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:clamp(14px,2.2vw,26px); letter-spacing:.12em; text-transform:uppercase; color:#fff;
  text-shadow:0 0 16px rgba(255,255,255,.9), 0 2px 4px rgba(0,0,0,.8);
  transform:scaleY(.85) scaleX(1.08); transform-origin:center; display:block; margin-top:14px;
}
.iwhbyd-pickup-sub {
  font-family:'Share Tech Mono',monospace; font-size:clamp(8px,1vw,11px); letter-spacing:.3em;
  color:rgba(255,255,255,.7); text-transform:uppercase; display:block; margin-top:8px;
}
#iwhbyd-indicator {
  display:none; position:fixed; bottom:20px; right:20px; z-index:500;
  font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.2em;
  color:rgba(104,146,194,.35); text-transform:uppercase;
  padding:4px 8px; border:1px solid rgba(104,146,194,.15); border-radius:2px; pointer-events:none;
  animation:ind-pulse 3s ease-in-out infinite;
}
#iwhbyd-indicator.active { display:block; }
body.iwhbyd-active .nav-hud-status span { animation:weird-text 8s step-end infinite; }

/* Hidden 7 */
.hidden-seven {
  position:fixed; font-family:'Share Tech Mono',monospace;
  font-size:9px; color:rgba(104,146,194,.12);
  pointer-events:none; user-select:none; z-index:1; letter-spacing:.1em;
}

/* Grunt Birthday Party */
#gbp-overlay {
  display:none; position:fixed; inset:0; z-index:9997; pointer-events:none; overflow:hidden;
}
#gbp-overlay.active { display:block; }
.confetti-piece {
  position:absolute; top:-10px; width:8px; height:8px; border-radius:1px;
  animation:confetti-fall linear forwards; pointer-events:none;
}
@keyframes confetti-fall { 0%{transform:translateY(0) rotate(0deg);opacity:1} 100%{transform:translateY(110vh) rotate(720deg);opacity:0} }
#gbp-message {
  display:none; position:fixed; top:50%; left:50%; transform:translate(-50%,-50%);
  z-index:9998; text-align:center; pointer-events:none;
}
#gbp-message.active { display:block; animation:gbp-msg-anim 3.5s ease forwards; }
@keyframes gbp-msg-anim {
  0%{opacity:0;transform:translate(-50%,-50%) scale(.5) rotate(-8deg)}
  15%{opacity:1;transform:translate(-50%,-50%) scale(1.1) rotate(2deg)}
  25%{transform:translate(-50%,-50%) scale(1) rotate(0deg)}
  75%{opacity:1} 100%{opacity:0;transform:translate(-50%,-56%)}
}
.gbp-title {
  font-family:'ITC Handel Gothic Arabic W23Hv','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:clamp(28px,5vw,72px); letter-spacing:.08em; text-transform:uppercase; color:#FFE840;
  text-shadow:0 0 20px rgba(255,232,64,.9), 0 0 60px rgba(255,232,64,.5), 3px 3px 0 rgba(0,0,0,.8);
  transform:scaleY(.85) scaleX(1.08); transform-origin:center; display:block;
}
.gbp-sub {
  font-family:'Share Tech Mono',monospace; font-size:clamp(9px,1.2vw,13px); letter-spacing:.3em;
  color:rgba(255,255,255,.8); text-transform:uppercase; display:block; margin-top:12px;
}

/* Mjolnir OS Boot */
#mjolnir-boot {
  display:none; position:fixed; bottom:24px; left:24px; z-index:8000;
  width:260px; font-family:'Share Tech Mono',monospace;
  font-size:7px; letter-spacing:.14em; line-height:1.9;
  color:rgba(104,146,194,.7); text-transform:uppercase;
  border:1px solid rgba(104,146,194,.25); border-radius:4px;
  background:rgba(4,8,20,.95); padding:14px 16px;
  box-shadow:0 0 30px rgba(0,0,0,.8), inset 0 0 20px rgba(104,146,194,.03);
  pointer-events:none;
}
#mjolnir-boot.active { display:block; animation:mjolnir-in .2s ease-out; }
@keyframes mjolnir-in { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:translateY(0)} }
#mjolnir-boot::before {
  content:'MJOLNIR OS v7.01 // BOOTING'; display:block; color:rgba(104,146,194,.5);
  border-bottom:1px solid rgba(104,146,194,.15); padding-bottom:8px; margin-bottom:8px;
  font-size:6.5px; letter-spacing:.2em;
}

/* Page Transition */
#page-transition {
  position:fixed; inset:0; z-index:99999; background:var(--navy); pointer-events:none;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  opacity:0; transition:opacity .35s ease;
}
#page-transition.fade-in  { opacity:1; pointer-events:all; }
#page-transition.fade-out { opacity:0; pointer-events:none; }
.pt-inner {
  font-family:'Share Tech Mono',monospace; font-size:7.5px; letter-spacing:.24em; text-transform:uppercase;
  color:rgba(104,146,194,.35); text-align:center; line-height:2.2;
}
.pt-logo {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:18px; letter-spacing:.18em; color:rgba(104,146,194,.3);
  text-transform:uppercase; display:block; margin-bottom:16px;
  transform:scaleY(.85) scaleX(1.08); transform-origin:center center;
}
.pt-bar {
  width:180px; height:1px; margin:14px auto 0; background:rgba(104,146,194,.15);
  position:relative; overflow:hidden;
}
.pt-bar::after {
  content:''; position:absolute; left:-100%; top:0; bottom:0; width:100%;
  background:linear-gradient(90deg,transparent,rgba(104,146,194,.5),transparent);
  animation:pt-scan .9s linear infinite;
}
@keyframes pt-scan { to{left:200%} }

/* Elite Easter Egg */
#elite-overlay {
  display:none; position:fixed; inset:0; z-index:9996; pointer-events:none; overflow:hidden;
}
#elite-overlay.active { display:block; pointer-events:all; }
#elite-video {
  position:fixed; bottom:0; left:50%; transform:translateX(-50%);
  height:min(85vh,720px); width:auto;
  filter:drop-shadow(0 0 30px rgba(104,146,194,.3));
  animation:elite-enter .5s cubic-bezier(.175,.885,.32,1.275) forwards;
  transform-origin:bottom center; pointer-events:none;
}
@keyframes elite-enter {
  from{transform:translateX(-50%) translateY(60%) scale(.85);opacity:0}
  to{transform:translateX(-50%) translateY(0) scale(1);opacity:1}
}
#elite-overlay.leaving #elite-video {
  position:fixed; bottom:0; left:50%; transform:translateX(-50%);
  height:min(85vh,720px); width:auto;
  filter:drop-shadow(0 0 30px rgba(104,146,194,.3));
  animation:elite-enter .5s cubic-bezier(.175,.885,.32,1.275) forwards;
  transform-origin:bottom center; pointer-events:none;
}
@keyframes elite-leave { to{transform:translateX(-50%) translateY(80%);opacity:0} }
#elite-dismiss {
  position:absolute; bottom:20px; left:50%; transform:translateX(-50%);
  font-family:'Share Tech Mono',monospace; font-size:7.5px; letter-spacing:.22em;
  color:rgba(104,146,194,.25); text-transform:uppercase;
  animation:hint-pulse 2s ease-in-out infinite; pointer-events:none;
}
@keyframes hint-pulse{0%,100%{opacity:.25}50%{opacity:.55}}
#elite-close {
  position:fixed; bottom:36px; left:50%; transform:translateX(-50%);
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:11px; letter-spacing:.22em; text-transform:uppercase;
  color:var(--shield); background:rgba(4,8,20,.85);
  border:1px solid rgba(104,146,194,.4); border-radius:4px;
  padding:12px 32px; cursor:pointer; z-index:10001; transition:all .18s;
  transform:translateX(-50%) scaleY(.85) scaleX(1.08); transform-origin:center;
  box-shadow:var(--glow-shield); backdrop-filter:blur(8px);
}
#elite-close:hover { background:rgba(104,146,194,.15); border-color:var(--shield); color:var(--txt); }

/* Marathon Terminal */
#marathon-backdrop {
  display:none; position:fixed; inset:0; z-index:8887;
  background:rgba(4,8,20,.7); backdrop-filter:blur(3px);
}
#marathon-backdrop.visible { display:block; }
#marathon-logo-trigger { cursor:pointer; }
#marathon-terminal {
  display:none; position:fixed; top:50%; left:50%; transform:translate(-50%,-50%);
  z-index:8888; width:min(640px, 94vw);
  border:1px solid rgba(104,146,194,.5); border-radius:8px;
  background:rgba(2,5,16,.98);
  box-shadow:0 0 0 1px rgba(104,146,194,.08), 0 40px 100px rgba(0,0,0,.95),
             0 0 80px rgba(104,146,194,.08), inset 0 0 60px rgba(104,146,194,.02);
  overflow:hidden;
}
#marathon-terminal.visible { display:block; animation:mterm-in .4s cubic-bezier(.16,1,.3,1); }
@keyframes mterm-in {
  from{opacity:0;transform:translate(-50%,-50%) scale(.88) translateY(12px)}
  to{opacity:1;transform:translate(-50%,-50%) scale(1) translateY(0)}
}
#marathon-terminal::before {
  content:''; position:absolute; inset:0; pointer-events:none; z-index:10;
  background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.12) 2px,rgba(0,0,0,.12) 3px);
  border-radius:8px;
}
#marathon-terminal::after {
  content:''; position:absolute; top:0; left:0; right:0; height:2px; z-index:11;
  background:linear-gradient(90deg,transparent,rgba(104,146,194,.7) 30%,rgba(104,146,194,.7) 70%,transparent);
  box-shadow:0 0 12px rgba(104,146,194,.4);
}
.mterm-bar {
  display:flex; align-items:center; justify-content:space-between; padding:10px 18px;
  background:rgba(104,146,194,.05); border-bottom:1px solid rgba(104,146,194,.12);
  position:relative; z-index:5;
}
.mterm-title {
  font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.28em;
  color:rgba(104,146,194,.4); text-transform:uppercase;
}
.mterm-hero {
  padding:28px 20px 0; display:flex; flex-direction:column; align-items:center; gap:12px;
  position:relative; z-index:5;
}
.mterm-logo svg {
  filter:drop-shadow(0 0 16px rgba(104,146,194,.5)) drop-shadow(0 0 40px rgba(104,146,194,.2));
  animation:mterm-logo-pulse 4s ease-in-out infinite;
}
@keyframes mterm-logo-pulse {
  0%,100%{opacity:.55;filter:drop-shadow(0 0 16px rgba(104,146,194,.5)) drop-shadow(0 0 40px rgba(104,146,194,.2))}
  50%{opacity:.8;filter:drop-shadow(0 0 24px rgba(104,146,194,.8)) drop-shadow(0 0 60px rgba(104,146,194,.35))}
}
.mterm-ai-label {
  font-family:'Share Tech Mono',monospace; font-size:7.5px; letter-spacing:.32em;
  color:rgba(104,146,194,.35); text-transform:uppercase; text-align:center;
}
.mterm-divider {
  height:1px; margin:0 20px;
  background:linear-gradient(90deg,transparent,rgba(104,146,194,.2) 30%,rgba(104,146,194,.2) 70%,transparent);
  position:relative; z-index:5;
}
.mterm-body {
  padding:18px 24px 22px; font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:.16em;
  color:rgba(104,146,194,.7); text-transform:uppercase; line-height:2.1; min-height:140px;
  max-height:55vh; overflow-y:auto; position:relative; z-index:5;
}
.mterm-body::-webkit-scrollbar { width:3px; }
.mterm-body::-webkit-scrollbar-track { background:transparent; }
.mterm-body::-webkit-scrollbar-thumb { background:rgba(104,146,194,.2); border-radius:2px; }
.mterm-cursor {
  display:inline-block; width:7px; height:11px; background:rgba(104,146,194,.7); vertical-align:middle;
  animation:mterm-cur .85s step-end infinite; box-shadow:0 0 6px rgba(104,146,194,.5);
}
@keyframes mterm-cur { 0%,100%{opacity:1} 50%{opacity:0} }
.mterm-footer {
  display:flex; justify-content:space-between; align-items:center; padding:9px 18px;
  border-top:1px solid rgba(104,146,194,.1); background:rgba(2,5,16,.8);
  font-family:'Share Tech Mono',monospace; font-size:6.5px; letter-spacing:.22em;
  color:rgba(104,146,194,.22); text-transform:uppercase; position:relative; z-index:5;
}
.mterm-close-hint {
  font-family:'Share Tech Mono',monospace; font-size:6.5px; letter-spacing:.18em;
  color:rgba(104,146,194,.15); text-transform:uppercase; text-align:center; padding:6px 18px;
  border-top:1px solid rgba(104,146,194,.06); background:rgba(2,5,16,.9);
  position:relative; z-index:5; animation:hint-fade 2.5s ease-in-out infinite;
}

/* Grunt Rain */
.grunt-char {
  position:fixed; pointer-events:none; z-index:9500;
  font-size:clamp(16px,2vw,28px); line-height:1;
  animation:grunt-fall linear forwards; user-select:none;
}
@keyframes grunt-fall {
  0%{transform:translateY(-60px) rotate(0deg);opacity:1}
  85%{opacity:1} 100%{transform:translateY(110vh) rotate(var(--rot));opacity:0}
}

/* TRU7H */
#tru7h-overlay {
  display:none; position:fixed; inset:0; z-index:9600;
  background:rgba(4,8,20,.96); align-items:center; justify-content:center;
  flex-direction:column; text-align:center;
}
#tru7h-overlay.active { display:flex; animation:tru7h-in .5s ease-out; }
@keyframes tru7h-in { from{opacity:0} to{opacity:1} }
.tru7h-title {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:clamp(36px,7vw,96px); letter-spacing:.06em; text-transform:uppercase;
  color:var(--shield); line-height:.9;
  transform:scaleY(.85) scaleX(1.08); transform-origin:center; display:inline-block;
  text-shadow:0 0 40px rgba(104,146,194,.6), 0 0 80px rgba(104,146,194,.3), 2px 2px 0 #000;
  animation:tru7h-pulse 2s ease-in-out infinite;
}
@keyframes tru7h-pulse {
  0%,100%{text-shadow:0 0 40px rgba(104,146,194,.6),0 0 80px rgba(104,146,194,.3),2px 2px 0 #000}
  50%{text-shadow:0 0 60px rgba(104,146,194,.9),0 0 120px rgba(104,146,194,.5),2px 2px 0 #000}
}
.tru7h-seven {
  font-family:'Share Tech Mono',monospace; font-size:clamp(80px,15vw,200px); color:rgba(104,146,194,.08);
  position:absolute; line-height:1; pointer-events:none; animation:tru7h-seven-spin 20s linear infinite;
}
@keyframes tru7h-seven-spin { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
.tru7h-sub {
  font-family:'Share Tech Mono',monospace; font-size:clamp(8px,1.2vw,13px); letter-spacing:.32em;
  color:rgba(104,146,194,.45); text-transform:uppercase; margin-top:24px; display:block;
  animation:tru7h-sub-in .6s ease-out .4s both;
}
@keyframes tru7h-sub-in { from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:translateY(0)} }
.tru7h-arge {
  font-family:'Share Tech Mono',monospace; font-size:clamp(7px,.9vw,10px); letter-spacing:.24em;
  color:rgba(104,146,194,.2); text-transform:uppercase; margin-top:14px; display:block; line-height:2;
}
.tru7h-dismiss {
  font-family:'Share Tech Mono',monospace; font-size:7.5px; letter-spacing:.22em;
  color:rgba(104,146,194,.2); text-transform:uppercase; margin-top:32px;
  animation:hint-pulse 2.5s ease-in-out infinite;
}

/* Patrick (Krusty Krab) */
#patrick-overlay {
  display:none; position:fixed; inset:0; z-index:9550;
  background:rgba(4,8,20,.97); align-items:center; justify-content:center;
  flex-direction:column; text-align:center;
}
#patrick-overlay.active { display:flex; animation:patrick-in .3s ease-out; }
@keyframes patrick-in { from{opacity:0;transform:scale(.95)} to{opacity:1;transform:scale(1)} }
.patrick-question {
  font-family:'Share Tech Mono',monospace; font-size:clamp(9px,1.4vw,16px); letter-spacing:.24em;
  color:rgba(104,146,194,.45); text-transform:uppercase; margin-bottom:24px;
}
.patrick-answer {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:clamp(28px,5vw,72px); letter-spacing:.06em; text-transform:uppercase;
  color:var(--yellow); line-height:.95;
  transform:scaleY(.85) scaleX(1.08); transform-origin:center; display:inline-block;
  text-shadow:0 0 20px rgba(255,232,64,.5), 2px 2px 0 #000;
}
.patrick-name {
  font-family:'Share Tech Mono',monospace; font-size:clamp(7px,1vw,11px); letter-spacing:.28em;
  color:rgba(255,232,64,.3); text-transform:uppercase; margin-top:16px; display:block;
}
.patrick-dismiss {
  font-family:'Share Tech Mono',monospace; font-size:7.5px; letter-spacing:.22em;
  color:rgba(104,146,194,.18); text-transform:uppercase;
  margin-top:36px; animation:hint-pulse 2.5s ease-in-out infinite;
}

/* Red vs Blue */
#rvb-overlay { display:none; position:fixed; inset:0; z-index:9540; }
#rvb-overlay.active { display:block; }
.rvb-half {
  position:absolute; top:0; bottom:0; width:50%;
  display:flex; align-items:center; justify-content:center; flex-direction:column; gap:12px;
}
.rvb-half.red { left:0; background:rgba(80,0,0,.96); }
.rvb-half.blue { right:0; background:rgba(0,0,80,.96); }
.rvb-divider {
  position:absolute; left:50%; top:0; bottom:0; width:3px; transform:translateX(-50%);
  background:linear-gradient(180deg,transparent,rgba(255,255,255,.3) 20%,rgba(255,255,255,.3) 80%,transparent);
  box-shadow:0 0 20px rgba(255,255,255,.2);
}
.rvb-team {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:clamp(40px,8vw,110px); letter-spacing:.06em; text-transform:uppercase;
  transform:scaleY(.85) scaleX(1.08); transform-origin:center; display:inline-block; line-height:.9;
}
.rvb-half.red .rvb-team { color:#FF3020; text-shadow:0 0 30px rgba(255,48,32,.6),2px 2px 0 #000; }
.rvb-half.blue .rvb-team { color:#6892C2; text-shadow:0 0 30px rgba(104,146,194,.8),2px 2px 0 #000; }
.rvb-quote {
  font-family:'Share Tech Mono',monospace; font-size:clamp(7px,1vw,11px); letter-spacing:.18em;
  text-transform:uppercase; text-align:center; padding:0 20px; line-height:2; max-width:280px;
}
.rvb-half.red .rvb-quote { color:rgba(255,120,100,.5); }
.rvb-half.blue .rvb-quote { color:rgba(104,146,194,.5); }
.rvb-dismiss {
  position:absolute; bottom:24px; left:50%; transform:translateX(-50%);
  font-family:'Share Tech Mono',monospace; font-size:7.5px; letter-spacing:.22em;
  color:rgba(255,255,255,.15); text-transform:uppercase; white-space:nowrap;
  animation:hint-pulse 2.5s ease-in-out infinite;
}

/* Bungie Day */
#bungie-day-overlay {
  display:none; position:fixed; inset:0; z-index:9800; background:rgba(2,4,12,.97);
  align-items:center; justify-content:center; flex-direction:column; text-align:center;
}
#bungie-day-overlay.active { display:flex; animation:bd-in .6s ease-out; }
@keyframes bd-in { from{opacity:0} to{opacity:1} }
.bd-seven-bg {
  position:absolute; font-family:'Share Tech Mono',monospace; font-size:40vw;
  color:rgba(104,146,194,.03); line-height:1; pointer-events:none; user-select:none;
  animation:bd-rotate 60s linear infinite;
}
@keyframes bd-rotate { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
.bd-date {
  font-family:'Share Tech Mono',monospace; font-size:8px; letter-spacing:.4em;
  color:rgba(104,146,194,.3); text-transform:uppercase; margin-bottom:20px; position:relative; z-index:2;
}
.bd-title {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:clamp(36px,8vw,110px); font-weight:400; letter-spacing:.05em; text-transform:uppercase;
  color:var(--shield); line-height:.88;
  transform:scaleY(.85) scaleX(1.08); transform-origin:center; display:inline-block;
  text-shadow:0 0 40px rgba(104,146,194,.6), 0 0 80px rgba(104,146,194,.25), 2px 2px 0 #000;
  position:relative; z-index:2; margin-bottom:20px; animation:bd-pulse 3s ease-in-out infinite;
}
@keyframes bd-pulse {
  0%,100%{text-shadow:0 0 40px rgba(104,146,194,.6),0 0 80px rgba(104,146,194,.25),2px 2px 0 #000}
  50%{text-shadow:0 0 60px rgba(104,146,194,.9),0 0 120px rgba(104,146,194,.5),2px 2px 0 #000}
}
.bd-sub {
  font-family:'Share Tech Mono',monospace; font-size:clamp(8px,1.1vw,12px); letter-spacing:.28em;
  color:rgba(104,146,194,.4); text-transform:uppercase; position:relative; z-index:2; line-height:2.2;
}
.bd-seven-row { display:flex; gap:clamp(8px,2vw,24px); margin:24px 0; position:relative; z-index:2; }
.bd-seven-item {
  font-family:'Share Tech Mono',monospace; font-size:clamp(10px,1.4vw,16px); letter-spacing:.2em;
  color:rgba(104,146,194,.25); text-transform:uppercase; text-align:center;
}
.bd-seven-num {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:clamp(28px,4vw,52px); color:var(--shield);
  transform:scaleY(.85) scaleX(1.08); transform-origin:center; display:block;
  text-shadow:var(--glow-shield); margin-bottom:4px;
}
.bd-dismiss {
  font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.22em;
  color:rgba(104,146,194,.18); text-transform:uppercase; margin-top:24px;
  position:relative; z-index:2; animation:hint-pulse 2.5s ease-in-out infinite;
}
body.bungie-day .hidden-seven {
  color:rgba(104,146,194,.6) !important; text-shadow:0 0 8px rgba(104,146,194,.8);
  animation:seven-glow 2s ease-in-out infinite;
}
@keyframes seven-glow {
  0%,100%{color:rgba(104,146,194,.4);text-shadow:0 0 8px rgba(104,146,194,.4);}
  50%{color:rgba(104,146,194,.8);text-shadow:0 0 16px rgba(104,146,194,.9);}
}

/* Blood Gulch ASCII Map */
#gulch-overlay {
  display:none; position:fixed; inset:0; z-index:9750; background:rgba(2,4,12,.98);
  align-items:center; justify-content:center; flex-direction:column; gap:16px;
}
#gulch-overlay.active { display:flex; animation:gulch-in .3s ease-out; }
@keyframes gulch-in { from{opacity:0;transform:scale(.97)} to{opacity:1;transform:scale(1)} }
.gulch-title { font-family:'Share Tech Mono',monospace; font-size:7.5px; letter-spacing:.3em; color:rgba(104,146,194,.4); text-transform:uppercase; }
.gulch-map {
  font-family:'Share Tech Mono',monospace; font-size:clamp(7px,1.1vw,13px); line-height:1.5;
  color:rgba(104,146,194,.6); text-align:left; white-space:pre; letter-spacing:.08em;
  text-shadow:0 0 8px rgba(104,146,194,.3);
}
.gulch-map .you { color:var(--health); animation:you-blink .8s step-end infinite; }
@keyframes you-blink { 0%,100%{opacity:1} 50%{opacity:0} }
.gulch-map .red { color:var(--warn); }
.gulch-map .blue { color:var(--shield); }
.gulch-map .neutral { color:rgba(104,146,194,.3); }
.gulch-legend { display:flex; gap:24px; font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.18em; text-transform:uppercase; }
.gulch-legend span { display:flex; align-items:center; gap:6px; color:rgba(104,146,194,.3); }
.gulch-dismiss { font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.2em; color:rgba(104,146,194,.15); text-transform:uppercase; animation:hint-pulse 2.5s ease-in-out infinite; }

/* Pizza */
#pizza-overlay {
  display:none; position:fixed; inset:0; z-index:9720; background:rgba(2,4,12,.97);
  align-items:center; justify-content:center; flex-direction:column; text-align:center; gap:0;
}
#pizza-overlay.active { display:flex; animation:pizza-in .4s cubic-bezier(.175,.885,.32,1.275); }
@keyframes pizza-in { from{opacity:0;transform:scale(.8) rotate(-5deg)} to{opacity:1;transform:scale(1) rotate(0deg)} }
.pizza-emoji { font-size:clamp(60px,12vw,120px); line-height:1; margin-bottom:16px; animation:pizza-spin 8s linear infinite; }
@keyframes pizza-spin { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
.pizza-title {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:clamp(22px,4vw,52px); letter-spacing:.06em; text-transform:uppercase;
  color:var(--yellow); line-height:.95; margin-bottom:14px;
  transform:scaleY(.85) scaleX(1.08); transform-origin:center; display:inline-block;
  text-shadow:0 0 20px rgba(255,232,64,.5), 2px 2px 0 #000;
}
.pizza-sub {
  font-family:'Share Tech Mono',monospace; font-size:clamp(7.5px,1.1vw,11px); letter-spacing:.2em;
  color:rgba(104,146,194,.45); text-transform:uppercase; line-height:2.2; max-width:600px; padding:0 20px;
}
.pizza-sub em { color:var(--yellow); font-style:normal; }
.pizza-address {
  font-family:'Share Tech Mono',monospace; font-size:clamp(8px,1.1vw,12px); letter-spacing:.22em;
  color:rgba(104,146,194,.3); text-transform:uppercase; margin-top:20px; padding:10px 20px;
  border:1px solid rgba(104,146,194,.15); border-radius:4px;
}
.pizza-dismiss { font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.2em; color:rgba(104,146,194,.15); text-transform:uppercase; margin-top:20px; animation:hint-pulse 2.5s ease-in-out infinite; }

/* ASCII Easter Eggs */
.ascii-overlay {
  display:none; position:fixed; inset:0; z-index:9800; background:rgba(2,4,12,.98);
  align-items:center; justify-content:center; flex-direction:column; gap:12px; text-align:center;
}
.ascii-overlay.active { display:flex; animation:ascii-in .3s ease-out; }
@keyframes ascii-in { from{opacity:0;transform:scale(.97)} to{opacity:1;transform:scale(1)} }
.ascii-label { font-family:'Share Tech Mono',monospace; font-size:7.5px; letter-spacing:.28em; color:rgba(104,146,194,.35); text-transform:uppercase; }
.ascii-art {
  font-family:'Share Tech Mono',monospace; font-size:clamp(6px,.85vw,12px); line-height:1.4;
  color:rgba(104,146,194,.7); white-space:pre; text-align:left;
  text-shadow:0 0 8px rgba(104,146,194,.3); letter-spacing:.05em;
}
.ascii-dismiss { font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.2em; color:rgba(104,146,194,.15); text-transform:uppercase; animation:hint-pulse 2.5s ease-in-out infinite; }
#warthog-overlay {
  display:none; position:fixed; inset:0; z-index:9800; background:rgba(2,4,12,.95);
  pointer-events:none; align-items:center; justify-content:center;
}
#warthog-overlay.active { display:flex; pointer-events:all; }
.warthog-track { position:relative; width:100vw; height:140px; overflow:hidden; }
.warthog-ascii {
  position:absolute; left:-400px; top:50%; transform:translateY(-50%);
  font-family:'Share Tech Mono',monospace; font-size:clamp(10px,1.4vw,16px); line-height:1.4;
  color:rgba(104,146,194,.8); white-space:pre; text-shadow:0 0 10px rgba(104,146,194,.5);
  animation:warthog-drive 4s cubic-bezier(.2,.6,.8,1) forwards;
}
@keyframes warthog-drive { 0%{left:-400px} 100%{left:110vw} }
.warthog-beep {
  position:absolute; bottom:20px; left:50%; transform:translateX(-50%);
  font-family:'Share Tech Mono',monospace; font-size:9px; letter-spacing:.3em;
  color:rgba(104,146,194,.3); text-transform:uppercase; animation:hint-pulse 1s ease-in-out infinite;
}
.warthog-dismiss {
  position:absolute; top:20px; left:50%; transform:translateX(-50%);
  font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.2em;
  color:rgba(104,146,194,.15); text-transform:uppercase;
}

/* Esports Video Terminal */
#esports-overlay {
  display:none; position:fixed; inset:0; z-index:9700;
  background:rgba(4,8,20,.85); backdrop-filter:blur(4px);
  align-items:center; justify-content:center;
}
#esports-overlay.active { display:flex; animation:esports-in .3s ease-out; }
@keyframes esports-in { from{opacity:0;transform:scale(.95)} to{opacity:1;transform:scale(1)} }
.esports-terminal {
  width:min(860px, 94vw); border:1px solid rgba(104,146,194,.4); border-radius:6px;
  background:rgba(2,5,16,.98);
  box-shadow:0 0 0 1px rgba(104,146,194,.08), 0 30px 80px rgba(0,0,0,.95), 0 0 40px rgba(104,146,194,.06);
  overflow:hidden;
}
.esports-terminal-bar {
  display:flex; align-items:center; justify-content:space-between; padding:9px 16px;
  background:rgba(104,146,194,.06); border-bottom:1px solid rgba(104,146,194,.15);
}
.esports-terminal-title { font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.28em; color:rgba(104,146,194,.5); text-transform:uppercase; }
.esports-terminal-close {
  font-family:'Share Tech Mono',monospace; font-size:7px; letter-spacing:.2em; text-transform:uppercase;
  color:rgba(104,146,194,.4); background:transparent; border:1px solid rgba(104,146,194,.2); border-radius:3px;
  padding:4px 10px; cursor:pointer; transition:all .15s;
}
.esports-terminal-close:hover { color:var(--shield); border-color:var(--shield); }
.esports-terminal-label {
  font-family:'HandelGothic BT','ITC Handel Gothic Arabic W23Hv','HandelGothicCDN','HandelGothic','Arial Narrow',Arial,sans-serif;
  font-size:clamp(11px,1.4vw,16px); letter-spacing:.1em; text-transform:uppercase;
  color:var(--shield); padding:10px 16px 8px;
  transform:scaleY(.85) scaleX(1.08); transform-origin:left; display:block;
  text-shadow:0 0 12px rgba(104,146,194,.4);
}
.esports-terminal-footer {
  font-family:'Share Tech Mono',monospace; font-size:6.5px; letter-spacing:.2em; color:rgba(104,146,194,.2);
  text-transform:uppercase; padding:8px 16px; border-top:1px solid rgba(104,146,194,.1);
  background:rgba(2,5,16,.8); animation:hint-pulse 2.5s ease-in-out infinite;
}

/* Audio toggle button */
.aud-btn {
  position:fixed; bottom:96px; right:24px; z-index:200;
  width:52px; height:52px;
  border:3px solid rgba(104,146,194,.35);
  background:rgba(4,8,16,.95);
  cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  flex-direction:column; gap:2px;
  transition:border-color .2s, box-shadow .2s;
  border-radius:4px;
}
.aud-btn:hover {
  border-color:var(--shield);
  box-shadow:var(--glow-shield);
}
.aud-btn.playing {
  border-color:var(--shield);
  box-shadow:var(--glow-shield);
  animation:audpulse 2.5s ease-in-out infinite;
}
@keyframes audpulse {
  0%,100%{box-shadow:var(--glow-shield)}
  50%{box-shadow:0 0 10px rgba(104,146,194,.7),0 0 28px rgba(104,146,194,.35)}
}
.aud-ico { font-size:18px; line-height:1; }
.aud-lbl {
  font-family:'Share Tech Mono',monospace;
  font-size:7px; color:var(--shield); letter-spacing:.15em; opacity:.65;
}

/* Aud Tooltip */
.aud-tooltip {
  position:fixed; bottom:90px; right:20px; z-index:201;
  background:rgba(4,8,20,.97); border:1px solid rgba(104,146,194,.35); border-radius:6px;
  padding:20px 22px; max-width:260px;
  box-shadow:0 8px 40px rgba(0,0,0,.8), var(--glow-shield);
  backdrop-filter:blur(12px); display:none;
}
.aud-tooltip.visible { display:block; animation:aud-tt-in .25s ease-out; }


/* ── MOBILE / RESPONSIVE ── */

@media(max-width:820px) {
  .nav-hamburger { display:flex; }
  .nav-links, .nav-hud, .nav-powered-by { display:none; }
  .nav-inner { padding:0 18px; }
  .wrap { padding:0 18px; }
  section { padding:48px 0; }
  .page-hero { padding:60px 0 30px; }
  .page-eyebrow { font-size:8px; letter-spacing:.22em; margin-bottom:14px; }
  .page-intro { font-size:14px; letter-spacing:.04em; margin-bottom:18px; }
  .col-2, .col-3 { grid-template-columns:1fr; gap:16px; }
  .ft-bar { flex-wrap:wrap; gap:16px; padding:24px 18px; }
  .ft-nav, .ft-scan { display:none; }
  .ft-bot { flex-direction:column; gap:8px; padding:10px 18px; text-align:center; }
  .ft-soc { flex-wrap:wrap; justify-content:center; gap:12px 16px; width:100%; }
  .hidden-seven { display:none !important; }
  .sec-title { white-space:normal; }
  .sec-hdr { flex-wrap:wrap; row-gap:4px; }
  .sec-hdr .r-shield { display:none; }
  .sec-slash { display:none; }
  .aud-btn { bottom:16px; right:14px; width:46px; height:46px; }
}
