
:root{
  --bg:#0A0F22; --bg-2:#111936;
  --text:#F5F8FF;
  --body:#E2EBFF;
  --muted:#C5D3F6;
  --primary:#5B8CFF; --accent:#00E5A8;
  --card:#101630; --border:#2C3A6B;

  --bs-body-bg: var(--bg);
  --bs-body-color: var(--body);
  --bs-secondary-color: var(--muted);
  --bs-tertiary-color: #AFC3F0;
  --bs-heading-color: var(--text);
  --bs-link-color: #D7E6FF;
  --bs-border-color: var(--border);
}

html,body{height:100%}
body{
  font-family:'Manrope',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:
    radial-gradient(1200px 700px at 10% -20%, rgba(91,140,255,.20), transparent 60%),
    radial-gradient(1000px 600px at 120% 20%, rgba(0,229,168,.14), transparent 60%),
    var(--bg);
  color:var(--body);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}

/* Light text utilities */
.text-body{color:var(--body)!important}
.text-body-secondary, .text-muted{color:var(--muted)!important; opacity:1!important}
h1,h2,h3,h4,h5,h6,.text-bright{color:var(--text)!important}

/* Navbar */
.nav-pro{background:linear-gradient(180deg, rgba(16,22,48,.85), rgba(16,22,48,.62)); backdrop-filter: blur(10px); border-bottom:1px solid rgba(48,64,120,.9)}
.nav-underline{height:2px;background:linear-gradient(90deg,var(--primary),var(--accent));opacity:.9}
.navbar .brand-text{letter-spacing:-.2px}
.navbar .nav-link{font-weight:700;color:#E6EEFF;opacity:.95}
.navbar .nav-link:hover{color:#FFFFFF;opacity:1}
.navbar .nav-link.active{position:relative;color:#FFFFFF}
.navbar .nav-link.active::after{content:'';position:absolute;left:.5rem;right:.5rem;bottom:.2rem;height:2px;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:2px}

/* Dropdown (glass, dark) */
.dropdown-menu.glass{background:rgba(17,23,46,.98);border:1px solid var(--border);box-shadow:0 12px 30px rgba(0,0,0,.35);backdrop-filter: blur(10px)}
.dropdown-menu.glass .dropdown-item{color:#E7EEFF}
.dropdown-menu.glass .dropdown-item:hover,.dropdown-menu.glass .dropdown-item:focus{background:#17224A;color:#FFFFFF}
.dropdown-menu.glass .dropdown-item.active{background:linear-gradient(180deg,#18245A,#152049);color:#fff;border-left:3px solid var(--accent)}

/* Buttons */
.btn-gradient{background:linear-gradient(90deg,var(--primary),var(--accent));color:#041022;border:0}
.btn-gradient:hover{opacity:.95;color:#041022}
.btn-outline-light{border-color:#44558F;color:#F0F5FF}
.btn-outline-light:hover{background:#121B3D;border-color:#6EA0FF;color:#fff}
.btn-soft{border:1px solid var(--border); background:#131C3E; color:#F0F6FF; border-radius:10px; padding:.45rem .8rem}
.btn-soft:hover{background:#17224A}

/* Hero & sections */
.hero-dark{position:relative;background:
  radial-gradient(900px 600px at 10% -20%, rgba(91,140,255,.22), transparent 60%),
  radial-gradient(900px 600px at 120% 10%, rgba(0,229,168,.16), transparent 60%),
  var(--bg)}
.grid-lines{position:absolute;inset:0;pointer-events:none;background:
  repeating-linear-gradient(to bottom, rgba(91,140,255,.12) 0 1px, transparent 1px 120px),
  repeating-linear-gradient(to right, rgba(91,140,255,.08) 0 1px, transparent 1px 120px);mask-image:radial-gradient(800px 500px at 30% 10%, #000 40%, transparent 80%)}
.hero-mark{width:min(100%,420px);filter:drop-shadow(0 20px 40px rgba(0,0,0,.35))}
.slogan{margin-top:.25rem}
.section-dark{background:var(--bg-2)}
.section-eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--muted);font-weight:800;font-size:.8rem;margin-bottom:.4rem}
.h2{font-family:'Space Grotesk', Manrope, sans-serif;font-size:clamp(26px,4.2vw,40px);letter-spacing:-.5px;color:var(--text)}

/* Cards */
.card-pro{background:linear-gradient(180deg, rgba(19,26,58,.7), rgba(17,23,46,.95));border:1px solid var(--border);border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.card-pro p, .card-pro li, .card-pro .small{color:var(--body)!important}
.border-highlight{border-color:#344583!important}
.icon-circle{width:40px;height:40px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:#0f1735;border:1px solid var(--border);color:#CFE8FF}

/* Page hero */
.page-hero-dark{background:#0F1530;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}

/* Forms */
.form-label{color:var(--text)!important}
.form-control,.form-select{border-radius:12px;border:1px solid var(--border);background:#0F1530;color:#F2F7FF}
.form-control::placeholder{color:#C2CDEF}
.form-control:focus,.form-select:focus{border-color:#3950A0;box-shadow:0 0 0 .25rem rgba(91,140,255,.25)}
.btn-seg{border:1px solid var(--border)!important;background:#0F1530;color:#EAF0FF;font-weight:700}
.btn-check:checked + .btn-seg{background:linear-gradient(180deg,#18245A,#152049);border-color:#4362C9;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.rfq-form .form-check-label{color:var(--body)!important}
.form-text{color:var(--muted)!important}

/* Footer */
.footer-dark{background:#0a0f1f;color:#CFE0FF}
.footer-dark .text-body-secondary{color:var(--muted)!important}

/* Accessibility */
.skip-link{position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{position:static;width:auto;height:auto;padding:.25rem .5rem;background:#000;color:#fff}
