/* ═══════════════════════════════════════
   LIGHT THEME OVERRIDES
   Overrides dark tokens and hardcoded
   dark rgba() values from all other CSS.
═══════════════════════════════════════ */

/* ── Colour tokens ── */
:root {
  --bg:        #f0f4f8;
  --bg2:       #e4ecf4;
  --navy:      #d0dcea;
  --blue:      #1a6aff;
  --cyan:      #0070cc;
  --pale:      #0d1b2e;
  --dim:       #3a5570;
  --white:     #1a2d42;
  --gold:      #b08a2a;
  --border:    rgba(0,112,204,0.18);
  --border-hi: rgba(0,112,204,0.5);
  --glow:      0 0 30px rgba(0,112,204,0.14);
}

/* ── Body & background ── */
body {
  background: var(--bg);
  color: var(--pale);
}

/* ── Persistent background layers ── */
#star-canvas { opacity: 0.08 }
#grid-overlay {
  opacity: 0.25;
  background-image:
    linear-gradient(rgba(0,112,204,0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,112,204,0.06) 1px, transparent 1px);
}
#orbital-canvas { opacity: 0.12 }
#globe-container { opacity: 0.35 }

/* ── Nav ── */
#nav.solid {
  background: rgba(240,244,248,0.96);
  border-bottom-color: rgba(0,112,204,0.15);
}
.nav-links a { color: rgba(13,27,46,0.6) }
.nav-cta {
  background: linear-gradient(135deg,var(--blue),var(--cyan));
  color: #fff;
  box-shadow: 0 0 20px rgba(0,112,204,0.2);
}

/* ── Cards ── */
.card {
  background: linear-gradient(155deg,rgba(255,255,255,0.95),rgba(240,244,248,0.9));
  border-color: rgba(0,112,204,0.14);
}
.card:hover {
  border-color: rgba(0,112,204,0.4);
  box-shadow: 0 0 30px rgba(0,112,204,0.1);
}

/* ── Section headers ── */
.sh-body { color: var(--pale) }

/* ── Divider ── */
.divider-line {
  background: linear-gradient(90deg,transparent,rgba(0,112,204,0.2),transparent);
}
.divider-dot {
  background: var(--cyan);
  box-shadow: 0 0 8px var(--cyan);
}

/* ── Buttons ── */
.btn-primary {
  background: linear-gradient(135deg,var(--blue),var(--cyan));
  box-shadow: 0 0 28px rgba(0,112,204,0.2);
}
.btn-ghost {
  background: rgba(240,244,248,0.7);
  border-color: rgba(0,112,204,0.35);
  color: var(--cyan);
}
.btn-ghost:hover { background: rgba(0,112,204,0.08) }

/* ── Photo hero ── */
.photo-hero-img { filter: brightness(0.75) saturate(1) }
.photo-hero-fade {
  background: linear-gradient(
    180deg,
    rgba(240,244,248,0.45) 0%,
    rgba(240,244,248,0.1)  20%,
    rgba(240,244,248,0.0)  40%,
    rgba(240,244,248,0.0)  60%,
    rgba(240,244,248,0.65) 82%,
    var(--bg)              100%
  );
}
.photo-hero-label .page-tag { color: var(--cyan) }
.photo-hero-label h1 {
  color: #fff;
  text-shadow: 0 0 60px rgba(0,0,0,0.5), 0 2px 30px rgba(0,0,0,0.8);
}

/* ── Page transition ── */
@keyframes pageIn {
  from { opacity:0; transform:translateY(16px) }
  to   { opacity:1; transform:translateY(0) }
}

/* ── Footer ── */
#footer {
  background: rgba(224,232,242,0.98);
  border-top-color: rgba(0,112,204,0.1);
}
.footer-links a { color: var(--dim) }
.footer-links a:hover { color: var(--cyan) }
.footer-copy { color: var(--dim) }
.footer-li { color: var(--dim) }
.footer-li:hover { color: var(--cyan) }

