/* Melbourne Airport landing — bottom-page contrast repair (10 Nov 2026).
   Kept separate from global themes and quote/payment styles. */
body.inner-page.marketing-page.themed-page main :is(.faq-section,.related,.editorial,.service-cta,.airport-destination-section) {
  background:#f6f5f1 !important;
  color:#172a35 !important;
  -webkit-text-fill-color:#172a35 !important;
}
body.inner-page.marketing-page.themed-page main :is(.faq-section,.related,.editorial,.service-cta,.airport-destination-section)::before,
body.inner-page.marketing-page.themed-page main :is(.faq-section,.related,.editorial,.service-cta,.airport-destination-section)::after {
  background-image:none !important;
}
body.inner-page.marketing-page.themed-page main :is(.faq-section,.related,.editorial,.service-cta,.airport-destination-section) :is(h2,h3,h4) {
  color:#172a35 !important;
  -webkit-text-fill-color:#172a35 !important;
  text-shadow:none !important;
  opacity:1 !important;
}
body.inner-page.marketing-page.themed-page main :is(.faq-section,.related,.editorial,.service-cta,.airport-destination-section) :is(h2,h3) em {
  color:#765627 !important;
  -webkit-text-fill-color:#765627 !important;
}
body.inner-page.marketing-page.themed-page main :is(.faq-section,.related,.editorial,.service-cta,.airport-destination-section) .kicker {
  color:#785725 !important;
  -webkit-text-fill-color:#785725 !important;
  opacity:1 !important;
}
body.inner-page.marketing-page.themed-page main :is(.faq-section,.related,.editorial,.service-cta,.airport-destination-section) p {
  color:#3d4d56 !important;
  -webkit-text-fill-color:#3d4d56 !important;
  line-height:1.7;
  opacity:1 !important;
}
body.inner-page.marketing-page.themed-page main :is(.faq-section,.related,.editorial,.service-cta,.airport-destination-section) a:not(.button):not(.related-card) {
  color:#224d45 !important;
  -webkit-text-fill-color:#224d45 !important;
  text-decoration-thickness:1.5px;
  text-underline-offset:3px;
}
body.inner-page.marketing-page.themed-page main :is(.related,.editorial,.service-cta,.airport-destination-section) a:focus-visible,
body.inner-page.marketing-page.themed-page main .faq-section :is(a,summary):focus-visible {
  outline:3px solid #a47525 !important;
  outline-offset:4px !important;
}

/* White service tiles: avoid the inherited night-theme light text on white. */
body.inner-page.marketing-page.themed-page main .related .related-grid {
  gap:clamp(13px,1.7vw,22px);
}
body.inner-page.marketing-page.themed-page main .related a.related-card {
  background:#fff !important;
  border:1px solid #cbd5d1 !important;
  color:#172a35 !important;
  -webkit-text-fill-color:#172a35 !important;
  box-shadow:0 5px 20px rgba(18,45,55,.07) !important;
  border-radius:14px !important;
  transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;
}
body.inner-page.marketing-page.themed-page main .related a.related-card:hover {
  background:#fff !important;
  border-color:#8b7552 !important;
  box-shadow:0 12px 28px rgba(18,45,55,.12) !important;
}
body.inner-page.marketing-page.themed-page main .related a.related-card :is(h3,p) {
  opacity:1 !important;
  text-shadow:none !important;
}
body.inner-page.marketing-page.themed-page main .related a.related-card h3 {
  font-size:clamp(1.16rem,1.7vw,1.55rem);
  line-height:1.28;
  color:#162e3c !important;
  -webkit-text-fill-color:#162e3c !important;
}
body.inner-page.marketing-page.themed-page main .related a.related-card p:not(.kicker) {
  font-size:1rem;
  line-height:1.6;
  color:#42545e !important;
  -webkit-text-fill-color:#42545e !important;
}
body.inner-page.marketing-page.themed-page main .related a.related-card .kicker {
  color:#765627 !important;
  -webkit-text-fill-color:#765627 !important;
}

