/* ═══════════════════════════════════════════════════════════════
   AREA51.TECHNOLOGY — GLOBAL DESIGN SYSTEM
   Aesthetic: Classified ops briefing meets deep space telemetry
   ═══════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Rajdhani:wght@300;400;500;600;700&family=Share+Tech+Mono&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;1,9..40,300&display=swap');

:root {
  --bg:          #04080D;
  --bg-2:        #080F18;
  --bg-3:        #0C1620;
  --surface:     #0F1D2B;
  --surface-2:   #152435;
  --amber:       #FF6B00;
  --amber-dim:   rgba(255,107,0,0.18);
  --amber-glow:  rgba(255,107,0,0.06);
  --cyan:        #00C8FF;
  --cyan-dim:    rgba(0,200,255,0.1);
  --green:       #00FF88;
  --green-dim:   rgba(0,255,136,0.08);
  --text:        #D8E4F0;
  --text-muted:  #5A7A94;
  --text-dim:    #1E3A50;
  --border:      rgba(255,107,0,0.1);
  --border-b:    rgba(0,200,255,0.12);
  --font-d:      'Rajdhani', sans-serif;
  --font-m:      'Share Tech Mono', monospace;
  --font-b:      'DM Sans', sans-serif;
  --nav-h:       64px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--text);font-family:var(--font-b);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}

/* grid texture */
body::before{content:'';position:fixed;inset:0;background-image:linear-gradient(rgba(255,107,0,0.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,107,0,0.022) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;z-index:0;}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;height:var(--nav-h);z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 2.5rem;background:rgba(4,8,13,0.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);}
.nav-logo{font-family:var(--font-d);font-size:1.05rem;font-weight:700;letter-spacing:0.14em;color:var(--amber);display:flex;align-items:center;gap:0.6rem;}
.nav-logo .dot{width:6px;height:6px;background:var(--amber);border-radius:50%;animation:pulse 2s ease-in-out infinite;}
.nav-links{display:flex;align-items:center;gap:0.1rem;list-style:none;}
.nav-links a{font-family:var(--font-m);font-size:0.68rem;letter-spacing:0.1em;color:var(--text-muted);padding:0.4rem 0.7rem;border:1px solid transparent;transition:all 0.2s;text-transform:uppercase;}
.nav-links a:hover,.nav-links a.active{color:var(--amber);border-color:var(--border);background:var(--amber-glow);}
.nav-links a.hot{color:var(--cyan);border-color:var(--border-b);background:var(--cyan-dim);}
.nav-cta{font-family:var(--font-m);font-size:0.68rem;letter-spacing:0.12em;text-transform:uppercase;padding:0.5rem 1.2rem;background:var(--amber);color:var(--bg);font-weight:700;transition:all 0.2s;border:1px solid var(--amber);}
.nav-cta:hover{background:transparent;color:var(--amber);}

/* PAGE */
.page{position:relative;z-index:1;padding-top:var(--nav-h);}
.section{padding:6rem 2.5rem;max-width:1200px;margin:0 auto;}
.section-full{padding:6rem 2.5rem;position:relative;}

/* SECTION LABEL */
.label{font-family:var(--font-m);font-size:0.65rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--amber);margin-bottom:1rem;display:flex;align-items:center;gap:0.75rem;}
.label::before{content:'';display:block;width:20px;height:1px;background:var(--amber);}

/* TYPOGRAPHY */
.d-xl{font-family:var(--font-d);font-size:clamp(3.2rem,8vw,7.5rem);font-weight:700;line-height:0.92;letter-spacing:-0.02em;text-transform:uppercase;}
.d-lg{font-family:var(--font-d);font-size:clamp(2rem,5vw,4.5rem);font-weight:700;line-height:0.95;letter-spacing:-0.01em;text-transform:uppercase;}
.d-md{font-family:var(--font-d);font-size:clamp(1.4rem,3vw,2.4rem);font-weight:600;line-height:1.05;text-transform:uppercase;}
.d-sm{font-family:var(--font-d);font-size:1.2rem;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;}
.body-lg{font-size:1.05rem;line-height:1.8;color:var(--text-muted);max-width:600px;}
.body-md{font-size:0.92rem;line-height:1.75;color:var(--text-muted);}
.mono-xs{font-family:var(--font-m);font-size:0.65rem;letter-spacing:0.1em;color:var(--text-muted);}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:0.5rem;font-family:var(--font-m);font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;padding:0.875rem 2rem;border:1px solid;cursor:pointer;transition:all 0.25s;white-space:nowrap;}
.btn-primary{background:var(--amber);border-color:var(--amber);color:var(--bg);font-weight:700;}
.btn-primary:hover{background:transparent;color:var(--amber);}
.btn-ghost{background:transparent;border-color:var(--border);color:var(--text-muted);}
.btn-ghost:hover{border-color:var(--amber);color:var(--amber);background:var(--amber-glow);}
.btn-cyan{background:transparent;border-color:var(--cyan);color:var(--cyan);}
.btn-cyan:hover{background:var(--cyan-dim);}

