:root{
  --bg0:#070A13;
  --bg1:#0B1226;
  --glass: rgba(255,255,255,.08);
  --glass2: rgba(255,255,255,.12);
  --stroke: rgba(255,255,255,.14);
  --text: rgba(255,255,255,.92);
  --muted: rgba(255,255,255,.65);
  --glow: 0 0 28px rgba(136, 97, 255, .35);
  --radius: 24px;
}

html, body { height: 100%; }
body{
  background: radial-gradient(1200px 600px at 20% -10%, rgba(136, 97, 255, .35), transparent 60%),
              radial-gradient(900px 500px at 85% 10%, rgba(45, 212, 191, .30), transparent 60%),
              linear-gradient(180deg, var(--bg0), var(--bg1));
  color: var(--text);
}

a { color: inherit; }

.glass-nav{
  backdrop-filter: blur(16px);
  background: rgba(10, 15, 30, .65);
  border-bottom: 1px solid var(--stroke);
}

.footer{
  background: rgba(10, 15, 30, .50);
  backdrop-filter: blur(12px);
}

.hero{
  position: relative;
  padding: 5.5rem 0 3rem;
  overflow: hidden;
}

.hero-orb{
  position:absolute;
  width: 520px;
  height: 520px;
  filter: blur(40px);
  opacity: .55;
  border-radius: 999px;
  mix-blend-mode: screen;
  pointer-events:none;
}
.orb-1{ left:-200px; top:-220px; background: radial-gradient(circle, rgba(136,97,255,.9), transparent 60%); }
.orb-2{ right:-240px; top:-140px; background: radial-gradient(circle, rgba(45,212,191,.8), transparent 60%); }

.section-pad{ padding: 4.5rem 0; }
.section-surface{
  background: linear-gradient(180deg, rgba(255,255,255,.04), transparent 65%);
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.badge-pill{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.55rem .9rem;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  border-radius: 999px;
  color: var(--text);
}

.glass-card{
  border: 1px solid var(--stroke);
  background: var(--glass);
  border-radius: var(--radius);
  box-shadow: 0 14px 40px rgba(0,0,0,.35);
  backdrop-filter: blur(16px);
}

.lift{
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.lift:hover{
  transform: translateY(-4px);
  border-color: rgba(255,255,255,.22);
  box-shadow: 0 24px 70px rgba(0,0,0,.45);
}

.btn-glow{
  border: 1px solid rgba(255,255,255,.18);
  background: linear-gradient(135deg, rgba(136,97,255,.9), rgba(45,212,191,.75));
  box-shadow: var(--glow);
  color: white;
}
.btn-glow:hover{ filter: brightness(1.03); color:white; }

.icon-bubble{
  width: 42px; height:42px;
  display:flex; align-items:center; justify-content:center;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.07);
}

.pill{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.3rem .65rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  font-size:.85rem;
  color: var(--muted);
}

.soft{ border-color: rgba(255,255,255,.10); }

.leadish{
  color: var(--muted);
  margin-bottom: .9rem;
  line-height: 1.55;
}

.fancy-list{
  margin: 0 0 1rem 0;
  padding-left: 1.1rem;
  color: var(--muted);
}
.fancy-list li{
  margin: .35rem 0;
}
.fancy-list li::marker{
  color: rgba(45,212,191,.9);
}

.chip{
  padding: .35rem .6rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.05);
  font-size: .8rem;
  color: var(--muted);
}

.clamp-4{
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.timeline{ display:flex; flex-direction:column; gap: 14px; }
.t-item{ display:flex; gap: 12px; align-items:flex-start; }
.dot{
  width: 12px; height: 12px;
  margin-top: 4px;
  border-radius: 50%;
  background: rgba(45,212,191,.85);
  box-shadow: 0 0 0 6px rgba(45,212,191,.12);
}
.t-title{ font-weight: 700; }
.t-sub{ color: var(--muted); font-size: .9rem; }

.glass-accordion{
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
}
.accordion-button{
  background: rgba(255,255,255,.06);
  color: var(--text);
}
.accordion-button:not(.collapsed){
  background: rgba(255,255,255,.08);
  color: var(--text);
}
.accordion-body{ color: var(--muted); }

/* Force all headings to white */
h1, h2, h3, h4, h5, h6,
.section-pad h1,
.section-pad h2,
.section-pad h3,
.section-pad h4,
.section-pad h5,
.section-pad h6,
.hero h1,
.hero h2,
.card-title,
.accordion-button {
    color: #ffffff !important;
}

.logo-strip {
    display: flex;
    justify-content: center;
    padding: 16px 12px 6px;
}

.site-logo {
    max-width: 480px;
    width: 100%;
    height: auto;
    opacity: .95;
    filter: drop-shadow(0 8px 20px rgba(0,0,0,.45));
}