.booking-hero{text-align:center}.booking-hero h1{letter-spacing:.05em}.booking-hero p{max-width:560px;margin-left:auto;margin-right:auto;opacity:.7}.booking-widget{position:relative;width:100%;text-align:center}.booking-status{display:inline-flex;align-items:center;justify-content:center;gap:10px;margin:12px 0;font-size:14px;text-align:center}.booking-status[hidden]{display:none}.booking-days{display:flex;gap:8px;overflow-x:auto;padding-bottom:10px}.booking-day{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:76px;padding:10px 12px;border:1px solid var(--color-booking-slot-border,rgba(0,0,0,.1));border-radius:var(--border-radius,5px);background-color:var(--color-booking-slot-bg,#f5f5f5);color:var(--color-booking-slot-text,var(--color-text));font-family:var(--font-normal);font-size:.9rem;cursor:pointer;transition:border-color .25s var(--easing),background-color .25s var(--easing),color .25s var(--easing)}.booking-day-weekday{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;opacity:.8}.booking-day-date{font-family:var(--font-bold)}.booking-day:hover:not(:disabled){border-color:var(--color-booking-hover-border,var(--color-cta))}.booking-day.is-selected{border-color:transparent;background-color:var(--color-booking-selected-bg,var(--color-cta));color:var(--color-booking-selected-text,var(--color-cta-text,#fff))}.booking-day:disabled{cursor:default;opacity:.35}.booking-subheading{margin:24px 0 8px;font-family:var(--font-bold);font-size:.8rem;letter-spacing:.18em;text-align:left;text-transform:uppercase;opacity:.8}.booking-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(88px,100%),1fr));gap:8px}.booking-slot{box-sizing:border-box;padding:12px;border:1px solid var(--color-booking-slot-border,rgba(0,0,0,.1));border-radius:var(--border-radius,5px);background-color:var(--color-booking-slot-bg,#f5f5f5);color:var(--color-booking-slot-text,var(--color-text));font-family:var(--font-normal);font-size:.9rem;cursor:pointer;transition:border-color .25s var(--easing),background-color .25s var(--easing),color .25s var(--easing)}.booking-slot:hover{border-color:var(--color-booking-hover-border,var(--color-cta))}.booking-slot.is-selected{border-color:transparent;background-color:var(--color-booking-selected-bg,var(--color-cta));color:var(--color-booking-selected-text,var(--color-cta-text,#fff));font-family:var(--font-bold)}.booking-days[hidden],.booking-duration[hidden],.booking-slots[hidden]{display:none}.booking-duration{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px}.booking-duration-button{min-width:110px}.booking-form{text-align:left;gap:12px;font-size:16px}.booking-form input,.booking-form textarea{font-size:14px}.booking-form[hidden]{display:none}.booking-form .contact-preference{margin:0}.booking-form .contact-preference p{margin:0 0 8px}.booking-form .preference-options{gap:32px;flex-wrap:wrap}.booking-form .preference-options label{flex-shrink:0;gap:8px;font-size:16px}.booking-form .preference-options input{width:auto;flex-shrink:0}.booking-form .location-options{gap:8px;justify-content:flex-start}.booking-form .location-options label{min-width:110px;margin:0;padding:12px;justify-content:center;border:1px solid var(--color-booking-slot-border,rgba(0,0,0,.1));border-radius:var(--border-radius,5px);background-color:var(--color-booking-slot-bg,#f5f5f5);color:var(--color-booking-slot-text,var(--color-text));font-family:var(--font-normal);font-size:1rem;transition:border-color .25s var(--easing),background-color .25s var(--easing),color .25s var(--easing)}.booking-form .location-options label:hover{border-color:var(--color-booking-hover-border,var(--color-cta))}.booking-form .location-options label.is-selected{border-color:transparent;background-color:var(--color-booking-selected-bg,var(--color-cta));color:var(--color-booking-selected-text,var(--color-cta-text,#fff));font-family:var(--font-bold)}.booking-form .location-options input{position:absolute;opacity:0;pointer-events:none}.booking-form input[hidden]{display:none}.booking-form .preference-section{display:grid;grid-template-rows:1fr;opacity:1;transition:grid-template-rows .3s var(--easing),opacity .3s var(--easing)}.booking-form .preference-section.is-collapsed{grid-template-rows:0fr;opacity:0}.booking-form .preference-collapse{overflow:hidden;min-height:0}.booking-form .preference-section.is-collapsed .preference-collapse{visibility:hidden;transition:visibility 0s linear .3s}.booking-chosen{font-size:16px;opacity:.8}.booking-field-error{margin:0;color:var(--color-cta);font-family:var(--font-bold);font-size:14px}.booking-field-error[hidden]{display:none}.booking-submit{width:100%}.booking-fallback{margin-top:24px;font-size:14px;opacity:.7}.booking-fallback a{color:var(--color-cta)}