.elementor-21606 .elementor-element.elementor-element-106e66b{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-21606 .elementor-element.elementor-element-321792a{padding:5px 5px 5px 5px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-21606 .elementor-element.elementor-element-da24234{padding:5px 5px 5px 5px;}.elementor-21606 .elementor-element.elementor-element-7a67eda > .elementor-widget-container{padding:5px 5px 5px 5px;}.elementor-21606 .elementor-element.elementor-element-7a67eda .jet-form.layout-row .jet-form-col__start{max-width:30%;-ms-flex:0 0 30%;flex:0 0 30%;}.elementor-21606 .elementor-element.elementor-element-7a67eda .jet-form__label, .elementor-21606 .elementor-element.elementor-element-7a67eda .jet-form__desc{display:flex;justify-content:flex-start;}.elementor-21606 .elementor-element.elementor-element-7a67eda .jet-form-col{align-items:flex-start;}.elementor-21606 .elementor-element.elementor-element-7a67eda .jet-form-repeater__actions{justify-content:flex-start;}.elementor-21606 .elementor-element.elementor-element-7a67eda .jet-form-repeater__row-remove{align-self:flex-start;}.elementor-21606 .elementor-element.elementor-element-7a67eda .jet-form .jet-apb-calendar .jet-apb-calendar-content{width:100%;min-width:100%;flex:0 0 100%;}.elementor-21606 .elementor-element.elementor-element-7a67eda .jet-form .jet-apb-calendar-slots__close{font-size:35px;top:10px;right:10px;}.elementor-21606 .elementor-element.elementor-element-7a67eda .jet-form__submit-wrap{justify-content:stretch;align-items:stretch;}.elementor-21606 .elementor-element.elementor-element-7a67eda .jet-form-message{text-align:center;}.elementor-21606 .elementor-element.elementor-element-7a67eda .jet-form__field-error, .elementor-21606 .elementor-element.elementor-element-7a67eda .jet-form .jet-engine-file-upload__errors{text-align:left;}#elementor-popup-modal-21606{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-21606 .dialog-message{width:640px;height:auto;}#elementor-popup-modal-21606 .dialog-close-button{display:flex;}#elementor-popup-modal-21606 .dialog-widget-content{box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}@media(max-width:767px){.elementor-21606 .elementor-element.elementor-element-321792a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 20px 0px 0px;text-align:start;}.elementor-21606 .elementor-element.elementor-element-7a67eda > .elementor-widget-container{margin:0% 0% 0% -1%;padding:0% 1% 0% 0%;}}/* Start custom CSS for jet-engine-booking-form, class: .elementor-element-7a67eda *//* ==============================
   Appointment Modal - Clean Final
================================ */

.elementor-popup-modal .dialog-widget-content {
  border-radius: 22px !important;
  box-shadow: 0 28px 80px rgba(0,0,0,.28) !important;
  overflow: hidden !important;
}

.elementor-popup-modal .dialog-message {
  box-sizing: border-box !important;
  max-height: 92vh !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding-bottom: 22px !important;
}

.elementor-popup-modal .jet-form,
.elementor-popup-modal .jet-form-row,
.elementor-popup-modal .jet-form-col,
.elementor-popup-modal .jet-form-col__end,
.elementor-popup-modal .jet-form__submit-wrap {
  box-sizing: border-box !important;
  max-width: 100% !important;
}

/* Calendar day */
.elementor-popup-modal .jet-apb-calendar-date-body {
  width: 34px;
  height: 34px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: all .22s ease;
  position: relative;
}

/* Hover */
.elementor-popup-modal .jet-apb-calendar-date:not(.jet-apb-calendar-date--disabled) .jet-apb-calendar-date-body:hover {
  background: #eef3fb !important;
  color: #071a3a !important;
  cursor: pointer;
}

/* Today */
.elementor-popup-modal .jet-apb-calendar-date--today .jet-apb-calendar-date-body {
  border: 2px solid #b4842c !important;
  color: #071a3a !important;
  font-weight: 700;
  background: #fff !important;
}

/* Selected date */
.elementor-popup-modal .jet-apb-calendar-date.if-date-selected .jet-apb-calendar-date-body,
.elementor-popup-modal .jet-apb-calendar-date--selected .jet-apb-calendar-date-body {
  background: #071a3a !important;
  color: #ffffff !important;
  border: 2px solid #071a3a !important;
  font-weight: 800;
  box-shadow: 0 12px 28px rgba(7,26,58,.34);
  transform: scale(1.08);
}

/* Selected date gold dot */
.elementor-popup-modal .jet-apb-calendar-date.if-date-selected .jet-apb-calendar-date-body::after,
.elementor-popup-modal .jet-apb-calendar-date--selected .jet-apb-calendar-date-body::after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
  width: 6px;
  height: 6px;
  background: #b4842c;
  border-radius: 50%;
}

/* Slots wrapper */
.elementor-popup-modal .jet-apb-calendar-slots--active {
  margin-top: 14px !important;
  width: 100% !important;
}

.elementor-popup-modal .jet-apb-calendar-slots-container {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  max-width: 100% !important;
}

/* Slot buttons */
.elementor-popup-modal .jet-apb-slot {
  border: 1px solid #d8dee8 !important;
  border-radius: 10px !important;
  padding: 11px 14px !important;
  margin: 0 !important;
  background: #ffffff !important;
  color: #071a3a !important;
  font-weight: 700;
  line-height: 1.2;
  transition: all .2s ease;
  box-sizing: border-box !important;
}

.elementor-popup-modal .jet-apb-slot:hover,
.elementor-popup-modal .jet-apb-slot.jet-apb-slot--selected {
  background: #071a3a !important;
  color: #ffffff !important;
  border-color: #071a3a !important;
}

/* Close slots X */
.elementor-popup-modal .jet-apb-calendar-slots__close {
  color: #071a3a !important;
  font-size: 28px !important;
  line-height: 1 !important;
}

/* Appointment details */
.elementor-popup-modal .jet-apb-calendar-appointments-list-wrapper {
  margin-top: 18px !important;
  margin-bottom: 14px !important;
  background: #f7f9fc !important;
  border: 1px solid #e4e8ef !important;
  border-radius: 14px !important;
  padding: 18px !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

/* Submit row */
.elementor-popup-modal .jet-form-row--submit {
  width: 100% !important;
  margin: 10px 0 0 0 !important;
  padding: 0 !important;
}

.elementor-popup-modal .jet-form__submit-wrap {
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Submit button */
.elementor-popup-modal .jet-form__submit {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  box-sizing: border-box !important;
  background: #071a3a !important;
  color: #ffffff !important;
  border: 1px solid #071a3a !important;
  border-radius: 10px !important;
  padding: 14px 24px !important;
  font-weight: 800 !important;
  transition: all .2s ease;
}

.elementor-popup-modal .jet-form__submit:hover {
  background: #0b2555 !important;
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(7,26,58,.22);
}

/* Mobile */
@media (max-width: 767px) {
  .elementor-popup-modal .dialog-widget-content {
    width: calc(100vw - 18px) !important;
    max-width: calc(100vw - 18px) !important;
    border-radius: 18px !important;
  }

  .elementor-popup-modal .dialog-message {
    max-height: 92vh !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-bottom: 28px !important;
  }

  .elementor-popup-modal .jet-apb-calendar-body,
  .elementor-popup-modal .jet-apb-calendar-content {
    width: 100% !important;
    max-width: 100% !important;
  }

  .elementor-popup-modal .jet-apb-calendar-slots-container {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .elementor-popup-modal .jet-apb-slot {
    width: 100% !important;
    text-align: center !important;
  }

  .elementor-popup-modal .jet-form__submit {
    width: 100% !important;
  }
}/* End custom CSS */