
/* Block the Squarespace document underneath an active booking/payment overlay. */
html.bs-modal-open,body.bs-modal-open { overflow:hidden!important; overscroll-behavior:none!important; }
body.bs-modal-open { touch-action:none; }
/* Keep checkout & programme dialogs inside iOS/Android viewports, without hiding close controls. */
.bs-modal:not([hidden]){z-index:2147483600;max-height:100dvh;overscroll-behavior:contain;}
#bsKPayModal:not([hidden]){z-index:2147483900!important;}
.bs-modal:not([hidden]) .bs-modal__panel{max-height:calc(100dvh - 24px);overscroll-behavior:contain;overflow-y:auto;}
.bs-modal .bs-modal__header{position:sticky;top:0;z-index:4;}
@media(max-width:640px){
  .bs-modal:not([hidden]){padding:8px!important;}
  .bs-modal:not([hidden]) .bs-modal__panel{width:100%;max-height:calc(100dvh - 16px)!important;}
}
@media(prefers-reduced-motion:reduce){
  #bsSchedulingPage .bs-professional-card--matrix,
  #bsSchedulingPage .kinara-swipe-controls *{animation:none!important;transition:none!important;}
}
