/* Premium homepage release: visual layer only; preserves existing page structure and booking controls. */
:root {
  --premium-black: #0a0a0a;
  --premium-ink: #222222;
  --premium-body: #4a4a4a;
  --premium-muted: #777777;
  --premium-silver: #b5b5b0;
  --premium-line: #e5e5e2;
  --premium-warm: #f7f7f5;
  --premium-white: #ffffff;
  --premium-serif: 'Cormorant Garamond', Georgia, serif;
  --premium-sans: 'Inter', Arial, sans-serif;
}

body.home-premium {
  background: var(--premium-white);
  color: var(--premium-ink);
  font-family: var(--premium-sans);
}

body.home-premium .pnav-topbar,
body.home-premium .lux-hero-particles,
body.home-premium .lux-scroll-hint,
body.home-premium .lux-dark-pattern,
body.home-premium .lux-about-img-accent,
body.home-premium .lux-gold-line {
  display: none !important;
}

body.home-premium .pnav-header,
body.home-premium .pnav-nav,
body.home-premium .pnav-main,
body.home-premium .premium-nav {
  background: var(--premium-white) !important;
  box-shadow: none !important;
  border-bottom: 1px solid var(--premium-line) !important;
}

body.home-premium .pnav-nav-link,
body.home-premium .pnav-main a,
body.home-premium .pnav-header a {
  color: var(--premium-black) !important;
  font-family: var(--premium-sans) !important;
  font-size: .77rem !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
}

body.home-premium .pnav-book-btn,
body.home-premium .pnav-cta,
body.home-premium .pnav-booking-link {
  background: var(--premium-black) !important;
  border: 1px solid var(--premium-black) !important;
  border-radius: 3px !important;
  color: var(--premium-white) !important;
  box-shadow: none !important;
}

body.home-premium .container {
  max-width: 1360px;
}

body.home-premium .lux-hero {
  background: var(--premium-white) !important;
  min-height: 0 !important;
  overflow: hidden;
  padding: 78px 0 86px;
  position: relative;
}

body.home-premium .lux-hero-bg {
  background: url('/images/four-seasons-lexus.jpg') center center / cover no-repeat !important;
  border-left: 1px solid var(--premium-line);
  display: block !important;
  inset: 0 0 0 auto !important;
  opacity: 1 !important;
  position: absolute !important;
  width: 52% !important;
}

body.home-premium .lux-hero-overlay {
  background: linear-gradient(90deg, var(--premium-white) 0%, rgba(255,255,255,.97) 38%, rgba(255,255,255,.22) 63%, rgba(10,10,10,.08) 100%) !important;
  display: block !important;
  inset: 0 !important;
  position: absolute !important;
}

body.home-premium .lux-hero-inner {
  align-items: center;
  display: grid !important;
  gap: 76px !important;
  grid-template-columns: minmax(0, .95fr) minmax(360px, .72fr) !important;
  padding: 0 32px !important;
  position: relative;
  z-index: 1;
}

body.home-premium .lux-hero-content {
  max-width: 620px;
  padding: 46px 0;
}

body.home-premium .lux-hero-eyebrow,
body.home-premium .lux-badge {
  color: var(--premium-muted) !important;
  display: inline-flex !important;
  font-family: var(--premium-sans) !important;
  font-size: .72rem !important;
  font-weight: 600 !important;
  letter-spacing: .16em !important;
  margin-bottom: 22px !important;
  text-transform: uppercase !important;
}

body.home-premium .lux-eyebrow-line {
  background: var(--premium-silver) !important;
  height: 1px !important;
  width: 28px !important;
}

body.home-premium .lux-hero-title,
body.home-premium .lux-section-title,
body.home-premium .lux-cta-title,
body.home-premium .lux-fleet-title,
body.home-premium .lux-feature-title,
body.home-premium .lux-about-content h2 {
  color: var(--premium-black) !important;
  font-family: var(--premium-serif) !important;
  font-weight: 500 !important;
  letter-spacing: -.035em !important;
}

body.home-premium .lux-hero-title {
  font-size: clamp(3.8rem, 7vw, 5.2rem) !important;
  line-height: .93 !important;
  margin: 0 0 25px !important;
}

