/* ── CONTRAST & VISIBILITY FIXES ─────────────────────────────────── */

/* Fix black-on-black: dark backgrounds need light text */
.hero, .hero * { color-scheme: dark; }
.hero p, .hero-sub { color: #C8C8D8 !important; }
.hero h1 { color: #FFFFFF !important; }
.hero-eyebrow { color: #D4AF37 !important; }
.trust-line { color: #999 !important; }
.trust-line b { color: #D4AF37 !important; }
.topstrip { color: #F4D772 !important; background: #0A0A1A !important; }
.topstrip a { color: #FFD700 !important; }

/* Fix white-on-white: light sections need dark text */
section, .fixed-sec, .vehicles { background: #FFFFFF; }
section p, .fixed-sec p, .vehicles p { color: #333333 !important; }
section h2, .fixed-sec h2, .vehicles h2 { color: #0A0A0A !important; }
section h3, .fixed-sec h3 { color: #1A1A1A !important; }
section li, .fixed-sec li { color: #333333 !important; }

/* FAQ contrast */
.faq summary { color: #0A0A0A !important; background: #FFFFFF !important; }
.faq .a { color: #333333 !important; background: #FFFFFF !important; }
.faq details { background: #FFFFFF !important; }

/* Table contrast */
.routes-table td { color: #1A1A1A !important; background: #FFFFFF !important; }
.routes-table th { color: #F4D772 !important; background: #0A0A1A !important; }
.routes-table .fare { color: #B8860B !important; font-weight: 700 !important; }
.routes-table tr:nth-child(even) td { background: #FAFAF7 !important; }

/* Quote card contrast */
.quote-card { background: #FFFFFF !important; color: #0A0A0A !important; }
.quote-title { color: #0A0A0A !important; }
.field-label { color: #666666 !important; }
.field-value { color: #0A0A0A !important; font-weight: 600 !important; }
.veh-name { color: #444444 !important; }
.veh-price { color: #B8860B !important; }

/* Feature cards contrast */
.feature-card, a.feature-card { background: #FFFFFF !important; color: #0A0A0A !important; }
.feature-card h4 { color: #0A0A0A !important; }
.feature-card p { color: #444444 !important; }
.feature-card .roman { color: #B8860B !important; }
.feature-card .arrow { color: #B8860B !important; }

/* CTA banner */
.cta-banner h2 { color: #FFFFFF !important; }
.cta-banner p { color: #C0C0D0 !important; }

/* Footer */
footer { background: #050510 !important; }
footer p, footer span, footer li { color: #888888 !important; }
footer h3, footer h4 { color: #CCCCCC !important; }
footer a { color: #AAAAAA !important; }
footer a:hover { color: #D4AF37 !important; }
.foot-bot { color: #555555 !important; }

/* Nav */
nav, header { background: #050510 !important; }
nav a { color: #CCCCCC !important; }
nav a:hover { color: #D4AF37 !important; }

/* Body default */
body { background: #FFFFFF !important; color: #1A1A1A !important; }

/* Input and form elements */
input, select, textarea {
  background: #FFFFFF !important;
  color: #0A0A0A !important;
  border: 1.5px solid #CCCCCC !important;
}

/* Links in content */
.fixed-prose a { color: #B8860B !important; }
.related a { color: #333333 !important; }
.related a:hover { color: #B8860B !important; }

/* Disclaim */
.disclaim { color: #777777 !important; }

/* Section with dark background */
[style*="background:#0A0A"] p,
[style*="background:#050"] p,
[style*="background:#04"] p {
  color: #C0C0D0 !important;
}
[style*="background:#0A0A"] h2,
[style*="background:#050"] h2 {
  color: #FFFFFF !important;
}
