/* Silverservicetaxi.com premium homepage visual system. No cross-domain resources. */
:root {
  --sst-black: #0a0a0a;
  --sst-ink: #1a1a1a;
  --sst-text: #4a4a4a;
  --sst-muted: #777777;
  --sst-silver: #b5b5b0;
  --sst-line: #e5e5e2;
  --sst-warm: #f7f7f5;
  --sst-white: #ffffff;
  --sst-serif: 'Cormorant Garamond', Georgia, serif;
  --sst-sans: 'Inter', Arial, sans-serif;
}

body.sst-premium-home { background: var(--sst-white); color: var(--sst-ink); font-family: var(--sst-sans); }
body.sst-premium-home .pnav-topbar,
body.sst-premium-home .lux-hero-particles,
body.sst-premium-home .lux-scroll-hint,
body.sst-premium-home .lux-dark-pattern,
body.sst-premium-home .lux-about-img-accent,
body.sst-premium-home .lux-gold-line { display: none !important; }

body.sst-premium-home .pnav-header,
body.sst-premium-home .pnav-nav,
body.sst-premium-home .pnav-main,
body.sst-premium-home .premium-nav { background: var(--sst-white) !important; border-bottom: 1px solid var(--sst-line) !important; box-shadow: none !important; }
body.sst-premium-home .pnav-nav-link,
body.sst-premium-home .pnav-main a,
body.sst-premium-home .pnav-header a { color: var(--sst-black) !important; font-family: var(--sst-sans) !important; font-size: .77rem !important; font-weight: 600 !important; letter-spacing: .04em !important; }
body.sst-premium-home .pnav-book-btn,
body.sst-premium-home .pnav-cta,
body.sst-premium-home .pnav-booking-link { background: var(--sst-black) !important; border: 1px solid var(--sst-black) !important; border-radius: 3px !important; color: var(--sst-white) !important; box-shadow: none !important; }
body.sst-premium-home .container { max-width: 1360px; }