/* CARD */
.card{background:var(--surface);border:1px solid var(--border);padding:2rem;transition:all 0.3s;position:relative;overflow:hidden;}
.card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--amber),transparent);opacity:0;transition:opacity 0.3s;}
.card:hover{border-color:var(--amber-dim);background:var(--surface-2);transform:translateY(-2px);}
.card:hover::before{opacity:1;}

/* BADGE */
.badge{display:inline-flex;align-items:center;gap:0.35rem;font-family:var(--font-m);font-size:0.62rem;letter-spacing:0.12em;text-transform:uppercase;padding:0.28rem 0.7rem;border:1px solid var(--border);color:var(--text-muted);}
.badge-a{border-color:var(--amber-dim);color:var(--amber);background:var(--amber-glow);}
.badge-c{border-color:var(--border-b);color:var(--cyan);background:var(--cyan-dim);}
.badge-g{border-color:rgba(0,255,136,0.18);color:var(--green);background:var(--green-dim);}

.dot-live{width:5px;height:5px;border-radius:50%;display:inline-block;background:var(--green);animation:pulse 1.8s ease-in-out infinite;}

/* DIVIDER */
.divider{height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);}

/* ANIMATIONS */
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.25;}}
@keyframes slideUp{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}
@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}
@keyframes scanX{from{transform:translateX(-100%);}to{transform:translateX(100vw);}}

.a1{animation:slideUp 0.7s ease both;}
.a2{animation:slideUp 0.7s 0.12s ease both;}
.a3{animation:slideUp 0.7s 0.24s ease both;}
.a4{animation:slideUp 0.7s 0.36s ease both;}
.a5{animation:slideUp 0.7s 0.48s ease both;}

/* FOOTER */
.footer{border-top:1px solid var(--border);padding:2.5rem 2.5rem;position:relative;z-index:1;}
.footer-inner{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap;}
.footer-logo{font-family:var(--font-d);font-weight:700;letter-spacing:0.12em;color:var(--amber);font-size:0.95rem;}
.footer-links{display:flex;gap:1.5rem;list-style:none;}
.footer-links a{font-family:var(--font-m);font-size:0.65rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-muted);transition:color 0.2s;}
.footer-links a:hover{color:var(--amber);}
.footer-copy{font-family:var(--font-m);font-size:0.62rem;color:var(--text-dim);letter-spacing:0.06em;}

/* UTILS */
.amber{color:var(--amber);}
.cyan{color:var(--cyan);}
.green{color:var(--green);}
.muted{color:var(--text-muted);}
.mono{font-family:var(--font-m);}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;}
.flex{display:flex;}
.wrap{flex-wrap:wrap;}
.items-c{align-items:center;}
.gap-1{gap:0.5rem;}
.gap-2{gap:1rem;}
.gap-3{gap:1.5rem;}
.gap-4{gap:2rem;}
.mt-1{margin-top:0.5rem;}
.mt-2{margin-top:1rem;}
.mt-3{margin-top:1.5rem;}
.mt-4{margin-top:2rem;}
.mt-6{margin-top:3rem;}
.mt-8{margin-top:4rem;}
.mb-2{margin-bottom:1rem;}
.mb-4{margin-bottom:2rem;}
.w100{width:100%;}
.text-center{text-align:center;}

@media(max-width:768px){.nav-links{display:none;}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr;}.section{padding:4rem 1.5rem;}.d-xl{font-size:3rem;}.d-lg{font-size:2.2rem;}}
