/* Shared finishing layer: restrained cards, one request flow, clear navigation. */
:root{--ui-border:#ffffff16;--ui-muted:#b6b6bd;--ui-radius:18px;--ui-anchor:125px}
html{scroll-padding-top:var(--ui-anchor)}
.replica-home{overflow-x:clip}
.replica-home>section[id]{scroll-margin-top:var(--ui-anchor)}
nav.replica-nav{top:16px!important;left:24px!important;right:24px!important;width:auto!important;max-width:1240px;margin:0 auto;padding:12px 22px!important;min-height:76px;background:#101012f5!important;border:1px solid #ffffff20!important;border-radius:18px;box-shadow:0 12px 40px #0005;isolation:isolate;transition:background .2s,box-shadow .2s}
nav.replica-nav.is-scrolled{background:#111113!important;box-shadow:0 12px 40px #0008}
nav.replica-nav>a:first-child img{height:46px!important}
nav.replica-nav>.hidden-mobile:first-of-type{gap:6px!important;padding:4px;border:1px solid #ffffff0d;border-radius:30px;background:#ffffff03}
nav.replica-nav .nav-link{position:relative;padding:11px 15px;border-radius:24px;letter-spacing:.09em;font-size:.65rem;color:#b9b9c1;transition:color .2s,background .2s}
nav.replica-nav .nav-link:hover,nav.replica-nav .nav-link.is-current{color:#fff;background:#ffffff0e;box-shadow:none}
nav.replica-nav .nav-link.is-current:after{content:"";position:absolute;width:4px;height:4px;bottom:4px;left:calc(50% - 2px);border-radius:50%;background:#ff0000}
nav.replica-nav .btn-primary{border-radius:24px;min-height:42px;font-size:.62rem;letter-spacing:.07em}
.ui-scroll-track{position:absolute;bottom:-1px;left:18px;right:18px;height:2px;overflow:hidden;pointer-events:none;border-radius:2px}
.ui-scroll-track i{display:block;width:100%;height:100%;background:#ff0000;transform:scaleX(0);transform-origin:left;will-change:transform}
.ui-current-section{display:none}
#root .replica-home .btn-primary,#root .replica-home .btn-outline{border-radius:28px;min-height:46px}
#root .replica-home h2{letter-spacing:-.025em;line-height:1.2}
#flotte,#buchung,#erfahrungen,#kontakt{padding-top:90px!important;padding-bottom:90px!important}
#flotte .card-hover{border-color:var(--ui-border)!important;border-radius:var(--ui-radius);background:#101012!important;box-shadow:0 8px 30px #0002}
#flotte .card-hover:hover{transform:translateY(-3px);box-shadow:0 14px 36px #0005}
.replica-rates .replica-rate-grid{border:1px solid var(--ui-border);border-radius:16px;overflow:hidden;background:#111113}
.replica-rates .replica-rate-grid>div{padding:24px 20px}
#buchung .booking-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:32px!important;align-items:start!important}
#buchung{overflow:visible!important}
#buchung .booking-grid>*{min-width:0}
#buchung .booking-calendar-column{position:sticky;top:118px}
#buchung #inquiry-form{border:1px solid var(--ui-border);border-radius:22px;padding:26px;background:#101012;box-shadow:0 12px 40px #0002}
#buchung .simple-inquiry-heading h2{font-size:1.7rem}
#buchung .form-input{background:#19191c;border-color:#ffffff24;border-radius:10px;color:#fff;min-height:48px}
#buchung .form-input:focus{border-color:#fff;background:#1d1d20}
#buchung .form-legal-note{font-size:.73rem;line-height:1.75;color:#b6b6be}
#buchung label.form-legal-note{padding:18px;background:#ffffff04;border:1px solid var(--ui-border);border-radius:12px;margin-top:20px}
#buchung input[name=requirements]{accent-color:#ff0000!important}
#buchung button[type=submit]{border-radius:28px!important;min-height:52px;margin-top:8px}
#buchung .rental-calendar{margin-bottom:16px}
#buchung .booking-conditions{border:1px solid var(--ui-border);border-radius:14px;background:#111113;padding:0 18px}
#buchung .booking-conditions>summary{padding:18px 0;font-size:.77rem;cursor:pointer}
#buchung .booking-conditions>div{padding-top:12px;border-top:1px solid var(--ui-border)}
#price-configurator{border:0!important;padding:0!important;background:none!important;margin-top:24px}
#price-configurator .config-photo{height:200px}
#price-configurator .price-summary{background:#1d1e23}
#price-configurator .optional-packages{padding-top:18px}
#price-configurator .config-help{max-width:70ch}
#root details>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
#root details>summary::-webkit-details-marker{display:none}
#root details>summary:after{content:"+";font-size:1.2rem;font-weight:400;color:#a0a0a8;flex-shrink:0}
#root details[open]>summary:after{content:"−"}
.es-faq details{border:1px solid var(--ui-border);border-radius:12px;background:#111113;padding:0 20px;margin:10px 0}
.es-faq details summary{padding:18px 0;min-height:58px}
.es-faq details p{padding-bottom:18px;margin-top:0}
.replica-location,.replica-social,.es-faq{padding-top:72px;padding-bottom:72px}
.replica-map-card{border-radius:18px;border-color:var(--ui-border)}
.replica-social-links a{border-radius:28px;border-color:#ffffff25}
.review-marquee .replica-review{border-radius:16px;border-color:var(--ui-border);background:#121214}
.replica-footer-extra{padding-top:24px;gap:24px}
.es-inquiry-result{border-radius:16px}
@media(max-width:1050px){nav.replica-nav .nav-link{padding:10px 11px;font-size:.6rem}nav.replica-nav{padding:12px 16px!important}#buchung .booking-grid{gap:24px!important}}
@media(max-width:900px){
 :root{--ui-anchor:110px}
 nav.replica-nav{top:10px!important;left:12px!important;right:12px!important;min-height:68px;padding:10px 16px!important;border-radius:16px}
 nav.replica-nav>a:first-child img{height:42px!important}
 .ui-current-section{display:block;margin-left:auto;margin-right:14px;padding:7px 11px;border:1px solid #ffffff1c;border-radius:22px;font-size:.64rem;color:#cfcfd5}
 nav.replica-nav .elite-menu-toggle{display:flex!important}
 nav.replica-nav .elite-menu-toggle{order:3}
 .ui-current-section{order:2}
 #elite-mobile-menu{order:4}
 #elite-mobile-menu{position:absolute!important;top:calc(100% + 9px)!important;left:0!important;right:0!important;width:100%!important;height:min(620px,calc(100svh - 110px))!important;border:1px solid #ffffff20;border-radius:16px;background:#111113!important;overflow-y:auto}
 #elite-mobile-menu a.is-current{color:#fff!important;text-decoration:underline!important;text-decoration-color:#ff0000!important;text-underline-offset:10px}
 #buchung .booking-grid{grid-template-columns:1fr!important;gap:24px!important}
 #buchung .booking-calendar-column{position:static}
 #buchung #inquiry-form{padding:22px}
 #flotte,#buchung,#erfahrungen,#kontakt{padding:64px 22px!important}
 .replica-location,.replica-social,.es-faq{padding:56px 22px}
}
@media(max-width:480px){#buchung #inquiry-form{padding:18px;border-radius:16px}#buchung .form-legal-note{font-size:.7rem}.replica-rates .replica-rate-grid>div{padding:20px 14px}#price-configurator .config-photo{height:180px}.ui-current-section{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}nav.replica-nav,.nav-link,#flotte .card-hover{transition:none!important}#flotte .card-hover:hover{transform:none}}

/* Progressive disclosure keeps the phone experience focused on the request. */
.inquiry-privacy-details{border-bottom:1px solid #ffffff18;margin:18px 0;padding:12px 0}
.inquiry-privacy-details>summary{font-size:.72rem;color:#bdbdc6;cursor:pointer;min-height:44px}
#price-configurator .config-driver-options{border-bottom:1px solid #32333a;padding:16px 0}
#price-configurator .config-driver-options>summary{font-size:.85rem;min-height:44px;cursor:pointer;color:#f2f2f2}
#price-configurator .config-driver-options>summary>span{margin-left:auto;font-size:.65rem;color:#aaa}
#price-configurator .config-driver-options .config-drivers{border:0;padding-bottom:0}
@media(max-width:700px){
 :root{--ui-anchor:96px}
 nav.replica-nav{min-height:60px;top:8px!important;padding:8px 12px!important}
 nav.replica-nav>a:first-child img{height:36px!important}
 .ui-current-section{font-size:.6rem;padding:6px 9px;margin-right:8px}
 .replica-home .replica-hero{height:100svh!important;min-height:640px!important;max-height:none}
 .replica-home .replica-hero .hero-img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 50%!important;transform:scale(1.2)!important;transform-origin:50% 50%}
 .replica-home .replica-hero>div:nth-child(2)>.animate-fade-up:first-child>div:first-child{display:none!important}
 .replica-home .replica-hero>div:nth-child(2){padding:0 22px 42px!important;max-width:100%}
 .replica-home .replica-hero h1{font-size:clamp(2rem,8vw,2.8rem)!important}
 .replica-home .replica-hero .replica-h1-label{font-size:.62rem;letter-spacing:.08em;margin-bottom:14px}
 .replica-home .replica-hero p{font-size:.8rem!important;line-height:1.6!important;max-width:34ch!important;margin-bottom:22px!important}
 .replica-home .replica-hero .btn-primary,.replica-home .replica-hero .btn-outline{padding:14px 18px;font-size:.6rem}
 #flotte,#buchung,#erfahrungen,#kontakt{padding:44px 16px!important}
 .replica-location,.replica-social,.es-faq{padding:44px 18px}
 #buchung .booking-grid{gap:16px!important}
 #buchung #inquiry-form{padding:18px 16px;border-radius:16px}
 #buchung .simple-inquiry-heading h2{font-size:1.4rem!important}
 #buchung .simple-inquiry-heading p{font-size:.75rem}
 #buchung .booking-conditions{padding:0 14px}
 #rental-calendar{padding:14px;margin-bottom:12px}
 #rental-calendar .calendar-heading h2{font-size:1.2rem}
 #rental-calendar .calendar-status{font-size:.54rem;padding:5px 8px;margin-top:8px}
 #rental-calendar .calendar-heading p{font-size:.7rem}
 #rental-calendar .calendar-toolbar{padding:5px 0}
 #rental-calendar .calendar-availability-key{font-size:10px;gap:6px 9px;margin:9px 0}
 #rental-calendar .calendar-availability-key>span:last-child{display:none}
 #rental-calendar .calendar-time-detail{font-size:.68rem;padding:10px;margin-top:10px}
 #rental-calendar .calendar-note{font-size:.66rem;line-height:1.6}
 #rental-calendar .calendar-bottom{margin-top:10px;padding-top:10px}
 #price-configurator .config-photo,#price-configurator .config-vehicles,#rs3-price-note{display:none}
 #price-configurator .config-eyebrow{display:none}
 #price-configurator .price-heading h3{font-size:1.25rem;margin:0 0 8px}
 #price-configurator .price-heading p{font-size:.73rem;line-height:1.6}
 #price-configurator .config-duration{padding:16px 0}
 #price-configurator .config-stepper{margin-top:10px;gap:10px}
 #price-configurator .config-help{font-size:.65rem;line-height:1.6}
 #price-configurator .config-row-heading{font-size:.8rem}
 #price-configurator .optional-packages{padding:12px 0}
 #price-configurator .optional-packages>summary{min-height:44px;font-size:.8rem}
 #price-configurator .price-package-content{min-height:90px;padding:12px 10px}
 #price-configurator .price-package input:checked+.price-package-content{padding:11px 9px}
 #price-configurator .price-summary{padding:14px;margin:16px 0}
 #price-configurator .price-line{font-size:.7rem;margin:9px 0}
 #price-configurator .price-total{padding-top:12px;margin-top:12px}
 #price-configurator .price-total strong{font-size:1.35rem}
 #price-configurator .price-details{font-size:.66rem}
 #buchung label.form-legal-note{padding:12px;font-size:.68rem;line-height:1.65;margin-top:16px}
 #buchung button[type=submit]{font-size:.65rem!important;padding:15px 10px!important}
 #flotte .original-gallery:not(:first-child)>div:first-child{height:150px!important}
 .replica-rates{padding:24px 16px!important}
 .replica-rates .replica-rate-grid{margin:18px 0}
 .replica-rates .replica-rate-grid>div{padding:16px 10px}
 .replica-rates .replica-rate-grid strong{font-size:1.4rem}
 .review-intro{padding-left:18px!important;padding-right:18px!important}
 .review-intro h2{font-size:1.65rem!important}
 .review-intro p{font-size:.8rem!important;line-height:1.7!important}
 .replica-social>.replica-container h2{font-size:1.6rem}
 .replica-footer-extra{gap:14px}
 .es-faq details{padding:0 14px}
 .es-faq summary{font-size:.8rem}
}

/* RS3 preview: a real photo gallery, without a rental action. */
#flotte .rs3-preview.original-gallery>div:first-child{position:relative;height:auto!important;aspect-ratio:4/3;overflow:hidden;background:#151517}
.rs3-preview-media>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .3s ease}
.rs3-preview-badge{position:absolute;top:16px;left:16px;padding:8px 12px;border:1px solid #ffffff30;border-radius:30px;background:#0c0c0ce6;color:#fff;font-size:.65rem;font-weight:600;letter-spacing:.04em}
.rs3-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffff40;border-radius:50%;background:#080808c9;color:#fff;font-size:1.6rem;cursor:pointer}
.rs3-gallery-prev{left:12px}.rs3-gallery-next{right:12px}
.rs3-gallery-dots{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);display:flex;padding:0 8px;border-radius:24px;background:#080808b8}
.rs3-gallery-dots button{position:relative;width:24px;min-height:36px;padding:0;border:0;background:transparent!important;cursor:pointer}
.rs3-gallery-dots button::after{content:"";position:absolute;top:15px;left:50%;transform:translateX(-50%);width:6px;height:6px;border-radius:10px;background:#ffffff80}
.rs3-gallery-dots button[aria-pressed=true]::after{width:16px;background:#f00}
.rs3-preview-body{padding:24px}.rs3-preview-eyebrow{display:block;color:#c7c7cc;font-size:.62rem;text-transform:uppercase;letter-spacing:.15em;margin-bottom:10px}
.rs3-preview-body h3{font-size:1.55rem;font-weight:500;margin:0 0 12px;color:#fff}
.rs3-preview-body p{font-size:.83rem;line-height:1.75;color:#b9b9c0;margin:0}
.rs3-preview-status{display:flex;align-items:center;gap:9px;margin:22px 0 10px;padding-top:18px;border-top:1px solid #ffffff14;font-size:.78rem;color:#f1f1f3}
.rs3-preview-status>span{width:6px;height:6px;border-radius:50%;background:#f00;flex-shrink:0}
.rs3-preview-body .rs3-preview-note{font-size:.72rem;color:#a5a5ad}
@media(max-width:700px){.rs3-preview-body{padding:20px}.rs3-preview-body h3{font-size:1.3rem}.rs3-preview-body p{font-size:.76rem}.rs3-preview-badge{top:12px;left:12px;font-size:.6rem}.rs3-preview-body .rs3-preview-note{font-size:.69rem}}
@media(prefers-reduced-motion:reduce){.rs3-preview-media>img{transition:none}}

/* The two actual vehicles share one card grid and image frame. */
#flotte .fleet-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;align-items:stretch}
#flotte .fleet-grid>.original-gallery{min-width:0;height:100%;display:flex;flex-direction:column;border:1px solid var(--ui-border)!important;border-radius:18px!important;overflow:hidden;background:#101012!important}
#flotte .fleet-grid>.original-gallery>div:first-child{height:320px!important;aspect-ratio:auto;flex-shrink:0}
#flotte .fleet-card-body{flex:1;padding:24px!important;display:flex;flex-direction:column}
#flotte .fleet-card-body h3{font-size:1.45rem!important;line-height:1.3;font-weight:400!important;margin:0 0 16px!important;color:#fff!important}
#flotte .rs3-preview-status{margin-top:auto;padding-top:20px}
.replica-home .replica-hero .hero-img{object-position:50% 68%!important}
@media(max-width:760px){#flotte .fleet-grid{grid-template-columns:minmax(0,1fr)!important;gap:20px!important}#flotte .fleet-grid>.original-gallery>div:first-child{height:280px!important}#flotte .fleet-card-body{padding:20px!important}}
@media(max-width:700px){.replica-home .replica-hero .hero-img{transform:scale(1.08)!important;transform-origin:50% 68%}}

/* Fleet refresh: dedicated image space and consistent photographic proportions. */
.replica-home .fleet-hero{display:grid!important;grid-template-columns:1fr 1.05fr;align-items:center!important;gap:48px;min-height:740px!important;height:auto!important;max-width:1440px;margin:auto;padding:136px 48px 64px;background:#080808;overflow:hidden}
.fleet-hero-visual{grid-column:2;grid-row:1;position:relative;height:620px;border-radius:24px;overflow:hidden;background:#141416}
.replica-home .fleet-hero .hero-img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 69%!important;transform:none!important;filter:none!important;opacity:1!important}
.fleet-hero-visual:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#0009);pointer-events:none}
.fleet-hero-caption{position:absolute;bottom:24px;left:24px;z-index:1;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#fff}
.fleet-hero-copy{grid-column:1;grid-row:1;min-width:0}
.fleet-hero .replica-h1-label{display:block;font-size:.67rem;letter-spacing:.18em;text-transform:uppercase;color:#bbb;margin-bottom:24px}
.replica-home .fleet-hero h1{font-size:clamp(2.4rem,4.2vw,4.2rem)!important;line-height:1.12;letter-spacing:-.045em;font-weight:400;margin:0 0 24px;color:#fff}
.fleet-hero h1 em{font-style:normal;color:#a4a4ac}
.replica-home .fleet-hero p{font-size:.95rem!important;line-height:1.8!important;color:#bdbdc5!important;max-width:42ch!important;margin:0 0 24px!important}
.hero-availability{display:flex;flex-wrap:wrap;gap:10px 18px;margin-bottom:28px;font-size:.7rem;color:#bdbdc5}
.hero-availability span{display:flex;align-items:center;gap:7px}.hero-availability i{width:6px;height:6px;background:#5cd49a;border-radius:50%}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-actions a{padding:16px 23px!important;font-size:.65rem!important;letter-spacing:.06em!important;display:inline-flex;align-items:center;justify-content:center;gap:20px}
.hero-footnote{display:block;color:#aaa;font-size:.67rem;margin-top:20px}
#flotte .fleet-grid>.original-gallery>div:first-child,#flotte .fleet-grid>.rs3-preview.original-gallery>div:first-child{height:auto!important;aspect-ratio:4/5!important;max-height:640px;position:relative}
#flotte .fleet-grid img[data-gallery-photo]{object-fit:cover!important;filter:none!important}
.gallery-open{position:absolute;right:14px;bottom:14px;z-index:3;width:44px;height:44px;background:#080808bb;border:1px solid #ffffff50;border-radius:50%;color:white;font-size:21px;cursor:pointer}
.photo-viewer{margin:auto;padding:0;border:1px solid #ffffff30;border-radius:18px;background:#101012;color:white;width:min(1100px,94vw);max-width:94vw;max-height:94dvh;overflow:hidden}
.photo-viewer::backdrop{background:#000e}.photo-viewer img{display:block;max-width:100%;width:100%;height:75dvh;object-fit:contain;background:#080808}
.photo-viewer-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px}.photo-viewer-bar p{margin:0;font-size:.8rem}.photo-viewer button{min-width:44px;min-height:44px;border:1px solid #ffffff30;background:#202024;color:white;border-radius:50%;cursor:pointer;font-size:20px}.photo-viewer-controls{display:flex;gap:8px}
#flotte .fleet-card-body{gap:4px}#flotte .fleet-card-body p{color:#bdbdc5!important}
.es-faq .faq-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:72px;max-width:1200px;margin:auto}.faq-intro{align-self:start;position:sticky;top:130px}.faq-intro>p:not(.es-eyebrow){color:#aaa;line-height:1.8;max-width:30ch}.faq-contact{display:inline-block;margin-top:16px;color:#f4f4f4;text-decoration:none;border-bottom:1px solid #f00;padding-bottom:8px;font-size:.8rem}
.faq-group{margin-bottom:30px}.faq-group h3{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:#a9a9b3;margin:0 0 12px}.es-faq .faq-group details{border-radius:0;border:0;border-bottom:1px solid #ffffff1f;background:transparent;padding:0;margin:0}.es-faq .faq-group summary{font-size:.9rem;font-weight:500;line-height:1.5;min-height:68px;color:#eee}.es-faq .faq-group details[open] summary{color:#fff}.es-faq .faq-group details p{color:#b8b8c0;font-size:.85rem;line-height:1.85;padding:0 28px 22px 0}.es-faq details[open]>summary:after{color:#f00}
#root a:focus-visible,#root button:focus-visible,#root summary:focus-visible{outline:2px solid #fff;outline-offset:5px}
@media(max-width:900px){.replica-home .fleet-hero{gap:24px;padding:112px 24px 48px}.fleet-hero-visual{height:540px}.es-faq .faq-layout{gap:32px;grid-template-columns:1fr}.faq-intro{position:static}.faq-intro>p:not(.es-eyebrow){max-width:50ch}}
@media(max-width:700px){.replica-home .fleet-hero{display:flex!important;flex-direction:column;gap:0;padding:84px 16px 32px!important;min-height:0!important;height:auto!important}.fleet-hero-visual{width:100%;height:clamp(260px,80vw,420px);border-radius:16px}.replica-home .fleet-hero>.fleet-hero-copy{padding:26px 4px 0!important;width:100%;max-width:none}.fleet-hero .replica-h1-label{font-size:.6rem;margin-bottom:12px}.replica-home .fleet-hero h1{font-size:clamp(1.95rem,8vw,2.8rem)!important;margin-bottom:16px}.replica-home .fleet-hero p{font-size:.82rem!important;max-width:46ch!important;margin-bottom:18px!important}.hero-availability{font-size:.65rem;gap:10px;margin-bottom:20px}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hero-actions a{padding:14px 10px!important;font-size:.58rem!important;gap:7px;letter-spacing:0!important}.hero-footnote{font-size:.62rem;margin-top:16px}.fleet-hero-caption{font-size:.6rem;bottom:16px;left:16px}#flotte .fleet-grid>.original-gallery>div:first-child,#flotte .fleet-grid>.rs3-preview.original-gallery>div:first-child{height:auto!important;aspect-ratio:4/5!important;max-height:none}.es-faq .faq-group summary{font-size:.83rem}.es-faq .faq-group details p{font-size:.8rem}.photo-viewer img{height:70dvh}.photo-viewer-bar{padding:10px}.photo-viewer-bar p{font-size:.7rem;max-width:50%}}


/* Motion polish: restrained entrance, responsive hover, and tactile controls. */
@media (prefers-reduced-motion: no-preference) {
  #flotte .fleet-grid > *,
  #flotte .fleet-grid > * .original-gallery,
  #flotte .fleet-grid > * .rs3-preview-media > img {
    transition: transform .42s cubic-bezier(.2,.7,.2,1), box-shadow .42s ease, border-color .3s ease;
  }
  #flotte .fleet-grid > *:hover { transform: translateY(-5px); }
  #flotte .fleet-grid > * .rs3-preview-media > img:hover { transform: scale(1.025); }
  #buchung .booking-vehicle-option { transition: transform .28s ease, border-color .28s ease, background .28s ease, box-shadow .28s ease; }
  #buchung .booking-vehicle-option:hover { transform: translateY(-3px); }
  #root .replica-home .btn-primary,
  #root .replica-home .btn-outline,
  #buchung button[type=submit],
  .review-motion-toggle {
    transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease, border-color .22s ease;
  }
  #root .replica-home .btn-primary:hover,
  #root .replica-home .btn-outline:hover { transform: translateY(-2px); box-shadow: 0 10px 28px #ff00002b; }
  #root .replica-home .btn-primary:active,
  #root .replica-home .btn-outline:active,
  #buchung button[type=submit]:active { transform: scale(.98); }
  .fleet-hero-copy > * { will-change: transform, opacity; }
}
@media (prefers-reduced-motion: reduce) {
  #flotte .fleet-grid > *,
  #flotte .fleet-grid > * .rs3-preview-media > img,
  #buchung .booking-vehicle-option,
  #root .replica-home .btn-primary,
  #root .replica-home .btn-outline,
  #buchung button[type=submit],
  .review-motion-toggle { transition: none !important; }
  #flotte .fleet-grid > *:hover,
  #buchung .booking-vehicle-option:hover,
  #root .replica-home .btn-primary:hover,
  #root .replica-home .btn-outline:hover,
  #buchung button[type=submit]:active { transform: none !important; box-shadow: none !important; }
}


/* Cinematic motion pass: longer, smooth but still restrained. */
@media (prefers-reduced-motion: no-preference) {
  #flotte .fleet-grid > *,
  #flotte .fleet-grid > * .rs3-preview-media > img,
  #flotte .fleet-grid > * .fleet-media > img,
  #buchung .booking-vehicle-option {
    transition-duration: .72s;
  }
  #flotte .fleet-grid > *:hover .rs3-preview-media > img,
  #flotte .fleet-grid > *:hover .fleet-media > img {
    transform: scale(1.035);
  }
  #root .replica-home .btn-primary,
  #root .replica-home .btn-outline,
  #buchung button[type=submit] { transition-duration: .38s; }
}
@media (prefers-reduced-motion: reduce) {
  #flotte .fleet-grid > *:hover .rs3-preview-media > img,
  #flotte .fleet-grid > *:hover .fleet-media > img { transform: none !important; }
}