body.sst-premium-home .lux-hero { background: var(--sst-white) !important; min-height: 0 !important; overflow: hidden; padding: 78px 0 86px; position: relative; }
body.sst-premium-home .lux-hero-bg { background: url('/images/hero-main.jpg') center center / cover no-repeat !important; border-left: 1px solid var(--sst-line); display: block !important; inset: 0 0 0 auto !important; opacity: 1 !important; position: absolute !important; width: 52% !important; }
body.sst-premium-home .lux-hero-overlay { background: linear-gradient(90deg, var(--sst-white) 0%, rgba(255,255,255,.97) 38%, rgba(255,255,255,.2) 63%, rgba(10,10,10,.08) 100%) !important; display: block !important; inset: 0 !important; position: absolute !important; }
body.sst-premium-home .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.sst-premium-home .lux-hero-content { max-width: 620px; padding: 46px 0; }
body.sst-premium-home .lux-hero-eyebrow,
body.sst-premium-home .lux-badge { color: var(--sst-muted) !important; display: inline-flex !important; font-family: var(--sst-sans) !important; font-size: .72rem !important; font-weight: 600 !important; letter-spacing: .16em !important; margin-bottom: 22px !important; text-transform: uppercase !important; }
body.sst-premium-home .lux-eyebrow-line { background: var(--sst-silver) !important; height: 1px !important; width: 28px !important; }
body.sst-premium-home .lux-hero-title,
body.sst-premium-home .lux-section-title,
body.sst-premium-home .lux-cta-title,
body.sst-premium-home .lux-fleet-title,
body.sst-premium-home .lux-feature-title,
body.sst-premium-home .lux-about-content h2 { color: var(--sst-black) !important; font-family: var(--sst-serif) !important; font-weight: 500 !important; letter-spacing: -.035em !important; }
body.sst-premium-home .lux-hero-title { font-size: clamp(3.8rem,7vw,5.2rem) !important; line-height: .93 !important; margin: 0 0 25px !important; }
body.sst-premium-home .lux-title-gold,
body.sst-premium-home .lux-title-sub,
body.sst-premium-home .lux-section-title span,
body.sst-premium-home .lux-gold-text { color: inherit !important; font-style: normal !important; }
body.sst-premium-home .lux-title-sub { color: var(--sst-text) !important; display: inline-block; font-family: var(--sst-sans) !important; font-size: clamp(1rem,1.55vw,1.22rem) !important; font-weight: 500 !important; letter-spacing: .01em !important; line-height: 1.45 !important; margin-top: 18px; }
body.sst-premium-home .lux-hero-desc,
body.sst-premium-home .lux-section-sub,
body.sst-premium-home .lux-about-text,
body.sst-premium-home .lux-feature-desc,
body.sst-premium-home .lux-fleet-desc,
body.sst-premium-home .lux-faq-a { color: var(--sst-text) !important; font-family: var(--sst-sans) !important; font-size: 1rem !important; line-height: 1.7 !important; }
body.sst-premium-home .lux-hero-desc { max-width: 510px; }
body.sst-premium-home .lux-hero-actions,
body.sst-premium-home .lux-cta-actions { gap: 12px !important; }
body.sst-premium-home .lux-btn-primary,
body.sst-premium-home .lux-btn-gold,
body.sst-premium-home .lux-fare-btn,
body.sst-premium-home .lux-fleet-btn,
body.sst-premium-home .lux-btn-navy { background: var(--sst-black) !important; border: 1px solid var(--sst-black) !important; border-radius: 3px !important; box-shadow: none !important; color: var(--sst-white) !important; font-family: var(--sst-sans) !important; font-size: .78rem !important; font-weight: 600 !important; letter-spacing: .04em !important; text-transform: none !important; }
body.sst-premium-home .lux-btn-primary:hover,
body.sst-premium-home .lux-btn-gold:hover,
body.sst-premium-home .lux-fare-btn:hover,
body.sst-premium-home .lux-fleet-btn:hover,
body.sst-premium-home .lux-btn-navy:hover { background: #252525 !important; border-color: #252525 !important; transform: none !important; }
body.sst-premium-home .lux-btn-ghost { background: var(--sst-white) !important; border: 1px solid #d8d8d5 !important; border-radius: 3px !important; box-shadow: none !important; color: var(--sst-black) !important; font-family: var(--sst-sans) !important; }
body.sst-premium-home .lux-btn-ghost:hover { background: var(--sst-warm) !important; }
body.sst-premium-home .lux-hero-micro,
body.sst-premium-home .lux-fare-trust,
body.sst-premium-home .lux-fare-subtitle { color: var(--sst-muted) !important; font-family: var(--sst-sans) !important; }
body.sst-premium-home .lux-fare-widget { backdrop-filter: blur(4px); background: rgba(255,255,255,.96) !important; border: 1px solid var(--sst-line) !important; border-radius: 4px !important; box-shadow: 0 18px 55px rgba(10,10,10,.12) !important; padding: 30px !important; }
body.sst-premium-home .lux-fare-header { color: var(--sst-black) !important; font-family: var(--sst-serif) !important; font-size: 2rem !important; font-weight: 500 !important; letter-spacing: -.025em !important; }
body.sst-premium-home .lux-fare-field { gap: 7px !important; }
body.sst-premium-home .lux-fare-label { color: var(--sst-ink) !important; font-family: var(--sst-sans) !important; font-size: .74rem !important; font-weight: 600 !important; letter-spacing: .03em !important; }
body.sst-premium-home .lux-fare-input { background: var(--sst-white) !important; border: 1px solid #d8d8d5 !important; border-radius: 3px !important; box-shadow: none !important; color: var(--sst-black) !important; font-family: var(--sst-sans) !important; padding: 15px 14px !important; }
body.sst-premium-home .lux-fare-input:focus { border-color: var(--sst-black) !important; box-shadow: 0 0 0 3px rgba(10,10,10,.08) !important; }
body.sst-premium-home .lux-fare-btn { justify-content: center; margin-top: 8px; padding: 15px !important; width: 100%; }

body.sst-premium-home .lux-section { padding: 116px 0 !important; }
body.sst-premium-home .lux-section-offwhite,
body.sst-premium-home .lux-trust-strip { background: var(--sst-warm) !important; }
body.sst-premium-home .lux-section-header { margin-bottom: 54px !important; max-width: 690px; }
body.sst-premium-home .lux-section-header:has(.lux-badge) { text-align: left !important; }
body.sst-premium-home .lux-section-title { font-size: clamp(2.7rem,5vw,4.1rem) !important; line-height: .98 !important; margin: 0 0 18px !important; }
body.sst-premium-home .lux-section-sub { max-width: 600px !important; }
body.sst-premium-home .lux-fleet-grid { gap: 20px !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
body.sst-premium-home .lux-fleet-card { background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; overflow: visible !important; }
body.sst-premium-home .lux-fleet-img-wrap { border-radius: 0 !important; overflow: hidden; }
body.sst-premium-home .lux-fleet-img { aspect-ratio: 4 / 3; filter: saturate(.85) contrast(1.04); object-fit: cover; transition: transform .35s ease; }
body.sst-premium-home .lux-fleet-card:hover .lux-fleet-img { transform: scale(1.02); }
body.sst-premium-home .lux-fleet-badge { background: var(--sst-black) !important; border-radius: 2px !important; box-shadow: none !important; color: var(--sst-white) !important; font-family: var(--sst-sans) !important; }
body.sst-premium-home .lux-fleet-body { padding: 22px 0 0 !important; }
body.sst-premium-home .lux-fleet-title { font-size: 2rem !important; line-height: 1 !important; }
body.sst-premium-home .lux-fleet-tags { display: none !important; }
body.sst-premium-home .lux-fleet-price { color: var(--sst-text) !important; font-family: var(--sst-sans) !important; font-size: .84rem !important; }
body.sst-premium-home .lux-fleet-price strong { color: var(--sst-black) !important; font-size: 1.05rem !important; }
body.sst-premium-home .lux-fleet-btn { display: inline-flex !important; margin-top: 14px !important; padding: 11px 16px !important; width: auto !important; }

body.sst-premium-home .lux-section-dark,
body.sst-premium-home .lux-cta-band,
body.sst-premium-home .footer-premium { background: var(--sst-black) !important; }
body.sst-premium-home .lux-section-dark { padding: 110px 0 !important; }
body.sst-premium-home .lux-section-dark .lux-badge,
body.sst-premium-home .lux-section-dark .lux-section-sub { color: #c7c7c4 !important; }
body.sst-premium-home .lux-section-dark .lux-section-title,
body.sst-premium-home .lux-cta-title { color: var(--sst-white) !important; }
body.sst-premium-home .lux-features-grid { gap: 1px !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
body.sst-premium-home .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 !important; }
body.sst-premium-home .lux-feature-card:first-child { border-left: 0 !important; }
body.sst-premium-home .lux-feature-card:nth-child(n+5) { display: none !important; }
body.sst-premium-home .lux-feature-icon { background: transparent !important; color: var(--sst-silver) !important; height: 30px !important; margin-bottom: 20px !important; width: 30px !important; }
body.sst-premium-home .lux-feature-title { color: var(--sst-white) !important; font-size: 1.85rem !important; }
body.sst-premium-home .lux-feature-desc { color: #b8b8b8 !important; font-size: .9rem !important; }
body.sst-premium-home .lux-about-grid { align-items: center !important; gap: 72px !important; }
body.sst-premium-home .lux-about-img-wrap,
body.sst-premium-home .lux-about-img { border-radius: 0 !important; }
body.sst-premium-home .lux-about-img { filter: saturate(.82); }
body.sst-premium-home .lux-about-content { max-width: 560px; }
body.sst-premium-home .lux-about-features { border-top: 1px solid var(--sst-line); gap: 0 !important; margin-top: 28px !important; }
body.sst-premium-home .lux-about-feature { border-bottom: 1px solid var(--sst-line); padding: 18px 0 !important; }
body.sst-premium-home .lux-about-feature-icon { background: transparent !important; color: var(--sst-black) !important; }
body.sst-premium-home .lux-about-feature-title { color: var(--sst-black) !important; font-family: var(--sst-sans) !important; font-weight: 600 !important; }
body.sst-premium-home .lux-about-feature-desc { color: var(--sst-muted) !important; }
body.sst-premium-home .lux-trust-strip { border-top: 1px solid var(--sst-line); border-bottom: 1px solid var(--sst-line); padding: 32px 0 !important; }
body.sst-premium-home .lux-trust-grid { gap: 0 !important; grid-template-columns: repeat(4,1fr) !important; }
body.sst-premium-home .lux-trust-item { border-left: 1px solid var(--sst-line); padding: 5px 24px !important; }
body.sst-premium-home .lux-trust-item:first-child { border-left: 0; }
body.sst-premium-home .lux-trust-icon { color: var(--sst-black) !important; }
body.sst-premium-home .lux-trust-label { color: var(--sst-black) !important; font-family: var(--sst-sans) !important; font-weight: 600 !important; }
body.sst-premium-home .lux-trust-sub { color: var(--sst-muted) !important; }
body.sst-premium-home .lux-faq-item { border: 0 !important; border-bottom: 1px solid var(--sst-line) !important; border-radius: 0 !important; box-shadow: none !important; }
body.sst-premium-home .lux-faq-q { color: var(--sst-black) !important; font-family: var(--sst-serif) !important; font-size: 1.55rem !important; font-weight: 500 !important; }
body.sst-premium-home .lux-faq-chevron { color: var(--sst-black) !important; }
body.sst-premium-home .lux-cta-band { margin: 0 !important; padding: 106px 0 !important; }
body.sst-premium-home .lux-cta-bg { display: none !important; }
body.sst-premium-home .lux-cta-inner { align-items: center !important; }
body.sst-premium-home .lux-cta-sub { color: #c7c7c4 !important; font-family: var(--sst-sans) !important; }
body.sst-premium-home .lux-cta-phone-label,
body.sst-premium-home .lux-cta-phone-sub { color: #b8b8b8 !important; font-family: var(--sst-sans) !important; }
body.sst-premium-home .lux-cta-phone-num { color: var(--sst-white) !important; font-family: var(--sst-serif) !important; }
body.sst-premium-home .lux-coverage-grid { gap: 1px !important; }
body.sst-premium-home .lux-coverage-card { background: transparent !important; border: 1px solid var(--sst-line) !important; border-radius: 0 !important; box-shadow: none !important; color: var(--sst-black) !important; font-family: var(--sst-sans) !important; }
body.sst-premium-home .lux-coverage-card:hover { background: var(--sst-white) !important; border-color: var(--sst-black) !important; transform: none !important; }
body.sst-premium-home .lux-suburb-links a { color: var(--sst-text) !important; }
body.sst-premium-home .footer-premium { border-top: 0 !important; }
body.sst-premium-home .footer-brand-desc,
body.sst-premium-home .footer-contact-label,
body.sst-premium-home .footer-bottom-disclaimer { color: #b8b8b8 !important; }
body.sst-premium-home .footer-col-title-premium,
body.sst-premium-home .footer-contact-value,
body.sst-premium-home .footer-links-premium a,
body.sst-premium-home .footer-bottom-left,
body.sst-premium-home .footer-bottom-right a { color: var(--sst-white) !important; }
body.sst-premium-home .footer-main,
body.sst-premium-home .footer-bottom-premium { border-color: #2a2a2a !important; }

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

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

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

/* All-viewport hero text safety: legacy luxury rules set white text with text-fill. */
body.sst-premium-home .lux-hero .lux-title-gold,
body.sst-premium-home .lux-hero .lux-title-gold *,
body.sst-premium-home .lux-hero .lux-hero-title .lux-title-gold {
  color: #066c83 !important;
  -webkit-text-fill-color: #066c83 !important;
  text-shadow: 0 1px 14px rgba(255,255,255,.92) !important;
}
body.sst-premium-home .lux-hero .lux-title-sub,
body.sst-premium-home .lux-hero .lux-title-sub *,
body.sst-premium-home .lux-hero .lux-hero-desc,
body.sst-premium-home .lux-hero .lux-hero-micro {
  color: #25323a !important;
  -webkit-text-fill-color: #25323a !important;
  text-shadow: 0 1px 14px rgba(255,255,255,.92) !important;
}