/* ══════════════════════════════════════
   HOME PAGE
══════════════════════════════════════ */
.hero-eyebrow { color: var(--cyan) }
.hero-sub { color: var(--pale) }
.hero-sub2 { color: var(--dim) }
.hero-icon svg { color: var(--cyan) }
.hero-icon span { color: var(--dim) }
.hero-glow {
  background: radial-gradient(circle,rgba(0,112,204,0.07) 0%,transparent 70%);
}
.hero-title em {
  background: linear-gradient(130deg,#00468c 0%,#0070cc 50%,#003d7a 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  filter: none;
}

/* model diagram */
.diag-node {
  background: linear-gradient(135deg,rgba(0,112,204,0.08),rgba(26,106,255,0.04));
  border-color: rgba(0,112,204,0.2);
  color: var(--pale);
}
.diag-node.hl {
  border-color: var(--cyan);
  color: var(--cyan);
  background: linear-gradient(135deg,rgba(0,112,204,0.15),rgba(26,106,255,0.08));
}
.diag-arr {
  background: linear-gradient(180deg,rgba(0,112,204,0.45),rgba(0,112,204,0.05));
}
.diag-arr::after { border-top-color: rgba(0,112,204,0.4) }
.model-p { color: var(--pale) }

/* economics stats */
.eco-stat {
  background: linear-gradient(160deg,rgba(255,255,255,0.9),rgba(228,236,244,0.6));
  border-color: rgba(0,112,204,0.14);
}
.eco-stat::before {
  background: linear-gradient(90deg,transparent,var(--cyan),transparent);
}

/* caps grid */
.cap-ico {
  background: linear-gradient(135deg,rgba(0,112,204,0.1),rgba(26,106,255,0.05));
  border-color: rgba(0,112,204,0.2);
}

/* ══════════════════════════════════════
   ECOSYSTEM PAGE
══════════════════════════════════════ */
.eco-flow-panel {
  background: linear-gradient(155deg,rgba(255,255,255,0.95),rgba(240,244,248,0.9));
  border-color: rgba(0,112,204,0.14);
}
.fl-node {
  background: rgba(255,255,255,0.7);
  border-color: rgba(0,112,204,0.2);
  color: var(--pale);
}
.fl-node:hover { border-color: var(--cyan); color: var(--cyan) }
.fl-node.hl {
  border-color: var(--cyan);
  color: var(--cyan);
  box-shadow: 0 0 18px rgba(0,112,204,0.12);
}
.fl-arr {
  background: linear-gradient(180deg,rgba(0,112,204,0.45),rgba(0,112,204,0.05));
}
.fl-arr::after { border-top-color: rgba(0,112,204,0.4) }

/* ══════════════════════════════════════
   CAPABILITIES PAGE
══════════════════════════════════════ */
.cap-row {
  background: linear-gradient(135deg,rgba(255,255,255,0.95),rgba(240,244,248,0.9));
  border-color: rgba(0,112,204,0.14);
}
.cap-row-head {
  background: linear-gradient(135deg,rgba(0,112,204,0.06),transparent);
  border-right-color: rgba(0,112,204,0.12);
}
.cap-row-head h3 { color: var(--pale) }
.cap-row-head .ico {
  background: linear-gradient(135deg,rgba(0,112,204,0.1),rgba(26,106,255,0.05));
  border-color: rgba(0,112,204,0.2);
}
.cap-row-body p { color: var(--pale) }
.bullet-list li::before {
  background: var(--cyan);
  box-shadow: 0 0 6px var(--cyan);
}

/* ══════════════════════════════════════
   LEADERSHIP PAGE
══════════════════════════════════════ */
.lead-vision {
  background: linear-gradient(135deg,rgba(0,112,204,0.06),rgba(0,112,204,0.02));
  border-color: rgba(0,112,204,0.14);
}
.lead-body { color: var(--pale) }
.lead-vision p { color: var(--pale) }

/* ══════════════════════════════════════
   NEWS PAGE
══════════════════════════════════════ */
.news-cat {
  border-color: rgba(0,112,204,0.2);
  color: var(--dim);
}
.news-cat.active, .news-cat:hover {
  border-color: var(--cyan);
  color: var(--cyan);
  background: rgba(0,112,204,0.06);
}
.news-title { color: var(--pale) }
.news-date { color: var(--dim) }

/* ══════════════════════════════════════
   CONTACT PAGE
══════════════════════════════════════ */
.info-block {
  background: linear-gradient(135deg,rgba(255,255,255,0.95),rgba(240,244,248,0.9));
  border-color: rgba(0,112,204,0.14);
}
.contact-form {
  background: linear-gradient(155deg,rgba(255,255,255,0.95),rgba(240,244,248,0.9));
  border-color: rgba(0,112,204,0.14);
}
.form-input {
  background: rgba(255,255,255,0.8);
  border-color: rgba(0,112,204,0.2);
  color: var(--pale);
}
.form-input:focus { border-color: var(--cyan) }
.form-input::placeholder { color: var(--dim); opacity: 0.5 }

/* ══════════════════════════════════════
   HAMBURGER MENU (mobile overlay)
══════════════════════════════════════ */
@media(max-width:1024px){
  .nav-links {
    background: rgba(240,244,248,0.98) !important;
  }
  .nav-links a { color: var(--pale) !important }
}
