/* Final Green Style layer. Kept separate so it always follows the legacy theme. */
:root {
  --background: #f7fafc;
  --foreground: #102a43;
  --card: #fff;
  --card-foreground: #102a43;
  --popover: #fff;
  --popover-foreground: #102a43;
  --primary: #dcb25c;
  --primary-foreground: #063d34;
  --secondary: #eaf1ed;
  --secondary-foreground: #102a43;
  --muted: #eef4f1;
  --muted-foreground: #64748b;
  --accent: #f4e7c7;
  --accent-foreground: #102a43;
  --border: #dce7e2;
  --input: #dce7e2;
  --ring: #dcb25c;
  --gold: #e1b967;
  --gold-soft: #e1b967;
  --ink: #f7fafc;
  --panel: #fff;
  --line: rgba(20,68,59,.14);
  --muted-text: #64748b;
}

body { color: #102a43; background: #f7fafc; }

.phone-reveal {
  padding: 0;
  display: inline-flex;
  align-items: center;
  gap: .38em;
  color: inherit;
  background: transparent;
  border: 0;
  font: inherit;
  letter-spacing: inherit;
  text-align: left;
  cursor: pointer;
}
.phone-reveal-label {
  text-decoration: underline;
  text-decoration-color: rgba(248, 216, 150, .58);
  text-underline-offset: .2em;
}
.phone-reveal:hover .phone-reveal-label,
.phone-reveal:focus-visible .phone-reveal-label { text-decoration-color: currentColor; }

.site-header,
.site-header.is-scrolled {
  color: #fffaf0;
  background: rgba(7,43,38,.97);
  border-bottom-color: rgba(225,189,105,.22);
  box-shadow: 0 10px 30px rgba(0,41,34,.15);
}
.brand,
.site-header .brand { color: #f2d795; }
.brand small,
.site-header .brand small { color: #fff; }
.desktop-nav { color: #f4f7f4; }
.desktop-nav a:hover,
.header-phone,
.header-phone:hover { color: #f1cf7f; }
.desktop-nav a::after { background: #dcb25c; }
.desktop-routes-trigger svg { color: #e1b967; }
.desktop-routes-dropdown {
  color: #102a43;
  background: rgba(255,255,255,.99);
  border-color: rgba(210,165,67,.32);
  box-shadow: 0 24px 60px rgba(0,42,35,.22);
}
.desktop-routes-dropdown > span { color: #b0802d; }
.desktop-nav .desktop-routes-dropdown a { color: #475569; border-bottom-color: #e4ebe8; }
.desktop-nav .desktop-routes-dropdown a:hover { color: #072b26; }

.gold-button,
.site-header .gold-button {
  color: #111;
  background: linear-gradient(180deg, #F8D896 0%, #D8AD54 100%);
  box-shadow: inset 0 1px rgba(255,255,255,.55), 0 10px 25px rgba(145,98,15,.22);
}
.gold-button:hover,
.site-header .gold-button:hover {
  color: #111;
  background: linear-gradient(180deg, #F8D896 0%, #D8AD54 100%);
  box-shadow: inset 0 1px rgba(255,255,255,.62), 0 15px 32px rgba(145,98,15,.28), 0 0 0 1px rgba(225,185,103,.22);
}

.hero { color: #fff; background: #092921; }
.hero-image { object-position: center 51%; filter: saturate(.9) contrast(1.02); }
.hero-shade {
  background: transparent;
}
.hero h1 {
  color: #e1b967;
  text-shadow: 0 3px 14px rgba(1, 24, 20, 0.68);
}
.hero h1 .hero-title-white { color: #fff; }
.hero .eyebrow,
.hero-lead {
  color: #BFE8FF;
  text-shadow: 0 2px 9px rgba(1, 24, 20, 0.78);
}
.hero .eyebrow > span { background: #dfb758; }
.hero-text { color: #edf3ef; }
.hero-benefit { color: #f7f5eb; }
.hero-benefit i {
  color: #efc968;
  border-color: rgba(232,192,96,.72);
  background: rgba(0,55,46,.5);
  box-shadow: inset 0 0 20px rgba(225,189,105,.08);
}
.hero-benefit:hover i { border-color: #f0ce78; background: rgba(225,189,105,.1); box-shadow: 0 8px 25px rgba(0,44,36,.22); }

.quote-card {
  color: #102a43;
  background: rgba(255,255,255,.98);
  border-color: rgba(255,255,255,.74);
  box-shadow: 0 26px 70px rgba(0,42,35,.28);
}
.quote-top span,
.quote-contact-intro h3 { color: #102a43; }
.quote-top small,
.quote-card label,
.quote-contact-intro p,
.quote-back-button,
.safe-note { color: #64748b; }
.quote-submit-error {
  margin: 0;
  color: #9b2c2c;
  font-size: 13px;
  line-height: 1.45;
}
.gold-button:disabled {
  cursor: wait;
  opacity: .72;
  transform: none;
}
.quote-top svg,
.safe-note svg { color: #d9ad4d; }
.field { border-color: #d8e3df; background: #fbfdfc; }
.field:focus-within { border-color: #cda13f; box-shadow: 0 0 0 3px rgba(210,165,67,.12); }
.field input,
.field select { color: #102a43; }
.field svg { color: #64748b; }
.date-picker-trigger,
.time-picker-trigger { color: #9b722b; }
.date-picker-trigger:hover,
.date-picker-trigger:focus-visible,
.time-picker-trigger:hover,
.time-picker-trigger:focus-visible { color: #063d34; border-left-color: rgba(210,165,67,.3); background: #fff8e9; }
.outline-button { color: #0a5949; border-color: #9dbdb4; }
.outline-button:hover { color: #fff; background: #0a5949; border-color: #0a5949; box-shadow: 0 10px 24px rgba(0,60,50,.16); }

.trust-strip { color: #102a43; background: #fff; }
.trust-grid > div,
.trust-grid > div:first-child { border-color: #e1e9e5; }
.trust-grid svg { color: #d9ad4d; }
.trust-grid span { color: #64748b; }

.seo-intro-section,
.routes-section,
.fleet-section,
.pricing-section,
.faq-section,
.journey-section,
.route-overview-section,
.route-pricing-section,
.route-pickup-section,
.route-longform-section,
.route-reviews-section,
.fleet-levels-section,
.fleet-comparison-section,
.fleet-care-section,
.fleet-faq-section { color: #102a43; background: #f7fafc; }
.section-heading h2,
.fleet-copy h2,
.about-grid h2,
.details-grid h2,
.story-section h2,
.seo-intro-grid h2,
.pricing-section h2,
.faq-section h2,
.fleet-page-heading h2 { color: #102a43; }
.section-heading > p,
.seo-intro-copy p,
.fleet-copy > p,
.pricing-section p,
.faq-list details p,
.fleet-page-heading > p { color: #64748b; }
.eyebrow,
.comparison-section .eyebrow,
.about-grid .eyebrow,
.light-heading .eyebrow,
.fleet-features-section .eyebrow,
.fleet-prices-section .eyebrow,
.fleet-quote-section .eyebrow { color: #092921; }
.eyebrow > span,
.comparison-section .eyebrow > span,
.about-grid .eyebrow > span,
.light-heading .eyebrow > span,
.fleet-features-section .eyebrow > span,
.fleet-prices-section .eyebrow > span,
.fleet-quote-section .eyebrow > span { background: #092921; }
.inline-route-link,
.text-link,
.seo-text-link { color: #092921; text-decoration-color: rgba(9,41,33,.38); }
.inline-route-link:hover,
.text-link:hover { color: #072b26; }

.route-card {
  border-color: rgba(210,165,67,.25);
  background-image: linear-gradient(180deg,rgba(0,54,45,.2),rgba(0,54,45,.58) 48%,rgba(0,45,38,.98)),url('/images/route-cities-v3.webp');
  box-shadow: 0 16px 34px rgba(0,55,46,.13);
}
.route-card::after { background: linear-gradient(90deg,rgba(0,51,43,.44),transparent 72%); }
.route-card:hover { border-color: rgba(225,189,105,.72); box-shadow: 0 22px 44px rgba(0,55,46,.2); }
.route-number { color: rgba(241,207,127,.68); }
.route-card small,
.route-card h3 svg,
.route-more svg { color: #e6c46e; }
.route-card h3,
.route-more { color: #fff; }
.route-card p,
.return-link { color: #dce9e4; }
.route-card-destination:hover h3,
.route-card-destination:focus-visible h3,
.route-more:hover,
.return-link:hover { color: #f1d487; }

.services-section,
.booking-section,
.coverage-section,
.route-fleet-section { color: #f8f7ef; background: #092921; border-color: rgba(225,189,105,.16); }
.services-section .section-heading h2,
.booking-section .section-heading h2,
.coverage-section h2,
.route-fleet-section h2 { color: #f7f4e9; }
.services-section .section-heading > p,
.booking-section .section-heading > p,
.coverage-section p { color: #bed0ca; }
.services-section .eyebrow,
.booking-section .eyebrow,
.coverage-section .eyebrow,
.route-fleet-section .eyebrow { color: #e1b967; }
.services-section .eyebrow > span,
.booking-section .eyebrow > span,
.coverage-section .eyebrow > span,
.route-fleet-section .eyebrow > span { background: #dcb25c; }
.service-card,
.booking-step {
  color: #102a43;
  background: #fff;
  border-color: rgba(225,189,105,.3);
  box-shadow: 0 14px 30px rgba(0,38,32,.16);
}
.service-card:hover,
.booking-step:hover { background: #fffdf7; border-color: rgba(225,189,105,.68); box-shadow: 0 18px 36px rgba(0,35,29,.22); }
.service-card > span,
.booking-step > svg { color: #d9ad4d; border-color: rgba(210,165,67,.45); background: #fcf8ed; }
.service-card > span {
  color: #e1b967;
  border-color: rgba(225,185,103,.78);
  background: #f7fafc;
}
.service-card h3,
.booking-step h3 { color: #102a43; }
.service-card p,
.booking-step p { color: #64748b; }
.booking-step > span { color: #856018; }

.fleet-card,
.price-factor,
.faq-list details,
.route-factor-grid > div,
.route-price-card,
.route-pickup-grid > div,
.route-review-card,
.fleet-model-card,
.fleet-care-grid article {
  color: #102a43;
  background: #fff;
  border-color: #dce7e2;
  box-shadow: 0 13px 30px rgba(0,55,46,.08);
}
.fleet-card:hover,
.price-factor:hover,
.fleet-model-card:hover,
.fleet-care-grid article:hover { background: #fffdf8; border-color: rgba(210,165,67,.48); box-shadow: 0 18px 34px rgba(0,55,46,.13); }
.fleet-card > span,
.fleet-card h3,
.price-factor small,
.faq-list summary svg,
.fleet-care-grid svg,
.fleet-model-card small { color: #b0802d; }
.fleet-card > span,
.fleet-card h3,
.price-factor small { color: #092921; }
.fleet-card p svg,
.price-factor > span { color: #d9ad4d; }
.price-factor > span {
  color: #e1b967;
  border-color: rgba(225,185,103,.78);
  background: #f7fafc;
}
.fleet-copy li { color: #102a43; }
.fleet-copy li svg { color: #d9ad4d; }
.fleet-card p,
.price-factor p,
.fleet-care-grid p,
.fleet-model-note { color: #64748b; }
.fleet-model-card h3 { color: #102a43; }
.fleet-vehicle-1,
.fleet-vehicle-2,
.fleet-vehicle-3 { background-color: transparent; }

.comparison-section,
.about-section,
.fleet-features-section,
.fleet-prices-section,
.fleet-quote-section { color: #102a43; background: #fff; }
.comparison-section .section-heading > p,
.about-grid > div > p { color: #64748b; }
.comparison-table,
.fleet-table-wrap,
.fleet-features-grid { border-color: #dce7e2; background: #fff; box-shadow: 0 18px 44px rgba(0,55,46,.08); }
.comparison-head,
.fleet-comparison-table thead,
.fleet-price-table thead { color: #fff; background: #072b26; }
.comparison-head th:last-child,
.fleet-comparison-table thead th,
.fleet-price-table thead th { color: #f0ce78; }
.comparison-row,
.comparison-row > *,
.fleet-comparison-table th,
.fleet-comparison-table td,
.fleet-price-table th,
.fleet-price-table td,
.fleet-features-grid > div { border-color: #e1e9e5; }
.comparison-row:hover { background: #f5f9f7; }
.comparison-row th { color: #092921; }
.comparison-row svg { color: #d9ad4d; }
.comparison-row td { color: #64748b; }
.comparison-row td:last-child { color: #102a43; }
.fleet-comparison-table tbody th { color: #102a43; background: #eef4f1; }
.fleet-comparison-table tbody td,
.fleet-price-table tbody th,
.fleet-price-table tbody td { color: #64748b; background: #fff; }
.fleet-price-table tbody tr:nth-child(even) > * { background: #f4f8f6; }
.fleet-price-table tbody th a,
.fleet-features-grid svg { color: #b0802d; }
.fleet-features-grid > div { color: #102a43; }
.stats,
.stats div { border-color: #dfe8e4; }
.stats strong { color: #b0802d; }
.stats span { color: #64748b; }

.coverage-link {
  color: #102a43;
  background: #fff;
  border-color: rgba(225,189,105,.34);
  box-shadow: 0 9px 20px rgba(0,38,32,.11);
}
.coverage-link > svg:first-child { color: #b0802d; }
.coverage-link > svg:last-child { color: #64748b; }
.coverage-link:hover,
.coverage-link:focus-visible {
  color: #063d34;
  background: #fffaf0;
  border-color: #dcb25c;
  box-shadow: 0 14px 30px rgba(0,35,29,.19);
}
.coverage-link:hover > svg { color: #9f741f; }
.coverage-grid > div:first-child > p { color: #fff; }

.cta-section {
  color: #102a43;
  background: #fff;
  border-color: #e1e9e5;
  box-shadow: 0 20px 50px rgba(16,42,67,.1);
}
.cta-section h2 { color: #102a43; }
.cta-section p { color: #64748b; }

.faq-list summary svg {
  color: #e1b967;
  filter: drop-shadow(0 3px 7px rgba(214,154,43,.16));
}

.site-footer { color: #f5f4ea; background: #092921; border-top-color: rgba(225,189,105,.18); }
.site-footer .footer-brand span { color: #f1d083; text-shadow: none; }
.site-footer .footer-brand small { color: #fff; }
.footer-grid > div:first-child > p,
.footer-grid > div:not(:first-child),
.footer-routes a { color: #b9cbc5; }
.footer-grid b,
.footer-routes > b { color: #fff; }
.footer-grid a:hover,
.footer-routes a:hover,
.copyright a:hover { color: #efcb71; }
.footer-routes,
.copyright { border-color: rgba(225,189,105,.16); }
.copyright,
.copyright a { color: #8eaaa1; }
.footer-socials > a,
.footer-social-placeholder {
  color: #fff;
  border-color: rgba(241,208,131,.42);
  background: rgba(255,255,255,.055);
}
.footer-grid .footer-socials > a:hover {
  color: #092921;
  border-color: #f1d083;
  background: linear-gradient(145deg,#f8d896,#d8ad54);
  transform: translateY(-2px);
}

.floating-contact-trigger {
  color: #063d34;
  border-color: #f2d68d;
  background: linear-gradient(145deg,#efd180,#c99835);
  box-shadow: 0 13px 32px rgba(0,48,40,.28),0 0 0 0 rgba(210,165,67,.45);
  animation-name: contact-pulse-green;
}
.floating-contact-panel { color: #102a43; border-color: #d7e3de; background: rgba(255,255,255,.99); box-shadow: 0 24px 66px rgba(0,48,40,.2); }
.floating-contact-close { color: #6d807b; border-color: #d4e0dc; }
.floating-contact-eyebrow { color: #9b722b; }
.floating-contact-phone { color: #072b26; border-color: #dce6e2; }
.floating-contact-phone:hover { color: #9b722b; }
.floating-contact-links > a { color: #475569; border-color: #d8e4df; background: #f8fbf9; }
.floating-contact-links > a:hover { color: #072b26; border-color: #dcb25c; background: #fffaf0; }
.floating-contact-panel > p { color: #64748b; }
@keyframes contact-pulse-green {
  0% { box-shadow: 0 13px 32px rgba(0,48,40,.28),0 0 0 0 rgba(210,165,67,.45); }
  70% { box-shadow: 0 13px 32px rgba(0,48,40,.28),0 0 0 16px rgba(210,165,67,0); }
  100% { box-shadow: 0 13px 32px rgba(0,48,40,.28),0 0 0 0 rgba(210,165,67,0); }
}

.mobile-menu-trigger { color: #f4d27c; border-color: rgba(235,205,132,.48); background: rgba(255,255,255,.06); }
.mobile-menu-trigger:hover { color: #063d34; border-color: #e1b967; background: #e1b967; }
.mobile-menu-panel { color: #f8f5e9; background: radial-gradient(circle at 100% 0%,rgba(225,189,105,.13),transparent 36%),rgba(0,60,50,.995); }
.mobile-menu-head { border-bottom-color: rgba(225,189,105,.2); }
.mobile-menu-close { color: #f0ce78; background: rgba(255,255,255,.06); border-color: rgba(225,189,105,.4); }
.mobile-menu-close:hover { color: #063d34; background: #e1b967; border-color: #e1b967; }
.mobile-menu .mobile-main-nav a { color: #fff; border-bottom-color: rgba(255,255,255,.12); }
.mobile-menu .mobile-main-nav a svg,
.mobile-route-nav a svg { color: #e1b967; }
.mobile-menu .mobile-main-nav a:hover,
.mobile-route-nav a:hover { color: #f0ce78; }
.mobile-route-nav > p { color: #e1b967; }
.mobile-route-nav a { color: #c5d4cf; border-bottom-color: rgba(255,255,255,.1); }
.mobile-menu-contact > .mobile-menu-phone { color: #f0ce78; border: 1px solid rgba(225,189,105,.45); }

.route-hero,
.inner-hero,
.fleet-page-hero { background-color: #092921; }
.route-hero-bg { background: linear-gradient(90deg,rgba(0,48,40,.97),rgba(0,58,48,.76) 52%,rgba(0,48,40,.38)),url('/images/atlas-hero.png') 70% center/cover no-repeat; }
.inner-hero { background: linear-gradient(90deg,rgba(0,48,40,.97),rgba(0,58,48,.5)),url('/images/atlas-hero.png') 70% 49%/cover no-repeat; }
.fleet-page-hero { background: radial-gradient(circle at 82% 24%,rgba(225,189,105,.15),transparent 31%),linear-gradient(115deg,#0b5748,#092921); }
.route-hero h1,
.inner-hero h1,
.fleet-page-hero h1 { color: #f4d78d; }
.route-hero .eyebrow,
.inner-hero .eyebrow,
.fleet-page-hero .eyebrow,
.route-scenic-copy .eyebrow { color: #efcf7c; }
.route-hero .eyebrow > span,
.inner-hero .eyebrow > span,
.fleet-page-hero .eyebrow > span,
.route-scenic-copy .eyebrow > span { background: #dcb25c; }
.route-lead,
.inner-hero p { color: #d7e3df; }
.route-price,
.route-facts > div { background: rgba(0,48,40,.78); border-color: rgba(225,189,105,.3); }
.route-price > strong { color: #efd080; }
.route-price > span,
.route-facts span { color: #bed0ca; }
.route-price > small,
.route-facts b { color: #fff; }
.route-price > small svg,
.route-facts svg { color: #e1b967; }
.fleet-class-nav a { color: #f7f4e9; border-color: rgba(225,189,105,.38); background: rgba(255,255,255,.06); }
.fleet-class-nav a svg { color: #e1b967; }
.fleet-class-nav a:hover { color: #063d34; border-color: #e1b967; background: #e1b967; box-shadow: 0 12px 28px rgba(0,42,35,.22); }
.fleet-class-section { border-color: #dce7e2; background: #fff; }
.fleet-class-summary { color: #fff; background: radial-gradient(circle at 12% 8%,rgba(225,189,105,.13),transparent 34%),#072b26; border-color: rgba(225,189,105,.28); }
.fleet-class-summary h2 { color: #f0ce78; }
.fleet-class-summary > p,
.fleet-class-summary .fleet-class-capacity span { color: #c9d8d3; }
.fleet-models-grid { background: #f7fafc; }

.route-connectivity,
.route-pet-note,
.route-trust-strip { color: #102a43; background: #fff; border-color: #dce7e2; }
.route-connectivity strong,
.route-pet-note strong,
.route-trust-strip strong,
.route-longform-scroll h3 { color: #102a43; }
.route-connectivity span,
.route-pet-note span,
.route-trust-strip,
.route-longform-scroll p { color: #64748b; }
.route-connectivity > svg,
.route-pet-note > svg,
.route-longform-scroll strong { color: #b0802d; }
.route-longform-scroll { scrollbar-color: #e1b967 #e3ece8; }
.route-longform-scroll::-webkit-scrollbar-track { background: #e3ece8; }
.route-longform-scroll::-webkit-scrollbar-thumb { background: #e1b967; }

.legal-note,
.offer-license-link,
.company-legal-card > a { color: #0b5748; border-color: #aac5bc; background: #eef5f1; }
.offer-license-link:hover,
.company-legal-card > a:hover { color: #063d34; border-color: #dcb25c; background: #fff5d9; }
.values-grid svg,
.company-legal-card > svg,
.legal-card-label,
.review-carousel-arrows button,
.route-review-card > svg,
.route-review-card footer span { color: #b0802d; }
.review-stars svg { color: #d9ad4d; fill: #e4c36f; }
.review-carousel-dots button.is-active { background: #e1b967; }
.review-carousel-arrows button { border-color: #b8ccc5; background: #fff; }
.review-carousel-arrows button:hover,
.fleet-lightbox-arrow:hover,
.fleet-lightbox-close:hover { color: #063d34; border-color: #e1b967; background: #e1b967; box-shadow: 0 11px 26px rgba(0,55,46,.2); }

@media (max-width: 980px) {
  .hero-shade { background: transparent; }
}

@media (max-width: 680px) {
  .hero-image {
    top: -28% !important;
    bottom: auto !important;
    height: 128% !important;
    object-position: 46% center;
  }
  .hero-shade { background: transparent; }
  .route-hero-bg {
    background-image: linear-gradient(180deg,rgba(0,48,40,.72),rgba(0,55,46,.84) 37%,rgba(0,52,43,.62) 56%,rgba(0,45,38,.92) 79%,rgba(0,42,35,.98)),url('/images/atlas-hero.png');
    background-position: center,82% bottom;
    background-size: 100% 100%,auto 145%;
    background-repeat: no-repeat;
    opacity: .96;
  }
  .quote-card { box-shadow: 0 18px 46px rgba(0,42,35,.22); }
  .route-card { box-shadow: 0 12px 28px rgba(0,55,46,.16); }
  .comparison-row td:last-child::before { color: #9b722b; }
}

/* Shared icon finish from the approved Figma direction. */
.atlas-icon-gradient-defs {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  pointer-events: none;
}

body svg.lucide {
  stroke: url(#atlas-icon-gradient);
}

.review-stars svg.lucide {
  fill: url(#atlas-icon-gradient);
}

.gold-button svg.lucide {
  stroke: currentColor;
}

.gold-button .quote-car-icon {
  filter: brightness(0);
}

.floating-contact-trigger svg.lucide {
  stroke: url(#atlas-icon-gradient-dark);
}

.instagram-icon svg.lucide {
  stroke: #fff;
}

/* Final interaction palette: remove hover remnants from the former blue theme. */
.desktop-nav .desktop-routes-dropdown a:hover,
.desktop-nav .desktop-routes-dropdown a:focus-visible {
  color: #063d34;
  background: #fff8e9;
}

.field:hover {
  border-color: rgba(216, 173, 84, .72);
  box-shadow: 0 5px 15px rgba(9, 65, 54, .08);
}
.field:focus-within {
  border-color: #d8ad54;
  box-shadow: 0 0 0 3px rgba(216, 173, 84, .16);
}
.quote-back-button:hover {
  color: #0a5749;
}

.inline-route-link:hover,
.inline-route-link:focus-visible,
.seo-text-link:hover,
.seo-text-link:focus-visible,
.text-link:hover,
.text-link:focus-visible {
  color: #063d34;
  text-decoration-color: #d8ad54;
}

.faq-list details:hover,
.faq-list details[open],
.route-factor-grid > div:hover,
.route-pickup-grid > div:hover,
.mini-route-grid a:hover,
.driver-card:hover,
.fleet-model-card:hover,
.fleet-care-grid article:hover {
  color: #102a43;
  background: #fffdf7;
  border-color: rgba(216, 173, 84, .7);
  box-shadow: 0 18px 42px rgba(9, 65, 54, .14);
}

.service-card:hover > span,
.price-factor:hover > span {
  color: #8a6419;
  border-color: rgba(216, 173, 84, .78);
  background: #fff7e5;
}

.mini-route-grid a:hover {
  color: #063d34;
}
.mini-route-grid a:hover small {
  color: #536d66;
}

.coverage-link:hover,
.coverage-link:focus-visible {
  color: #063d34;
  background: #fff8e9;
  border-color: #d8ad54;
  box-shadow: 0 13px 30px rgba(9, 65, 54, .15);
}

.comparison-row:hover,
.fleet-price-table tbody tr:hover > * {
  background: #f5f9f7;
}
.fleet-price-table tbody th a:hover,
.fleet-price-table tbody th a:focus-visible {
  color: #0a5749;
}

.mobile-menu-contact > .mobile-menu-phone:hover,
.mobile-menu-contact > .mobile-menu-phone:focus-visible {
  color: #063d34;
  background: linear-gradient(180deg, #F8D896 0%, #D8AD54 100%);
  border-color: #f8d896;
}

.mobile-menu-contact > .mobile-menu-phone {
  min-height: 50px;
  padding: 0 16px;
  justify-content: center;
  border-radius: 5px;
  font-weight: 750;
}

/* Keep the revealed phone legible: legacy link styles are more specific than
   the shared PhoneReveal class once the button turns into an anchor. */
.mobile-menu-panel .mobile-menu-contact > .mobile-menu-phone,
.mobile-menu-panel .mobile-menu-contact > a.mobile-menu-phone:first-child {
  color: #f8d896;
  border-color: rgba(248, 216, 150, .72);
  background: rgba(255, 255, 255, .055);
}
.mobile-menu-panel .mobile-menu-contact > .mobile-menu-phone:hover,
.mobile-menu-panel .mobile-menu-contact > .mobile-menu-phone:focus-visible,
.mobile-menu-panel .mobile-menu-contact > a.mobile-menu-phone:first-child:hover,
.mobile-menu-panel .mobile-menu-contact > a.mobile-menu-phone:first-child:focus-visible {
  color: #063d34;
  border-color: #f8d896;
  background: linear-gradient(180deg, #f8d896 0%, #d8ad54 100%);
}

.fleet-gallery-arrow:hover,
.fleet-gallery-arrow:focus-visible {
  color: #063d34 !important;
  background: linear-gradient(180deg, #F8D896 0%, #D8AD54 100%) !important;
  border-color: rgba(248, 216, 150, .82) !important;
  box-shadow: 0 10px 24px rgba(5, 48, 40, .24);
}

.review-carousel-arrows button:hover,
.review-carousel-arrows button:focus-visible,
.fleet-lightbox-arrow:hover,
.fleet-lightbox-arrow:focus-visible,
.fleet-lightbox-close:hover,
.fleet-lightbox-close:focus-visible {
  color: #063d34;
  border-color: #f8d896;
  background: linear-gradient(180deg, #F8D896 0%, #D8AD54 100%);
  box-shadow: 0 11px 26px rgba(9, 65, 54, .2);
}

/* Kyiv — Odesa hero concept: clearer image and light information cards. */
.route-hero-kyiv-odesa .route-hero-bg {
  opacity: 1;
  background:
    linear-gradient(
      90deg,
      rgba(4, 38, 32, .82) 0%,
      rgba(4, 38, 32, .55) 43%,
      rgba(4, 38, 32, .16) 74%,
      rgba(4, 38, 32, .06) 100%
    ),
    url('/images/atlas-hero.png') 70% center / cover no-repeat;
}

.route-hero-kyiv-odesa .route-hero-grid > div:first-child {
  text-shadow: 0 2px 12px rgba(1, 24, 20, .42);
}

.route-hero-kyiv-odesa .route-price,
.route-hero-kyiv-odesa .route-facts > div {
  color: #102a43;
  background: rgba(255, 255, 255, .92);
  border-color: rgba(216, 173, 84, .72);
  box-shadow: 0 16px 38px rgba(3, 40, 33, .2);
  backdrop-filter: blur(10px);
  text-shadow: none;
}

.route-hero-kyiv-odesa .route-price {
  background: rgba(255, 247, 229, .94);
}

.route-hero-kyiv-odesa .route-price > span,
.route-hero-kyiv-odesa .route-facts span {
  color: #64748b;
}

.route-hero-kyiv-odesa .route-price > strong {
  color: #8a6419;
}

.route-hero-kyiv-odesa .route-price > small {
  color: #475569;
}

.route-hero-kyiv-odesa .route-facts b {
  color: #102a43;
}

/* Accessible text contrast on route long-form copy and review cards. */
.route-longform-scroll strong,
.route-review-card footer span {
  color: #0b5748;
}

.route-review-card > p {
  color: #203c55;
}

.route-review-card footer time,
.route-review-card footer small {
  color: #52687a;
}

@media (max-width: 680px) {
  .route-hero-kyiv-odesa .route-hero-bg {
    opacity: 1;
    background-image:
      linear-gradient(
        180deg,
        rgba(4, 38, 32, .54) 0%,
        rgba(4, 38, 32, .68) 43%,
        rgba(4, 38, 32, .79) 72%,
        rgba(4, 38, 32, .9) 100%
      ),
      url('/images/atlas-hero.png');
    background-position: center, 78% bottom;
    background-size: 100% 100%, auto 132%;
    background-repeat: no-repeat;
  }
}