/* Editorial content and final booking call to action. */
body.inner-page.marketing-page.themed-page main .editorial .editorial-copy {
  color:#344852 !important;
}
body.inner-page.marketing-page.themed-page main .editorial .editorial-copy p {
  font-size:clamp(1rem,1.3vw,1.08rem);
  line-height:1.85;
}
body.inner-page.marketing-page.themed-page main .service-cta {
  background:#e5ebea !important;
  border:1px solid #c6d4d1 !important;
  box-shadow:none !important;
}
body.inner-page.marketing-page.themed-page main .service-cta a.button.button-gold,
body.inner-page.marketing-page.themed-page main .service-cta a.button.button-gold span {
  background:#173a47 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
body.inner-page.marketing-page.themed-page main .service-cta a.button.button-gold {
  border:1px solid #173a47 !important;
  padding:15px 22px !important;
  min-height:48px;
}

/* Search-friendly destination directory — distinct, legible link surfaces. */
body.inner-page.marketing-page.themed-page main .airport-destination-section {
  border-top:1px solid #dce4df;
  padding-block:clamp(48px,6.5vw,86px);
}
body.inner-page.marketing-page.themed-page main .airport-destination-section > p:not(.kicker) {
  max-width:70ch;
  font-size:1rem;
}
body.inner-page.marketing-page.themed-page main .airport-destination-section .route-journey-links {
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,225px),1fr)) !important;
  align-items:stretch;
  gap:12px !important;
  margin-top:26px !important;
}
body.inner-page.marketing-page.themed-page main .airport-destination-section .route-journey-links a {
  display:flex;
  align-items:center;
  min-height:54px;
  padding:12px 14px;
  background:#fff !important;
  border:1px solid #c8d5d0;
  border-radius:9px;
  color:#214b42 !important;
  -webkit-text-fill-color:#214b42 !important;
  text-decoration:none !important;
  font-size:.925rem;
  font-weight:600;
  line-height:1.5;
  overflow-wrap:anywhere;
}
body.inner-page.marketing-page.themed-page main .airport-destination-section .route-journey-links a:hover {
  background:#e9f2ef !important;
  border-color:#4d7970;
  text-decoration:underline !important;
  text-underline-offset:3px;
}

/* The small cross-service navigation sits between the two closing sections. */
body.inner-page.marketing-page.themed-page main nav[aria-label="Related Melbourne chauffeur services"] {
  max-width:1220px !important;
  padding:clamp(22px,4vw,36px) !important;
  margin:18px auto !important;
  border:1px solid #cfdad6 !important;
  border-radius:14px;
  background:#fff !important;
  color:#172a35 !important;
}
body.inner-page.marketing-page.themed-page main nav[aria-label="Related Melbourne chauffeur services"] :is(h2,p) {
  color:#172a35 !important;
  -webkit-text-fill-color:#172a35 !important;
}
body.inner-page.marketing-page.themed-page main nav[aria-label="Related Melbourne chauffeur services"] h2 {
  font-size:clamp(1.4rem,2.8vw,2rem);
  line-height:1.25;
}
body.inner-page.marketing-page.themed-page main nav[aria-label="Related Melbourne chauffeur services"] ul {
  display:flex;flex-wrap:wrap;gap:12px 24px;
  padding-left:20px;
}
body.inner-page.marketing-page.themed-page main nav[aria-label="Related Melbourne chauffeur services"] a {
  color:#214b42 !important;
  -webkit-text-fill-color:#214b42 !important;
  font-size:1rem;
  font-weight:600;
  text-underline-offset:3px;
}

