/* ── BRAND / NAV VISIBILITY FIX ─────────────────────────────────── */

/* Logo always visible on dark nav */
.logo, .navbar .logo { text-decoration: none !important; }
.logo-mark {
  background: linear-gradient(135deg, #B8860B, #D4AF37) !important;
  color: #0A0A0A !important;
  width: 36px !important; height: 36px !important;
  border-radius: 8px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  font-weight: 800 !important; font-size: 18px !important;
  flex-shrink: 0 !important;
}
.logo-text {
  color: #FFFFFF !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: .05em !important;
}
.logo-sub {
  color: #888 !important;
  font-size: 11px !important;
}

/* Nav always dark with visible elements */
.navbar {
  background: #050510 !important;
  border-bottom: 1px solid rgba(212,175,55,.15) !important;
  padding: 12px 0 !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
}
.nav-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
}
.nav-phone { color: #CCC !important; font-size: 13px !important; text-decoration: none !important; }
.nav-phone:hover { color: #D4AF37 !important; }

/* Mobile nav */
@media (max-width: 600px) {
  .nav-inner { flex-wrap: wrap; }
  .logo-text { font-size: 14px !important; }
}

/* Topstrip always visible */
.topstrip {
  color: #F4D772 !important;
  background: linear-gradient(90deg, #0A0A1A 0%, #050510 100%) !important;
  font-size: 12px !important;
  padding: 9px 20px !important;
  text-align: center !important;
  letter-spacing: .06em !important;
}
.topstrip a { color: #FFD700 !important; font-weight: 700 !important; }

/* Fix ALL text on dark backgrounds */
[style*="background:#0A0A"],[style*="background:#050"],[style*="background:#04081e"],
.hero, .cta-banner {
  color: #FFFFFF !important;
}
[style*="background:#0A0A"] p, [style*="background:#050"] p,
[style*="background:#04081e"] p { color: #C0C0D0 !important; }
[style*="background:#0A0A"] h1, [style*="background:#050"] h1 { color: #FFFFFF !important; }
[style*="background:#0A0A"] h2, [style*="background:#050"] h2 { color: #FFFFFF !important; }
[style*="background:#0A0A"] a { color: #D4AF37 !important; }

/* Fix ALL text on white/light backgrounds */
section:not(.hero):not(.cta-banner) p { color: #333333 !important; }
section:not(.hero):not(.cta-banner) h2 { color: #0A0A0A !important; }
section:not(.hero):not(.cta-banner) h3 { color: #1A1A1A !important; }
section:not(.hero):not(.cta-banner) li { color: #333 !important; }

/* Feature card text always dark on white */
.feature-card, a.feature-card {
  background: #FFFFFF !important;
  color: #0A0A0A !important;
}
.feature-card h4 { color: #0A0A0A !important; }
.feature-card p { color: #444 !important; }

/* Routes table always readable */
.routes-table { background: #FFFFFF !important; }
.routes-table td { color: #1A1A1A !important; background: #FFFFFF !important; }
.routes-table tr:nth-child(even) td { background: #FAFAF7 !important; }
.routes-table .fare { color: #B8860B !important; font-weight: 700 !important; }

/* FAQ always readable */
.faq summary { color: #0A0A0A !important; background: #FFFFFF !important; }
.faq .a { color: #333 !important; background: #FFFFFF !important; }

/* Quote card */
.quote-card { background: #FFFFFF !important; }
.quote-title { color: #0A0A0A !important; }
.field-label { color: #666 !important; }
.field-value { color: #0A0A0A !important; font-weight: 600 !important; }

/* Footer */
footer { background: #050510 !important; }
footer p, footer span, .foot-bot { color: #666 !important; }
footer a { color: #AAA !important; }
footer a:hover { color: #D4AF37 !important; }
footer h3, footer h4, footer .l { color: #CCC !important; }

/* FORCE WHITE TEXT ON ALL DARK SECTIONS */
[style*="background:#0A0A"],
[style*="background:#050"],
[style*="background:#04"] {
  color:#FFFFFF !important;
}
[style*="background:#0A0A"] *,
[style*="background:#050"] *,
[style*="background:#04"] * {
  color:#FFFFFF !important;
}
[style*="background:#0A0A"] a,
[style*="background:#050"] a,
[style*="background:#04"] a {
  color:#FFFFFF !important;
}
[style*="background:#0A0A"] a:hover,
[style*="background:#050"] a:hover {
  color:#D4AF37 !important;
}
[style*="background:#0A0A"] h2,
[style*="background:#050"] h2 {
  color:#FFFFFF !important;
}
[style*="background:#0A0A"] p,
[style*="background:#050"] p {
  color:#DDDDDD !important;
}
.footer-disc,
.footer-disc * { color:#FFFFFF !important; }
.foot-bottom, .foot-bot { color:#AAAAAA !important; }
footer h5 { color:#D4AF37 !important; }
footer p { color:#CCCCCC !important; }
footer li, footer a { color:#CCCCCC !important; }

/* Hide old thin footer, show nothing - new footer via PHP append */
footer .foot-grid { display:grid !important; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)) !important; gap:24px !important; }
footer { background:#050510 !important; color:#CCCCCC !important; padding:40px 0 20px !important; }
footer h5 { color:#D4AF37 !important; font-size:11px !important; letter-spacing:.1em !important; text-transform:uppercase !important; font-weight:700 !important; }
footer a { color:#CCCCCC !important; font-size:13px !important; }
footer a:hover { color:#D4AF37 !important; }
footer p { color:#AAAAAA !important; font-size:13px !important; }
footer li { color:#CCCCCC !important; font-size:13px !important; margin-bottom:6px !important; }
.foot-bottom, .foot-bot { color:#555 !important; font-size:11px !important; border-top:1px solid rgba(255,255,255,.06) !important; padding-top:16px !important; margin-top:24px !important; }
.logo-mark { background:linear-gradient(135deg,#B8860B,#D4AF37) !important; color:#000 !important; }
.foot-brand-text, .foot-brand b { color:#FFFFFF !important; }

/* Hide old thin footer - replaced by PHP auto-append footer */
footer:not(#rushxo-main-footer) { display:none !important; }
#rushxo-main-footer { display:block !important; }

/* HIDE ALL OLD FOOTERS - keep only PHP footer */
footer { display:none !important; }
#rushxo-main-footer { display:block !important; }

/* MAXIMUM SPECIFICITY WHITE TEXT ON DARK */
html body *[style*="background:#0A0A1A"] h2,
html body *[style*="background:#0A0A0A"] h2,
html body *[style*="background:#050510"] h2,
html body div[style*="background:#0A0A"] h2 { color:#FFFFFF!important; font-weight:700!important; }
html body *[style*="background:#0A0A1A"] h3,
html body *[style*="background:#0A0A0A"] h3 { color:#FFFFFF!important; }
html body *[style*="background:#0A0A1A"] p,
html body *[style*="background:#0A0A0A"] p,
html body *[style*="background:#050510"] p { color:#DDDDDD!important; }
html body *[style*="background:#0A0A1A"] a,
html body *[style*="background:#0A0A0A"] a { color:#FFFFFF!important; }
html body *[style*="background:#0A0A1A"] span,
html body *[style*="background:#0A0A0A"] span { color:#CCCCCC!important; }

/* FINAL FIX - inline style h2 color protection */
h2[style*="color:#FFF"],h2[style*="color:#FFFFFF"],h2[style*="color:white"],h2[style*="color:#fff"]{color:#FFFFFF!important}
h3[style*="color:#FFF"],h3[style*="color:#FFFFFF"],h3[style*="color:white"]{color:#FFFFFF!important}
p[style*="color:#FFF"],p[style*="color:#FFFFFF"],p[style*="color:white"]{color:#FFFFFF!important}
span[style*="color:#FFF"],span[style*="color:#FFFFFF"]{color:#FFFFFF!important}
