:root,
html[data-theme="light"] {
  --orange: #0b72ff;
  --orange-lt: #2d8cff;
  --gold: #69b4ff;
  --navy: #081426;
  --navy-mid: #10233d;
  --light: #f1f6fb;
  --mid-gray: #52657a;
  --border: #d8e4ef;
  --theme-bg: #f7fafd;
  --theme-surface: #ffffff;
  --theme-surface-2: #edf4fa;
  --theme-text: #0c1a2b;
  --theme-muted: #52657a;
  --theme-line: #d7e3ee;
  --theme-blue: #0b72ff;
  --theme-icon: #0875e8;
  --theme-icon-bg: #e8f3ff;
  --theme-icon-border: #b9dcff;
  color-scheme: light;
}

html[data-theme="dark"] {
  --orange: #168dff;
  --orange-lt: #45a5ff;
  --gold: #66b8ff;
  --navy: #050a12;
  --navy-mid: #0b1727;
  --light: #0b1420;
  --mid-gray: #9bb0c5;
  --border: #22344a;
  --theme-bg: #05080d;
  --theme-surface: #0a111c;
  --theme-surface-2: #0d1928;
  --theme-text: #eef6ff;
  --theme-muted: #9bb0c5;
  --theme-line: #22344a;
  --theme-blue: #168dff;
  --theme-icon: #58afff;
  --theme-icon-bg: rgba(22, 141, 255, .14);
  --theme-icon-border: rgba(88, 175, 255, .34);
  color-scheme: dark;
}

html,
body,
.header,
.topbar,
.footer,
section,
[class*="card"],
input,
textarea,
select,
button {
  transition: background-color .25s ease, color .25s ease, border-color .25s ease, box-shadow .25s ease;
}

body {
  background: var(--theme-bg);
  color: var(--theme-text);
}

.topbar {
  background: #03070d !important;
  border-bottom-color: #17263a !important;
}

.topbar__right {
  display: flex;
  align-items: center;
  gap: 12px;
}

.topbar__licenses {
  color: #9eb4ca;
}

.topbar__licenses i {
  color: #45a5ff;
}

.header,
.nav {
  background: rgba(5, 10, 18, .97) !important;
  border-bottom: 1px solid #1d3047 !important;
  box-shadow: 0 12px 34px rgba(0, 0, 0, .18) !important;
}

.nav__logo img {
  height: 52px !important;
  max-width: 220px !important;
  filter: none !important;
}

.nav__links a,
.nav__phone,
.header a {
  color: #d9e8f7 !important;
}

.nav__links a:hover,
.nav__links a.active,
.nav__phone:hover {
  color: var(--theme-blue) !important;
}

.nav__hamburger span {
  background: #d9e8f7 !important;
}

.nav__mobile-menu {
  background: #07111d !important;
  border-top-color: var(--theme-blue) !important;
}

.nav__mobile-menu a {
  color: #d9e8f7 !important;
  border-bottom-color: #22344a !important;
}