body.home-premium .lux-title-gold,
body.home-premium .lux-title-sub,
body.home-premium .lux-section-title span,
body.home-premium .lux-gold-text {
  color: inherit !important;
  font-style: normal !important;
}

body.home-premium .lux-title-sub {
  color: var(--premium-body) !important;
  display: inline-block;
  font-family: var(--premium-sans) !important;
  font-size: clamp(1rem, 1.55vw, 1.22rem) !important;
  font-style: normal !important;
  font-weight: 500 !important;
  letter-spacing: .01em !important;
  line-height: 1.45 !important;
  margin-top: 18px;
}

body.home-premium .lux-hero-desc,
body.home-premium .lux-section-sub,
body.home-premium .lux-about-text,
body.home-premium .lux-feature-desc,
body.home-premium .lux-fleet-desc,
body.home-premium .lux-faq-a {
  color: var(--premium-body) !important;
  font-family: var(--premium-sans) !important;
  font-size: 1rem !important;
  line-height: 1.7 !important;
}

body.home-premium .lux-hero-desc {
  max-width: 510px;
}

body.home-premium .lux-hero-actions,
body.home-premium .lux-cta-actions {
  gap: 12px !important;
}

body.home-premium .lux-btn-primary,
body.home-premium .lux-btn-gold,
body.home-premium .lux-fare-btn,
body.home-premium .lux-fleet-btn,
body.home-premium .lux-btn-navy {
  background: var(--premium-black) !important;
  border: 1px solid var(--premium-black) !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  color: var(--premium-white) !important;
  font-family: var(--premium-sans) !important;
  font-size: .78rem !important;
  font-weight: 600 !important;
  letter-spacing: .04em !important;
  text-transform: none !important;
}

body.home-premium .lux-btn-primary:hover,
body.home-premium .lux-btn-gold:hover,
body.home-premium .lux-fare-btn:hover,
body.home-premium .lux-fleet-btn:hover,
body.home-premium .lux-btn-navy:hover {
  background: #252525 !important;
  border-color: #252525 !important;
  transform: none !important;
}

body.home-premium .lux-btn-ghost {
  background: var(--premium-white) !important;
  border: 1px solid #d8d8d5 !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  color: var(--premium-black) !important;
  font-family: var(--premium-sans) !important;
}

body.home-premium .lux-btn-ghost:hover { background: var(--premium-warm) !important; }

body.home-premium .lux-hero-micro,
body.home-premium .lux-fare-trust,
body.home-premium .lux-fare-subtitle {
  color: var(--premium-muted) !important;
  font-family: var(--premium-sans) !important;
}

body.home-premium .lux-fare-widget {
  backdrop-filter: blur(4px);
  background: rgba(255,255,255,.96) !important;
  border: 1px solid var(--premium-line) !important;
  border-radius: 4px !important;
  box-shadow: 0 18px 55px rgba(10,10,10,.12) !important;
  padding: 30px !important;
}

body.home-premium .lux-fare-header {
  color: var(--premium-black) !important;
  font-family: var(--premium-serif) !important;
  font-size: 2rem !important;
  font-weight: 500 !important;
  letter-spacing: -.025em !important;
}

