/* Public presentation only; operational portal layouts retain their current sizing. */
:root[data-theme] body.lr-themed .luxury-nav .brand-logo{width:210px;height:82px;max-width:none;max-height:none}
:root[data-theme] body.lr-themed .luxury-nav .navbar-brand{padding-block:0}
:root[data-theme] body.lr-themed .luxury-nav{padding-block:.4rem!important}
:root[data-theme] body.lr-themed .lr-fleet-journey{background:var(--lr-bg)!important;padding-block:clamp(2rem,5vw,4rem)}
.lr-fleet-journey-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(2rem,5vw,5rem)}
.lr-fleet-journey-grid>div{max-width:440px}
:root[data-theme] body.lr-themed .lr-fleet-journey h2{font-size:clamp(1.8rem,3vw,2.6rem)!important;line-height:1.15}
/* Keep the existing photograph full bleed, with quiet, theme-aware text protection. */
:root[data-theme] body.lr-themed .lr-home-booking-hero .lr-home-hero-art{inset:0;width:100%;height:100%;opacity:1}
:root[data-theme] body.lr-themed .lr-home-booking-hero .lr-home-hero-art img{object-position:50% 66%;opacity:.55;transform:scale(1.06)}
:root[data-theme] body.lr-themed .lr-home-booking-hero .lr-home-hero-art::before{background:linear-gradient(90deg,color-mix(in srgb,var(--lr-bg) 92%,transparent),color-mix(in srgb,var(--lr-bg) 62%,transparent) 45%,color-mix(in srgb,var(--lr-bg) 16%,transparent))!important}
:root[data-theme] body.lr-themed .lr-home-booking-hero .lr-home-hero-art::after{background:linear-gradient(0deg,var(--lr-bg),transparent 38%)!important}
@media(prefers-reduced-motion:no-preference){
 :root[data-theme] body.lr-public-site .lr-home-hero-art img{animation:lr-public-banner-pan 4.5s ease-out both}
 :root[data-theme] body.lr-public-site :is(.btn,.nav-link,.lr-home-card-link,.lr-home-text-link){transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease}
}
@keyframes lr-public-banner-pan{from{transform:translateX(-1.5%) scale(1.06)}to{transform:translateX(1.5%) scale(1.06)}}
@media(max-width:991.98px){
 .lr-fleet-journey-grid{grid-template-columns:1fr;gap:1.5rem}
 .lr-fleet-journey-grid>div{max-width:650px}
 :root[data-theme] body.lr-themed .lr-fleet-journey .lr-home-booking-panel{max-width:none}
}
@media(max-width:575.98px){
 :root[data-theme] body.lr-themed .luxury-nav .brand-logo{width:178px;height:70px}
 :root[data-theme] body.lr-themed .lr-home-booking-hero .lr-home-hero-art img{object-position:58% 66%;opacity:.35}
 :root[data-theme] body.lr-themed .lr-home-booking-hero .lr-home-hero-art::before{background:linear-gradient(180deg,color-mix(in srgb,var(--lr-bg) 60%,transparent),var(--lr-bg) 75%)!important}
}
@media(prefers-reduced-motion:reduce){
 :root[data-theme] body.lr-public-site .lr-home-hero-art img{animation:none!important;transform:none!important}
 :root[data-theme] body.lr-public-site :is(.btn,.nav-link,.lr-home-card-link,.lr-home-text-link){transition:none!important}
}

