.booking-hero{min-height:420px;padding:150px clamp(24px,6vw,90px) 70px;background:linear-gradient(90deg,rgba(4,9,12,.96),rgba(4,9,12,.55)),url("../assets/allo/hero/hero-chauffeur-paris.png");background-size:cover;background-position:center;display:flex;align-items:end}.booking-hero>div{max-width:760px}.booking-hero h1{font:500 clamp(42px,5vw,68px)/.98 Georgia,serif;margin:12px 0 18px}.booking-hero p{max-width:650px;color:#d9dfe3}.booking-shell{padding:50px clamp(20px,5vw,76px) 70px;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.booking-form,.booking-aside>div,.booking-aside ul{background:#0b141b;border:1px solid #ffffff1f;border-radius:18px}.booking-form{padding:22px}.booking-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:25px}.booking-panel{display:none}.booking-panel.active{display:block}.booking-panel h2{font:500 32px/1.1 Georgia,serif;margin:8px 0 22px}.service-choice{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-field{display:grid;gap:7px;font-size:12px;font-weight:700;color:#e9edf0}.booking-field.wide{grid-column:1/-1}.booking-field input,.booking-field textarea,.booking-field select{width:100%;padding:13px 14px;border:1px solid #ffffff20;border-radius:10px;background:#0f1921;color:#fff;outline:0}.booking-field input:focus,.booking-field textarea:focus{border-color:#d7a84c}.booking-actions{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.vehicle-option{position:relative;border:1px solid #ffffff1c;background:#0f1820;border-radius:14px;overflow:hidden;display:grid;grid-template-columns:120px 1fr;align-items:center;cursor:pointer}.vehicle-option input{position:absolute;opacity:0}.vehicle-option:has(input:checked){border-color:#e0ba69;box-shadow:inset 0 0 0 1px #e0ba6944}.vehicle-option img,.vehicle-option-img{width:120px;height:94px;object-fit:cover}.vehicle-option>div:last-child{padding:12px}.vehicle-option strong{display:block;font:600 16px Georgia,serif}.vehicle-option small{display:block;color:#aeb7bd;margin-top:4px}.booking-summary{margin-top:18px;padding:15px;border-radius:12px;background:#111a20;border:1px solid #ffffff18;display:grid;gap:4px}.booking-summary span{font-size:12px;color:#aeb7bd}.booking-aside{display:grid;gap:14px;position:sticky;top:105px}.booking-aside>div,.booking-aside ul{padding:22px}.booking-aside h3{font:500 25px Georgia,serif;margin:7px 0 10px}.booking-aside p{font-size:13px;color:#b9c2c7}.booking-phone{display:inline-block;color:#e3c173;font-weight:800;margin-top:8px}.booking-aside ul{margin:0;list-style:none;display:grid;gap:12px}.booking-aside li:before{content:"✓";color:#e3c173;margin-right:10px}.booking-success,.booking-errors{grid-column:1/-1;padding:18px;border-radius:15px;margin-bottom:4px}.booking-success{display:flex;gap:15px;align-items:flex-start;background:#102219;border:1px solid #2d8b5b66}.booking-success>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#22a66c;font-weight:900}.booking-success h2{margin:0 0 4px;font:500 24px Georgia,serif}.booking-success p{margin:0;color:#c7d4cc}.booking-errors{background:#321718;border:1px solid #b04d4d;color:#ffd7d7}@media (max-width:980px){.booking-shell{grid-template-columns:1fr}.booking-aside{position:static;grid-template-columns:1fr 1fr}.service-choice{grid-template-columns:repeat(2,1fr)}}@media (max-width:620px){.booking-hero{min-height:360px;padding:125px 20px 50px}.booking-hero h1{font-size:43px}.booking-shell{padding:30px 14px 50px}.booking-form{padding:15px}.booking-steps{grid-template-columns:repeat(4,1fr)}.service-choice,.booking-grid,.vehicle-choice,.booking-aside{grid-template-columns:1fr}.booking-field.wide{grid-column:auto}.vehicle-option{grid-template-columns:92px 1fr}.vehicle-option img,.vehicle-option-img{width:92px;height:86px}.booking-actions .btn{flex:1;padding-inline:10px}}.page-reservation .reservation-wrap{max-width:1180px;margin-inline:auto}.page-reservation .booking-grid{align-items:start}.page-reservation .vehicle-option{overflow:hidden}.page-reservation .vehicle-option img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:center}.page-reservation input,.page-reservation select,.page-reservation textarea{max-width:100%}@media(max-width:820px){.page-reservation .booking-grid{grid-template-columns:1fr}.page-reservation .vehicle-option img{aspect-ratio:4/3}}