.booking-page{max-width:1000px;padding-top:32px;padding-bottom:60px}.booking-form{background:#fff;border:1px solid #dce8df;border-radius:16px;padding:24px}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-fields label{display:flex;flex-direction:column;gap:8px}.booking-fields input,.booking-fields select{width:100%;padding:12px;border:1px solid #cedcd2;border-radius:8px;font:inherit}.booking-fields input[type=checkbox]{width:20px;height:20px}.errorlist{color:#a52b28}.price-breakdown{background:#edf6ef;padding:24px;border-radius:12px;margin:24px 0}.price-breakdown dl{display:grid;grid-template-columns:1fr auto;gap:12px}.car-photos{display:flex;gap:16px;overflow:auto}.car-photos img{max-width:300px;border-radius:12px}.live-fleet{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.fleet-car{border:1px solid #dce8df;border-radius:14px;padding:20px;background:white}.fleet-car img{width:100%;height:180px;object-fit:cover;border-radius:10px}.fleet-car a{display:inline-block;margin-top:12px}.fleet-car .no-photo{height:100px;display:grid;place-items:center;background:#f0f5f1;color:#748278;border-radius:10px}@media(max-width:650px){.booking-fields,.live-fleet{grid-template-columns:1fr}.booking-form{padding:16px}}
[hidden]{display:none!important}
.booking-closed{background:#fff6d6;border:1px solid #ecd78a;color:#5a4505;border-radius:12px;padding:18px 20px;font-weight:600}
.price-breakdown .approx{color:#5d7366;font-weight:400;white-space:nowrap}
.currency-note{font-size:13px;color:#5d7366;margin:12px 0 0}
/* Booking wizard: 1 car and dates, 2 extras, 3 customer details (PC and phones). */
.wizard-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;list-style:none;margin:0 0 20px;padding:0;counter-reset:none}
.wizard-steps li{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;background:#f2f6f3;color:#5d7366;font-weight:600;font-size:14px;position:relative;padding-left:46px;min-height:44px;justify-content:center}
.wizard-steps li small{font-weight:400;font-size:12px}
.wizard-steps li span{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #cfe0d4;font-size:13px}
.wizard-steps li[aria-current]{background:#e3f4e8;color:#1f5a35;box-shadow:inset 0 0 0 1px #218b53}
.wizard-steps li[aria-current] span,.wizard-steps li.done span{background:#218b53;border-color:#218b53;color:#fff}
.wizard-step h2{margin:0 0 12px;font-size:22px}
.wizard-step h3{margin:18px 0 10px;font-size:16px}
.is-wizard .wizard-step[hidden]{display:none}
.wizard-car{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline}
.wizard-hint{font-size:13px;color:#5d7366;margin:12px 0 0}
.wizard-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:22px}
.wizard-nav .primary{padding:12px 20px}
.wizard-nav .text-button{background:none;border:0;border-bottom:1px solid #aad2b9;cursor:pointer;font:inherit;font-size:14px}
.wizard-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.wizard-plan{display:flex;flex-direction:column;gap:6px;border:1px solid #dce5de;border-radius:10px;padding:16px;cursor:pointer;font-weight:400}
.wizard-plan:has(input:checked){border:2px solid #218b53;background:#f3faf4;padding:15px}
.wizard-plan input{width:18px;height:18px;margin:0;accent-color:#218b53}
.wizard-plan strong{font-size:18px}
.wizard-plan b{color:#218b53;font-size:14px}
.wizard-plan small{font-size:12px;color:#5d7366}
.wizard-extras{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.wizard-extras .extra{grid-template-columns:40px 1fr auto;font-size:13px;font-weight:500;line-height:1.4}
.wizard-extras .stepper input{width:40px;min-height:0;height:34px;padding:0;border:0;text-align:center;font-weight:600;background:#fff;-moz-appearance:textfield}
.wizard-extras .stepper input::-webkit-outer-spin-button,.wizard-extras .stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.wizard-agree{display:flex;align-items:flex-start;gap:10px;margin-top:16px;font-size:14px}
.wizard-agree input{width:20px;height:20px;margin:2px 0 0;flex:none}
.price-breakdown.is-stale{opacity:.45}
.wizard-stale{margin:12px 0}
@media(max-width:650px){.wizard-steps li{padding:8px 6px 8px 38px;font-size:12px}.wizard-steps li small{display:none}.wizard-steps li span{left:8px;width:24px;height:24px}
.wizard-plans,.wizard-extras{grid-template-columns:1fr}.wizard-nav .primary{width:100%}.wizard-nav{flex-direction:column-reverse;align-items:stretch}.wizard-nav .text-button{align-self:center}}
/* Whole car photo, never cropped (PC and phones). */
.fleet-car img{height:auto;aspect-ratio:4/3;object-fit:contain;background:#f0f5f1}
.car-photos img{max-width:min(520px,100%);height:auto;aspect-ratio:4/3;object-fit:contain;background:#f0f5f1}