/* Card titles have their own scale; editorial page headings remain distinct. */
:root[data-theme] body.lr-themed.lr-public-site main :is(.signin-choice,.card-luxury,.glass-panel,.service-card,.fleet-card,.airport-card,.services-hero-standard,.lr-flip-card-face) :is(h2,h3,h4){font-family:Inter,system-ui,sans-serif!important;font-weight:500!important;letter-spacing:-.015em!important;line-height:1.4!important;max-width:none;color:var(--lr-heading)!important;text-transform:none!important}
:root[data-theme] body.lr-themed.lr-public-site main :is(.signin-choice,.card-luxury,.glass-panel,.service-card,.fleet-card,.airport-card,.services-hero-standard,.lr-flip-card-face) h2{font-size:1.25rem!important;margin-bottom:.65rem}
:root[data-theme] body.lr-themed.lr-public-site main :is(.signin-choice,.card-luxury,.glass-panel,.service-card,.fleet-card,.airport-card,.services-hero-standard,.lr-flip-card-face) :is(h3,h4){font-size:1.0625rem!important}
:root[data-theme] body.lr-themed.lr-public-site main .signin-choice{padding:1.35rem;border-radius:10px}
:root[data-theme] body.lr-themed.lr-public-site main .signin-choice .eyebrow{font-size:.625rem!important;letter-spacing:.14em!important}
:root[data-theme] body.lr-themed.lr-public-site main :is(.signin-choice,.card-luxury,.glass-panel,.service-card,.fleet-card,.airport-card,.services-hero-standard,.lr-flip-card-face){background:var(--lr-surface)!important}
:root[data-theme] body.lr-themed.lr-public-site main :is(.signin-choice,.card-luxury,.glass-panel,.service-card,.fleet-card,.airport-card,.services-hero-standard,.lr-flip-card-face):is(:hover,:focus-within){background:var(--lr-surface-alt)!important;border-color:var(--lr-control-border)!important}
:root[data-theme] body.lr-themed.lr-public-site main :is(.card-luxury,.service-card,.fleet-card,.airport-card):hover{transform:none;box-shadow:var(--lr-shadow)!important}
/* Public visitors can select appearance without an account. Portal controls stay in Settings. */
.lr-public-appearance{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.75rem;padding-top:1.5rem}
.lr-public-appearance-label{font-size:.75rem;color:var(--lr-muted)}
.lr-public-appearance-choices{display:flex;gap:.5rem}
:root[data-theme] body.lr-themed .lr-public-appearance [data-lr-theme-choice]{min-height:40px;padding:.45rem .75rem;font-size:.75rem;border-radius:5px;gap:.4rem}
:root[data-theme] body.lr-themed .lr-public-appearance [data-lr-theme-choice][aria-pressed=true]{border-color:var(--lr-link);background:var(--lr-surface)!important;box-shadow:inset 0 -2px var(--lr-link)}
@media(prefers-reduced-motion:no-preference){
 :root[data-theme] body.lr-themed.lr-public-site main :is(.signin-choice,.card-luxury,.glass-panel,.service-card,.fleet-card,.airport-card,.services-hero-standard,.lr-flip-card-face){transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}
}
@media(prefers-reduced-motion:reduce){
 :root[data-theme] body.lr-themed.lr-public-site main :is(.signin-choice,.card-luxury,.glass-panel,.service-card,.fleet-card,.airport-card,.services-hero-standard,.lr-flip-card-face){transition:none!important;animation:none!important}
}

/* Approved photographic banners: decorative layers never size the tracking hero. */
:root[data-theme] body.lr-themed .lr-photo-banner{position:relative;isolation:isolate;overflow:hidden;background:var(--lr-bg)!important}
.lr-photo-banner>.container{position:relative;z-index:1}
.lr-public-banner-art{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.lr-public-banner-art img{width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;opacity:.6;transform:scale(1.06)}
.lr-public-banner-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--lr-bg) 0%,color-mix(in srgb,var(--lr-bg) 94%,transparent) 25%,color-mix(in srgb,var(--lr-bg) 55%,transparent) 60%,color-mix(in srgb,var(--lr-bg) 15%,transparent)),linear-gradient(0deg,var(--lr-bg),transparent 35%)}
:root[data-theme] body.lr-themed .lr-photo-banner--fleet .lr-fleet-experience-grid{grid-template-columns:minmax(0,620px);min-height:320px}
.lr-photo-banner--fleet .lr-public-banner-art img{object-position:65% 50%}
.lr-photo-banner--business .business-solutions-copy,.lr-photo-banner--business .business-solutions-trust{max-width:680px}
.lr-photo-banner--journey .lr-public-banner-art img{opacity:.42;object-position:50% 55%}
@media(prefers-reduced-motion:no-preference){.lr-photo-banner .lr-public-banner-art img{animation:lr-public-banner-pan 4.5s ease-out both}}
@media(prefers-reduced-motion:reduce){.lr-photo-banner .lr-public-banner-art img{animation:none!important;transform:none!important}}
@media(max-width:767.98px){
 .lr-photo-banner .lr-public-banner-art img{opacity:.3}
 .lr-public-banner-art::after{background:linear-gradient(90deg,color-mix(in srgb,var(--lr-bg) 92%,transparent),color-mix(in srgb,var(--lr-bg) 60%,transparent)),linear-gradient(0deg,var(--lr-bg),transparent 60%)}
 :root[data-theme] body.lr-themed .lr-photo-banner--fleet .lr-fleet-experience-grid{min-height:0}
}

