:root{
  --ink:#0b1220;
  --ink2:#0f172a;
  --accent:#f59e0b;
  --accent2:#60a5fa;
  --border:rgba(255,255,255,.12);
  --shadow:0 18px 42px rgba(0,0,0,.35);
}

html{scroll-behavior:smooth}
body{
  font-size:18px;
  background:
    radial-gradient(1100px 600px at 12% 0%, rgba(245,158,11,.18), transparent 55%),
    radial-gradient(900px 600px at 100% 18%, rgba(96,165,250,.14), transparent 60%),
    var(--ink);
}

.bg-ink{background-color:var(--ink)!important}
.bg-ink-2{background-color:var(--ink2)!important}
.text-accent{color:var(--accent)!important}
.text-bg-accent-soft{
  background:rgba(245,158,11,.18)!important;
  color:#fff!important;
  border:1px solid var(--border);
}

.border-opacity-10{--bs-border-opacity:.10}
.shadow-soft{box-shadow:var(--shadow)!important}

.brand-badge{
  width:40px;height:40px;border-radius:14px;
  background:linear-gradient(135deg, rgba(245,158,11,.35), rgba(96,165,250,.18));
  border:1px solid var(--border);
  box-shadow:0 12px 28px rgba(0,0,0,.25);
}

.icon-chip{
  width:46px;height:46px;border-radius:16px;
  display:inline-flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.05);
  border:1px solid var(--border);
  color:#fff;
}

.avatar-chip{
  width:38px;height:38px;border-radius:14px;
  display:inline-flex;align-items:center;justify-content:center;
  background:rgba(245,158,11,.14);
  border:1px solid var(--border);
  color:#fff;
}

.step-dot{
  width:44px;height:44px;border-radius:16px;
  display:inline-flex;align-items:center;justify-content:center;
  background:rgba(96,165,250,.14);
  border:1px solid var(--border);
  color:#fff;
  flex:0 0 auto;
}

.hero{overflow:hidden}
.hero .card{border-radius:24px}
.rounded-4{border-radius:24px!important}

.btn-accent{
  --bs-btn-color:#0b1220;
  --bs-btn-bg:var(--accent);
  --bs-btn-border-color:rgba(255,255,255,.12);
  --bs-btn-hover-color:#0b1220;
  --bs-btn-hover-bg:#ffb020;
  --bs-btn-hover-border-color:rgba(255,255,255,.18);
  --bs-btn-focus-shadow-rgb:245,158,11;
  --bs-btn-active-color:#0b1220;
  --bs-btn-active-bg:#ffb020;
  --bs-btn-active-border-color:rgba(255,255,255,.18);
  font-weight:800;
}

.navbar .nav-link{border-radius:14px}
.navbar .nav-link:hover{background:rgba(255,255,255,.06)}

.accordion-button{
  font-weight:750;
  border-radius:0!important;
}
.accordion-button:focus{box-shadow:none}
.accordion-button::after{filter:invert(1) grayscale(1)}
.accordion-item{border-radius:18px;overflow:hidden}
.accordion-item + .accordion-item{margin-top:10px}

.prose p{color:rgba(255,255,255,.78)}
.prose ul{color:rgba(255,255,255,.78)}
.prose a{color:#fff;text-underline-offset:4px}
.prose a:hover{color:var(--accent)}

.cookie-banner{
  position:fixed;left:0;right:0;bottom:0;z-index:1080;
  background:rgba(11,18,32,.86);
  backdrop-filter:blur(10px);
}

.object-fit-cover{object-fit:cover}
/* White text on dark backgrounds */
.bg-ink, .bg-ink-2, .navbar, footer, .card, .accordion, .modal-content{
  color:#ffffff;
}
.text-muted, .text-body-secondary{
  color:rgba(255,255,255,.92)!important;
}
.prose p, .prose ul{
  color:rgba(255,255,255,.92)!important;
}
