:root{
  --royal: #1F3A93;
  --orange: #FF6A3D;
  --mint: #2EC4B6;
  --amber: #FFB703;
  --ink: #0F172A;
  --soft: #F6F7FB;
}

html, body{
  font-family: "Rubik", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  color: var(--ink);
  background: #fff;
}

h1,h2,h3,h4,h5{
  font-family: "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.fw-extrabold{ font-weight: 800; }
.nav-link.active{ color: var(--royal)!important; font-weight:600; }
.nav-link:hover{ color: var(--royal); }

.hero-sunset{
  background:
    radial-gradient(1200px 600px at 10% 10%, rgba(255,255,255,.12), rgba(255,255,255,0)),
    linear-gradient(135deg, var(--royal), var(--orange));
}

.bg-soft{ background: var(--soft); }

.shadow-neo{ box-shadow: 0 12px 32px rgba(31,58,147,.25); }

.card{ border-radius: 1rem; }
.card .bi{ vertical-align:-2px; }

.text-royal{ color: var(--royal)!important; }
.text-mint{ color: var(--mint)!important; }

.btn-mint{
  --bs-btn-bg: var(--mint);
  --bs-btn-border-color: var(--mint);
  --bs-btn-hover-bg: #25a99f;
  --bs-btn-hover-border-color: #25a99f;
  color:#fff;
}

.price-card.highlight{ outline: 3px solid var(--orange); }
.price-card .display-6{ color: var(--royal); }

.step-badge{
  display:inline-flex; width:44px; height:44px; align-items:center; justify-content:center;
  border-radius:50%; background: var(--royal); color:#fff; font-weight:700;
}

.glass{
  background: rgba(255,255,255,.74);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(31,58,147,.12);
}

.section-cta{
  background:
    radial-gradient(800px 400px at 80% 10%, rgba(255,183,3,.22), rgba(255,183,3,0)),
    linear-gradient(135deg, #ffffff, #f4f7ff);
  border-top: 1px solid rgba(0,0,0,.04);
}

/* Accessibility & UX */
.hp-field{ position:absolute; left:-10000px; top:auto; width:1px; height:1px; overflow:hidden; }
a{ text-underline-offset: 2px; }

/* Breadcrumb contrast */
.breadcrumb a{ text-decoration: none; }
