/* Fixed, compact five-step booking wizard */
.hero-booking-form.booking-wizard{box-sizing:border-box;width:460px;max-width:100%;height:min(570px,calc(100vh - 150px))!important;min-height:500px!important;max-height:570px!important;padding:18px!important;overflow:hidden!important;justify-content:flex-start}
.booking-wizard .wizard-progress{flex:0 0 auto;margin-bottom:10px}
.booking-wizard .wizard-step.active{display:flex;flex:1 1 auto;flex-direction:column;height:auto;min-height:0!important;overflow-x:hidden;overflow-y:auto;padding:0 4px 4px 0;scrollbar-gutter:stable}
.booking-wizard .wizard-step h2{font-size:1.35rem;margin-bottom:8px}
.booking-wizard .wizard-step .wizard-subheading{font-size:1rem;margin:10px 0 5px;padding-top:8px;border-top:1px solid #e6dfd3}
.booking-wizard .wizard-step .eyebrow{margin-bottom:3px}
.booking-wizard .wizard-step label{margin:4px 0}
.booking-wizard .wizard-step input,.booking-wizard .wizard-step select{padding:7px 9px}
.booking-wizard .conditional.show{padding:7px;margin:4px 0}
.booking-wizard .addon-options{padding:7px;margin:5px 0}
.booking-wizard .addon-options label{margin-right:8px!important}
.booking-wizard .calculator-total{padding:6px 9px;margin:4px 0}
.booking-wizard .calculator-total strong{font-size:1.05rem}
.booking-wizard .wizard-actions{position:sticky;bottom:0;z-index:2;margin-top:auto;padding-top:10px;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 10px)}
.booking-wizard .wizard-step>.button.full{position:sticky;bottom:0;z-index:2;flex:0 0 auto;background:#1877f2!important}
.booking-wizard .public-weekly-slots{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5px 7px;min-width:0;padding:7px;margin:5px 0;box-sizing:border-box}
.booking-wizard .public-weekly-slots[hidden]{display:none!important}
.booking-wizard .public-weekly-slots legend,.booking-wizard .public-weekly-slots>p{grid-column:1/-1}
.booking-wizard .public-weekly-slots>p{font-size:.62rem;line-height:1.25;margin:0 0 2px}
.booking-wizard .public-recurring-slot{display:grid;grid-template-columns:auto minmax(62px,1fr) 46px;gap:3px;align-items:center;min-width:0;padding:2px;border-radius:7px}
.booking-wizard .public-recurring-slot.is-starting-slot{background:#eaf2ff;box-shadow:inset 0 0 0 1px #bfd4f4}
.booking-wizard .public-recurring-slot label{font-size:.65rem;white-space:nowrap}
.booking-wizard .public-recurring-slot select,.booking-wizard .public-recurring-slot input[type="number"]{box-sizing:border-box;width:100%;min-width:0;font-size:.68rem;padding:5px 4px}
.booking-wizard .public-recurring-slot input[type="number"]{width:44px!important;max-width:44px}
.booking-wizard .booking-start-time.is-locked select{background:#eef2f2;color:#607277;cursor:not-allowed}
.booking-wizard .booking-start-time small{display:block;margin-top:3px;font-size:.64rem;color:#315e85}
.booking-wizard .saved-booking-address{display:grid;gap:3px;margin:7px 0;padding:9px 11px;border:1px solid #cbded9;border-radius:10px;background:#f4faf8}
.booking-wizard .saved-booking-address strong{font-size:.82rem;line-height:1.35}
.booking-wizard .saved-booking-address a{font-size:.72rem;font-weight:700}
.booking-wizard .address-save-note{display:block;margin-top:-2px}
.account-profile-panel{margin:18px 0 24px}
.booking-wizard .cleaner-options{max-height:170px}
@media(max-width:900px){.hero-booking-form.booking-wizard{width:min(460px,100%);height:560px!important;min-height:500px!important;max-height:560px!important}.hero.hero-booking{min-height:0;padding-top:48px;padding-bottom:48px}}
@media(max-width:560px){.hero-booking-form.booking-wizard{width:100%;height:min(560px,calc(100vh - 110px))!important;min-height:480px!important;max-height:560px!important;padding:14px!important;border-radius:16px}.booking-wizard .wizard-progress span{font-size:.5rem}.booking-wizard .public-weekly-slots{gap:4px}.booking-wizard .public-recurring-slot{grid-template-columns:auto minmax(54px,1fr) 42px;gap:2px}.booking-wizard .public-recurring-slot label{margin:0}.hero.hero-booking{min-height:0;padding:32px 14px;gap:24px}}
