/* Fleet: wide photographic studies, open typography, a quiet blue interaction accent. */
body.fleet-page main,body.booking-page main{padding-top:150px;padding-bottom:90px}
.garage-overline{font-size:.75rem;letter-spacing:.15em;font-weight:550;color:#a5b2c2}
.garage-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px}
.garage-intro h1{font-size:clamp(70px,9.4vw,144px);line-height:1.08;letter-spacing:-.075em;font-weight:700;margin-top:14px}
.garage-intro h1>span,.reservation-heading h1>span{color:#4773ff}
.garage-intro>p{font-size:1.125rem;line-height:1.6;color:#b6c0cb;padding-bottom:12px}
.garage-index{display:flex;flex-wrap:wrap;gap:12px 30px;margin-bottom:28px}
.garage-index a{font-size:.875rem;min-height:44px;display:flex;align-items:center;color:#b7c1cd;transition:color .2s}
.garage-index a:hover{color:#fff}
.garage-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px 28px}
.garage-car{min-width:0}
.garage-m3{grid-column:1/-1}
.garage-photo{display:block;position:relative;overflow:hidden;isolation:isolate;border-radius:8px;background:#131c26;aspect-ratio:1.18}
.garage-m3 .garage-photo{aspect-ratio:2.25}
.garage-photo::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#03070d8c 0%,transparent 42%,#03070d73 100%);transition:opacity .5s}
.garage-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 55%;transition:transform 1.1s cubic-bezier(.2,.65,.2,1),filter .6s;filter:saturate(.8)}
.garage-m3 img{object-position:50% 59%}
.garage-photo-heading{position:absolute;z-index:1;left:30px;top:28px;pointer-events:none}
.garage-photo-heading>span{font-size:.875rem;font-weight:500;text-shadow:0 1px 10px #0009}
.garage-photo-heading h2{font-size:clamp(48px,5.8vw,88px);letter-spacing:-.055em;line-height:1.1;font-weight:650;margin-top:4px;scroll-margin-top:145px}
.garage-m3 h2{font-size:clamp(70px,8.7vw,130px)}
.garage-view{position:absolute;right:24px;bottom:24px;z-index:1;border-radius:999px;background:#fff;color:#0b1320;padding:15px 22px;font-weight:600;font-size:.875rem;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}
.garage-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:17px}
.garage-caption p{font-size:.875rem;color:#c3cbd4}.garage-caption p span{color:#7e8c9c}
.garage-book{display:inline-flex;align-items:center;min-height:46px;padding:12px 23px;border-radius:999px;background:#233b66;color:#e5eeff;font-size:.875rem;font-weight:550;transition:background .25s,transform .25s}
.garage-book:hover{background:#164bff;color:white;transform:translateY(-2px)}
.garage-photo:focus-visible{outline-offset:6px}
@media(hover:hover){.garage-photo:hover img{transform:scale(1.045);filter:saturate(1)}.garage-photo:hover .garage-view,.garage-photo:focus-visible .garage-view{opacity:1;transform:none}}
.garage-amg{padding-top:90px}.garage-g-class{padding-top:90px}
.garage-end{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:65px 0 35px;margin-top:25px}
.garage-end p{font-size:clamp(26px,3vw,44px);letter-spacing:-.04em;font-weight:600}
.garage-disclaimer{font-size:.8125rem;color:#8e9baa;line-height:1.6}
.garage-enter{opacity:0;transform:translateY(30px);transition:opacity .75s,transform .9s cubic-bezier(.2,.65,.2,1)}.garage-enter.is-visible{opacity:1;transform:none}
/* Dedicated booking surface: selected car beside a focused, staged form. */
.reservation-back{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem;color:#afbdd0}.reservation-back:hover{color:white}
.reservation-heading{margin:28px 0 44px}.reservation-heading h1{font-size:clamp(44px,6.3vw,90px);line-height:1.1;letter-spacing:-.06em;margin-top:12px;font-weight:650}
.reservation-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(30px,6vw,86px)}
.reservation-car{position:sticky;top:125px;overflow:hidden;border-radius:12px;background:#121b24}
.reservation-car>img{width:100%;aspect-ratio:1.4;height:auto;object-fit:cover}
.reservation-car-copy{padding:28px 30px 24px}.reservation-car-copy>span{font-size:.75rem;color:#95a7be}.reservation-car-copy h2{font-size:clamp(27px,2.9vw,42px);line-height:1.1;letter-spacing:-.035em;margin:10px 0 13px}.reservation-car-copy p{color:#a7b6c7;font-size:.875rem}.reservation-car-copy a{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem;text-decoration:underline;text-underline-offset:5px;color:#c2d5f4;margin-top:9px}
.reservation-facts{margin:0;padding:0 30px 28px;font-size:.8125rem;line-height:1.6;color:#a7b6c7}.reservation-facts>div{display:flex;justify-content:space-between;gap:20px;padding-top:10px}.reservation-facts dd{margin:0;color:#d7e0eb;text-align:right}
.reservation-workspace{background:#f1f4f8;border-radius:14px;padding:clamp(22px,3vw,44px);color:#152132;color-scheme:light;min-width:0}
.reservation-progress{display:flex;list-style:none;margin:0 0 35px;padding:0;gap:18px;font-size:.8125rem;color:#64748a;line-height:1.45}
.reservation-progress li{padding-bottom:12px;border-bottom:2px solid #d6dde7;flex:1}.reservation-progress [aria-current]{border-color:#164bff;color:#164bff;font-weight:650}
.reservation-workspace h2{font-size:clamp(26px,2.6vw,36px);letter-spacing:-.045em;line-height:1.2;font-weight:650}
.reservation-intro{color:#586a80;font-size:.9375rem;line-height:1.6;margin:12px 0 28px}
.reservation-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.reservation-field{display:flex;flex-direction:column;gap:9px;margin-bottom:22px;min-width:0;font-size:.875rem;font-weight:550;color:#24364e}
.reservation-field input,.reservation-field select,.reservation-field textarea{width:100%;min-width:0;max-width:100%;min-height:54px;padding:14px 15px;background:#fff;color:#132239;border:1px solid #c9d3df;border-radius:9px;font-size:1rem;font-weight:400;transition:border-color .2s,box-shadow .2s}
.reservation-field textarea{resize:vertical}.reservation-field input:hover,.reservation-field select:hover,.reservation-field textarea:hover{border-color:#7391ba}
.reservation-field [aria-invalid=true]{border-color:#b72b35}.reservation-error{color:#a72331;font-size:.8125rem;font-weight:400;line-height:1.4}
.reservation-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:30px}
.reservation-workspace .reserve-primary{background:#164bff;color:#fff;border-radius:999px;font-size:.875rem;min-height:54px;padding:16px 24px;box-shadow:none;gap:0}
.reservation-workspace .reserve-primary:hover{background:#103bd1;color:#fff}
.reserve-back-step,.reserve-edit{background:transparent;color:#344c6b;padding:12px 0;min-height:44px;font-size:.875rem;text-decoration:underline;text-underline-offset:5px}
.reservation-note{font-size:.8125rem;line-height:1.6;color:#63758a;margin-top:17px}
.reservation-disclosure{font-size:.8125rem;line-height:1.65;color:#64748a;margin-top:32px}.reservation-disclosure a{color:#344c6b;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
#reservation-summary{margin:25px 0 10px;display:grid;grid-template-columns:1fr 1.4fr;gap:15px 20px;font-size:.875rem;line-height:1.6;overflow-wrap:anywhere}#reservation-summary dt{color:#607188}#reservation-summary dd{margin:0;text-align:right;color:#152c49}
.reservation-payment{margin-top:24px;padding:25px;background:#e3ebf7;border-radius:10px}.reservation-payment svg{width:26px;height:26px;color:#164bff;margin-bottom:16px}.reservation-payment h3{font-size:1.2rem;letter-spacing:-.03em;margin-bottom:12px}.reservation-payment p{font-size:.875rem;line-height:1.65;color:#50647e;margin-bottom:12px}.reservation-payment .button{margin-top:8px}
body.booking-page .mobile-call{display:none}
@media(max-width:900px){.garage-intro>p{font-size:1rem}.reservation-layout{gap:26px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.reservation-car-copy,.reservation-facts{padding-inline:22px}.reservation-fields{grid-template-columns:1fr;gap:0}.reservation-progress{gap:10px;font-size:.75rem}.garage-amg,.garage-g-class{padding-top:55px}}
@media(max-width:650px){body.fleet-page main,body.booking-page main{padding-top:115px;padding-bottom:55px}.garage-intro{display:block;margin-bottom:20px}.garage-intro h1{font-size:clamp(62px,16vw,100px);margin-top:12px}.garage-intro>p{margin-top:18px;line-height:1.5;padding:0}.garage-intro>p br{display:none}.garage-intro>p br:after{content:' '}.garage-index{gap:3px 21px;margin-bottom:20px}.garage-index a{font-size:.8125rem}.garage-grid{grid-template-columns:1fr;gap:35px}.garage-amg,.garage-g-class{padding:0}.garage-m3{grid-column:auto}.garage-photo,.garage-m3 .garage-photo{aspect-ratio:1.07}.garage-m3 img{object-position:51% 55%}.garage-photo-heading{top:23px;left:23px}.garage-photo-heading h2,.garage-m3 h2{font-size:60px}.garage-photo-heading>span{font-size:.8125rem}.garage-caption{gap:10px;padding-top:12px}.garage-book{padding:12px 18px}.garage-caption p{font-size:.8125rem}.garage-caption p span{display:none}.garage-end{display:block;padding:32px 0 23px}.garage-end .button{margin-top:20px}.garage-overline{font-size:.6875rem}.reservation-heading{margin:18px 0 28px}.reservation-layout{grid-template-columns:1fr;gap:24px}.reservation-car{position:static;display:grid;grid-template-columns:40% 60%;border-radius:10px}.reservation-car>img{height:100%;aspect-ratio:auto}.reservation-car-copy{padding:20px}.reservation-car-copy h2{font-size:24px;line-height:1.15}.reservation-car-copy>span,.reservation-car-copy p,.reservation-facts{display:none}.reservation-car-copy a{font-size:.8125rem;margin:0}.reservation-workspace{padding:25px 20px}.reservation-progress{gap:12px;font-size:.75rem;margin-bottom:27px}.reservation-fields{grid-template-columns:1fr 1fr;gap:12px}.reservation-field input{padding-inline:10px}.reservation-actions{gap:15px}.reservation-workspace .reserve-primary{padding-inline:20px}.reservation-payment{padding:21px}.reservation-payment .button{width:100%;font-size:.8125rem}.reservation-disclosure{margin-top:26px}}
@media(max-width:360px){.reservation-fields{grid-template-columns:1fr;gap:0}.reservation-car-copy{padding:16px}.reservation-car-copy h2{font-size:21px}.reservation-progress{gap:8px}.reservation-workspace{padding:23px 16px}.reservation-actions{flex-wrap:wrap}.garage-photo-heading h2{font-size:52px}}
@media(prefers-reduced-motion:reduce){.garage-enter{opacity:1;transform:none}.garage-photo:hover img,.garage-book:hover{transform:none}}
@media(max-width:650px){.garage-m3 .garage-photo{aspect-ratio:1.35}.garage-m3 img{object-position:50% 55%}}
.reservation-note a,.reservation-payment p a{color:#254dac;text-decoration:underline;text-underline-offset:3px}.reservation-disclosure a{white-space:normal}