.theme-toggle {
  appearance: none;
  min-width: 88px;
  height: 38px;
  padding: 0 12px;
  border: 1px solid #2b4563;
  border-radius: 999px;
  background: #0c1827;
  color: #eaf4ff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font: 700 .75rem/1 'Inter', Arial, sans-serif;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}

.theme-toggle:hover {
  color: #fff;
  border-color: var(--theme-blue);
  background: #10243b;
  box-shadow: 0 0 0 3px rgba(22, 141, 255, .12);
}

.theme-toggle:focus-visible {
  outline: 3px solid rgba(75, 171, 255, .4);
  outline-offset: 2px;
}

.theme-toggle__icon {
  color: #66b8ff;
  font-size: 1rem;
}

.theme-toggle--topbar {
  min-width: 72px;
  height: 28px;
  padding: 0 9px;
  font-size: .7rem;
}

.btn--primary,
.btn-primary,
button[type="submit"] {
  background: linear-gradient(135deg, #0875e8, #18a0ff) !important;
  border-color: #2ba7ff !important;
  color: #fff !important;
  box-shadow: 0 10px 28px rgba(0, 117, 232, .24) !important;
}

.btn--primary:hover,
.btn-primary:hover,
button[type="submit"]:hover {
  background: linear-gradient(135deg, #168dff, #46b8ff) !important;
  transform: translateY(-1px);
}

/* Consistent icon tiles: remove the inherited peach/rust blocks. */
:is(
  .addon-card__icon, .contact__info-icon, .contact-info-item__icon,
  .detail-item__icon, .info-card__icon, .section-icon,
  .service-card__icon, .service-tile__icon, .setup-banner__icon,
  .step__icon, .term-card__icon, .why-card__icon
) {
  background: var(--theme-icon-bg) !important;
  color: var(--theme-icon) !important;
  border: 1px solid var(--theme-icon-border) !important;
  box-shadow: none !important;
}

:is(
  .addon-card__icon, .contact__info-icon, .contact-info-item__icon,
  .detail-item__icon, .info-card__icon, .section-icon,
  .service-card__icon, .service-tile__icon, .setup-banner__icon,
  .step__icon, .term-card__icon, .why-card__icon
) :is(i, svg) {
  color: inherit !important;
  fill: currentColor;
}

/* Preserve the blue/white logo artwork in dark footers. */
.footer__brand img {
  filter: none !important;
  height: 48px !important;
  max-width: 240px !important;
}

/* Replace every former orange/rust callout with the blue brand system. */
.section--orange,
.cta-band,
.cta-section {
  background: linear-gradient(135deg, #075fca 0%, #0b83ee 55%, #19a8ff 100%) !important;
}

/* Service-family urgency band: preserve strong contrast regardless of which
   theme variables the source template uses. */
.diag-band {
  background: linear-gradient(135deg, #064da8 0%, #0875e8 55%, #139de9 100%) !important;
}

.diag-band :is(h1, h2, h3, h4, p, li, strong),
.diag-band__list li,
.diag-band__list li i {
  color: #ffffff !important;
}

.badge {
  background: rgba(22, 141, 255, .11) !important;
  border-color: rgba(22, 141, 255, .34) !important;
  color: var(--theme-blue) !important;
}

/* Buttons remain distinct from their surrounding surfaces in both themes. */
.btn,
button,
[role="button"] {
  text-shadow: none;
}

.btn--dark {
  background: #081426 !important;
  border-color: #223f60 !important;
  color: #fff !important;
  box-shadow: 0 8px 24px rgba(3, 12, 25, .2) !important;
}

.btn--dark:hover {
  background: #102b49 !important;
  border-color: #2e75ad !important;
}

.btn--white {
  background: #fff !important;
  border-color: #fff !important;
  color: #075fca !important;
  box-shadow: 0 8px 24px rgba(3, 35, 74, .2) !important;
}

.btn--white:hover {
  background: #eaf5ff !important;
  border-color: #eaf5ff !important;
  color: #064faa !important;
}

.btn--outline-white,
.btn--ghost-white,
:is(.hero, .page-hero, .section--dark, .service-area, .cta-band, .cta-section) .btn--outline {
  background: rgba(4, 16, 31, .28) !important;
  border-color: rgba(255, 255, 255, .72) !important;
  color: #fff !important;
}

.btn--outline-white:hover,
.btn--ghost-white:hover,
:is(.hero, .page-hero, .section--dark, .service-area, .cta-band, .cta-section) .btn--outline:hover {
  background: rgba(255, 255, 255, .14) !important;
  border-color: #fff !important;
  color: #fff !important;
}

html[data-theme="light"] :is(main, .legal-layout) .btn--outline {
  background: #fff !important;
  border-color: #315271 !important;
  color: #0c1a2b !important;
}

html[data-theme="dark"] :is(main, .legal-layout) .btn--outline {
  background: #0c1827 !important;
  border-color: #557493 !important;
  color: #eef6ff !important;
}

:is(.btn, button, [role="button"]):focus-visible {
  outline: 3px solid rgba(66, 169, 255, .48) !important;
  outline-offset: 3px;
}

:is(.btn, button, [role="button"]):disabled,
:is(.btn, button, [role="button"])[aria-disabled="true"] {
  opacity: .52;
  filter: saturate(.45);
}

.hero__bg {
  background:
    linear-gradient(90deg, rgba(2, 7, 13, .96) 0%, rgba(3, 10, 19, .82) 38%, rgba(3, 10, 19, .2) 68%, rgba(3, 10, 19, .38) 100%),
    url('images/360-hero-bluehour.png') center/cover no-repeat !important;
}

.hero__bg::after {
  background: linear-gradient(180deg, transparent 52%, rgba(5, 8, 13, .88) 100%) !important;
}

.hero__card {
  background: rgba(7, 16, 28, .9) !important;
  border: 1px solid rgba(62, 161, 255, .36) !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .42), inset 0 1px 0 rgba(255,255,255,.06) !important;
  backdrop-filter: blur(14px);
}

.hero__card-title,
.hero__card-price-num,
.hero__card-list li,
.hero__card-note {
  color: #f4f9ff !important;
}

html[data-theme="dark"] :is(
  .section, .section--light, .services-intro, .care-plans, .why,
  .other-services, .about, .testimonials, .contact, .service-area,
  .terms-layout, .policy-content, .refund-content, .custom-plan-section,
  .plans-compare, .plans-teaser, .city-section
) {
  background: var(--theme-bg) !important;
}

html[data-theme="dark"] :is(
  .section--dark, .service-call, .cta-section, .licenses,
  .setup-banner, .brands-section
) {
  background: #07111d !important;
}

html[data-theme="dark"] :is(
  .hero__card, .service-card, .why-card, .review-card, .testimonial-card,
  .service-tile, .addon-card, .info-card, .stat-card, .term-card, .plan-teaser-card,
  .pcalc__plan-card, .coverage-map-card, .service-call__card,
  .contact__form-wrap, .contact-form-wrap, .custom-plan-form-wrap,
  .policy-intro-box, .refund-info-box, .terms-info-box, .faq-item,
  .cert-badge, .license-badge, .contact-info
) {
  background: var(--theme-surface) !important;
  color: var(--theme-text) !important;
  border-color: var(--theme-line) !important;
  box-shadow: 0 16px 42px rgba(0, 0, 0, .2) !important;
}

html[data-theme="dark"] .addon-card__name {
  color: var(--theme-text) !important;
}

html[data-theme="dark"] .addon-card__price span,
html[data-theme="dark"] .addon-tag--freq {
  color: var(--theme-muted) !important;
}

/* Care-plan service details: use layered navy panels in dark mode instead of
   bright white cards, while retaining strong contrast for expanded content. */
html[data-theme="dark"] .detail-item {
  background: #0d1b2a !important;
  border-color: #263d53 !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .18);
}

html[data-theme="dark"] .detail-item:hover,
html[data-theme="dark"] .detail-item.open {
  border-color: rgba(22, 141, 255, .62) !important;
}

html[data-theme="dark"] .detail-item__trigger {
  background: linear-gradient(135deg, rgba(255,255,255,.025), rgba(22,141,255,.035)) !important;
}

html[data-theme="dark"] .detail-item.open .detail-item__trigger {
  background: rgba(22, 141, 255, .09) !important;
}

html[data-theme="dark"] .detail-item__title,
html[data-theme="dark"] .detail-item__note strong {
  color: #f4f9ff !important;
}

html[data-theme="dark"] .detail-item__subtitle,
html[data-theme="dark"] .detail-item__chevron {
  color: #8fa8bf !important;
}

html[data-theme="dark"] .detail-item__body {
  background: #091521 !important;
  border-top-color: #263d53 !important;
}

html[data-theme="dark"] .detail-item__body :is(p, li) {
  color: #b7c9dc !important;
}

html[data-theme="dark"] .detail-item__note {
  background: #111f2e !important;
  color: #9fb4c8 !important;
}

html[data-theme="dark"] .detail-group-label {
  border-top-color: #263d53 !important;
}

html[data-theme="dark"] .addon-tag--freq {
  background: #101f31 !important;
}

/* City/service templates contain page-local rules tied to the old light-only
   palette. Explicitly restore readable foregrounds in dark mode. */
html[data-theme="dark"] :is(
  .city-section__text strong,
  .zip-chip,
  .neighborhood-list li,
  .plan-teaser-card__price,
  .plan-teaser-card__price small,
  .contact-info-item p,
  .contact-info-item p a
) {
  color: var(--theme-text) !important;
}

html[data-theme="dark"] .zip-chip {
  background: var(--theme-surface-2) !important;
  border-color: var(--theme-line) !important;
}

html[data-theme="dark"] .neighborhood-list h4,
html[data-theme="dark"] .contact-info-item h4 {
  color: #b9cbe0 !important;
}

/* Contact facts are a proper card rather than a background clipped tightly
   around the final line of content. */
.contact-info {
  width: 100%;
  padding: 24px;
  border: 1px solid var(--theme-line) !important;
  border-radius: 18px;
  box-sizing: border-box;
}

.contact-info-item:last-child {
  padding-bottom: 2px;
}

.addon-tag--req {
  background: rgba(22, 141, 255, .13) !important;
  color: #168dff !important;
}

html[data-theme="dark"] :is(
  h1, h2, h3, h4, h5, h6, .section-title, .service-card__title,
  .why-card__title, .term-card__title, .info-card__title,
  .terms-section__heading, .policy-section__heading, .refund-section__heading,
  .service-tile__name, .contact-info-item p, .license-badge__text,
  .cert-badge__title, .form-group label, .legal-content strong
) {
  color: var(--theme-text) !important;
}

html[data-theme="dark"] :is(
  p, .section-subtitle, .why-card__desc, .service-card__desc,
  .term-card__desc, .info-card__desc, .cert-badge__sub,
  .license-badge__num, .terms-section p, .policy-section p,
  .refund-section p
) {
  color: var(--theme-muted) !important;
}

html[data-theme="dark"] :is(
  .services-intro, .service-call, .care-plans, .why, .other-services,
  .about, .testimonials, .contact, .terms-layout, .legal-content,
  .policy-content, .refund-content, .custom-plan-section, .pcalc
) :is(p, li, small, label) {
  color: var(--theme-muted) !important;
}

html[data-theme="dark"] :is(
  .services-intro, .service-call, .care-plans, .why, .other-services,
  .about, .testimonials, .contact, .terms-layout, .legal-content,
  .policy-content, .refund-content, .custom-plan-section, .pcalc
) :is(h1, h2, h3, h4, h5, h6, strong, .service-tile__name) {
  color: var(--theme-text) !important;
}

html[data-theme="dark"] :is(.pcalc, .pcalc__addons-list, .pcalc__ao-group, .pcalc__plan-recap) {
  background: var(--theme-surface) !important;
  border-color: var(--theme-line) !important;
  color: var(--theme-text) !important;
}

html[data-theme="dark"] :is(.pcalc__ao, .pcalc__plan-card) {
  background: var(--theme-surface-2) !important;
  border-color: var(--theme-line) !important;
}

html[data-theme="dark"] .pcalc__ao:hover:not(.pcalc__ao--off),
html[data-theme="dark"] .pcalc__ao.active,
html[data-theme="dark"] .pcalc__plan-opt input:checked + .pcalc__plan-card {
  background: rgba(22, 141, 255, .14) !important;
}

html[data-theme="dark"] :is(input, textarea, select) {
  background: #07111c !important;
  color: #eef6ff !important;
  border-color: #29435f !important;
}

html[data-theme="dark"] :is(input, textarea, select)::placeholder {
  color: #7890a8;
}

html[data-theme="dark"] :is(table, th, td) {
  border-color: var(--theme-line) !important;
}

html[data-theme="dark"] th {
  background: #0d2035 !important;
  color: #f2f8ff !important;
}

html[data-theme="dark"] td {
  background: #09131f !important;
  color: #bdccda !important;
}

html[data-theme="dark"] .toc {
  background: #09131f !important;
  border-color: var(--theme-line) !important;
}

html[data-theme="dark"] .toc__list a {
  color: #adc0d3 !important;
}

html[data-theme="dark"] .toc__list a:hover,
html[data-theme="dark"] .toc__list a.toc--active {
  color: #6ebcff !important;
  background: rgba(22,141,255,.14) !important;
}

html[data-theme="light"] :is(
  .section, .section--light, .services-intro, .care-plans, .why,
  .other-services, .about, .testimonials, .contact, .service-area,
  .terms-layout, .policy-content, .refund-content
) {
  background: var(--theme-bg) !important;
}

html[data-theme="light"] :is(
  .service-card, .why-card, .review-card, .testimonial-card, .addon-card,
  .service-tile, .info-card, .stat-card, .term-card, .plan-teaser-card, .pcalc__plan-card,
  .coverage-map-card, .contact__form-wrap, .contact-form-wrap,
  .policy-intro-box, .refund-info-box, .terms-info-box, .faq-item
) {
  background: var(--theme-surface) !important;
  border-color: var(--theme-line) !important;
}

html[data-theme="light"] :is(
  .service-card, .why-card, .review-card, .testimonial-card, .addon-card,
  .service-tile, .info-card, .stat-card, .term-card, .plan-teaser-card,
  .contact__form-wrap, .contact-form-wrap, .faq-item, .legal-content
) :is(h1, h2, h3, h4, h5, h6, strong, label, .service-tile__name) {
  color: var(--theme-text) !important;
}

html[data-theme="light"] :is(
  .service-card, .why-card, .review-card, .testimonial-card, .addon-card,
  .service-tile, .info-card, .stat-card, .term-card, .plan-teaser-card,
  .contact__form-wrap, .contact-form-wrap, .faq-item, .legal-content
) :is(p, li, small) {
  color: var(--theme-muted) !important;
}

/* Contextual outline buttons must remain readable over photographic/dark bands. */
html[data-theme] :is(
  .hero, .page-hero, .section--dark, .service-area, .cta-band, .cta-section
) .btn--outline {
  background: rgba(4, 16, 31, .32) !important;
  border-color: rgba(255, 255, 255, .76) !important;
  color: #fff !important;
}

/* These components were authored as dark bands with white typography. */
html[data-theme="light"] :is(.section--dark, .care-plans, .service-area) {
  background: #07111d !important;
  color: #fff !important;
}

html[data-theme="light"] :is(.section--dark, .care-plans, .service-area)
  :is(h1, h2, h3, h4, h5, h6, strong, .section-title, .section-title--white) {
  color: #f4f9ff !important;
}

html[data-theme="light"] :is(.section--dark, .care-plans, .service-area)
  :is(p, li, small, .section-subtitle, .section-subtitle--white) {
  color: #b7c9dc !important;
}

/* The care-plan comparison should participate in the light theme instead of
   remaining a large dark island. */
html[data-theme="light"] section:has(.plans-compare) {
  background: #edf4fb !important;
  color: var(--theme-text) !important;
}

html[data-theme="light"] section:has(.plans-compare)
  :is(h1, h2, h3, h4, h5, h6, .section-title, .section-title--white) {
  color: var(--theme-text) !important;
}

html[data-theme="light"] section:has(.plans-compare)
  :is(p, .section-subtitle, .section-subtitle--white) {
  color: var(--theme-muted) !important;
}

html[data-theme="light"] :is(.pc-plan-head, .pc-row td, .pc-cta td, .pmc-head, .pmc-row) {
  background: #fff !important;
  border-color: #cfdae7 !important;
}

html[data-theme="light"] :is(.pc-plan-head--gold, .pc-row td.pc-gold-col, .pc-cta td.pc-gold-col, .pmc-card--gold .pmc-head) {
  background: #eaf5ff !important;
  border-color: #85c6ff !important;
}

html[data-theme="light"] .pc-group td {
  background: #dfeaf5 !important;
  border-color: #cad8e7 !important;
  color: #52677d !important;
}

html[data-theme="light"] :is(
  .pc-plan-head__name, .pc-plan-head__price strong, .pc-feat,
  .pc-feat-head, .pmc-name, .pmc-feat
) {
  color: #10243a !important;
}

html[data-theme="light"] :is(
  .pc-plan-head__price span, .pc-yes span, .pc-no span, .pc-disc small,
  .pmc-tier, .pmc-price span, .pmc-group-label
) {
  color: #62768b !important;
}

html[data-theme="light"] section:has(.plans-compare) .btn--outline {
  background: #fff !important;
  border-color: #48647e !important;
  color: #10243a !important;
}

html[data-theme="light"] .care-plans__addons {
  background: #f7fbff !important;
  border-color: #c8d8e8 !important;
}

html[data-theme="light"] .addon-chip,
html[data-theme="light"] .addon-chip--popular {
  background: #ffffff !important;
  border-color: #bfd1e3 !important;
  color: #18324c !important;
}

html[data-theme="light"] .addon-chip--popular {
  background: #e8f4ff !important;
  border-color: #70b8fa !important;
}

/* Keep the care-plan setup banner readable in both themes. */
html[data-theme="light"] .setup-banner {
  background: #f7fbff !important;
  border-color: #85c6ff !important;
}

html[data-theme="light"] .setup-banner__price {
  color: #10243a !important;
}

html[data-theme="light"] .setup-banner__desc {
  color: #52677d !important;
}

html[data-theme="dark"] .setup-banner__price {
  color: #f4f9ff !important;
}

html[data-theme="dark"] .setup-banner__desc {
  color: #b7c9dc !important;
}

html[data-theme="light"] .addon-chip small {
  color: #60758b !important;
}

html[data-theme="light"] .care-plans__addons + div a[style] {
  color: #365b7c !important;
}

/* Care-plan light-theme contrast. The section was originally authored as a
   dark band, so its broad white-type rule must be overridden at the component
   level when the comparison is presented on a light surface. */
html[data-theme="light"] .care-plans .pc-plan-head__price strong,
html[data-theme="light"] .care-plans .pmc-price strong {
  color: #10243a !important;
}

html[data-theme="light"] .care-plans .pc-plan-head__price span,
html[data-theme="light"] .care-plans .pmc-price span {
  color: #48627c !important;
}

html[data-theme="light"] .care-plans .pc-disc strong,
html[data-theme="light"] .care-plans .pmc-disc-val {
  color: #075fae !important;
}

html[data-theme="light"] .care-plans .pc-disc small {
  color: #4b647d !important;
}

html[data-theme="light"] .care-plans .care-plans__setup-badge[style] {
  background: #ffffff !important;
  border-color: #b8cce0 !important;
  color: #18324c !important;
}

html[data-theme="light"] .care-plans .care-plans__setup-badge[style] i {
  color: #075fae !important;
}

html[data-theme="light"] .care-plans .addon-chip small,
html[data-theme="light"] .care-plans .addon-chip--popular small {
  color: #36536f !important;
  font-weight: 700;
}

html[data-theme="light"] .addon-card__price {
  color: #075fae !important;
}

html[data-theme="light"] .addon-card__price span {
  color: #4b647d !important;
}

html[data-theme="light"] section:has(.terms-grid) {
  background: #edf4fb !important;
  color: var(--theme-text) !important;
}

html[data-theme="light"] section:has(.terms-grid)
  :is(h1, h2, h3, h4, h5, h6, .section-title, .section-title--white, .term-card__title) {
  color: var(--theme-text) !important;
}

html[data-theme="light"] section:has(.terms-grid)
  :is(p, li, small, .section-subtitle, .section-subtitle--white, .term-card__desc) {
  color: var(--theme-muted) !important;
}

.footer {
  background: #03070d !important;
  border-top: 1px solid #17263a !important;
}

.footer,
.footer p,
.footer a,
.footer span {
  color: #a9bbce;
}

.footer h4 {
  color: #f1f7ff !important;
}

/* Homepage service-call promises: the source page uses pale inline gradients.
   Give both cards an intentional dark treatment and restore readable emphasis. */
html[data-theme="dark"] .service-call__waiver,
html[data-theme="dark"] .service-call__waiver[style] {
  background: linear-gradient(135deg, #0d1d30, #102742) !important;
  border-color: #28547d !important;
  box-shadow: none !important;
}

html[data-theme="dark"] .service-call__waiver h4,
html[data-theme="dark"] .service-call__waiver h4[style],
html[data-theme="dark"] .service-call__waiver h4 i,
html[data-theme="dark"] .service-call__waiver h4 i[style] {
  color: #58adff !important;
}

html[data-theme="dark"] .service-call__waiver p,
html[data-theme="dark"] .service-call__waiver p[style] {
  color: #b9cbe0 !important;
}

html[data-theme="dark"] .service-call__waiver strong {
  color: #f3f8ff !important;
}

html[data-theme="dark"] .service-call__card-title {
  color: #f3f8ff !important;
}

html[data-theme="dark"] .service-call__card-title i,
html[data-theme="dark"] .service-call__payment i {
  color: #2999ff !important;
}

html[data-theme="dark"] .service-call__payment {
  color: #9fb5cc !important;
}

/* Keep urgency-band copy above the generic dark-theme paragraph rule. */
html[data-theme="dark"] .diag-band p,
html[data-theme="dark"] .diag-band .diag-band__list li,
html[data-theme="light"] .diag-band p,
html[data-theme="light"] .diag-band .diag-band__list li {
  color: #ffffff !important;
}

/* The property-repair estimate band uses the same blue treatment as the
   diagnostic band, so its explanatory copy needs the same guaranteed contrast. */
html[data-theme="dark"] .cta-band p,
html[data-theme="dark"] .cta-band .cta-band__list li,
html[data-theme="light"] .cta-band p,
html[data-theme="light"] .cta-band .cta-band__list li {
  color: #ffffff !important;
  opacity: 1;
}

.license-badge--licensed {
  border-color: rgba(22, 141, 255, .65) !important;
  background: rgba(22, 141, 255, .08) !important;
}

@media (max-width: 1200px) {
  .nav__inner { gap: 12px !important; }
  .nav__phone { display: none !important; }
  .theme-toggle {
    min-width: 42px;
    width: 42px;
    padding: 0;
  }
  .theme-toggle__text { display: none; }
}

@media (max-width: 768px) {
  .topbar__email,
  .topbar__licenses {
    display: none !important;
  }

  .topbar__inner {
    flex-wrap: nowrap !important;
  }

  .theme-toggle--topbar {
    min-width: 34px;
    width: 34px;
    height: 26px;
    padding: 0;
  }

  .theme-toggle--topbar .theme-toggle__text {
    display: none;
  }

  .nav__logo img {
    height: 44px !important;
    max-width: 182px !important;
  }
  .hero__bg {
    background:
      linear-gradient(90deg, rgba(2,7,13,.97), rgba(3,10,19,.72)),
      url('images/360-hero-bluehour.png') 64% center/cover no-repeat !important;
  }
}
