:root{
  --brand: #5863f8;        /* primary accent */
  --brand-2: #7bdaff;      /* secondary accent */
  --ink: #0b1220;          /* dark text */
  --ink-muted: #6b7280;
  --bg-deep: #0b1220;
  --glass-bg: rgba(255,255,255,.06);
  --glass-stroke: rgba(255,255,255,.12);
}

html, body { scroll-behavior: smooth; }

body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  color: #0e1320;
  background:
    radial-gradient(1200px 600px at 85% -10%, rgba(123,218,255,.25), transparent 70%),
    radial-gradient(1200px 600px at -10% 20%, rgba(88,99,248,.25), transparent 60%),
    linear-gradient(180deg, #f7f9ff 0%, #f2f6ff 100%);
}

a {
	text-decoration:none;
}

/* Spacing helpers */
.section-pad-top{ padding-top: 12rem; }
.section-pad{ padding: 5rem 0; }

/* Navbar */
.bg-glass{
  background: var(--glass-bg);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--glass-stroke);
}
.navbar {
  background: #0b1220;
}
.navbar .navbar-brand b{ letter-spacing: .2px; }
.navbar .nav-link{ position: relative; }
.navbar .nav-link:hover{ color:#fff; }
.navbar .nav-link::after{
  content:""; position:absolute; left:.8rem; right:.8rem; bottom:.4rem;
  height:2px; background: linear-gradient(90deg,var(--brand),var(--brand-2));
  transform: scaleX(0); transform-origin:left; transition: transform .25s ease;
}
.navbar .nav-link:hover::after{ transform: scaleX(1); }

/* Hero */
.hero{
  background:
    radial-gradient(900px 400px at 70% 60%, rgba(88,99,248,.35), transparent 70%),
    linear-gradient(180deg, #0b1220 0%, #101a34 100%);
  color: #eaf0ff;
  padding-bottom: 4rem;
}
.hero-badge{
  background: rgba(255,255,255,.12);
  color:#fff;
  border: 1px solid rgba(255,255,255,.22);
}
.text-hero-muted{ color:#bcd0ff; }

/* Cards */
.card-glass{
  background: rgba(255,255,255,.85);
  border: 1px solid rgba(10,20,40,.08);
  backdrop-filter: blur(6px);
  border-radius: 1rem;
  box-shadow: 0 10px 30px rgba(13,17,48,.10);
}

/* Section title */
.section-title{
  font-weight: 800;
  letter-spacing: .2px;
  color: #0d1a3a;
}

/* Utilities */
.list-check li{ margin:.35rem 0; }
.list-check li::marker{ content: "✓  "; color: var(--brand); }

/* Feature bullets */
.feature{ display:flex; align-items:flex-start; gap:.75rem; margin-bottom:1rem; }
.icon-bullet{
  width:2.4rem; height:2.4rem; border-radius:.8rem;
  display:inline-flex; align-items:center; justify-content:center;
  background:#f1f5ff; border:1px solid #e3ebff;
}

/* “Pillar” callout */
.pillar{
  border-left: 4px solid var(--brand);
  padding: 1rem;
  background: #f8fbff;
  border-radius: .5rem;
  border: 1px solid #e9f1ff;
}

/* Soft background sections */
.bg-soft{
  background: linear-gradient(180deg, #f7faff 0%, #eef4ff 100%);
}

/* Footer */
.footer{
  background:#0b1220;
  color:#b8c2d9;
  padding:2rem 0;
}
.link-underline{ text-decoration: none; border-bottom: 1px dashed rgba(13,26,58,.35); }
.link-underline:hover{ border-bottom-style: solid; }

/* Buttons */
.btn-primary{
  background: linear-gradient(90deg, var(--brand), var(--brand-2));
  border: none;
  box-shadow: 0 8px 20px rgba(88,99,248,.25);
}
.btn-primary:hover{
  filter: brightness(.95);
}
.btn-outline-light{
  border-color: rgba(255,255,255,.6);
  color:#fff;
}

/* Forms */
.form-control:focus{
  border-color: var(--brand);
  box-shadow: 0 0 0 .2rem rgba(88,99,248,.15);
}