/* FAQ and footer remain readable on all viewports. */
body.inner-page.marketing-page.themed-page main .faq-section .faq-list,
body.inner-page.marketing-page.themed-page main .faq-section .faq-list details {
  background:#fff !important;
  color:#172a35 !important;
}
body.inner-page.marketing-page.themed-page main .faq-section .faq-list summary {
  color:#172a35 !important;
  -webkit-text-fill-color:#172a35 !important;
  font-size:1rem !important;
  line-height:1.6;
}
body.inner-page.marketing-page.themed-page main .faq-section .faq-list details p {
  color:#3d4d56 !important;
  -webkit-text-fill-color:#3d4d56 !important;
}
body.inner-page.marketing-page.themed-page footer {
  background:#080e15 !important;
  color:#f1f4f3 !important;
}
body.inner-page.marketing-page.themed-page footer :is(h3,p,.footer-brand,.footer-bottom span) {
  color:#e6eceb !important;
  -webkit-text-fill-color:#e6eceb !important;
}
body.inner-page.marketing-page.themed-page footer a {
  color:#e9d3a6 !important;
  -webkit-text-fill-color:#e9d3a6 !important;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
body.inner-page.marketing-page.themed-page footer a:focus-visible {
  outline:3px solid #e9d3a6;
  outline-offset:3px;
}
@media(max-width:680px) {
  body.inner-page.marketing-page.themed-page main .related a.related-card div {
    padding:20px !important;
  }
  body.inner-page.marketing-page.themed-page main .airport-destination-section .route-journey-links {
    grid-template-columns:minmax(0,1fr) !important;
    gap:9px !important;
  }
  body.inner-page.marketing-page.themed-page main .airport-destination-section .route-journey-links a {
    min-height:48px;
    font-size:.95rem;
  }
  body.inner-page.marketing-page.themed-page main nav[aria-label="Related Melbourne chauffeur services"] {
    margin-inline:16px !important;
    padding:22px !important;
  }
}
@media(prefers-reduced-motion:reduce) {
  body.inner-page.marketing-page.themed-page main .related a.related-card {
    transition:none !important;
    transform:none !important;
  }
}


/* Specific fix for the dark inside/outside airport pickup panels.
   The general light-page theme was painting dark text over navy backgrounds,
   especially on iPhone. Enforce both color and Safari's text fill explicitly. */
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison {
  background:#081a27 !important;
  color:#f6f0e5 !important;
  -webkit-text-fill-color:#f6f0e5 !important;
}
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-option {
  background:#142c3a !important;
  color:#f6f0e5 !important;
  border-color:#65788a !important;
  -webkit-text-fill-color:#f6f0e5 !important;
}
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-option__body h3,
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-comparison__header h2 {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
  text-shadow:none !important;
}
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-option__body > p:not(.airport-pickup-option__eyebrow):not(.airport-pickup-option__price),
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-option__body li,
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-comparison__header > p:last-child,
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-comparison__footer > p {
  color:#eef3f5 !important;
  -webkit-text-fill-color:#eef3f5 !important;
  opacity:1 !important;
  text-shadow:none !important;
  font-size:clamp(1rem,1.1vw,1.075rem);
  line-height:1.7;
}
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-option__eyebrow,
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-option__price,
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-section-eyebrow {
  color:#f1d9a6 !important;
  -webkit-text-fill-color:#f1d9a6 !important;
  opacity:1 !important;
}
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-option__saving {
  background:#e8cc94 !important;
  color:#102331 !important;
  -webkit-text-fill-color:#102331 !important;
  opacity:1 !important;
}
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-comparison__header h2 em,
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-comparison__footer a.airport-inline-link {
  color:#f1d9a6 !important;
  -webkit-text-fill-color:#f1d9a6 !important;
}
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-option__body li::marker {
  color:#f1d9a6 !important;
}
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-comparison__footer strong {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-comparison__footer .button.button-gold,
body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-comparison__footer .button.button-gold span {
  background:#e8cc94 !important;
  color:#102331 !important;
  -webkit-text-fill-color:#102331 !important;
}
@media(max-width:680px) {
  body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-option__body {
    padding:24px 22px !important;
  }
  body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-option__body > p:not(.airport-pickup-option__eyebrow):not(.airport-pickup-option__price),
  body.inner-page.marketing-page.themed-page main .airport-pickup-comparison .airport-pickup-option__body li {
    font-size:1rem !important;
    line-height:1.75 !important;
  }
}