/* Approved fleet and chauffeur imagery. Preserve all four grilles in fleet panels. */
:root[data-theme] body.lr-themed .lr-home-fleet-visual{aspect-ratio:2/1;align-self:center}
:root[data-theme] body.lr-themed .lr-home-fleet-visual img{object-fit:contain;opacity:1;visibility:visible}
.lr-photo-banner--fleet .lr-public-banner-art img{object-position:center}
.lr-photo-banner--request .lr-public-banner-art{left:40%}
.lr-photo-banner--request .lr-public-banner-art img{object-position:center;opacity:.65}
/* Mobile images occupy their own shallow strip instead of disappearing beneath copy. */
@media(max-width:767.98px){
 :root[data-theme] body.lr-themed .lr-photo-banner:not(.lr-photo-banner--journey) .lr-public-banner-art{position:relative;inset:auto;width:100%;aspect-ratio:2/1;margin-bottom:1.25rem}
 :root[data-theme] body.lr-themed .lr-photo-banner:not(.lr-photo-banner--journey) .lr-public-banner-art img{opacity:.9;object-position:center}
 .lr-photo-banner:not(.lr-photo-banner--journey) .lr-public-banner-art::after{background:linear-gradient(0deg,var(--lr-bg),transparent 28%)}
 :root[data-theme] body.lr-themed .lr-photo-banner--fleet .lr-public-banner-art img{object-fit:contain;transform:none;animation:lr-mobile-photo-fade 1.2s ease-out both}
 :root[data-theme] body.lr-themed .lr-photo-banner--request .lr-public-banner-art{aspect-ratio:3/2}
 :root[data-theme] body.lr-themed .lr-photo-banner--journey .lr-public-banner-art img{opacity:.65}
 .lr-photo-banner--journey .lr-public-banner-art::after{background:linear-gradient(90deg,color-mix(in srgb,var(--lr-bg) 94%,transparent),color-mix(in srgb,var(--lr-bg) 45%,transparent)),linear-gradient(0deg,var(--lr-bg),transparent 35%)}
 :root[data-theme] body.lr-themed .lr-home-booking-hero .lr-home-hero-art img{opacity:.6;object-position:62% 60%}
 :root[data-theme] body.lr-themed .lr-home-booking-hero .lr-home-hero-art::before{background:linear-gradient(180deg,color-mix(in srgb,var(--lr-bg) 50%,transparent),color-mix(in srgb,var(--lr-bg) 85%,transparent) 48%,var(--lr-bg) 80%)!important}
}
@keyframes lr-mobile-photo-fade{from{opacity:.35}to{opacity:.9}}
@media(prefers-reduced-motion:reduce){:root[data-theme] body.lr-themed .lr-photo-banner .lr-public-banner-art img{animation:none!important;transform:none!important}}

/* The theme surface rule must not turn the decorative image overlay opaque. */
:root[data-theme] body.lr-themed .lr-home-fleet-visual::after{background:transparent!important}

