:root{
  --via-navy:#081a33;
  --via-navy-2:#0d2748;
  --via-gold:#d3a437;
  --via-gold-light:#f0cb68;
  --via-white:#ffffff;
  --via-text:#14233a;
}

/* Header */
header, .header, .top-header, .main-header, .navbar, .navbar-default {
  background: var(--via-navy) !important;
}

.logo, .site-logo, .navbar-brand {
  background: transparent !important;
}

.logo img, .site-logo img, .navbar-brand img {
  max-height: 88px !important;
  width: auto !important;
  object-fit: contain !important;
  filter: brightness(1.28) contrast(1.1) saturate(1.1) !important;
}

.navbar a, .nav a, header a, .main-header a {
  color:#fff !important;
}

.navbar a:hover, .nav a:hover, header a:hover {
  color:var(--via-gold-light) !important;
}

/* Hide stray booking sentence */
.booking-intro,
.hero-kicker,
.via-kicker,
.professional-airport-transfer-line {
  display:none !important;
}

/* Booking section */
.hero, .banner, .booking-hero, .home-banner {
  background: linear-gradient(135deg,var(--via-navy),var(--via-navy-2)) !important;
  color:#fff !important;
}

.booking-form,
.booking-box,
.search-box,
.price-form {
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.12) !important;
}

.booking-form input,
.booking-form select,
.booking-box input,
.booking-box select,
.search-box input,
.search-box select {
  background:#fff !important;
  color:#23344f !important;
  border:1px solid #d9dfeb !important;
}

.btn-primary,
.get-price,
button[type="submit"] {
  background:var(--via-gold) !important;
  color:#111 !important;
  border-color:var(--via-gold) !important;
}

/* Middle white/light section */
.home-content,
.content-section,
.routes-section,
.popular-routes,
.services-block {
  background:#f6f8fb !important;
  color:var(--via-text) !important;
}

.home-content h1,
.home-content h2,
.home-content h3,
.content-section h1,
.content-section h2,
.content-section h3,
.routes-section h2,
.routes-section h3,
.popular-routes h2,
.popular-routes h3 {
  color:var(--via-navy) !important;
  opacity:1 !important;
  text-shadow:none !important;
}

.home-content p,
.content-section p,
.routes-section p,
.popular-routes p {
  color:#47566d !important;
  opacity:1 !important;
}

/* Footer */
footer, .footer, #footer, .site-footer {
  background:var(--via-navy) !important;
  color:#fff !important;
}

footer h1, footer h2, footer h3, footer h4,
.footer h1, .footer h2, .footer h3, .footer h4 {
  color:#fff !important;
}

footer a, .footer a, #footer a, .site-footer a {
  color:#fff !important;
}

footer a:hover, .footer a:hover {
  color:var(--via-gold-light) !important;
}

footer address, .footer address {
  color:#fff !important;
  font-style:normal !important;
  font-size:15px !important;
  line-height:1.55 !important;
}

/* Keep WhatsApp small on every page */
.whatsapp,
.whatsapp-button,
.whatsapp_float,
.float-whatsapp {
  width:54px !important;
  height:54px !important;
  position:fixed !important;
  left:18px !important;
  bottom:18px !important;
  z-index:9999 !important;
  overflow:hidden !important;
}

.whatsapp img,
.whatsapp-button img,
.whatsapp_float img,
.float-whatsapp img,
img[src*="whatsapp"],
img[alt*="WhatsApp"],
img[alt*="Whatsapp"] {
  width:54px !important;
  height:54px !important;
  max-width:54px !important;
  max-height:54px !important;
  object-fit:contain !important;
}

/* Inner pages */
.inner-page,
.page-content,
.about-content,
.services-content,
.signup-content,
.contact-content {
  background:#fff !important;
  color:var(--via-text) !important;
}

.inner-page h1,
.inner-page h2,
.inner-page h3,
.page-content h1,
.page-content h2,
.page-content h3 {
  color:var(--via-navy) !important;
}

/* FIX old Waterloo WhatsApp widget */
a[href*="api.whatsapp.com"] {
    position: fixed !important;
    left: 18px !important;
    bottom: 18px !important;
    width: 52px !important;
    height: 52px !important;
    display: block !important;
    z-index: 99999 !important;
    overflow: hidden !important;
    background: transparent !important;
}

a[href*="api.whatsapp.com"] .whtspimg,
.whtspimg {
    width: 52px !important;
    height: 52px !important;
    max-width: 52px !important;
    max-height: 52px !important;
    min-width: 0 !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    transform: none !important;
}

/* Keep Via Airport footer logo at normal size */
.via-footer-logo {
    width: 150px !important;
    height: auto !important;
    max-width: 150px !important;
    max-height: 120px !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 0 12px 0 !important;
}

