/* The photo is sized to the viewport, never stretched over a long document. */
html{background:#0a1016}
body.ra-route-background-enabled{isolation:isolate;background:transparent!important}
.ra-route-background-v20{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:#0a1016;contain:strict}
.ra-route-background-v20__photo{position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat;opacity:0;transition:opacity .45s cubic-bezier(.22,.61,.36,1)}
.ra-route-background-v20::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#071018c9 0%,#071018d1 55%,#071018e0 100%);pointer-events:none}
body.ra-route-background-enabled #main{background:transparent!important}
body.ra-route-background-enabled #main::before,
body.ra-route-background-enabled #main .legacy-page>.legacy-head::before{display:none!important}
body.ra-route-background-enabled #main .legacy-page>.legacy-head{background:transparent!important}
body.ra-route-background-enabled .footer{background:transparent!important;border-top-color:#ffffff1d}
/* Keep the full-page image visible behind About; its cards stay opaque. */
body.ra-route-background-enabled #main .ra-about-v18{background:transparent!important}
body.ra-route-background-enabled #main .ra-about-v18 :is(.ra-about-hero,.ra-about-metric-rail,.ra-about-section-directions,.ra-about-process,.ra-about-faq){background:transparent!important}
body.ra-route-background-enabled #main .ra-about-hero::before{opacity:.17}
/* Existing BMW film, sizing and controls remain independent of the background. */
body.ra-route-background-enabled.is-home-v13 .ra-home-lower,
body.ra-route-background-enabled.is-home-v13 .home-story{background:transparent!important}
body.ra-route-background-enabled.is-home-v13 .ra-home-lower::before,
body.ra-route-background-enabled.is-home-v13 .ra-home-lower::after{display:none!important}
/* Relative DOM order is already account then menu; match it at every breakpoint. */
html body .header .header-actions>.header-account{order:3!important}
html body .header .header-actions>.menu-toggle{order:4!important}
/* Owner request: darker stage photographs, not more transparent cards. */
body #main .delivery-stage{background:#091118!important;border-color:#52616c}
body #main .delivery-stage::before{background:linear-gradient(90deg,#061018f5,#061018d9),var(--stage-image) center/cover no-repeat!important;opacity:1!important}
body #main .delivery-stage h2{color:#fff!important;font-weight:800!important;text-shadow:0 2px 12px #0009}
body #main .delivery-stage p{color:#e9f0f5!important;font-weight:600!important}
/* Shared footer: logo and telephone share the same first-row centre line. */
body .footer .footer-top{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:start!important;gap:32px}
body .footer .footer-brand{min-width:0}
body .footer .footer-brand>.logo{display:inline-flex!important;align-items:center;min-height:64px;margin:0!important}
body .footer .footer-description{max-width:430px;margin:8px 0 0!important;font:550 17px/1.65 Manrope,Arial,sans-serif;color:#d4dfe6}
body .footer .footer-call{display:flex!important;flex-direction:column;align-items:flex-end;gap:0!important;margin:0!important}
body .footer .footer-call>a{display:flex!important;align-items:center;justify-content:flex-end;min-height:64px;margin:0!important;font:700 clamp(24px,2.3vw,34px)/1.2 Manrope,Arial,sans-serif!important;white-space:nowrap}
body .footer .footer-call>span{display:block;margin:8px 0 0!important;font:550 16px/1.65 Manrope,Arial,sans-serif!important;color:#c5d1db;text-align:right}
@media(max-width:750px){
 .ra-route-background-v20__photo{background-position:60% center}
 .ra-route-background-v20::after{background:linear-gradient(180deg,#071018d1,#071018dd)}
 body .footer .footer-top{grid-template-columns:1fr;gap:26px}
 body .footer .footer-call{align-items:flex-start}
 body .footer .footer-call>a{justify-content:flex-start;min-height:44px;font-size:clamp(24px,6.7vw,30px)!important}
 body .footer .footer-call>span{text-align:left}
 body .footer .footer-description{font-size:16px;max-width:100%}
}
@media(prefers-reduced-motion:reduce){.ra-route-background-v20__photo{transition:none}}
/* A full-width submit row keeps the catalogue usable on narrow phones. */
@media(max-width:640px){body.is-public-site #main .filter-panel form[data-catalog-filters]>button.filter-submit[type="submit"]{grid-column:1/-1;width:100%!important;max-width:100%!important;min-width:0!important;white-space:normal!important}}
