:root {
  --royal: #6d28d9;
  --magenta: #db2777;
  --cyan: #06b6d4;
  --ink: #0f172a;
  --snow: #f9fafb;
  --royal-soft: #ede9fe;
}

* {
  font-family: "IBM Plex Sans", system-ui, -apple-system, Segoe UI, Roboto,
    Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
}
h1,
h2,
h3,
.navbar-brand {
  font-family: "Space Grotesk", "IBM Plex Sans", system-ui, Segoe UI, Roboto,
    Helvetica, Arial;
}

.text-royal {
  color: var(--royal) !important;
}
.bg-royal {
  background: var(--royal) !important;
  color: #fff;
}
.bg-royal-soft {
  background: var(--royal-soft) !important;
}
.bg-ink {
  background: var(--ink) !important;
}
.bg-snow {
  background: var(--snow) !important;
}

.bg-gradient-royal {
  background: linear-gradient(
    90deg,
    var(--royal) 0%,
    var(--magenta) 50%,
    var(--cyan) 100%
  );
}
.link-royal {
  color: var(--royal);
  text-decoration: none;
}
.link-royal:hover {
  color: var(--magenta);
  text-decoration: underline;
}

.hero-royal {
  background: radial-gradient(
      1000px 500px at 10% 10%,
      rgba(109, 40, 217, 0.35),
      transparent 60%
    ),
    radial-gradient(
      1000px 500px at 90% 0%,
      rgba(219, 39, 119, 0.3),
      transparent 60%
    ),
    radial-gradient(
      1200px 600px at 50% 100%,
      rgba(6, 182, 212, 0.25),
      transparent 60%
    ),
    linear-gradient(180deg, #171a2f 0%, #0f172a 100%);
}
.hero-card .card-body {
  background: #fff;
  border-radius: 1rem;
}

.py-6 {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
}

.btn-royal {
  background: linear-gradient(90deg, var(--royal) 0%, var(--magenta) 100%);
  color: #fff;
  border: 0;
}
.btn-royal:hover {
  opacity: 0.92;
  color: #fff;
}
.price.border-royal {
  border: 2px solid var(--royal) !important;
}

.card {
  border-radius: 1rem;
}
.step .step-num {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--royal-soft);
  color: var(--royal);
  font-weight: 800;
}

footer a.link-light:hover {
  opacity: 0.85;
}

:focus-visible {
  outline: 3px solid var(--cyan);
  outline-offset: 2px;
}
summary {
  cursor: pointer;
}