/* Main Via Airport logo - consistent size */
.via-main-logo {
    width: 115px !important;
    max-width: 115px !important;
    height: auto !important;
    object-fit: contain !important;
}

/* Brighten main header logo on dark background */
.via-main-logo {
    width: 115px !important;
    max-width: 115px !important;
    height: auto !important;
    object-fit: contain !important;
    filter: brightness(1.6) contrast(1.15) saturate(.7) !important;
}

/* Reduce footer logo */
.via-footer-logo {
    width: 105px !important;
    max-width: 105px !important;
    height: auto !important;
    max-height: 90px !important;
}

/* Improve Via Airport logo visibility */
.via-main-logo {
    filter: brightness(1.75) contrast(1.18) saturate(1.25) !important;
}

/* Cleaner footer contact block */
.via-footer-contact,
.footer-contact,
footer .via-footer-contact,
footer .footer-contact {
    font-size: 13px !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
    color: #ffffff !important;
}

.via-footer-contact strong,
.footer-contact strong {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
}

.via-footer-contact a,
.footer-contact a {
    color: #ffffff !important;
    font-weight: 400 !important;
}

.via-footer-contact a:hover,
.footer-contact a:hover {
    color: #f0cb68 !important;
}

/* Make copyright visible */
footer .copyright,
.footer .copyright,
.site-footer .copyright {
    color: rgba(255,255,255,.75) !important;
    font-size: 12px !important;
    opacity: 1 !important;
}

/* Mobile */
@media (max-width: 767px) {
    .via-main-logo {
        width: 92px !important;
        max-width: 92px !important;
    }

    .via-footer-logo {
        width: 82px !important;
        max-width: 82px !important;
    }

    .via-footer-contact,
    .footer-contact {
        font-size: 12px !important;
        text-align: center !important;
    }
}

/* Match footer logo to brighter header logo */
.via-footer-logo {
    width: 105px !important;
    max-width: 105px !important;
    height: auto !important;
    object-fit: contain !important;
    filter: brightness(1.75) contrast(1.18) saturate(1.25) !important;
}

/* Make header and footer Via Airport logos match */
.via-main-logo,
.via-footer-logo {
    filter: brightness(1.75) contrast(1.18) saturate(1.25) !important;
}

/* Final footer logo + footer text correction */
.via-footer-logo {
    width: 95px !important;
    max-width: 95px !important;
    height: auto !important;
    filter: brightness(1.95) contrast(1.2) saturate(1.05) !important;
}

.via-footer-contact,
.via-footer-contact strong,
.via-footer-contact a,
.footer-contact,
.footer-contact strong,
.footer-contact a,
footer address,
footer p {
    color: #ffffff !important;
    opacity: 1 !important;
}

.via-footer-contact,
.footer-contact {
    font-size: 12px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
}

footer .copyright,
.footer .copyright,
.site-footer .copyright {
    color: rgba(255,255,255,.78) !important;
    opacity: 1 !important;
    font-size: 11px !important;
}

/* Brighten top Via Airport logo */
.via-main-logo {
    filter: brightness(1.95) contrast(1.2) saturate(1.05) !important;
}

/* Footer contact text - slightly larger and clearer */
.via-footer-contact,
.footer-contact {
    font-size: 14px !important;
    line-height: 1.5 !important;
    font-weight: 400 !important;
    color: #ffffff !important;
}

.via-footer-contact strong,
.footer-contact strong {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
}

.via-footer-contact a,
.footer-contact a {
    color: #ffffff !important;
    font-weight: 400 !important;
}

/* Force copyright to be clearly visible */
.via-footer-bottom,
.via-footer-bottom span,
footer .copyright,
.footer .copyright,
.site-footer .copyright {
    color: #ffffff !important;
    opacity: 1 !important;
    font-size: 12px !important;
    font-weight: 400 !important;
}

/* Center copyright across full footer */
.via-footer-bottom {
    width: 100% !important;
    text-align: center !important;
    display: block !important;
    clear: both !important;
    margin-top: 18px !important;
    padding-top: 12px !important;
}

.via-footer-bottom span {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
}

/* London Airports section */
.yellow {
    background: #f7f8fb !important;
    color: #14233a !important;
    padding-top: 28px !important;
    padding-bottom: 28px !important;
}

.yellow h2 {
    color: #081a33 !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
}

.yellow h3 {
    color: #d3a437 !important;
    font-weight: 600 !important;
    margin-bottom: 20px !important;
}

.yellow a {
    color: #081a33 !important;
    font-weight: 500 !important;
}

.yellow a:hover {
    color: #b88a22 !important;
    text-decoration: underline !important;
}