.elementor-1449 .elementor-element.elementor-element-6f5dc03e{--display:flex;--overlay-opacity:1;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1449 .elementor-element.elementor-element-6f5dc03e:not(.elementor-motion-effects-element-type-background), .elementor-1449 .elementor-element.elementor-element-6f5dc03e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-1449 .elementor-element.elementor-element-6f5dc03e::before, .elementor-1449 .elementor-element.elementor-element-6f5dc03e > .elementor-background-video-container::before, .elementor-1449 .elementor-element.elementor-element-6f5dc03e > .e-con-inner > .elementor-background-video-container::before, .elementor-1449 .elementor-element.elementor-element-6f5dc03e > .elementor-background-slideshow::before, .elementor-1449 .elementor-element.elementor-element-6f5dc03e > .e-con-inner > .elementor-background-slideshow::before, .elementor-1449 .elementor-element.elementor-element-6f5dc03e > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-1449 .elementor-element.elementor-element-6f5dc03e.e-con{--align-self:center;}.elementor-1449 .elementor-element.elementor-element-7441e143{margin:50px 0px calc(var(--kit-widget-spacing, 0px) + 50px) 0px;padding:50px 50px 100px 50px;border-style:solid;border-width:0px 0px 0px 0px;border-color:#FFFFFF;border-radius:10px 10px 10px 10px;}.elementor-1449 .elementor-element.elementor-element-7441e143.elementor-element{--align-self:center;}#elementor-popup-modal-1449{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-1449 .dialog-message{width:1000px;height:auto;}#elementor-popup-modal-1449 .dialog-close-button{display:flex;}#elementor-popup-modal-1449 .dialog-widget-content{box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}/* Start custom CSS for shortcode, class: .elementor-element-7441e143 *//* ============================================
   MPHB Booking Calendar — Clean White Theme
   ============================================ */

.mphb_sc_availability_calendar-wrapper {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  max-width: 820px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 24px 24px 40px !important;
  background: #ffffff !important;
  border-radius: 16px !important;
  border: 1px solid #e5e5e5 !important;
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.06) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* Kill plugin inline width */
.datepick {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  background: #ffffff !important;
  color: #111111 !important;
  box-sizing: border-box !important;
}

.datepick-multi {
  display: flex !important;
  flex-direction: column !important;
  gap: 40px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* ---- Nav ---- */
.datepick-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 16px !important;
  padding: 0 !important;
}

.datepick-nav a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px 18px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #111111 !important;
  background: #f5f5f5 !important;
  border: 1px solid #d0d0d0 !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  transition: background 0.15s, color 0.15s !important;
  cursor: pointer !important;
}

.datepick-nav a:hover:not(.datepick-disabled) {
  background: #111111 !important;
  border-color: #111111 !important;
  color: #ffffff !important;
}

.datepick-nav a.datepick-disabled {
  opacity: 0.3 !important;
  cursor: not-allowed !important;
}

/* ---- Month row ---- */
.datepick-month-row {
  display: flex !important;
  flex-direction: row !important;
  gap: 32px !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.datepick-month {
  flex: 1 1 340px !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* ---- Month header ---- */
.datepick-month-header {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #111111 !important;
  margin-bottom: 14px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid #eeeeee !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.datepick-month-header select {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #111111 !important;
  background: transparent !important;
  border: none !important;
  outline: none !important;
  cursor: pointer !important;
  padding: 2px 4px !important;
  border-radius: 6px !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.datepick-month-header select:hover {
  background: #f5f5f5 !important;
}

/* ---- Table: equal 7 columns, full width ---- */
.datepick-month table {
  width: 100% !important;
  table-layout: fixed !important;
  border-collapse: separate !important;
  border-spacing: 3px !important;
  box-sizing: border-box !important;
}

.datepick-month table th,
.datepick-month table td {
  width: 14.2857% !important;
  max-width: 14.2857% !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* Collapse trailing/leading other-month cells — kills the gap after 29/30/31 */
.datepick-month tbody td > span.datepick-other-month {
  min-height: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
  visibility: hidden !important;
  overflow: hidden !important;
}

/* ---- Day headers ---- */
.datepick-month thead th {
  padding: 7px 0 !important;
  text-align: center !important;
  background: #111111 !important;
  border-radius: 0 !important;
}

.datepick-month thead th:first-child { border-radius: 6px 0 0 6px !important; }
.datepick-month thead th:last-child  { border-radius: 0 6px 6px 0 !important; }

.datepick-month thead th span {
  display: block !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

/* ---- Date cells ---- */
.mphb-date-cell {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 54px !important;
  padding: 6px 0 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #111111 !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  transition: background 0.12s, color 0.12s !important;
  line-height: 1.2 !important;
  box-sizing: border-box !important;
  text-decoration: none !important;
  overflow: visible !important;
}

/* ---- Hide all-other-month rows ---- */
.datepick-month tbody tr:has(td > span.datepick-other-month):not(:has(td > span:not(.datepick-other-month))) {
  display: none !important;
}

/* ---- Hide all-past-date rows ---- */
.datepick-month tbody tr:has(td > span.mphb-past-date):not(:has(td > span:not(.mphb-past-date):not(.datepick-other-month))) {
  display: none !important;
}

/* Other-month */
.mphb-extra-date {
  color: #cccccc !important;
  cursor: default !important;
  background: transparent !important;
  text-decoration: none !important;
}

/* Past */
.mphb-past-date {
  color: #cccccc !important;
  cursor: not-allowed !important;
  background: transparent !important;
  text-decoration: none !important;
}

/* Available */
.mphb-available-date {
  background: #f9f9f9 !important;
  text-decoration: none !important;
}



/* Today */
.datepick-today {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: #ffffff !important;
  font-weight: 700 !important;
}

/* Unavailable */
.mphb-mark-as-unavailable--check-out {
  background: #fff8f0 !important;
  color: #cc6600 !important;
  cursor: not-allowed !important;
  text-decoration: none !important;
}

/* Weekends */
.datepick-weekend.mphb-available-date {
  background: #f3f3ff !important;
}

/* ---- Price block ---- */
.mphb-date-cell__price {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  margin-top: 3px !important;
  overflow: visible !important;
}

/* Show full "$450" — scale with cell width using font-size in % */
.mphb-price {
  display: block !important;
  font-size: clamp(8px, 1.5vw, 11px) !important;
  font-weight: 500 !important;
  color: #777777 !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  line-height: 1 !important;
  overflow: visible !important;
  /* Scale text to always fit the cell */
  transform-origin: center top !important;
}

.mphb-currency {
  font-size: inherit !important;
  font-weight: 500 !important;
}

/* ---- Clear fix ---- */
.datepick-clear-fix { clear: both !important; }

/* ---- Responsive ---- */
@media (max-width: 640px) {
  .mphb_sc_availability_calendar-wrapper {
    padding: 16px 12px 32px !important;
  }
  .datepick-month-row {
    flex-direction: column !important;
    gap: 32px !important;
  }
  .mphb-date-cell {
    min-height: 46px !important;
    font-size: 12px !important;
  }
  .mphb-price {
    font-size: clamp(7px, 2.5vw, 10px) !important;
  }
}/* End custom CSS */