/* Urban auto-insurance portal — dark palette override (distinct from ntemp1 default) */
:root {
  --urban-bg: #020617;
  --urban-panel: #111827;
  --urban-edge: #1f2937;
  --urban-text: #e5e7eb;
  --urban-muted: #9ca3af;
  --urban-accent: #22c55e;
  --urban-accent-2: #60a5fa;
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--urban-bg) !important;
  color: var(--urban-text) !important;
}

.header-style {
  background: rgba(17, 24, 39, 0.92) !important;
  border-bottom: 1px solid var(--urban-edge) !important;
  backdrop-filter: blur(10px);
}

.brand-link,
.nav-link,
.nav-link-mobile {
  color: var(--urban-text) !important;
}

.nav-link:hover,
.nav-link:focus,
.nav-link-mobile:hover {
  color: var(--urban-accent) !important;
}

.hero-section-alt {
  background: radial-gradient(1200px 600px at 10% 0%, rgba(96, 165, 250, 0.12), transparent),
    linear-gradient(180deg, #0b1224 0%, var(--urban-bg) 55%) !important;
}

.hero-title,
.hero-subtitle,
.content_section_title,
.display-4,
.footer-sitename,
h1,
h2,
h3 {
  color: var(--urban-text) !important;
}

.hero-description,
.premium_section_subtitle,
.studio_body_large,
.bright_body_base,
.lead,
.text-muted,
.text-secondary {
  color: var(--urban-muted) !important;
}

.usp-card,
.service-card,
.blog-card,
.leadgen-form-card,
.form-card,
.info-card {
  background: var(--urban-panel) !important;
  border: 1px solid var(--urban-edge) !important;
  color: var(--urban-text) !important;
}

.usp-value-badge span {
  color: var(--urban-accent-2) !important;
}

.btn-leadgen-submit,
.btn-primary {
  background: var(--urban-accent) !important;
  border-color: var(--urban-accent) !important;
  color: #fff !important;
}

.btn-leadgen-submit:hover {
  filter: brightness(1.05);
}

.service-cta {
  color: var(--urban-accent-2) !important;
}

.footer-style {
  background: #030712 !important;
  color: var(--urban-text) !important;
}

.footer-description,
.footer-section-title,
.copyright-text,
.disclaimer-content p {
  color: var(--urban-muted) !important;
}

.footer-links-list a,
.contact-details a {
  color: var(--urban-text) !important;
}

.footer-links-list a:hover {
  color: var(--urban-accent) !important;
}

.footer-disclaimer {
  background: rgba(17, 24, 39, 0.65) !important;
  border: 1px solid var(--urban-edge) !important;
}

.disclaimer-content i {
  color: var(--urban-accent-2) !important;
}

.form-control,
.form-select,
textarea.form-control {
  background: #0f172a !important;
  border-color: var(--urban-edge) !important;
  color: var(--urban-text) !important;
}

.form-floating > label {
  color: var(--urban-muted) !important;
}

.mobile-menu-overlay {
  background: rgba(2, 6, 23, 0.96) !important;
}

.mobile-menu-toggle {
  border: 0 !important;
  background: transparent !important;
}

.hamburger-line {
  background: var(--urban-text) !important;
}

@media (max-width: 991px) {
  .header-nav-desktop {
    display: none !important;
  }

  .mobile-menu-toggle {
    display: flex !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 10002 !important;
  }

  .mobile-menu-overlay {
    display: block !important;
    position: fixed !important;
    top: 70px !important;
    bottom: auto !important;
    visibility: visible !important;
    opacity: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-height: calc(100vh - 70px) !important;
    overflow-y: auto !important;
    pointer-events: none !important;
    transform: translateY(-12px) !important;
    z-index: 9999 !important;
    border-top: 1px solid var(--urban-edge) !important;
    box-shadow: 0 24px 50px rgba(0, 0, 0, 0.45) !important;
    transition: opacity 0.24s ease, transform 0.24s ease !important;
  }

  .mobile-menu-overlay.active {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  body.mobile-menu-open .mobile-menu-overlay {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  body.mobile-menu-open {
    overflow: hidden !important;
  }

  .header-nav-mobile {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.75rem !important;
    padding: 1rem 1.25rem 1.5rem !important;
  }

  .nav-link-mobile {
    display: block !important;
    padding: 0.75rem 0 !important;
    font-size: 1rem !important;
  }
}

@media (min-width: 992px) {
  .header-nav-desktop {
    display: flex !important;
  }

  .mobile-menu-toggle,
  .mobile-menu-overlay {
    display: none !important;
  }
}

.leadgen-section-secondary,
.contact-section-modern {
  background: radial-gradient(900px 360px at 10% 5%, rgba(96, 165, 250, 0.16), transparent),
    linear-gradient(135deg, #020617 0%, #0f172a 54%, #111827 100%) !important;
  color: var(--urban-text) !important;
}

.leadgen-section-secondary .leadgen-form-card,
.contact-section-modern .form-card,
.contact-section-modern .info-card {
  background: rgba(17, 24, 39, 0.96) !important;
  border: 1px solid var(--urban-edge) !important;
  color: var(--urban-text) !important;
}

.leadgen-section-secondary .form-control,
.leadgen-section-secondary .form-select,
.leadgen-section-secondary .leadgen-form-dynamic .form-control,
.leadgen-section-secondary .leadgen-form-dynamic .form-select,
.contact-section-modern .form-control {
  background: #020617 !important;
  border-color: #334155 !important;
  color: var(--urban-text) !important;
}

.leadgen-section-secondary .form-control::placeholder,
.contact-section-modern .form-control::placeholder {
  color: rgba(229, 231, 235, 0.42) !important;
}

.leadgen-section-secondary .form-floating > label,
.leadgen-section-secondary .leadgen-form-dynamic .form-floating > label,
.contact-section-modern .form-floating > label,
.leadgen-section-secondary .form-check-label,
.contact-section-modern .form-check-label,
.contact-section-modern .info-value {
  color: var(--urban-text) !important;
}

.leadgen-section-secondary .text-muted,
.contact-section-modern .text-muted,
.leadgen-section-secondary .text-secondary,
.contact-section-modern .text-secondary {
  color: var(--urban-muted) !important;
}

.leadgen-section-secondary .form-check,
.contact-section-modern .form-check {
  background: rgba(2, 6, 23, 0.72) !important;
  border-color: #334155 !important;
}

.contact-section-modern .btn-submit {
  background: var(--urban-accent) !important;
  color: #ffffff !important;
  border: 0 !important;
}

.py-5 .container h1,
.py-5 .container h2 {
  color: var(--urban-text) !important;
}

.py-5 .container p,
.py-5 .container li {
  color: var(--urban-muted) !important;
}
