.elementor-4303 .elementor-element.elementor-element-80376b3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:1.25rem 0rem;--row-gap:1.25rem;--column-gap:0rem;--padding-top:2.5rem;--padding-bottom:2.5rem;--padding-left:3.75rem;--padding-right:3.75rem;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );font-style:var( --e-global-typography-primary-font-style );text-decoration:var( --e-global-typography-primary-text-decoration );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );color:var( --e-global-color-primary );}.elementor-4303 .elementor-element.elementor-element-6b8d498 .elementor-heading-title{font-size:var( --e-global-typography-b13e8b1-font-size );font-weight:var( --e-global-typography-b13e8b1-font-weight );text-transform:var( --e-global-typography-b13e8b1-text-transform );}.elementor-4303 .elementor-element.elementor-element-d8b2865 > .elementor-widget-container{padding:0rem 0rem 0rem 0rem;}#elementor-popup-modal-4303{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-4303 .dialog-message{width:640px;height:auto;}#elementor-popup-modal-4303 .dialog-close-button{display:flex;}#elementor-popup-modal-4303 .dialog-widget-content{box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-4303 .elementor-element.elementor-element-6b8d498 .elementor-heading-title{font-size:var( --e-global-typography-b13e8b1-font-size );}}@media(max-width:767px){.elementor-4303 .elementor-element.elementor-element-80376b3{--padding-top:2rem;--padding-bottom:2rem;--padding-left:1rem;--padding-right:1rem;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-4303 .elementor-element.elementor-element-6b8d498 .elementor-heading-title{font-size:var( --e-global-typography-b13e8b1-font-size );}#elementor-popup-modal-4303 .dialog-widget-content{margin:0rem 0rem 0rem 0rem;}#elementor-popup-modal-4303 .dialog-message{padding:0rem 0rem 0rem 0rem;}}/* Start custom CSS *//* Mobile: 16px margin around popup, content fits inside */
@media (max-width: 767px) {
  #elementor-popup-modal-4303 .dialog-widget-content { width: calc(100% - 32px) !important; max-width: calc(100% - 32px) !important; margin: 16px !important; }
  #elementor-popup-modal-4303 .dialog-message,
  #elementor-popup-modal-4303 .elementor-location-popup { width: 100% !important; max-width: 100% !important; }
}

/* Keep popup height constant across booking steps (calendar / times / form) */
#elementor-popup-modal-4303 .elementor-widget-ssa-booking iframe { min-height: 470px !important; }

/* Widen booking iframe so the calendar grid can span month title -> arrows (matches --ccg-edge in SSA Custom CSS) */
#elementor-popup-modal-4303 .elementor-widget-ssa-booking iframe { width: calc(100% + 64px) !important; max-width: none !important; margin-left: -32px !important; margin-right: -32px !important; }
@media (max-width: 767px) {
  #elementor-popup-modal-4303 .elementor-widget-ssa-booking iframe { width: calc(100% + 32px) !important; margin-left: -16px !important; margin-right: -16px !important; }
}
#elementor-popup-modal-4303 .elementor-widget-ssa-booking,
#elementor-popup-modal-4303 .elementor-widget-ssa-booking .elementor-widget-container { overflow: visible !important; }

/* "<" back icon before the title */
#elementor-popup-modal-4303 .elementor-widget-heading .elementor-widget-container { display: flex; align-items: center; gap: 8px; }
#elementor-popup-modal-4303 .ccg-back { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; margin-left: -6px; padding: 0; border: 0; background: none; color: inherit; cursor: pointer; }
#elementor-popup-modal-4303 .ccg-back[hidden] { display: none; }
#elementor-popup-modal-4303 .ccg-back:hover { background: rgba(0, 0, 0, 0.06); }
/* script-only widget: take no space */
#elementor-popup-modal-4303 .elementor-widget-html { display: none !important; }/* End custom CSS */