body.home-premium .lux-fare-field { gap: 7px !important; }
body.home-premium .lux-fare-label { color: var(--premium-ink) !important; font-family: var(--premium-sans) !important; font-size: .74rem !important; font-weight: 600 !important; letter-spacing: .03em !important; }
body.home-premium .lux-fare-input { background: var(--premium-white) !important; border: 1px solid #d8d8d5 !important; border-radius: 3px !important; box-shadow: none !important; color: var(--premium-black) !important; font-family: var(--premium-sans) !important; padding: 15px 14px !important; }
body.home-premium .lux-fare-input:focus { border-color: var(--premium-black) !important; box-shadow: 0 0 0 3px rgba(10,10,10,.08) !important; }
body.home-premium .lux-fare-btn { justify-content: center; margin-top: 8px; padding: 15px !important; width: 100%; }

body.home-premium .lux-section {
  padding: 116px 0 !important;
}

body.home-premium .lux-section-offwhite,
body.home-premium .lux-trust-strip {
  background: var(--premium-warm) !important;
}

body.home-premium .lux-section-header {
  margin-bottom: 54px !important;
  max-width: 690px;
}

body.home-premium .lux-section-header:has(.lux-badge) { text-align: left !important; }
body.home-premium .lux-section-title {
  font-size: clamp(2.7rem, 5vw, 4.1rem) !important;
  line-height: .98 !important;
  margin: 0 0 18px !important;
}

body.home-premium .lux-section-sub { max-width: 600px !important; }

body.home-premium .lux-fleet-grid {
  gap: 20px !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

body.home-premium .lux-fleet-card {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.home-premium .lux-fleet-img-wrap { border-radius: 0 !important; overflow: hidden; }
body.home-premium .lux-fleet-img { aspect-ratio: 4 / 3; filter: saturate(.85) contrast(1.04); object-fit: cover; transition: transform .35s ease; }
body.home-premium .lux-fleet-card:hover .lux-fleet-img { transform: scale(1.02); }
body.home-premium .lux-fleet-badge { background: var(--premium-black) !important; border-radius: 2px !important; box-shadow: none !important; color: var(--premium-white) !important; font-family: var(--premium-sans) !important; }
body.home-premium .lux-fleet-body { padding: 22px 0 0 !important; }
body.home-premium .lux-fleet-title { font-size: 2rem !important; line-height: 1 !important; }
body.home-premium .lux-fleet-tags { display: none !important; }
body.home-premium .lux-fleet-price { color: var(--premium-body) !important; font-family: var(--premium-sans) !important; font-size: .84rem !important; }
body.home-premium .lux-fleet-price strong { color: var(--premium-black) !important; font-size: 1.05rem !important; }
body.home-premium .lux-fleet-btn { display: inline-flex !important; margin-top: 14px !important; padding: 11px 16px !important; width: auto !important; }

body.home-premium .lux-section-dark,
body.home-premium .lux-cta-band,
body.home-premium .footer-premium {
  background: var(--premium-black) !important;
}

body.home-premium .lux-section-dark { padding: 110px 0 !important; }
body.home-premium .lux-section-dark .lux-badge,
body.home-premium .lux-section-dark .lux-section-sub { color: #c7c7c4 !important; }
body.home-premium .lux-section-dark .lux-section-title,
body.home-premium .lux-cta-title { color: var(--premium-white) !important; }
body.home-premium .lux-features-grid { gap: 1px !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
body.home-premium .lux-feature-card { background: transparent !important; border: 0 !important; border-left: 1px solid #2a2a2a !important; border-radius: 0 !important; box-shadow: none !important; padding: 10px 26px 10px !important; }
body.home-premium .lux-feature-card:first-child { border-left: 0 !important; }
body.home-premium .lux-feature-card:nth-child(n+5) { display: none !important; }
body.home-premium .lux-feature-icon { background: transparent !important; color: var(--premium-silver) !important; height: 30px !important; margin-bottom: 20px !important; width: 30px !important; }
body.home-premium .lux-feature-title { color: var(--premium-white) !important; font-size: 1.85rem !important; }
body.home-premium .lux-feature-desc { color: #b8b8b8 !important; font-size: .9rem !important; }

body.home-premium .lux-about-grid { align-items: center !important; gap: 72px !important; }
body.home-premium .lux-about-img-wrap { border-radius: 0 !important; }
body.home-premium .lux-about-img { border-radius: 0 !important; filter: saturate(.82); }
body.home-premium .lux-about-content { max-width: 560px; }
body.home-premium .lux-about-features { border-top: 1px solid var(--premium-line); gap: 0 !important; margin-top: 28px !important; }
body.home-premium .lux-about-feature { border-bottom: 1px solid var(--premium-line); padding: 18px 0 !important; }
body.home-premium .lux-about-feature-icon { background: transparent !important; color: var(--premium-black) !important; }
body.home-premium .lux-about-feature-title { color: var(--premium-black) !important; font-family: var(--premium-sans) !important; font-weight: 600 !important; }
body.home-premium .lux-about-feature-desc { color: var(--premium-muted) !important; }

body.home-premium .lux-trust-strip { border-top: 1px solid var(--premium-line); border-bottom: 1px solid var(--premium-line); padding: 32px 0 !important; }
body.home-premium .lux-trust-grid { gap: 0 !important; grid-template-columns: repeat(4, 1fr) !important; }
body.home-premium .lux-trust-item { border-left: 1px solid var(--premium-line); padding: 5px 24px !important; }
body.home-premium .lux-trust-item:first-child { border-left: 0; }
body.home-premium .lux-trust-icon { color: var(--premium-black) !important; }
body.home-premium .lux-trust-label { color: var(--premium-black) !important; font-family: var(--premium-sans) !important; font-weight: 600 !important; }
body.home-premium .lux-trust-sub { color: var(--premium-muted) !important; }

body.home-premium .lux-faq-item { border: 0 !important; border-bottom: 1px solid var(--premium-line) !important; border-radius: 0 !important; box-shadow: none !important; }
body.home-premium .lux-faq-q { color: var(--premium-black) !important; font-family: var(--premium-serif) !important; font-size: 1.55rem !important; font-weight: 500 !important; }
body.home-premium .lux-faq-chevron { color: var(--premium-black) !important; }

body.home-premium .lux-cta-band { margin: 0 !important; padding: 106px 0 !important; }
body.home-premium .lux-cta-bg { display: none !important; }
body.home-premium .lux-cta-inner { align-items: center !important; }
body.home-premium .lux-cta-sub { color: #c7c7c4 !important; font-family: var(--premium-sans) !important; }
body.home-premium .lux-cta-phone-label,
body.home-premium .lux-cta-phone-sub { color: #b8b8b8 !important; font-family: var(--premium-sans) !important; }
body.home-premium .lux-cta-phone-num { color: var(--premium-white) !important; font-family: var(--premium-serif) !important; }

body.home-premium .lux-coverage-grid { gap: 1px !important; }
body.home-premium .lux-coverage-card { background: transparent !important; border: 1px solid var(--premium-line) !important; border-radius: 0 !important; box-shadow: none !important; color: var(--premium-black) !important; font-family: var(--premium-sans) !important; }
body.home-premium .lux-coverage-card:hover { background: var(--premium-white) !important; border-color: var(--premium-black) !important; transform: none !important; }
body.home-premium .lux-suburb-links a { color: var(--premium-body) !important; }

body.home-premium .footer-premium { border-top: 0 !important; }
body.home-premium .footer-brand-desc,
body.home-premium .footer-contact-label,
body.home-premium .footer-bottom-disclaimer { color: #b8b8b8 !important; }
body.home-premium .footer-col-title-premium,
body.home-premium .footer-contact-value,
body.home-premium .footer-links-premium a,
body.home-premium .footer-bottom-left,
body.home-premium .footer-bottom-right a { color: var(--premium-white) !important; }
body.home-premium .footer-main,
body.home-premium .footer-bottom-premium { border-color: #2a2a2a !important; }

@media (max-width: 1024px) {
  body.home-premium .lux-hero { padding: 54px 0 64px; }
  body.home-premium .lux-hero-inner { gap: 38px !important; grid-template-columns: 1fr 390px !important; }
  body.home-premium .lux-fleet-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.home-premium .lux-features-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.home-premium .lux-feature-card:nth-child(3) { border-left: 0 !important; margin-top: 28px; }
}

@media (max-width: 760px) {
  body.home-premium .lux-hero { padding: 32px 0 56px; }
  body.home-premium .lux-hero-bg { inset: 0 0 auto 0 !important; min-height: 300px; opacity: .33 !important; width: 100% !important; }
  body.home-premium .lux-hero-overlay { background: linear-gradient(180deg, rgba(255,255,255,.78), var(--premium-white) 54%) !important; }
  body.home-premium .lux-hero-inner { display: block !important; padding: 0 20px !important; }
  body.home-premium .lux-hero-content { padding: 44px 0 28px; }
  body.home-premium .lux-hero-title { font-size: clamp(3rem, 15vw, 4.4rem) !important; }
  body.home-premium .lux-hero-actions { align-items: stretch; flex-direction: column !important; }
  body.home-premium .lux-hero-actions a { justify-content: center; }
  body.home-premium .lux-fare-widget { padding: 24px 20px !important; }
  body.home-premium .lux-section { padding: 72px 0 !important; }
  body.home-premium .lux-section-header { margin-bottom: 36px !important; }
  body.home-premium .lux-section-title { font-size: 3rem !important; }
  body.home-premium .lux-fleet-grid,
  body.home-premium .lux-features-grid,
  body.home-premium .lux-trust-grid { grid-template-columns: 1fr !important; }
  body.home-premium .lux-feature-card,
  body.home-premium .lux-feature-card:nth-child(3),
  body.home-premium .lux-trust-item { border-left: 0 !important; border-top: 1px solid var(--premium-line); margin-top: 0; padding: 22px 0 !important; }
  body.home-premium .lux-section-dark .lux-feature-card { border-color: #2a2a2a !important; }
  body.home-premium .lux-feature-card:first-child,
  body.home-premium .lux-trust-item:first-child { border-top: 0 !important; }
  body.home-premium .lux-about-grid { display: block !important; }
  body.home-premium .lux-about-img-wrap { margin-bottom: 40px; }
  body.home-premium .lux-cta-inner { display: block !important; }
  body.home-premium .lux-cta-phone-wrap { margin-top: 38px; }
}

/* Mobile visual-safety repair: keep hero text and secondary CTA readable above legacy luxury rules. */
body.home-premium .lux-hero::after {
  background: transparent !important;
}
body.home-premium .lux-btn-ghost,
body.home-premium .lux-btn-ghost * {
  color: var(--premium-black) !important;
  -webkit-text-fill-color: var(--premium-black) !important;
}
body.home-premium .lux-btn-ghost {
  background: var(--premium-white) !important;
  border: 1px solid #bfc2c4 !important;
  min-height: 52px;
}
body.home-premium .lux-btn-ghost:hover,
body.home-premium .lux-btn-ghost:focus-visible {
  background: #f0f2f3 !important;
  border-color: var(--premium-black) !important;
}

@media (max-width: 760px) {
  body.home-premium .lux-hero {
    background: #f0f1f1 !important;
    padding-top: 18px;
  }
  body.home-premium .lux-hero-bg {
    inset: 0 !important;
    min-height: 360px;
    opacity: .60 !important;
    width: 100% !important;
  }
  body.home-premium .lux-hero-overlay {
    background: linear-gradient(180deg, rgba(240,241,241,.18) 0%, rgba(255,255,255,.78) 43%, rgba(255,255,255,.98) 68%, #ffffff 100%) !important;
  }
  body.home-premium .lux-hero-content {
    padding: 66px 0 28px;
    position: relative;
    z-index: 2;
  }
  body.home-premium .lux-hero-eyebrow,
  body.home-premium .lux-hero-eyebrow *,
  body.home-premium .lux-hero-title,
  body.home-premium .lux-hero-title *,
  body.home-premium .lux-title-gold,
  body.home-premium .lux-title-sub,
  body.home-premium .lux-hero-desc,
  body.home-premium .lux-hero-micro {
    color: var(--premium-ink) !important;
    -webkit-text-fill-color: var(--premium-ink) !important;
    text-shadow: 0 1px 18px rgba(255,255,255,.95) !important;
  }
  body.home-premium .lux-title-gold {
    color: #252525 !important;
    -webkit-text-fill-color: #252525 !important;
  }
  body.home-premium .lux-title-sub {
    color: #313131 !important;
    -webkit-text-fill-color: #313131 !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
  }
  body.home-premium .lux-hero-desc {
    color: #313131 !important;
    -webkit-text-fill-color: #313131 !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
  }
  body.home-premium .lux-hero-micro {
    color: #5d5d5d !important;
    -webkit-text-fill-color: #5d5d5d !important;
  }
  body.home-premium .lux-hero-actions a {
    min-height: 54px;
    padding: 15px 18px !important;
  }
}

/* All-viewport hero visual safety: the legacy luxury layer uses white text on a light panel. */
body.home-premium .lux-hero .lux-hero-eyebrow,
body.home-premium .lux-hero .lux-hero-eyebrow *,
body.home-premium .lux-hero .lux-hero-title,
body.home-premium .lux-hero .lux-hero-title *,
body.home-premium .lux-hero .lux-title-gold {
  color: var(--premium-black) !important;
  -webkit-text-fill-color: var(--premium-black) !important;
  text-shadow: 0 1px 14px rgba(255,255,255,.98) !important;
}
body.home-premium .lux-hero .lux-title-sub,
body.home-premium .lux-hero .lux-title-sub *,
body.home-premium .lux-hero .lux-hero-desc,
body.home-premium .lux-hero .lux-hero-micro {
  color: #303030 !important;
  -webkit-text-fill-color: #303030 !important;
  text-shadow: 0 1px 14px rgba(255,255,255,.98) !important;
}
body.home-premium .lux-hero .lux-hero-eyebrow {
  color: #5b5b5b !important;
  -webkit-text-fill-color: #5b5b5b !important;
}
body.home-premium .lux-hero .lux-btn-primary,
body.home-premium .lux-hero .lux-btn-primary * {
  background-color: var(--premium-black) !important;
  color: var(--premium-white) !important;
  -webkit-text-fill-color: var(--premium-white) !important;
}
body.home-premium .lux-hero .lux-btn-primary:hover,
body.home-premium .lux-hero .lux-btn-primary:focus-visible {
  background-color: #303030 !important;
}

/* SSO 2026 cinematic homepage — final visual override. */
body.home-premium { --premium-black:#0b0c0e; --premium-ink:#0b0c0e; --premium-body:#59616a; --premium-warm:#f2f4f5; --premium-line:rgba(11,12,14,.12); --premium-sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; --sso-brand:#1a3550; }
body.home-premium .lux-hero { min-height:820px!important; padding:0!important; background:#0b0c0e!important; border-radius:0 0 38px 38px; }
body.home-premium .lux-hero-bg { inset:0!important; width:100%!important; background:url('/images/four-seasons-lexus.jpg') center 46%/cover no-repeat!important; border:0!important; filter:saturate(.82) contrast(1.04); }
body.home-premium .lux-hero-overlay { background:rgba(7,10,13,.55)!important; }
body.home-premium .lux-hero-inner { min-height:820px; display:flex!important; flex-direction:column; justify-content:flex-end; align-items:stretch; gap:28px!important; padding:150px 32px 56px!important; }
body.home-premium .lux-hero-content { max-width:1020px; padding:0; }
body.home-premium .lux-hero-title { max-width:1000px; color:#fff!important; -webkit-text-fill-color:#fff!important; text-shadow:none!important; font-family:var(--premium-sans)!important; font-size:clamp(4rem,8.2vw,7.4rem)!important; font-weight:450!important; letter-spacing:-.065em!important; line-height:.88!important; }
body.home-premium .lux-hero .lux-title-gold, body.home-premium .lux-hero .lux-title-sub, body.home-premium .lux-hero .lux-hero-desc { color:rgba(255,255,255,.84)!important; -webkit-text-fill-color:rgba(255,255,255,.84)!important; text-shadow:none!important; }
body.home-premium .lux-hero-eyebrow { color:#fff!important; -webkit-text-fill-color:#fff!important; background:rgba(255,255,255,.12)!important; border:1px solid rgba(255,255,255,.34)!important; border-radius:999px; padding:10px 17px!important; backdrop-filter:blur(12px); }
body.home-premium .lux-hero-actions, body.home-premium .lux-hero-micro { display:none!important; }
body.home-premium .lux-fare-widget { width:100%; max-width:none; padding:14px!important; border:0!important; border-radius:22px!important; background:rgba(255,255,255,.97)!important; box-shadow:0 20px 60px rgba(0,0,0,.24)!important; }
body.home-premium .lux-fare-header, body.home-premium .lux-fare-subtitle, body.home-premium .lux-fare-trust { display:none!important; }
body.home-premium .lux-fare-fields { display:grid; grid-template-columns:1fr 1fr auto; align-items:stretch; gap:8px; }
body.home-premium .lux-fare-field { position:relative; justify-content:center; min-height:64px; padding:8px 18px 8px 48px; border-right:1px solid var(--premium-line); }
body.home-premium .lux-fare-label { margin:0!important; color:#858b90!important; font-size:.66rem!important; line-height:1.1; }
body.home-premium .lux-fare-label svg { position:absolute; left:15px; top:50%; width:22px; height:22px; color:var(--sso-brand); transform:translateY(-50%); }
body.home-premium .lux-fare-input { height:auto!important; padding:3px 0 0!important; border:0!important; border-radius:0!important; background:transparent!important; color:#0b0c0e!important; font-size:.9rem!important; font-weight:600; outline:0!important; }
body.home-premium .lux-fare-btn { align-self:center; min-height:54px; padding:0 27px!important; border-radius:999px!important; background:var(--sso-brand)!important; border-color:var(--sso-brand)!important; }
body.home-premium .qb-cards-grid { gap:16px!important; }
body.home-premium .qb-veh-card { padding:0 0 16px!important; overflow:hidden; border:1px solid var(--premium-line)!important; border-radius:18px!important; background:#f7f9fb!important; }
body.home-premium .qb-veh-icon { width:100%; height:132px; min-height:132px; margin:0 0 16px!important; overflow:hidden; background:#eef2f5; }
body.home-premium .qb-veh-icon img { width:100%; height:100%; display:block; object-fit:cover; object-position:center; }
body.home-premium .qb-veh-name, body.home-premium .qb-veh-price, body.home-premium .qb-veh-aud { padding-inline:14px; }
body.home-premium .qb-veh-book { width:calc(100% - 28px)!important; min-height:48px; margin:12px 14px 0!important; display:flex!important; align-items:center; justify-content:center; border-radius:999px!important; background:#1a3550!important; color:#fff!important; -webkit-text-fill-color:#fff!important; font-size:.82rem!important; letter-spacing:.04em!important; }
body.home-premium .qb-veh-book:hover { background:#10283f!important; color:#fff!important; }
body.home-premium .lux-section-title, body.home-premium .lux-cta-title, body.home-premium .lux-fleet-title, body.home-premium .lux-feature-title, body.home-premium .lux-about-content h2 { font-family:var(--premium-sans)!important; letter-spacing:-.055em!important; }
body.home-premium .lux-section { padding-block:clamp(78px,9vw,138px)!important; }
body.home-premium .lux-fleet-card, body.home-premium .lux-feature-card, body.home-premium .lux-testimonial-card, body.home-premium .lux-about-img-wrap { border-radius:24px!important; overflow:hidden; }
body.home-premium .lux-section-dark, body.home-premium .lux-cta { background:var(--sso-brand)!important; }
@media(max-width:760px){
  body.home-premium .lux-hero, body.home-premium .lux-hero-inner { min-height:840px!important; }
  body.home-premium .lux-hero { border-radius:0 0 28px 28px; }
  body.home-premium .lux-hero-bg { background-position:58% center!important; }
  body.home-premium .lux-hero-inner { padding:120px 14px 20px!important; gap:22px!important; }
  body.home-premium .lux-hero-title { font-size:clamp(3.7rem,17vw,5.6rem)!important; line-height:.9!important; }
  body.home-premium .lux-hero-title, body.home-premium .lux-hero-title * { text-transform:none!important; }
  body.home-premium .lux-title-gold { display:block; max-width:9ch; }
  body.home-premium .lux-fare-widget { padding:12px!important; border-radius:24px!important; }
  body.home-premium .lux-fare-fields { grid-template-columns:1fr; gap:0; }
  body.home-premium .lux-fare-field { min-height:74px; border-right:0; border-bottom:1px solid var(--premium-line); }
  body.home-premium .lux-fare-btn { width:100%; margin-top:12px; }
  body.home-premium .qb-cards-grid { grid-template-columns:1fr 1fr!important; }
  body.home-premium .qb-veh-icon { height:105px; min-height:105px; }
}

/* Long Google address selections must stay inside the mobile fare card. */
body.home-premium .lux-fare-fields,
body.home-premium .lux-fare-field { min-width:0!important; max-width:100%!important; }
body.home-premium .lux-fare-field { overflow:hidden!important; }
body.home-premium .lux-fare-input {
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
}
body.home-premium .pac-target-input { min-width:0!important; max-width:100%!important; }
@media(max-width:760px){
  body.home-premium { overflow-x:hidden!important; }
  body.home-premium .lux-hero,
  body.home-premium .lux-hero-inner,
  body.home-premium .lux-fare-widget { width:100%!important; max-width:100%!important; box-sizing:border-box!important; }
  body.home-premium .lux-hero-title { font-size:clamp(3.1rem,14vw,4.65rem)!important; letter-spacing:-.06em!important; }
  body.home-premium .lux-title-gold { max-width:11ch; }
}
