﻿:root {
  /* Primary Colors (Deep + Premium) */
  --ink-900: #0b1220;
  --ink-800: #121a2b;
  --ink-700: #1a2336;

  /* Backgrounds */
  --surface: #ffffff;
  --surface-soft: #f8fafc;
  --surface-muted: #eef2f7;

  /* Borders */
  --line: #e2e8f0;
  --line-strong: #cbd5e1;

  /* Accent (High Conversion Blue-Purple) */
  --accent: #5b7cfa;
  --accent-2: #4c6ef5;
  --accent-gradient: linear-gradient(135deg, #5b7cfa, #7c3aed);

  /* Text */
  --text-primary: #0f172a;
  --text-secondary: #475569;
  --text-muted: #64748b;

  /* Status */
  --ok: #16a34a;
  --warning: #f59e0b;
  --error: #ef4444;

  /* Fonts */
  --font-title: "Space Grotesk", sans-serif;
  --font-body: "Plus Jakarta Sans", sans-serif;

  /* Shadows (Modern Soft Depth) */
  --shadow-soft: 0 8px 30px rgba(15, 23, 42, 0.08);
  --shadow-medium: 0 12px 40px rgba(15, 23, 42, 0.12);

  /* Radius */
  --radius: 14px;
}

body {
  background: #ffffff !important;
  color: #222222 !important;
}

.nav-shell {
  background: rgba(255, 255, 255, 0.98) !important;
  border-bottom: 1px solid #e9e9e9 !important;
}

.navbar-toggler {
  border-color: #d9d9d9 !important;
}

.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2817,17,17,0.9%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2.1' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

.nav-link {
  color: #111111 !important;
}

.nav-link:hover,
.nav-link.active {
  background: #edf3ff !important;
  color: #111111 !important;
}

.btn-main,
.btn-main:focus {
  background: #0b1220 !important;
  border: 1px solid #0b1220 !important;
  color: #ffffff !important;
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.12);
}

.btn-main:hover {
  background: #245dca !important;
  color: #ffffff !important;
}

.btn-lite,
.hero-btn-outline {
  background: #ffffff !important;
  border: 1px solid #d9d9d9 !important;
  color: #111111 !important;
}

.btn-lite:hover,
.hero-btn-outline:hover {
  background: #f8f8f8 !important;
  color: #111111 !important;
}

.top-cta {
  background: #f3f7ff !important;
  border-bottom: 1px solid #d7e3ff !important;
}

.top-cta p,
.tfn-link {
  color: #111111 !important;
}

/* .hero {
  background-image:
    linear-gradient(108deg, rgba(7, 16, 28, 0.76), rgba(7, 16, 28, 0.52)),
    var(--hero-image) !important;
} */

.hero::before {
  background: radial-gradient(
    circle,
    rgba(47, 109, 225, 0.3),
    transparent 66%
  ) !important;
}

.hero-chip {
  border-color: rgba(47, 109, 225, 0.82) !important;
  background: rgba(47, 109, 225, 0.18) !important;
}

.section,
.section p,
.section li,
.section h2,
.section h3,
.kicker,
.lead-copy,
.form-note {
  color: #222222 !important;
}

.section-soft {
  background: #ffffff !important;
  border-top: 1px solid #ededed !important;
  border-bottom: 1px solid #ededed !important;
}

.kicker {
  color: #111111 !important;
}

.card,
.form-box,
.state-card,
.faq,
.city-cloud,
.price-table,
.booking-widget,
.custom-card,
.req-box,
.requirements-card {
  border-color: #e6e6e6 !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08) !important;
  padding: 10px 20px;
  margin-top: 30px;
}

.feature-list li::before,
.policy-list li::before {
  background: #0b1220 !important;
}

.banner-note {
  background: #eef4ff !important;
  border-left-color: #0b1220 !important;
  color: #1f1f1f !important;
}

.price-table th {
  background: #eef3ff !important;
  color: #111111 !important;
}

.cta-band {
  background: #111827 !important;
  color: #ffffff !important;
}

.cta-band h2,
.cta-band p {
  color: #ffffff !important;
}

.site-footer {
  background: #f8f9fc !important;
  border-top: 1px solid #e7e7e7 !important;
}

.site-footer h4,
.site-footer h5,
.site-footer p,
.site-footer span,
.site-footer a,
.footer-links a,
.footer-contact,
.footer-contact a,
.footer-meta {
  color: #111111 !important;
}

.ok-pill {
  background: #edf3ff !important;
  border-color: #c6d8ff !important;
  color: #111111 !important;
}

.sticky-tfn-bar {
  background: #111827 !important;
}

.sticky-tfn-label {
  color: #ffffff !important;
}

.sticky-tfn-link {
  background: #0b1220 !important;
  border: 1px solid #0b1220 !important;
  color: #ffffff !important;
}

.cookie-banner {
  border-color: #dfdfdf !important;
}

@media (max-width: 991px) {
  .navbar-collapse {
    background: #ffffff !important;
    border-color: #e7e7e7 !important;
  }

  .nav-link,
  .nav-link.active,
  .nav-link:hover {
    color: #111111 !important;
  }
}

@media (max-width: 575px) {
  .top-cta-actions .btn-main,
  .top-cta-actions .btn-lite {
    width: 100% !important;
  }
}
