/* 07-booking-calendar-theme-b.css - Second half of active booking/calendar theme overrides, kept in original cascade order.
   Generated from styles/bundle.min.css. Keep numeric load order. */
@media (max-width:480px){.form-calendar-overlay__mount #bookingCalendar .calendar-title .cal-month,.form-calendar-overlay__mount #bookingCalendar .calendar-title .cal-selected-day,.layout-container #bookingCalendar .calendar-title .cal-month,.layout-container #bookingCalendar .calendar-title .cal-selected-day{font-size:.88rem!important}.form-calendar-overlay__mount #bookingCalendar .cal-day,.layout-container #bookingCalendar .cal-day{font-size:.88rem!important}.form-calendar-overlay__mount #bookingCalendar #slotsDayDisplay,.layout-container #bookingCalendar #slotsDayDisplay{font-size:.88rem!important;font-weight:700!important}.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn,.layout-container #bookingCalendar .slots-grid .slot-btn{min-height:4.25rem!important;padding:.62rem .72rem!important}.form-calendar-overlay__mount #bookingCalendar .slot-time,.layout-container #bookingCalendar .slot-time{font-size:.68rem!important}.form-calendar-overlay__mount #bookingCalendar .slot-time .slot-time-main,.layout-container #bookingCalendar .slot-time .slot-time-main{font-size:.68rem!important}.form-calendar-overlay__mount #bookingCalendar .slot-date-legal,.layout-container #bookingCalendar .slot-date-legal{font-size:.7rem!important}}
.form-calendar-overlay__mount #bookingCalendar .calendar-grid,.form-calendar-overlay__mount #bookingCalendar .calendar-header,.form-calendar-overlay__mount #bookingCalendar .calendar-nav-btn,.form-calendar-overlay__mount #bookingCalendar .slots-shell,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-grid,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-header,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-nav-btn,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-shell,.layout-container #bookingCalendar .calendar-grid,.layout-container #bookingCalendar .calendar-header,.layout-container #bookingCalendar .calendar-nav-btn,.layout-container #bookingCalendar .slots-shell,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-grid,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-header,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-nav-btn,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-shell{background:var(--calendar-frame-panel-strong)!important;background-color:var(--calendar-frame-panel-strong)!important}
#bookingCalendar .cal-day.cal-day--nearest.cal-day--selected,#bookingCalendar .cal-day.cal-day--selected{background:#fff!important;border:none!important;outline:none!important;box-shadow:none!important;color:var(--calendar-frame-ink)!important;-webkit-text-fill-color:var(--calendar-frame-ink)!important;text-shadow:none!important;transform:none!important}
#bookingCalendar .cal-day,.form-calendar-overlay__mount #bookingCalendar .cal-day,.layout-container #bookingCalendar .cal-day{transition:background .12s ease,color .12s ease,transform .12s ease!important}
#bookingCalendar .cal-day.cal-day--nearest:not(.cal-day--selected):not(.cal-day--disabled):not(.cal-day--busy),#bookingCalendar .cal-day.cal-day--today:not(.cal-day--selected):not(.cal-day--disabled):not(.cal-day--busy),.form-calendar-overlay__mount #bookingCalendar .cal-day--nearest:not(.cal-day--selected):not(.cal-day--disabled):not(.cal-day--busy),.form-calendar-overlay__mount #bookingCalendar .cal-day--today:not(.cal-day--selected):not(.cal-day--disabled):not(.cal-day--busy),.layout-container #bookingCalendar .cal-day--nearest:not(.cal-day--selected):not(.cal-day--disabled):not(.cal-day--busy),.layout-container #bookingCalendar .cal-day--today:not(.cal-day--selected):not(.cal-day--disabled):not(.cal-day--busy){border:1px solid var(--calendar-frame-border)!important;box-shadow:var(--calendar-frame-shadow)!important;outline:none!important;animation:none!important}
.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn,.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn.slot-btn--clicked,.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn:active,.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn:focus-visible,.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn:hover,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn.slot-btn--clicked,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn:active,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn:focus-visible,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn:hover,.layout-container #bookingCalendar .slots-grid .slot-btn,.layout-container #bookingCalendar .slots-grid .slot-btn.slot-btn--clicked,.layout-container #bookingCalendar .slots-grid .slot-btn:active,.layout-container #bookingCalendar .slots-grid .slot-btn:focus-visible,.layout-container #bookingCalendar .slots-grid .slot-btn:hover,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn.slot-btn--clicked,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn:active,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn:focus-visible,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn:hover{box-shadow:none!important}
.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn.slot-btn--hypnotic,.layout-container #bookingCalendar .slots-grid .slot-btn.slot-btn--hypnotic{animation:none!important}
.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn,.layout-container #bookingCalendar .slots-grid .slot-btn,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn{background:var(--calendar-frame-panel-strong)!important;border:1px solid var(--calendar-frame-border)!important;color:var(--calendar-frame-ink)!important;-webkit-text-fill-color:var(--calendar-frame-ink)!important}
.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn.slot-btn--clicked,.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn:active,.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn:focus-visible,.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn:hover,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn.slot-btn--clicked,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn:active,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn:focus-visible,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn:hover,.layout-container #bookingCalendar .slots-grid .slot-btn.slot-btn--clicked,.layout-container #bookingCalendar .slots-grid .slot-btn:active,.layout-container #bookingCalendar .slots-grid .slot-btn:focus-visible,.layout-container #bookingCalendar .slots-grid .slot-btn:hover,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn.slot-btn--clicked,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn:active,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn:focus-visible,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-grid .slot-btn:hover{background:rgba(255,250,242,.28)!important;border-color:var(--calendar-frame-border-strong)!important;color:var(--calendar-frame-ink)!important;-webkit-text-fill-color:var(--calendar-frame-ink)!important}
@media (min-width:744px) and (max-width:1024px){body,html{-webkit-text-size-adjust:100%;text-size-adjust:100%}.bottom-bar,.top-bar{display:flex!important;opacity:1!important;visibility:visible!important;pointer-events:none!important}.header,.header__content-block,.layout-container{padding-left:clamp(.9rem,2.2vw,1.2rem)!important;padding-right:clamp(.9rem,2.2vw,1.2rem)!important}.header{padding-top:clamp(1rem,2.3vw,1.5rem)!important;padding-bottom:clamp(1.5rem,3.2vw,2rem)!important}.header__title{font-size:clamp(1.18rem,2.4vw,1.52rem)!important;letter-spacing:.07em!important}.header__description{font-size:12pt!important;line-height:1!important;margin-bottom:1.8rem!important;width:min(92vw,39rem)!important;max-width:min(92vw,39rem)!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important}.header__description span{display:block!important;width:100%!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important;white-space:normal!important;text-wrap:balance!important;overflow-wrap:break-word!important;word-break:normal!important;margin-top:.18rem!important;text-align:center!important}.header__description-phone{text-align:center!important}.header+.layout-container{margin-top:clamp(-1.2rem,-2.1vw,-.6rem)!important}#calendarHeaderTitle,#faqSectionTitle,#servicesSectionTitle{font-size:clamp(2rem,4.4vw,2.45rem)!important;line-height:1.18!important}#calendarScaleWrapper,.form-calendar-overlay__mount .calendar-scale-wrapper{width:100%!important}#calendarScaleInner,.form-calendar-overlay__mount .calendar-scale-inner{width:min(100%,41rem)!important;max-width:min(100%,41rem)!important;transform:none!important}.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper,.layout-container #bookingCalendar.calendar-wrapper{width:100%!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important}.form-calendar-overlay__mount #bookingCalendar .calendar-grid,.layout-container #bookingCalendar .calendar-grid{justify-items:stretch!important;align-items:start!important;grid-auto-rows:auto!important;align-content:start!important}.form-calendar-overlay__mount #bookingCalendar .cal-day,.layout-container #bookingCalendar .cal-day{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;line-height:1!important;padding:0!important;aspect-ratio:1/1!important;width:100%!important;min-height:clamp(2.65rem,5.2vw,3.45rem)!important}.form-calendar-overlay__mount #bookingCalendar .cal-day.cal-day--saturday-key,.layout-container #bookingCalendar .cal-day.cal-day--saturday-key{overflow:visible!important}.form-calendar-overlay__mount #bookingCalendar .cal-key,.layout-container #bookingCalendar .cal-key{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;line-height:0!important;margin:0 auto!important}.form-calendar-overlay__mount #bookingCalendar .cal-key-img,.form-calendar-overlay__mount #bookingCalendar .cal-key-svg,.layout-container #bookingCalendar .cal-key-img,.layout-container #bookingCalendar .cal-key-svg{display:block!important;margin:0 auto!important;width:clamp(1.65rem,68%,2.35rem)!important;max-width:74%!important;max-height:74%!important;height:auto!important;object-fit:contain!important}#faqSpoiler .faq__answer,#faqSpoiler .faq__item.is-open .faq__answer,#faqSpoiler .faq__question{max-width:min(100%,38rem)!important}.footer{padding:clamp(2.2rem,4.4vw,3rem) 1rem 1.15rem!important}.footer__copyright{font-size:clamp(.95rem,1.9vw,1.04rem)!important;line-height:1.45!important}.footer__privacy-note-block .privacy-note{font-size:clamp(.95rem,1.9vw,1.04rem)!important;line-height:1.45!important}.modal--active{padding:clamp(.8rem,2.3vh,1.2rem)!important}#bookingModal .modal__content{width:min(100%,43.5rem)!important;max-height:calc(100dvh - 1.8rem)!important}}
@supports (-webkit-touch-callout:none){@media (min-width:744px) and (max-width:1024px){.post-success-screen:after,.post-success-screen:before,.spark{animation:none!important;transform:none!important}.background,.form-calendar-overlay__mount #bookingCalendar .calendar-grid,.form-calendar-overlay__mount #bookingCalendar .calendar-header,.form-calendar-overlay__mount #bookingCalendar .slots-block,.form-calendar-overlay__mount #bookingCalendar .slots-nav,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper,.layout-container #bookingCalendar .calendar-grid,.layout-container #bookingCalendar .calendar-header,.layout-container #bookingCalendar .slots-block,.layout-container #bookingCalendar .slots-nav,.layout-container #bookingCalendar.calendar-wrapper{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.book-btn-container,.book-btn-container--footer{height:auto!important;min-height:7.4rem!important}.form-calendar-overlay__mount #bookingCalendar .cal-day,.layout-container #bookingCalendar .cal-day{display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;line-height:1!important}}}
#calendarScaleWrapper,.form-calendar-overlay__mount #calendarScaleWrapper,.form-calendar-overlay__mount .calendar-scale-wrapper{display:flex!important;justify-content:center!important;align-items:flex-start!important;margin-left:auto!important;margin-right:auto!important}
#bookingCalendar,#calendarScaleInner,.form-calendar-overlay__mount #bookingCalendar,.form-calendar-overlay__mount #calendarScaleInner,.form-calendar-overlay__mount .calendar-scale-inner{margin-left:auto!important;margin-right:auto!important}
#bookingCalendar .calendar-grid{justify-items:stretch!important;align-items:start!important;grid-auto-rows:auto!important;align-content:start!important}
#bookingCalendar .cal-day{display:flex!important;align-items:center!important;justify-content:center!important;aspect-ratio:1/1!important;width:100%!important;min-height:2.8rem!important;padding:0!important;line-height:1!important;text-align:center!important;font-variant-numeric:tabular-nums}
#bookingCalendar .cal-day .cal-day-value{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;line-height:1!important;text-align:center!important;position:relative!important;z-index:2!important}
#bookingCalendar .cal-day.cal-day--saturday-key .cal-key{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:100%!important;line-height:0!important;margin:0 auto!important;padding:0!important}
#bookingCalendar .cal-day.cal-day--saturday-key .cal-key-img,#bookingCalendar .cal-day.cal-day--saturday-key .cal-key-svg{display:block!important;width:clamp(1.55rem,68%,2.3rem)!important;max-width:74%!important;max-height:74%!important;height:auto!important;margin:0 auto!important;object-fit:contain!important;object-position:center center!important;transform:translateZ(0)}
#bookingCalendar .slot-icon-wrapper{display:grid!important;place-items:center!important}
#bookingCalendar .slot-clock{display:block!important;width:100%!important;height:100%!important;margin:0 auto!important;overflow:visible!important}
#intakeNoticeModal .modal__content{width:min(100%,37.5rem)!important;max-width:37.5rem!important;margin-left:auto!important;margin-right:auto!important}
@media (max-width:768px){#intakeNoticeModal .modal__content{width:min(100%,calc(100vw - 2rem))!important;max-width:calc(100vw - 2rem)!important}}
@media (max-width:480px){#intakeNoticeModal .modal__content{width:calc(100vw - 1.5rem)!important;max-width:calc(100vw - 1.5rem)!important}}
@media (min-width:744px) and (max-width:1024px){#intakeNoticeModal .modal__content{width:min(100%,37.5rem)!important;max-width:37.5rem!important}}
#bookingModal.booking-modal--flat .modal__content,#bookingModal.booking-modal--flat[data-state=form] .modal__content,#bookingModal.booking-modal--flat[data-state=success] .modal__content{height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important}
#bookingModal.booking-modal--flat .modal__body,#bookingModal.booking-modal--flat[data-state=form] .modal__body,#bookingModal.booking-modal--flat[data-state=success] .modal__body{overflow:visible!important}
:root{--calendar-book-text-color:var(--modal-lock-button-text)}
#bookingModal[data-state=form] #modalAppointmentTime,#bookingModal[data-state=form] #modalAppointmentTime strong,#bookingModal[data-state=form] .modal__title{color:rgba(var(--modal-design-text-rgb),.98)!important;-webkit-text-fill-color:rgba(var(--modal-design-text-rgb),.98)!important;text-shadow:0 1px 8px rgba(var(--site-text-shadow-rgb),.12)!important}
#bookingModal[data-state=form] #bookingForm #openCalendarBtn~p,#bookingModal[data-state=form] #bookingForm div[onclick*=openCalendarBtn]>p{color:var(--modal-lock-button-text)!important;-webkit-text-fill-color:var(--modal-lock-button-text)!important;text-shadow:none!important}
#bookingModal[data-state=form] #bookingForm .custom-select__trigger:not(.contact-form__input--has-content) span,#bookingModal[data-state=form] #bookingForm :is(.contact-form__input,.contact-form__textarea)::placeholder{color:var(--modal-lock-button-text)!important;-webkit-text-fill-color:var(--modal-lock-button-text)!important;opacity:.82!important}
.form-calendar-overlay__mount #bookingCalendar,.layout-container #bookingCalendar{--calendar-frame-ink:var(--calendar-book-text-color)!important;--calendar-frame-ink-muted:var(--calendar-book-text-color)!important}
.form-calendar-overlay__mount #bookingCalendar :is(.calendar-title,.calendar-title span,.cal-day-name,.cal-day,.cal-day-value,.calendar-nav-btn,#slotsDayDisplay,.slot-time,.slot-time-main,.slot-date-legal,.cal-key,.cal-key-svg,.slot-clock),.layout-container #bookingCalendar :is(.calendar-title,.calendar-title span,.cal-day-name,.cal-day,.cal-day-value,.calendar-nav-btn,#slotsDayDisplay,.slot-time,.slot-time-main,.slot-date-legal,.cal-key,.cal-key-svg,.slot-clock){color:var(--calendar-book-text-color)!important;-webkit-text-fill-color:var(--calendar-book-text-color)!important}
.form-calendar-overlay__mount #bookingCalendar .cal-key-svg :is(circle,path),.layout-container #bookingCalendar .cal-key-svg :is(circle,path){fill:var(--calendar-book-text-color)!important;stroke:none!important}
@keyframes calendarSkeletonShimmerSweep{0%{transform:translateX(-130%)}to{transform:translateX(130%)}}
.form-calendar-overlay__mount #bookingCalendar .cal-day.cal-day--selected-remote-anim,.layout-container #bookingCalendar .cal-day.cal-day--selected-remote-anim{position:relative!important;overflow:hidden!important}
.form-calendar-overlay__mount #bookingCalendar .cal-day.cal-day--selected-remote-anim:before,.layout-container #bookingCalendar .cal-day.cal-day--selected-remote-anim:before{content:""!important;display:block!important;position:absolute!important;inset:0!important;background:linear-gradient(115deg,hsla(0,0%,100%,0) 18%,hsla(0,0%,100%,.72) 50%,hsla(0,0%,100%,0) 82%)!important;transform:translateX(-130%);animation:calendarSkeletonShimmerSweep 3.8s ease-in-out infinite!important;pointer-events:none!important;z-index:1!important}
@media (max-width:768px){#bookingModal .booking-row--address-main{display:grid!important;grid-template-columns:1fr!important;align-items:stretch!important;gap:.6rem!important;width:100%!important;margin-bottom:.6rem!important}#bookingModal .booking-row--address-main input[name=address_unit]{width:100%!important;min-width:0!important;max-width:none!important}#bookingModal .booking-row--address-main input[name=address_street]{width:100%!important;min-width:0!important;max-width:100%!important}#bookingModal .booking-row--address-city{display:block!important;width:100%!important;margin-bottom:.6rem!important}#bookingModal .booking-row--address-city #cityCustomSelect,#bookingModal .booking-row--address-city .custom-select-wrapper--city,#bookingModal .booking-row--address-city .custom-select__trigger{width:100%!important;max-width:100%!important;min-width:0!important}#bookingModal .booking-row--address-secondary.booking-row--province-zip{display:grid!important;grid-template-columns:1fr!important;align-items:stretch!important;justify-content:stretch!important;gap:.6rem!important;width:100%!important;margin-bottom:0!important;flex-wrap:wrap!important}#bookingModal .custom-select-wrapper--province{width:100%!important;min-width:0!important;max-width:none!important;flex:1 1 auto!important}#bookingModal .booking-row--province-zip input[name=address_zip]{width:100%!important;min-width:0!important;max-width:none!important;flex:1 1 auto!important}#bookingModal .booking-static-province{width:100%!important;min-width:0!important;max-width:100%!important}#bookingModal .booking-row.booking-row--dob{display:grid!important;grid-template-columns:1fr!important;gap:.6rem!important;width:100%!important;padding:0!important;justify-content:stretch!important;align-items:stretch!important}#bookingModal .booking-row.booking-row--dob input{width:100%!important;min-width:0!important;max-width:100%!important;flex:1 1 auto!important}}
#bookingModal .contact-form__group.dropdown-open,#bookingModal .custom-select-wrapper.dropdown-open{z-index:2147483000!important}
#bookingModal #cityCustomSelect,#bookingModal #customSelect,#bookingModal #provinceCustomSelect{isolation:isolate}
#bookingModal #cityCustomSelect .custom-select__trigger,#bookingModal #customSelect .custom-select__trigger,#bookingModal #provinceCustomSelect .custom-select__trigger{border:1px solid var(--dropdown-trigger-border)!important;border-radius:1rem!important;background:var(--dropdown-trigger-bg)!important;box-shadow:var(--dropdown-trigger-shadow)!important}
#bookingModal #cityCustomSelect .custom-select__trigger:focus-visible,#bookingModal #cityCustomSelect .custom-select__trigger:hover,#bookingModal #cityCustomSelect.open .custom-select__trigger,#bookingModal #customSelect .custom-select__trigger:focus-visible,#bookingModal #customSelect .custom-select__trigger:hover,#bookingModal #customSelect.open .custom-select__trigger,#bookingModal #provinceCustomSelect .custom-select__trigger:focus-visible,#bookingModal #provinceCustomSelect .custom-select__trigger:hover,#bookingModal #provinceCustomSelect.open .custom-select__trigger{background:var(--dropdown-trigger-bg-active)!important;border-color:var(--dropdown-trigger-border-active)!important;box-shadow:var(--dropdown-trigger-shadow-active)!important}
#bookingModal #cityCustomSelect .custom-options,#bookingModal #customSelect .custom-options,#bookingModal #provinceCustomSelect .custom-options{top:calc(100% + .3rem)!important;padding:.34rem!important;border:1px solid var(--dropdown-panel-border)!important;border-radius:1rem!important;background:var(--dropdown-panel-bg)!important;box-shadow:var(--dropdown-panel-shadow)!important;color:var(--dropdown-option-text)!important;overflow-x:hidden;overflow-y:auto;z-index:2147483000!important}
#bookingModal #cityCustomSelect .custom-options,#bookingModal #provinceCustomSelect .custom-options{top:calc(100% + .12rem)!important;background-clip:padding-box!important;-webkit-mask-image:none!important;mask-image:none!important;overflow:hidden!important;overflow-y:auto!important;-webkit-backface-visibility:hidden!important;backface-visibility:hidden!important;transform:translateZ(0)!important}
#bookingModal #cityCustomSelect.open .custom-options,#bookingModal #customSelect.open .custom-options,#bookingModal #provinceCustomSelect.open .custom-options{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(0)!important;z-index:2147483000!important}
#bookingModal #cityCustomSelect.open.city-search-no-results .custom-options{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;max-height:0!important;padding:0!important;border-color:transparent!important;box-shadow:none!important}
#bookingModal #cityCustomSelect .custom-option,#bookingModal #customSelect .custom-option,#bookingModal #provinceCustomSelect .custom-option{color:var(--dropdown-option-text)!important;-webkit-text-fill-color:var(--dropdown-option-text)!important}
#bookingModal #cityCustomSelect .custom-option:focus-visible,#bookingModal #cityCustomSelect .custom-option:hover,#bookingModal #customSelect .custom-option:focus-visible,#bookingModal #customSelect .custom-option:hover,#bookingModal #provinceCustomSelect .custom-option:focus-visible,#bookingModal #provinceCustomSelect .custom-option:hover{background:var(--dropdown-option-hover-bg)!important}
#bookingModal #cityCustomSelect .custom-option.selected,#bookingModal #customSelect .custom-option.selected,#bookingModal #provinceCustomSelect .custom-option.selected{background:var(--dropdown-option-selected-bg)!important;color:var(--dropdown-option-selected-text)!important;-webkit-text-fill-color:var(--dropdown-option-selected-text)!important}
#bookingModal .booking-row--address-city,#bookingModal .booking-row--address-secondary.booking-row--province-zip,#bookingModal .custom-select-wrapper--city,#bookingModal .custom-select-wrapper--province{overflow:visible!important;position:relative}
#bookingModal #cityCustomSelect.open,#bookingModal #cityCustomSelect.open .custom-options,#bookingModal .custom-select-wrapper--city.dropdown-open{z-index:2147483000!important}
#bookingModal #provinceCustomSelect.open,#bookingModal #provinceCustomSelect.open .custom-options,#bookingModal .custom-select-wrapper--province.dropdown-open{z-index:2147483000!important}
#bookingModal[data-state=form] #bookingForm :is(.contact-form__input,.contact-form__textarea,.custom-select__trigger.contact-form__input--has-content,.custom-select__trigger.contact-form__input--has-content span,#provinceCustomSelect .custom-select__trigger,#provinceCustomSelect .custom-select__trigger span){color:var(--booking-warm-ink)!important;-webkit-text-fill-color:var(--booking-warm-ink)!important;caret-color:var(--booking-warm-ink)!important}
#bookingModal[data-state=form] #bookingForm :is(.contact-form__input:-webkit-autofill,.contact-form__textarea:-webkit-autofill){-webkit-text-fill-color:var(--booking-warm-ink)!important;caret-color:var(--booking-warm-ink)!important}
#privacyModal .intake-notice-modal__actions,#termsModal .intake-notice-modal__actions{margin-top:1rem!important;display:flex!important;justify-content:center!important}
#privacyModal .intake-notice-modal__ok,#termsModal .intake-notice-modal__ok{display:inline-block!important;width:auto!important;min-width:15rem!important;max-width:96%!important;min-height:0!important;margin:0 auto!important;padding:.72rem 1.85rem!important;line-height:normal!important;font-weight:900!important;font-size:.9rem!important;letter-spacing:.06em!important;text-transform:uppercase!important;border-radius:999px!important;background:var(--modal-lock-button-bg)!important;color:var(--modal-lock-button-text)!important;-webkit-text-fill-color:var(--modal-lock-button-text)!important;border:none!important;outline:none!important;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.78),inset 0 -1px 0 rgba(var(--site-bg-shadow-rgb),.24),0 .56rem 1.18rem rgba(var(--site-bg-shadow-rgb),.28)!important}
#privacyModal .intake-notice-modal__ok:active,#privacyModal .intake-notice-modal__ok:focus-visible,#privacyModal .intake-notice-modal__ok:hover,#termsModal .intake-notice-modal__ok:active,#termsModal .intake-notice-modal__ok:focus-visible,#termsModal .intake-notice-modal__ok:hover{background:var(--modal-lock-button-bg-hover)!important;color:var(--modal-lock-button-text)!important;-webkit-text-fill-color:var(--modal-lock-button-text)!important;border:none!important;outline:none!important;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.86),inset 0 -1px 0 rgba(var(--site-bg-shadow-rgb),.26),0 .7rem 1.34rem rgba(var(--site-bg-shadow-rgb),.34)!important}
@supports (-webkit-touch-callout:none){@media (max-width:768px){#bookingModal .booking-row--address-city,#bookingModal .booking-row--address-main,#bookingModal .booking-row--address-secondary.booking-row--province-zip,#bookingModal .booking-row--province-zip input[name=address_zip],#bookingModal .custom-select-wrapper--province{transform:none!important}}}
#bookingModal .file-attach{--file-attach-dash-default:rgb(var(--modal-design-tone-rgb));--file-attach-dash-active:var(--book-main-tone);--form-hint-tone:var(--file-attach-dash-default);--file-attach-dash-gap-fill:rgba(255,250,243,.96)}
#bookingModal .file-attach.file-attach--has-files{--form-hint-tone:var(--file-attach-dash-active)}
#bookingModal .file-attach:not(.file-attach--drag-over) .file-attach__drop-zone-camera,#bookingModal .file-attach:not(.file-attach--drag-over) .file-attach__drop-zone-camera:focus-visible,#bookingModal .file-attach:not(.file-attach--drag-over) .file-attach__drop-zone-camera:hover,#bookingModal .file-attach:not(.file-attach--drag-over) .file-attach__drop-zone-file,#bookingModal .file-attach:not(.file-attach--drag-over) .file-attach__drop-zone-file:focus-visible,#bookingModal .file-attach:not(.file-attach--drag-over) .file-attach__drop-zone-file:hover{background-image:none!important;background-color:var(--file-attach-dash-gap-fill,rgba(255,250,243,.96))!important;background-clip:padding-box!important;border-style:dashed!important;border-width:3px!important;border-color:var(--form-hint-tone,rgb(var(--modal-design-tone-rgb)))!important;border-image:none!important;box-shadow:none!important;outline:none!important}
.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded:after,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper:after,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded:after,.layout-container #bookingCalendar.calendar-wrapper:after{content:none!important;display:none!important;position:absolute!important;inset:auto 12% -.84rem 12%!important;height:0!important;border-radius:999px!important;background:none!important;filter:none!important;opacity:0!important;pointer-events:none!important;z-index:0!important}
@media (max-width:768px){:root{--mobile-inline-gutter:clamp(0.5rem,2vw,0.75rem)}.footer,.footer__container,.footer__official-meta,.footer__privacy-note-block,.header__content-block,.layout-container{margin-left:auto!important;margin-right:auto!important}.layout-container>.contact-form,.layout-container>.faq,.layout-container>.privacy-block,.layout-container>.privacy-block--full-viewport-note,.layout-container>.privacy-block--map{width:100%!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important;box-sizing:border-box!important}#calendarScaleWrapper,.form-calendar-overlay__mount #calendarScaleWrapper{display:flex!important;justify-content:center!important;align-items:flex-start!important;width:100%!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important;box-sizing:border-box!important}#calendarScaleInner,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded,.form-calendar-overlay__mount #calendarScaleInner,.layout-container #bookingCalendar.calendar-wrapper,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded{width:100%!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important;transform-origin:top center!important;box-sizing:border-box!important}.layout-container #faqSpoiler,.layout-container #faqSpoiler .faq__item{width:100%!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important}.layout-container #faqSpoiler .faq__question{align-self:flex-start!important;width:min(100%,432px)!important;max-width:432px!important;margin-left:0!important;margin-right:auto!important}.layout-container #faqSpoiler .faq__answer,.layout-container #faqSpoiler .faq__item.is-open .faq__answer{align-self:flex-end!important;width:min(100%,432px)!important;max-width:432px!important;margin-left:auto!important;margin-right:0!important}.layout-container #faqSpoiler .faq__answer--map,.layout-container #faqSpoiler .faq__item.is-open .faq__answer--map{align-self:center!important;width:min(100%,432px)!important;max-width:432px!important;margin-left:auto!important;margin-right:auto!important}}
.header,.header__content-block,.layout-container{box-sizing:border-box!important;margin-left:auto!important;margin-right:auto!important}
.header{width:min(100%,41rem)!important;max-width:41rem!important;text-align:center!important}
.header__content-block,.layout-container{width:min(100%,41rem)!important;max-width:41rem!important}
@media (max-width:768px){.header,.header__content-block,.layout-container{width:100%!important;max-width:41rem!important}}
#bookingModal #bookingForm .booking-row__calendar-hint{font-size:1rem!important;line-height:1.24!important}
#bookingModal #bookingForm .file-attach__helper-text{font-size:1rem!important;line-height:1.35!important}
#bookingModal[data-state=form] #bookingForm :is(.contact-form__group,.file-attach) :is(.contact-form__label,.contact-form__input,.contact-form__textarea,.custom-select__trigger,.custom-select__trigger span,.custom-option,.file-attach__title,.file-attach__name,.file-attach__drop-zone p,.booking-row__deadline-label,.booking-row__deadline-optional,.booking-row__calendar-hint,.file-attach__helper-text,p){font-size:1rem!important}
#bookingModal[data-state=form] #bookingForm :is(.contact-form__group,.file-attach) :is(.contact-form__input,.contact-form__textarea)::placeholder{font-size:1rem!important}
@media (max-width:384px){#bookingModal .booking-row--address-main{display:grid!important;grid-template-columns:1fr!important;gap:.5rem!important;width:100%!important}#bookingModal .booking-row--address-main input[name=address_street],#bookingModal .booking-row--address-main input[name=address_unit]{width:100%!important;min-width:0!important;max-width:100%!important;flex:1 1 auto!important}#bookingModal .booking-row--address-city{display:block!important;width:100%!important;margin-bottom:.5rem!important}#bookingModal .booking-row--address-city #cityCustomSelect,#bookingModal .booking-row--address-city .custom-select-wrapper--city,#bookingModal .booking-row--address-city .custom-select__trigger{width:100%!important;min-width:0!important;max-width:100%!important}#bookingModal .booking-row--address-secondary.booking-row--province-zip{display:grid!important;grid-template-columns:1fr!important;gap:.5rem!important;width:100%!important;margin-bottom:0!important}#bookingModal .booking-row--province-zip input[name=address_zip],#bookingModal .booking-static-province,#bookingModal .custom-select-wrapper--province{width:100%!important;min-width:0!important;max-width:100%!important;flex:1 1 auto!important}#bookingModal .booking-row.booking-row--dob{display:grid!important;grid-template-columns:1fr!important;gap:.5rem!important;width:100%!important;justify-content:stretch!important;align-items:stretch!important}#bookingModal .booking-row.booking-row--dob input{width:100%!important;min-width:0!important;max-width:100%!important;flex:1 1 auto!important}}
@media (max-width:560px){#bookingModal #bookingForm>.contact-form__group:first-child>div[onclick*=openCalendarBtn],#bookingModal .file-attach .file-attach__drop-zone-camera,#bookingModal .file-attach .file-attach__drop-zone-file{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:.55rem!important}#bookingModal #bookingForm>.contact-form__group:first-child>div[onclick*=openCalendarBtn]>p,#bookingModal .file-attach .file-attach__drop-zone-camera>.file-attach__helper-text,#bookingModal .file-attach .file-attach__drop-zone-file>.file-attach__helper-text{width:auto!important;max-width:none!important;min-width:0!important;flex:1 1 0!important;margin:0!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;text-wrap:pretty!important}#bookingModal #attachFilesBtn,#bookingModal #openCalendarBtn,#bookingModal #takePhotoBtn{flex:0 0 auto!important;margin:0 auto!important}}
.form-calendar-overlay__mount #bookingCalendar .cal-day.cal-day--empty:after,.form-calendar-overlay__mount #bookingCalendar .cal-day.cal-day--empty:before,.layout-container #bookingCalendar .cal-day.cal-day--empty:after,.layout-container #bookingCalendar .cal-day.cal-day--empty:before{content:none!important;display:none!important}
@media (prefers-reduced-motion:reduce){#headerBookBtn,#headerBookBtn:after{animation:none!important}#globalSpinner.global-spinner--submit-progress .global-spinner__ring-wrap:after,#globalSpinner.global-spinner--submit-progress .global-spinner__ring-wrap:before{animation:none!important;opacity:0!important}#headerBookBtn:after{opacity:0!important;border-color:transparent!important;box-shadow:none!important}}
#bookingModal .booking-static-province{justify-content:space-between!important;text-transform:none!important;text-align:left!important;padding-left:1rem!important;padding-right:2.8rem!important}
#bookingModal #provinceCustomSelect .custom-select__trigger,#bookingModal #provinceCustomSelect .custom-select__trigger span,#bookingModal #provinceCustomSelect .custom-select__trigger.contact-form__input--has-content,#bookingModal #provinceCustomSelect .custom-select__trigger.contact-form__input--has-content span{color:#3a2a1a!important;-webkit-text-fill-color:#3a2a1a!important;text-shadow:none!important}
#bookingModal #provinceCustomSelect .custom-select__trigger.contact-form__input--has-content:after,#bookingModal #provinceCustomSelect .custom-select__trigger:after,#bookingModal #provinceCustomSelect .custom-select__trigger:focus-visible:after,#bookingModal #provinceCustomSelect .custom-select__trigger:hover:after,#bookingModal #provinceCustomSelect.open .custom-select__trigger:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23553f2d' stroke-linecap='round' stroke-linejoin='round' stroke-width='4.2' viewBox='0 0 24 24'%3E%3Cpath d='m5 8 7 7 7-7'/%3E%3C/svg%3E")!important}
#bookingModal[data-state=form] #bookingForm #provinceCustomSelect .custom-select__trigger,#bookingModal[data-state=form] #bookingForm #provinceCustomSelect .custom-select__trigger span,#bookingModal[data-state=form] #bookingForm #provinceCustomSelect .custom-select__trigger.contact-form__input--has-content,#bookingModal[data-state=form] #bookingForm #provinceCustomSelect .custom-select__trigger.contact-form__input--has-content span{color:#3a2a1a!important;-webkit-text-fill-color:#3a2a1a!important;text-shadow:none!important;opacity:1!important}
#bookingModal[data-state=form] #bookingForm #cityCustomSelect:not(.open) .custom-select__trigger:not(.contact-form__input--has-content):after,#bookingModal[data-state=form] #bookingForm #customSelect:not(.open) .custom-select__trigger:not(.contact-form__input--has-content):after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%235a3d2a' stroke-linecap='round' stroke-linejoin='round' stroke-width='4.2' viewBox='0 0 24 24'%3E%3Cpath d='m5 8 7 7 7-7'/%3E%3C/svg%3E")!important;opacity:.82!important}
#bookingModal[data-state=form] #bookingForm #provinceCustomSelect:not(.open) .custom-select__trigger:after,#bookingModal[data-state=form] #bookingForm .custom-select:not(.open) .custom-select__trigger.contact-form__input--has-content:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%233a2a1a' stroke-linecap='round' stroke-linejoin='round' stroke-width='4.2' viewBox='0 0 24 24'%3E%3Cpath d='m5 8 7 7 7-7'/%3E%3C/svg%3E")!important;opacity:1!important}
#bookingCalendar .slots-nav,#bookingCalendar.calendar-wrapper.calendar--loaded .slots-nav,.form-calendar-overlay__mount #bookingCalendar .slots-nav,.layout-container #bookingCalendar .slots-nav{box-shadow:none!important;filter:none!important;-webkit-filter:none!important}
:root{--calendar-desktop-shell-shadow:0 0.1rem 0.3rem rgba(212,184,154,.08),inset 0 1px 0 rgba(212,184,154,.15);--calendar-desktop-panel-shadow:inset 0 1px 0 hsla(0,0%,100%,.14),0 0.15rem 0.4rem rgba(var(--site-bg-shadow-rgb),0.08)}
#calendarScaleInner,#calendarScaleWrapper,.form-calendar-overlay__mount #calendarScaleInner,.form-calendar-overlay__mount #calendarScaleWrapper{transform:none!important;will-change:auto!important}
.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded,.layout-container #bookingCalendar.calendar-wrapper,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded{transform:none!important;will-change:auto!important;filter:none!important;-webkit-filter:none!important}
.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded:after,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded:before,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper:after,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper:before,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded:after,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded:before,.layout-container #bookingCalendar.calendar-wrapper:after,.layout-container #bookingCalendar.calendar-wrapper:before{animation:none!important}
.form-calendar-overlay__mount #bookingCalendar .calendar-nav-btn,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-nav-btn,.layout-container #bookingCalendar .calendar-nav-btn,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-nav-btn{border-radius:999px!important}
.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded,.layout-container #bookingCalendar.calendar-wrapper,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded{box-shadow:0 .34rem .84rem rgba(var(--site-bg-shadow-rgb),.06),0 .08rem .2rem rgba(var(--site-bg-shadow-rgb),.03)!important;border-radius:1.25rem!important;overflow:visible!important;background-clip:border-box!important;isolation:isolate!important}
.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded:after,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded:before,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper:after,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper:before,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded:after,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded:before,.layout-container #bookingCalendar.calendar-wrapper:after,.layout-container #bookingCalendar.calendar-wrapper:before{content:none!important;display:none!important}
.form-calendar-overlay__mount #bookingCalendar .calendar-grid,.form-calendar-overlay__mount #bookingCalendar .calendar-header,.form-calendar-overlay__mount #bookingCalendar .slots-block,.form-calendar-overlay__mount #bookingCalendar .slots-nav,.form-calendar-overlay__mount #bookingCalendar .slots-shell,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-grid,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-header,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-block,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-nav,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .slots-shell,.layout-container #bookingCalendar .calendar-grid,.layout-container #bookingCalendar .calendar-header,.layout-container #bookingCalendar .slots-block,.layout-container #bookingCalendar .slots-nav,.layout-container #bookingCalendar .slots-shell,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-grid,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-header,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-block,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-nav,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .slots-shell{box-shadow:none!important;border-radius:1.08rem!important;background-clip:padding-box!important}
#bookingModal #bookingForm .form-quick-slots__hint{width:min(100%,var(--booking-hint-max-width))!important;max-width:var(--booking-hint-max-width)!important;margin-left:auto!important;margin-right:auto!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;text-wrap:pretty!important}
#footerEmberLayer{position:fixed!important;left:0!important;right:0!important;width:auto!important;transform:none!important;z-index:10005!important}
.footer-ember{box-shadow:0 0 .42rem rgba(255,232,169,.72),0 0 .95rem rgba(255,182,92,.54),0 0 1.45rem rgba(255,130,46,.28)}
.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded,.form-calendar-overlay__mount #calendarScaleInner,.form-calendar-overlay__mount .calendar-scale-inner{width:min(100%,62rem)!important;max-width:min(100%,62rem)!important}
.form-calendar-overlay.form-calendar-overlay--quick-slots.form-calendar-overlay--quick-slots-loading{align-items:flex-start;justify-content:flex-start;padding:clamp(.75rem,2.6vh,1.2rem) clamp(.65rem,2.4vw,1.05rem) clamp(1rem,3vh,1.45rem)}
.form-calendar-overlay.form-calendar-overlay--quick-slots.form-calendar-overlay--quick-slots-loading .form-calendar-overlay__panel.form-calendar-overlay__panel--compact{width:100%;max-width:100%;height:auto;max-height:min(40rem,calc(100dvh - 1.75rem));min-height:0;display:flex}
.form-calendar-overlay__mount--quick-slots.form-calendar-overlay__mount--quick-slots-loading{width:100%;flex:1 1 auto;align-items:stretch;justify-content:stretch}
.form-quick-slots.form-quick-slots--loading{display:grid;grid-template-rows:auto 1fr;min-height:100%}
.form-quick-slots__sticky--loading{margin-bottom:.95rem}
.form-quick-slots__title--loading{position:relative;color:transparent!important;-webkit-text-fill-color:transparent!important;text-shadow:none!important;min-height:clamp(1.2rem,3vw,1.5rem);overflow:hidden}
.form-quick-slots__title--loading:after{content:"";display:block;width:min(100%,18rem);height:clamp(.95rem,2.6vw,1.15rem);border-radius:999px;background:linear-gradient(110deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.06) 18%,hsla(0,0%,100%,.42) 50%,hsla(0,0%,100%,.06) 82%,hsla(0,0%,100%,0)),hsla(0,0%,100%,.12);background-size:260% 100%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;animation:quick-slots-skeleton-shimmer 1.3s linear infinite}
.form-quick-slots__loading-state.form-quick-slots__loading-state--skeleton{width:100%;min-height:100%;display:grid;grid-template-rows:auto 1fr;gap:1rem;align-content:start}
.form-quick-slots__loading-progress{display:grid;gap:.55rem;padding:.2rem 0 0}
.form-quick-slots__loading-progress-meta{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap}
.form-quick-slots__loading-label{color:rgba(255,248,239,.9);font-size:.92rem;font-weight:800;letter-spacing:.01em;line-height:1.35}
.form-quick-slots__loading-progress-value{min-width:3.8ch;color:rgba(255,248,239,.96);font-size:.92rem;font-weight:900;letter-spacing:.04em;text-align:right}
.form-quick-slots__loading-progress-track{position:relative;width:100%;height:.5rem;border-radius:999px;overflow:hidden;background:hsla(0,0%,100%,.12);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.08)}
.form-quick-slots__loading-progress-fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:linear-gradient(110deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.14) 18%,hsla(0,0%,100%,.88) 50%,hsla(0,0%,100%,.16) 82%,hsla(0,0%,100%,0)),hsla(0,0%,100%,.34);background-size:260% 100%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;animation:quick-slots-skeleton-shimmer 1.2s linear infinite}
.form-quick-slots__skeleton-list{display:grid;gap:.82rem;align-content:start}
.form-quick-slots__skeleton-card{display:grid;gap:.62rem;padding:.95rem .92rem;border-radius:.96rem;border:1px solid rgba(var(--booking-plaque-border-rgb),.3);background:linear-gradient(145deg,hsla(0,0%,100%,.16) 0,hsla(0,0%,100%,.06) 100%),rgba(var(--booking-form-rgb),.24);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08)}
.form-quick-slots__skeleton-line{display:block;width:var(--quick-slot-skeleton-width,60%);max-width:100%;height:.92rem;border-radius:999px;background:linear-gradient(110deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.06) 18%,hsla(0,0%,100%,.42) 50%,hsla(0,0%,100%,.06) 82%,hsla(0,0%,100%,0)),hsla(0,0%,100%,.12);background-size:260% 100%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;animation:quick-slots-skeleton-shimmer 1.2s linear infinite}
.form-quick-slots__skeleton-line--date{height:.8rem;opacity:.84}
.form-quick-slots__skeleton-line--time{height:1.05rem}
@supports (-webkit-touch-callout:none){@media (min-width:744px) and (max-width:1024px){.spark{animation:sparkle var(--spark-duration,.5s) cubic-bezier(.18,.72,.24,1) var(--spark-delay,0s) forwards!important;transform:translate(-50%,-50%) translateZ(0)!important}}}
#bookingModal[data-state=form] #bookingForm :is(input[name=name],input[name=occupation],textarea[name=notes],input[name=phone],input[name=email],input[name=address_unit],input[name=address_street],input[name=address_zip],input[name=dob]){font-size:var(--booking-form-font-size)!important;letter-spacing:.01em!important}
#bookingModal[data-state=form] #bookingForm :is(input[name=name],input[name=occupation],textarea[name=notes],input[name=phone],input[name=email],input[name=address_unit],input[name=address_street],input[name=address_zip])::placeholder{color:var(--modal-lock-button-text)!important;-webkit-text-fill-color:var(--modal-lock-button-text)!important;opacity:.82!important;font-family:inherit!important;font-size:inherit!important;font-weight:400!important;letter-spacing:inherit!important;font-style:normal!important;text-transform:none!important;text-align:left!important;text-align-last:left!important}
#bookingModal[data-state=form] #bookingForm :is(input[name=address_zip],input[name=dob]){text-align:left!important;text-align-last:left!important;padding-left:1rem!important;padding-right:1rem!important}
#bookingModal[data-state=form] #bookingForm input[name=dob]:not(.booking-dob-has-value){text-align:left!important;text-align-last:left!important;padding-left:1rem!important;padding-right:1rem!important}
#bookingModal[data-state=form] #bookingForm input[name=dob]::placeholder{color:var(--modal-lock-button-text)!important;-webkit-text-fill-color:var(--modal-lock-button-text)!important;opacity:.82!important;font-family:inherit!important;font-size:inherit!important;font-weight:400!important;letter-spacing:inherit!important;font-style:normal!important;text-transform:none!important;text-align:left!important;text-align-last:left!important}
#bookingModal[data-state=form] #bookingForm input[name=dob]::-webkit-input-placeholder{text-align:left!important}
#bookingModal[data-state=form] #bookingForm input[name=address_zip]:placeholder-shown{text-align:center!important;text-align-last:center!important;padding-left:0!important;padding-right:0!important}
#bookingModal[data-state=form] #bookingForm input[name=address_zip]:placeholder-shown::placeholder{text-align:center!important;text-align-last:center!important}
#bookingModal[data-state=form] #bookingForm input[name=address_zip]:placeholder-shown::-webkit-input-placeholder{text-align:center!important}
#bookingModal[data-state=form] #bookingForm input[name=address_zip]{text-align:center!important;text-align-last:center!important;padding-left:0!important;padding-right:0!important}
#bookingModal[data-state=form] #bookingForm input[name=address_zip]::-webkit-input-placeholder,#bookingModal[data-state=form] #bookingForm input[name=address_zip]::placeholder{text-align:center!important;text-align-last:center!important}
#bookingModal[data-state=form] #bookingForm :is(input[name=name],input[name=occupation],textarea[name=notes],input[name=phone],input[name=email],input[name=address_unit],input[name=address_street],input[name=address_zip],input[name=dob]):focus::-webkit-input-placeholder,#bookingModal[data-state=form] #bookingForm :is(input[name=name],input[name=occupation],textarea[name=notes],input[name=phone],input[name=email],input[name=address_unit],input[name=address_street],input[name=address_zip],input[name=dob]):focus::placeholder{color:rgba(90,61,42,.5)!important;-webkit-text-fill-color:rgba(90,61,42,.5)!important;opacity:.5!important}
#bookingModal #cityCustomSelect.open .custom-options{max-height:80vh!important;max-height:80dvh!important}
@media (max-width:768px){.header__description{font-size:clamp(.75rem,4.2vw,14pt)!important;width:100%!important;max-width:100%!important;padding:0!important;box-sizing:border-box!important}.header__description span{display:block!important;white-space:normal!important;text-wrap:balance!important;overflow-wrap:break-word!important;word-break:normal!important;width:100%!important;text-align:center!important}}
@media (max-width:480px){#intakeNoticeModal .modal__section-title{white-space:nowrap!important;text-wrap:nowrap!important;overflow-wrap:normal!important;word-break:keep-all!important;font-size:clamp(1.02rem,4.9vw,1.12rem)!important;letter-spacing:0!important;line-height:1.2!important}#intakeNoticeModal .modal__section-title.intake-notice-modal__core-heading{font-size:clamp(.7rem,3.7vw,1.5rem)!important;line-height:1.15!important;letter-spacing:-.01em!important}#intakeNoticeModal .intake-notice-modal__actions>div{flex-wrap:nowrap!important;justify-content:center!important;gap:.5rem!important}#intakeNoticeModal .intake-notice-modal__ok{min-width:0!important;width:calc(50% - .25rem)!important;max-width:calc(50% - .25rem)!important;padding:.68rem .35rem!important;font-size:.82rem!important;letter-spacing:.03em!important}}
#bookingModal .contact-form__checkbox,#bookingModal .contact-form__checkbox-wrapper.file-attach__terms .contact-form__checkbox,#bookingModal .contact-form__checkbox-wrapper.file-attach__terms .contact-form__checkbox:checked,#bookingModal .contact-form__checkbox-wrapper.file-attach__terms .contact-form__checkbox:checked:active,#bookingModal .contact-form__checkbox-wrapper.file-attach__terms .contact-form__checkbox:checked:focus-visible,#bookingModal .contact-form__checkbox-wrapper.file-attach__terms .contact-form__checkbox:checked:hover,#bookingModal .contact-form__checkbox:checked,#bookingModal .contact-form__checkbox:checked:active,#bookingModal .contact-form__checkbox:checked:focus-visible,#bookingModal .contact-form__checkbox:checked:hover{background:#593a2e!important;border:1px solid #593a2e!important;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.18),0 .46rem 1.02rem rgba(var(--site-bg-shadow-rgb),.18)!important}
#bookingModal .contact-form__checkbox-wrapper.file-attach__terms .contact-form__checkbox:active,#bookingModal .contact-form__checkbox-wrapper.file-attach__terms .contact-form__checkbox:focus-visible,#bookingModal .contact-form__checkbox-wrapper.file-attach__terms .contact-form__checkbox:hover,#bookingModal .contact-form__checkbox:active,#bookingModal .contact-form__checkbox:focus-visible,#bookingModal .contact-form__checkbox:hover{background:#593a2e!important;border-color:#593a2e!important}
#bookingModal .contact-form__checkbox-wrapper.file-attach__terms .contact-form__checkbox:checked:after,#bookingModal .contact-form__checkbox:checked:after{border-right-color:#fffaf3!important;border-bottom-color:#fffaf3!important;transform:translate(-50%,-62%) rotate(45deg) scale(1)!important}
@media (max-width:560px){#bookingModal .file-attach .file-attach__drop-zone-camera,#bookingModal .file-attach .file-attach__drop-zone-file{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:.6rem!important}#bookingModal .file-attach #attachFilesBtn,#bookingModal .file-attach #takePhotoBtn,#bookingModal .file-attach .file-attach__drop-zone-camera .file-attach__btn,#bookingModal .file-attach .file-attach__drop-zone-file .file-attach__btn{margin:0!important;align-self:center!important;justify-self:flex-start!important;flex:0 0 auto!important}#bookingModal #bookingForm .file-attach .file-attach__drop-zone-camera,#bookingModal #bookingForm .file-attach .file-attach__drop-zone-file,#bookingModal[data-state=form] #bookingForm .file-attach .file-attach__drop-zone-camera,#bookingModal[data-state=form] #bookingForm .file-attach .file-attach__drop-zone-file{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}#bookingModal #bookingForm .file-attach .file-attach__drop-zone p,#bookingModal #bookingForm .file-attach .file-attach__helper-text,#bookingModal[data-state=form] #bookingForm .file-attach .file-attach__drop-zone p,#bookingModal[data-state=form] #bookingForm .file-attach .file-attach__helper-text{margin:0!important;flex:1 1 auto!important;align-self:center!important;min-width:0!important;text-align:left!important;font-size:clamp(.66rem,.42rem + 1.15vw,1rem)!important;line-height:1.32!important;display:block!important;overflow:visible!important;text-overflow:clip!important;white-space:normal!important;word-break:normal!important;overflow-wrap:anywhere!important;text-wrap:pretty!important;-webkit-line-clamp:unset!important;-webkit-box-orient:initial!important}}
@media (max-width:768px){#bookingModal .contact-form__checkbox,#bookingModal .contact-form__checkbox-wrapper.file-attach__terms .contact-form__checkbox{width:1.55rem!important;height:1.55rem!important;min-width:1.55rem!important;min-height:1.55rem!important;max-width:1.55rem!important;max-height:1.55rem!important;flex:0 0 1.55rem!important}}
#bookingModal #bookingForm .file-attach__item,#bookingModal #bookingForm .file-attach__name,#bookingModal #bookingForm .file-attach__summary{text-align:left!important}
#bookingModal #bookingForm .file-attach__summary{display:grid!important;grid-template-columns:.92rem minmax(0,1fr)!important;justify-content:start!important;justify-items:start!important;align-items:center!important;width:auto!important}
#bookingModal #bookingForm .file-attach__name{justify-self:start!important;width:100%!important;margin:0!important}
#bookingModal #bookingForm .file-attach__check{justify-self:start!important;color:var(--modal-lock-button-text)!important}
#bookingModal #bookingForm .file-attach__item[data-upload-sync-state=failed] .file-attach__check{color:#ff7070!important;filter:drop-shadow(0 0 .38rem rgba(255,112,112,.4))!important}
#bookingModal #bookingForm label.contact-form__label.booking-section-label{color:#a17e60!important;-webkit-text-fill-color:#a17e60!important;font-size:1rem!important;font-weight:700!important;line-height:1.3!important;letter-spacing:0!important;text-transform:none!important;text-shadow:none!important}
#bookingModal #bookingForm .booking-character-counter,#bookingModal #bookingForm .file-attach__helper-text,#bookingModal #bookingForm .file-attach__terms .contact-form__checkbox-label,#bookingModal #bookingForm .file-attach__terms .contact-form__terms-link,#bookingModal #bookingForm .file-attach__terms .contact-form__terms-plain,#bookingModal #bookingForm .file-attach__terms .contact-form__terms-word{color:#a17e60!important;-webkit-text-fill-color:#a17e60!important;text-shadow:none!important}
#bookingModal #bookingForm #cityCustomSelect .custom-select__trigger span,#bookingModal #bookingForm #customSelect .custom-select__trigger span,#bookingModal #bookingForm #provinceCustomSelect .custom-select__trigger span{color:var(--modal-lock-button-text)!important;-webkit-text-fill-color:var(--modal-lock-button-text)!important;opacity:.82!important;font-family:inherit!important;font-size:1rem!important;font-weight:400!important;line-height:1.6!important;letter-spacing:.01em!important;font-style:normal!important;text-transform:none!important;text-shadow:none!important}
#bookingModal[data-state=form] #bookingForm input[name=address_unit]{padding-left:1rem!important;padding-right:1rem!important;text-align:left!important;text-align-last:left!important}
#bookingModal[data-state=form] #bookingForm input[name=address_unit]::-webkit-input-placeholder,#bookingModal[data-state=form] #bookingForm input[name=address_unit]::placeholder{text-align:left!important;text-align-last:left!important}
#bookingModal[data-state=form] #bookingForm textarea[name=notes]{line-height:1.35!important;padding-top:1rem!important;padding-left:1rem!important}
#bookingModal[data-state=form] #bookingForm textarea[name=notes]::-webkit-input-placeholder,#bookingModal[data-state=form] #bookingForm textarea[name=notes]::placeholder{line-height:1.35!important}
#bookingModal[data-state=form] #bookingForm .file-attach .file-attach__drop-zone-camera,#bookingModal[data-state=form] #bookingForm .file-attach .file-attach__drop-zone-file{gap:1.25rem!important}
#bookingModal[data-state=form] #bookingForm .file-attach #attachFilesBtn,#bookingModal[data-state=form] #bookingForm .file-attach #takePhotoBtn{width:4.4rem!important;min-width:4.4rem!important;flex:0 0 4.4rem!important;margin:0!important}
#bookingModal #bookingStatus.status-alert--success,#bookingModal #bookingStatus.status-alert--success.status-alert--visible{--booking-status-fg:var(--modal-lock-button-text)!important;color:var(--modal-lock-button-text)!important;-webkit-text-fill-color:var(--modal-lock-button-text)!important;opacity:.82!important;font-size:1rem!important;font-weight:600!important;line-height:1.3!important;letter-spacing:0!important;text-transform:none!important;text-shadow:none!important}
#calendarScaleWrapper.calendar-scale-wrapper--collapsed,.form-calendar-overlay__mount #calendarScaleWrapper.calendar-scale-wrapper--collapsed,.form-calendar-overlay__mount .calendar-scale-wrapper.calendar-scale-wrapper--collapsed,.layout-container #calendarScaleWrapper.calendar-scale-wrapper--collapsed{display:none!important;height:0!important;min-height:0!important;margin:0!important;overflow:hidden!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.form-calendar-overlay__mount #bookingCalendar.calendar--pending .slots-nav,.form-calendar-overlay__mount #bookingCalendar.calendar--pending .slots-shell .slots-nav,.layout-container #bookingCalendar.calendar--pending .slots-nav,.layout-container #bookingCalendar.calendar--pending .slots-shell .slots-nav{background:transparent!important;background-image:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;filter:none!important;-webkit-filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.form-calendar-overlay__mount #bookingCalendar.calendar--pending .cal-day.cal-day--loading,.layout-container #bookingCalendar.calendar--pending .cal-day.cal-day--loading{position:relative!important;overflow:visible!important;opacity:1!important;cursor:default!important;pointer-events:none!important;background-color:var(--calendar-frame-panel-strong)!important;border-color:var(--calendar-frame-border)!important;color:var(--calendar-book-text-color)!important;-webkit-text-fill-color:var(--calendar-book-text-color)!important}
.form-calendar-overlay__mount #bookingCalendar.calendar--pending .cal-day.cal-day--loading>*,.layout-container #bookingCalendar.calendar--pending .cal-day.cal-day--loading>*{position:relative!important;z-index:2!important}
.form-calendar-overlay__mount #bookingCalendar.calendar--pending .cal-day.cal-day--loading:after,.form-calendar-overlay__mount #bookingCalendar.calendar--pending .slots-grid .slot-btn.slot-btn--loading:after,.layout-container #bookingCalendar.calendar--pending .cal-day.cal-day--loading:after,.layout-container #bookingCalendar.calendar--pending .slots-grid .slot-btn.slot-btn--loading:after{content:none!important;display:none!important}
.form-calendar-overlay__mount #bookingCalendar.calendar--pending .slots-grid .slot-btn.slot-btn--loading,.layout-container #bookingCalendar.calendar--pending .slots-grid .slot-btn.slot-btn--loading{position:relative!important;overflow:visible!important;cursor:default!important;pointer-events:none!important;border:1px solid rgba(140,109,83,.34)!important;border-radius:.6rem!important;text-shadow:none!important}
.form-calendar-overlay__mount #bookingCalendar.calendar--pending .slots-grid .slot-btn.slot-btn--loading .slot-time,.layout-container #bookingCalendar.calendar--pending .slots-grid .slot-btn.slot-btn--loading .slot-time{position:relative!important;z-index:2!important;min-height:1.2rem}
.form-calendar-overlay__mount #bookingCalendar .calendar-header,.form-calendar-overlay__mount #bookingCalendar .calendar-nav-btn,.form-calendar-overlay__mount #bookingCalendar .calendar-nav-btn:active,.form-calendar-overlay__mount #bookingCalendar .calendar-nav-btn:focus-visible,.form-calendar-overlay__mount #bookingCalendar .calendar-nav-btn:hover,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-header,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-nav-btn,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--pending .calendar-header,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--pending .calendar-nav-btn,.layout-container #bookingCalendar .calendar-header,.layout-container #bookingCalendar .calendar-nav-btn,.layout-container #bookingCalendar .calendar-nav-btn:active,.layout-container #bookingCalendar .calendar-nav-btn:focus-visible,.layout-container #bookingCalendar .calendar-nav-btn:hover,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-header,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded .calendar-nav-btn,.layout-container #bookingCalendar.calendar-wrapper.calendar--pending .calendar-header,.layout-container #bookingCalendar.calendar-wrapper.calendar--pending .calendar-nav-btn{border-color:transparent!important}
#bookingCalendar{--calendar-cell-gap-final:0.44rem;--calendar-cell-font-final:0.88rem;--calendar-cell-radius-final:0.86rem;--calendar-cell-min-size-final:2.8rem}
.form-calendar-overlay__mount #bookingCalendar .calendar-grid,.form-calendar-overlay__mount #bookingCalendar .slots-grid,.layout-container #bookingCalendar .calendar-grid,.layout-container #bookingCalendar .slots-grid{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:var(--calendar-cell-gap-final)!important;justify-items:stretch!important;align-items:start!important}
.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn:not(.slot-btn--loading),.layout-container #bookingCalendar .slots-grid .slot-btn:not(.slot-btn--loading){display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;min-height:var(--calendar-cell-min-size-final)!important;height:auto!important;aspect-ratio:1/1!important;padding:0!important;border-radius:var(--calendar-cell-radius-final)!important;border:1px solid var(--calendar-frame-border)!important;background:var(--calendar-frame-panel-strong)!important;color:var(--calendar-frame-ink)!important;-webkit-text-fill-color:var(--calendar-frame-ink)!important;box-shadow:var(--calendar-frame-shadow)!important;font-size:var(--calendar-cell-font-final)!important;font-weight:600!important;line-height:1!important;text-align:center!important;transform:none!important;box-sizing:border-box!important;font-variant-numeric:tabular-nums}
.form-calendar-overlay__mount #bookingCalendar.calendar--pending .slots-grid .slot-btn.slot-btn--loading,.layout-container #bookingCalendar.calendar--pending .slots-grid .slot-btn.slot-btn--loading{width:100%!important;min-width:0!important;min-height:var(--calendar-cell-min-size-final)!important;height:auto!important;aspect-ratio:1/1!important;padding:0!important;border-radius:var(--calendar-cell-radius-final)!important;box-sizing:border-box!important}
.form-calendar-overlay__mount #bookingCalendar .slot-time,.form-calendar-overlay__mount #bookingCalendar .slot-time .slot-time-main,.layout-container #bookingCalendar .slot-time,.layout-container #bookingCalendar .slot-time .slot-time-main{display:inline-flex!important;align-items:center!important;justify-content:center!important;font:inherit!important;line-height:1!important;letter-spacing:0!important;color:inherit!important;-webkit-text-fill-color:inherit!important}
.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn.slot-btn--clicked,.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn:active,.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn:focus-visible,.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn:hover,.layout-container #bookingCalendar .slots-grid .slot-btn.slot-btn--clicked,.layout-container #bookingCalendar .slots-grid .slot-btn:active,.layout-container #bookingCalendar .slots-grid .slot-btn:focus-visible,.layout-container #bookingCalendar .slots-grid .slot-btn:hover{background:rgba(255,250,242,.28)!important;border-color:var(--calendar-frame-border-strong)!important;box-shadow:var(--calendar-frame-shadow-strong)!important;color:var(--calendar-frame-ink)!important;-webkit-text-fill-color:var(--calendar-frame-ink)!important;transform:none!important}
.form-calendar-overlay__mount #bookingCalendar .slots-grid .slot-btn.slot-btn--busy:not(.slot-btn--loading),.layout-container #bookingCalendar .slots-grid .slot-btn.slot-btn--busy:not(.slot-btn--loading){background:rgba(255,248,238,.07)!important;border-color:rgba(255,240,224,.18)!important;color:rgba(102,77,57,.5)!important;-webkit-text-fill-color:rgba(102,77,57,.5)!important;box-shadow:none!important}
.form-calendar-overlay__mount #bookingCalendar.calendar--pending .slots-grid .slot-btn.slot-btn--loading,.layout-container #bookingCalendar.calendar--pending .slots-grid .slot-btn.slot-btn--loading{background:linear-gradient(146deg,rgba(255,250,243,.96),rgba(239,227,212,.94))!important;background-color:rgba(255,250,243,.96)!important;border-color:rgba(140,109,83,.34)!important;color:#8b6f5a!important;-webkit-text-fill-color:#8b6f5a!important;opacity:1!important;filter:none!important;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.68),0 .42rem .96rem rgba(90,66,47,.08)!important}
.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper,.layout-container #bookingCalendar.calendar-wrapper{height:auto!important;min-height:var(--calendar-reserve-min-height,clamp(44rem,78vh,52rem))!important}
.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--pending,.layout-container #bookingCalendar.calendar-wrapper.calendar--pending{height:auto!important;min-height:auto!important}
@media (max-width:768px){#bookingCalendar{--calendar-cell-font-final:0.95rem}}
@media (max-width:480px){#bookingCalendar{--calendar-cell-font-final:0.88rem}}
#bookingCalendar.calendar-wrapper,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper,.layout-container #bookingCalendar.calendar-wrapper{overflow:visible!important;padding-bottom:1rem!important;background-clip:border-box!important}
#bookingCalendar:after,.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper:after,.layout-container #bookingCalendar.calendar-wrapper:after{content:none!important;display:none!important;height:0!important;background:none!important;opacity:0!important;filter:none!important;pointer-events:none!important}
.form-calendar-overlay__mount #bookingCalendar.calendar-wrapper.calendar--loaded,.layout-container #bookingCalendar.calendar-wrapper.calendar--loaded{min-height:auto!important;height:auto!important}
#globalSpinner.global-spinner--hypnotic:not(.global-spinner--submit-progress) .global-spinner__progress{display:none}
#globalSpinner.global-spinner--hypnotic:not(.global-spinner--submit-progress) .global-spinner__track{stroke:transparent}
#globalSpinner.global-spinner--hypnotic:not(.global-spinner--submit-progress) .global-spinner__glow{animation:none!important;filter:none!important;transition:stroke-dashoffset 1s linear}
#globalSpinner.global-spinner--hypnotic:not(.global-spinner--submit-progress) .global-spinner__ring-wrap{animation:none!important;transform:none!important}
#globalSpinner.global-spinner--hypnotic:not(.global-spinner--submit-progress) .global-spinner__ring-wrap:after{content:none!important;animation:none!important;box-shadow:none!important;border:0!important}
#globalSpinner.global-spinner--submit-progress{background:linear-gradient(146deg,hsla(0,0%,100%,.12),transparent 26%),linear-gradient(326deg,transparent 10%,hsla(0,0%,100%,.08) 40%,transparent 78%),radial-gradient(120% 120% at 50% 100%,#d4b89a 0,#8b6f5a 100%)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
#globalSpinner.global-spinner--submit-progress .global-spinner__content{gap:1.08rem}
#globalSpinner.global-spinner--submit-progress .global-spinner__progress{display:none!important}
#globalSpinner.global-spinner--submit-progress .global-spinner__ring-wrap{width:7.4rem;height:7.4rem;display:grid;place-items:center;animation:gsSubmitRingBreathe 3s ease-in-out infinite!important;transform-origin:50% 50%;overflow:visible;isolation:isolate}
#globalSpinner.global-spinner--submit-progress .global-spinner__ring-wrap:after{content:""!important;position:absolute;inset:-22%;border-radius:50%;background:radial-gradient(circle,hsla(0,0%,100%,.07) 0,transparent 72%);animation:gsSubmitPulseGlow 2.4s ease-in-out infinite!important;pointer-events:none;border:0!important;box-shadow:none!important;width:auto!important;height:auto!important;left:auto!important;top:auto!important;mix-blend-mode:normal;transform:none;opacity:1;z-index:0}
#globalSpinner.global-spinner--submit-progress .global-spinner__ring-wrap:before{content:none!important}
#globalSpinner.global-spinner--submit-progress .global-spinner__track{display:block!important;stroke:hsla(0,0%,100%,.18)!important;stroke-width:6!important;fill:transparent}
#globalSpinner.global-spinner--submit-progress .global-spinner__glow{stroke:hsla(0,0%,100%,.92)!important;stroke-width:6!important;stroke-linecap:round;filter:drop-shadow(0 0 8px rgba(255,255,255,.45))!important;animation:gsSubmitArcGlow 2.6s ease-in-out infinite!important;transition:stroke-dashoffset .7s cubic-bezier(.22,1,.36,1)!important;transform-origin:60px 60px}
#globalSpinner.global-spinner--submit-progress .global-spinner__svg{z-index:2}
#globalSpinner.global-spinner--submit-progress .global-spinner__value{position:absolute!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;width:max-content!important;height:auto!important;min-width:4ch!important;z-index:3;display:block!important;font-family:Lato,sans-serif!important;font-size:clamp(1.5rem,5.5vw,2.1rem)!important;font-weight:900;letter-spacing:0;line-height:1!important;text-align:center;color:hsla(0,0%,100%,.94)!important;-webkit-text-fill-color:hsla(0,0%,100%,.94)!important;text-shadow:0 0 14px hsla(0,0%,100%,.32)!important;animation:gsSubmitValueBreathe 2.6s ease-in-out infinite;font-variant-numeric:tabular-nums lining-nums;transform:translate(-50%,-50%) scale(1)}
.global-spinner__brand{display:none}
#globalSpinner.global-spinner--submit-progress .global-spinner__brand{display:flex;flex-direction:column;align-items:center;gap:.28rem;user-select:none}
#globalSpinner.global-spinner--submit-progress .global-spinner__brand-main,#globalSpinner.global-spinner--submit-progress .global-spinner__brand-sub{font-family:Lato,sans-serif;text-transform:uppercase;text-align:center;letter-spacing:0}
#globalSpinner.global-spinner--submit-progress .global-spinner__brand-main{font-weight:900;font-size:clamp(1.15rem,4.2vw,1.55rem);color:hsla(0,0%,100%,.94);text-shadow:0 0 18px hsla(0,0%,100%,.32)}
#globalSpinner.global-spinner--submit-progress .global-spinner__brand-sub{font-weight:700;font-size:clamp(.72rem,2.4vw,.88rem);color:hsla(0,0%,100%,.68)}
#globalSpinner.global-spinner--submit-progress .global-spinner__meta{display:block;margin:.6rem 0 0;color:hsla(0,0%,100%,.68)!important;-webkit-text-fill-color:hsla(0,0%,100%,.68)!important;font-family:Lato,sans-serif;font-size:clamp(.72rem,2.4vw,.88rem);font-weight:700;letter-spacing:0;line-height:1.1;text-transform:uppercase;text-shadow:none!important}
.global-spinner,.month-switch-overlay{background:rgba(86,63,46,.3)!important;backdrop-filter:blur(12px) saturate(118%)!important;-webkit-backdrop-filter:blur(12px) saturate(118%)!important}
.global-spinner__track,.month-switch-overlay__track{stroke:transparent!important;display:none!important}
.global-spinner__glow,.month-switch-overlay__fill{stroke:rgba(255,248,239,.96)!important;filter:drop-shadow(0 0 10px rgba(184,146,111,.28))!important}
.global-spinner__meta,.global-spinner__value,.month-switch-overlay__value{color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:none!important}
@keyframes gsSubmitRingBreathe{0%,to{transform:scale(.98)}50%{transform:scale(1.03)}}
@keyframes gsSubmitArcGlow{0%,to{filter:drop-shadow(0 0 6px rgba(255,255,255,.35))}50%{filter:drop-shadow(0 0 14px rgba(255,255,255,.65))}}
@keyframes gsSubmitPulseGlow{0%,to{transform:scale(.92);opacity:.4}50%{transform:scale(1.12);opacity:1}}
@keyframes gsSubmitValueBreathe{0%,to{opacity:.88;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}}
@keyframes globalSpinnerSubmitRingBreathe{0%,to{transform:scale(.988)}50%{transform:scale(1.028)}}
@keyframes globalSpinnerSubmitGlowBreathe{0%,to{transform:scale(.992);filter:drop-shadow(0 0 .4rem rgba(255,255,255,.18)) drop-shadow(0 0 .88rem rgba(255,255,255,.08))}50%{transform:scale(1.024);filter:drop-shadow(0 0 .62rem rgba(255,255,255,.28)) drop-shadow(0 0 1.3rem rgba(255,255,255,.14))}}
@keyframes globalSpinnerSubmitHaloBreathe{0%,to{transform:scale(.94);opacity:.14}50%{transform:scale(1.035);opacity:.28}}
@keyframes globalSpinnerSubmitTrackBreathe{0%,to{transform:scaleX(.992) scaleY(1);box-shadow:inset 0 .16rem .38rem rgba(0,0,0,.2),0 0 .8rem hsla(0,0%,100%,.06)}50%{transform:scaleX(1) scaleY(1.08);box-shadow:inset 0 .16rem .38rem rgba(0,0,0,.18),0 0 1.08rem hsla(0,0%,100%,.1)}}
@keyframes globalSpinnerSubmitFillBreathe{0%,to{opacity:.9;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.14)}}
@keyframes globalSpinnerSubmitValueBreathe{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.032)}}
@keyframes globalSpinnerSubmitSonarWave{0%{transform:translate(-50%,-50%) scale(.05);opacity:0;border-color:hsla(0,0%,100%,.44)}12%{opacity:.34}46%{opacity:.2}to{transform:translate(-50%,-50%) scale(1);opacity:0;border-color:hsla(0,0%,100%,.02)}}
#footerBookBtn:not(:disabled):not([aria-disabled=true]),#headerBookBtn:not(:disabled):not([aria-disabled=true]){color:var(--modal-lock-button-text)!important;-webkit-text-fill-color:var(--modal-lock-button-text)!important;border:none!important;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.78),inset 0 -1px 0 rgba(var(--site-bg-shadow-rgb),.24),0 .56rem 1.18rem rgba(var(--site-bg-shadow-rgb),.28)!important;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
#footerBookBtn:not(:disabled):not([aria-disabled=true]):active,#footerBookBtn:not(:disabled):not([aria-disabled=true]):focus-visible,#footerBookBtn:not(:disabled):not([aria-disabled=true]):hover,#headerBookBtn:not(:disabled):not([aria-disabled=true]):active,#headerBookBtn:not(:disabled):not([aria-disabled=true]):focus-visible,#headerBookBtn:not(:disabled):not([aria-disabled=true]):hover{color:var(--modal-lock-button-text)!important;-webkit-text-fill-color:var(--modal-lock-button-text)!important;border:none!important;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.86),inset 0 -1px 0 rgba(var(--site-bg-shadow-rgb),.26),0 .7rem 1.34rem rgba(var(--site-bg-shadow-rgb),.34)!important}
#footerBookBtn #footerBookBtnText,#footerBookBtn #footerBookBtnText span,#headerBookBtn #headerBookBtnText,#headerBookBtn #headerBookBtnText span{color:var(--modal-lock-button-text)!important;-webkit-text-fill-color:var(--modal-lock-button-text)!important;text-shadow:none!important;letter-spacing:.06em!important}
#footerBookBtn,#footerBookBtnWrap,#headerBookBtn,#headerBookBtnWrap{touch-action:manipulation}
#headerBookBtnWrap{overflow:visible!important;isolation:isolate;z-index:6}
#headerBookBtnWrap .spark{z-index:7!important}
#footerBookBtnPreloader,#headerBookBtnPreloader{pointer-events:none!important}
.book-btn-container--footer .spark{z-index:1!important}
#footerBookBtnPreloader{position:relative!important;z-index:3!important}
#footerBookBtn{position:relative!important;z-index:4!important}
#bookingModal #confirmBookingBtn{background:var(--modal-lock-button-bg)!important;border:none!important;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.78),inset 0 -1px 0 rgba(var(--site-bg-shadow-rgb),.24),0 .56rem 1.18rem rgba(var(--site-bg-shadow-rgb),.28)!important;transition:none!important}
#bookingModal #confirmBookingBtn:active,#bookingModal #confirmBookingBtn:focus-visible,#bookingModal #confirmBookingBtn:hover{background:var(--modal-lock-button-bg)!important;border:none!important;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.78),inset 0 -1px 0 rgba(var(--site-bg-shadow-rgb),.24),0 .56rem 1.18rem rgba(var(--site-bg-shadow-rgb),.28)!important;transform:none!important}
#bookingModal #confirmBookingBtn,#bookingModal #confirmBookingBtn:active,#bookingModal #confirmBookingBtn:disabled,#bookingModal #confirmBookingBtn:focus-visible,#bookingModal #confirmBookingBtn:hover,#bookingModal #confirmBookingBtn[aria-disabled=true]{color:#fffaf3!important;-webkit-text-fill-color:#fffaf3!important;text-shadow:0 1px 0 rgba(90,66,47,.22)!important;opacity:.98!important}
