:root {
  --ink: #050b12;
  --ink-soft: #08131e;
  --panel: #0d1925;
  --panel-light: #111f2c;
  --text: #eef2f5;
  --muted: #96a2ad;
  --muted-dark: #6f7c88;
  --line: rgba(255, 255, 255, .11);
  --line-red: rgba(225, 38, 59, .3);
  --shadow: 0 24px 65px rgba(0, 0, 0, .32);
}

body { color: var(--text); background: #06101a; }

.site-header {
  border-bottom-color: rgba(255, 255, 255, .09);
  background: rgba(7, 17, 27, .96);
}
.site-header.scrolled {
  background: rgba(6, 15, 24, .99);
  box-shadow: 0 14px 40px rgba(0, 0, 0, .32);
}
.brand { color: #fff; }
.brand-logo { border: 1px solid rgba(255, 255, 255, .1); background: #11161c; box-shadow: 0 10px 26px rgba(0, 0, 0, .28); }
.site-nav a { color: #98a4af; }
.site-nav a:hover,
.site-nav a.active { color: #fff; }
.account-pill { border-color: var(--line); color: #fff; background: #101c27; }
.account-pill small { color: #7f8b96; }
.nav-toggle { border-color: var(--line); color: #fff; background: #101c27; }
.nav-toggle span { background: #fff; }

.button-ghost { border-color: rgba(255, 255, 255, .18); color: #e6ebef; background: rgba(255, 255, 255, .025); }
.button-ghost:hover { border-color: var(--red-bright); color: #fff; background: rgba(255, 255, 255, .06); }

.hero-stats { color: #fff; background: rgba(7, 17, 27, .97); }
.hero-stats-grid > div { border-color: rgba(255, 255, 255, .1); }
.hero-stats-grid span { color: #8996a1; }

.project-alert { background: #0d1823; }
.project-alert-mark { border-color: rgba(222, 42, 63, .32); color: #ff5265; background: rgba(222, 42, 63, .08); }
.project-alert p { color: #98a4af; }
.project-alert p strong { color: #eef2f5; }
.project-alert a { color: #ff5265; }

.section-head h2,
.control-copy h2,
.station-intro h2,
.career-intro-copy h2,
.equipment-note h2 { color: #f4f6f8; }
.section-head > p { color: #96a2ad; }

.services-section { color: #eef2f5; background: #08131e; }
.services-section .section-head > p { color: #96a2ad; }
.service-card { border-color: rgba(255, 255, 255, .11); }
.service-card h3 { color: #f2f5f7; }
.service-card p { color: #96a2ad; }
.service-card a { color: #ff5265; }

.station-story { background: #0b1722; }
.station-story .compact-stations a { background: #111f2c; }

.news-section { color: #eef2f5; background: #07121c; }
.news-section .section-head > a { border-color: rgba(255, 255, 255, .15); color: #e5eaee; background: rgba(255, 255, 255, .025); }
.news-section .section-head > a:hover { border-color: var(--red-bright); color: #fff; background: rgba(255, 255, 255, .06); }
.news-grid { border-color: rgba(255, 255, 255, .11); }
.news-card,
.news-card-featured { border-color: rgba(255, 255, 255, .11); color: #eef2f5; }
.news-card h3 { color: #f2f5f7; }
.news-card p,
.news-card-featured p { color: #94a1ac; }
.news-grid .news-meta { border-left-color: var(--red-bright); color: #778490; }
.news-card > a,
.news-card-featured > a { color: #ff5265; }

.article-list-section,
.station-overview,
.station-details,
.fleet-section,
.career-intro,
.career-areas,
.application-process,
.contact-hub,
.faq-section,
.application-section { color: #eef2f5; background: #08131e; }

.article-list { border-color: rgba(255, 255, 255, .11); }
.article-row { border-color: rgba(255, 255, 255, .11); }
.article-content .news-meta { color: #7f8c97; }
.article-content h2 { color: #f2f5f7; }
.article-content .article-lead { color: #c5cdd4; }
.article-content p { color: #94a1ac; }

.station-overview { background: #07121c; }
.city-map { border-color: rgba(255, 255, 255, .1); background: #111f2b; box-shadow: 0 24px 65px rgba(0, 0, 0, .28); }
.city-map-grid { background-image: linear-gradient(rgba(255, 255, 255, .055) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .055) 1px, transparent 1px); }
.map-river { border-color: rgba(82, 157, 198, .16); background: linear-gradient(180deg, #153448, #1b4258, #143548); }
.map-road { border-color: rgba(255, 255, 255, .07); background: #303b45; }
.map-pin { border-color: rgba(255, 82, 101, .28); color: #fff; background: rgba(8, 18, 28, .96); box-shadow: 0 16px 40px rgba(0, 0, 0, .34); }
.map-pin small { color: #788590; }
.city-map > strong { color: rgba(255, 255, 255, .045); }
.station-intro > p { color: #96a2ad; }
.check-list li { border-color: rgba(255, 255, 255, .11); color: #bac3ca; }
.station-details { background: #08131e; }
.station-detail { border-color: rgba(255, 255, 255, .1); background: #0e1b27; box-shadow: 0 14px 42px rgba(0, 0, 0, .2); }
.station-detail-number { border-color: rgba(255, 255, 255, .11); }
.station-detail-number span { color: #778490; }
.station-detail-main h2 { color: #f2f5f7; }
.station-detail-main p { color: #95a2ad; }
.tag-list span { border-color: rgba(255, 255, 255, .11); color: #aeb8c1; background: #111f2b; }
.station-detail-link { color: #ff5265; }

.fleet-section { background: #08131e; }
.fleet-toolbar h2 { color: #f2f5f7; }
.fleet-filters { border-color: rgba(255, 255, 255, .11); background: #101d29; }
.fleet-filters button { color: #8e9aa5; }
.vehicle-card { border-color: rgba(255, 255, 255, .1); color: #eef2f5; background: #0e1b27; box-shadow: 0 14px 40px rgba(0, 0, 0, .2); }
.vehicle-card-top { color: #75828e; }
.vehicle-card h3 { color: #f2f5f7; }
.vehicle-card p { color: #8996a1; }
.equipment-note { color: #fff; background: #08131e; }
.equipment-note-inner { background: #111f2c; box-shadow: 0 18px 50px rgba(0, 0, 0, .24); }

.career-intro { background: #07121c; }
.career-intro-copy > p { color: #96a2ad; }
.career-areas { background: #08131e; }
.career-area-grid { border-color: rgba(255, 255, 255, .11); }
.career-area { border-color: rgba(255, 255, 255, .11); color: #eef2f5; }
.career-area h3 { color: #f2f5f7; }
.career-area p { color: #94a1ac; }
.application-process { background: #07121c; }
.process-step { color: #eef2f5; background: #0e1b27; }
.process-step > span { color: #f1f4f6; }
.process-step p { color: #8f9ca7; }
.process-action { border-color: rgba(255, 255, 255, .11); color: #eef2f5; background: #0e1b27; }

.contact-hub { background: #07121c; }
.contact-card { border-color: rgba(255, 255, 255, .1); color: #eef2f5; background: #0e1b27; }
.contact-card h3 { color: #f2f5f7; }
.contact-card p { color: #94a1ac; }
.contact-card a { color: #ff5265; }
.faq-section { background: #08131e; }
.faq-list details { border-color: rgba(255, 255, 255, .1); color: #eef2f5; background: #0e1b27; }
.faq-list details p { color: #94a1ac; }

.application-section { background: #08131e; }
.application-form { border-color: rgba(255, 255, 255, .1); color: #eef2f5; background: #0e1b27; box-shadow: 0 18px 55px rgba(0, 0, 0, .24); }
.form-title { border-color: rgba(255, 255, 255, .11); }
.form-title h2 { color: #f2f5f7; }
.form-title p { color: #7f8c97; }
.application-form label { color: #c5cdd4; }
.application-form input,
.application-form textarea,
.application-form select { border-color: rgba(255, 255, 255, .12); color: #f2f5f7; background: #07121c; }
.application-form select option { color: #f2f5f7; background: #07121c; }
.form-check { color: #96a2ad !important; }
.form-footnote,
.field-counter { color: #74818c; }
.application-gate,
.application-success { border-color: rgba(255, 255, 255, .1); color: #eef2f5; background: #0e1b27; box-shadow: 0 22px 60px rgba(0, 0, 0, .26); }
.application-gate h2,
.application-success h2 { color: #f2f5f7; }
.application-gate > p,
.application-success > p { color: #96a2ad; }
.gate-steps > div { border-color: rgba(255, 255, 255, .1); background: #111f2b; }
.gate-steps strong { color: #e7ebee; }
.gate-steps small { color: #74818c; }
.application-gate .button-ghost,
.application-success .button-ghost { color: #e7ebee; }
.setup-note { color: #d3b977; background: rgba(242, 189, 83, .06); }

.rp-notice { border-color: rgba(242, 189, 83, .16); background: #17150f; }
.rp-notice p { color: #918873; }
.rp-notice strong { color: #c5b68f; }
.site-footer { background: #040a10; }

.error-page { color: #eef2f5; background: #07121c; }
.error-card { border-color: rgba(255, 255, 255, .1); background: #0e1b27; box-shadow: 0 22px 65px rgba(0, 0, 0, .3); }
.error-card h1 { color: #f2f5f7; }
.error-card p { color: #96a2ad; }

@media (max-width: 920px) {
  .site-nav { border-color: rgba(255, 255, 255, .11); background: rgba(8, 18, 28, .99); }
  .site-nav a { color: #a0abb5; }
  .site-nav a:hover,
  .site-nav a.active { color: #fff; background: #111f2b; }
}
