.menu-booking-button {
    box-sizing: border-box !important;
    vertical-align: middle;
    line-height: 1 !important;
    height: 50px !important;
}

/* Header nav bar */
.mphb-calendar .mphb-datepicker-grayscale .datepick-nav,
.datepick-popup .mphb-datepicker-grayscale .datepick-nav {
  background: #3A2438 !important;
  background-color: #3A2438 !important;
  background-image: none !important;
}
.mphb-calendar .mphb-datepicker-grayscale .datepick-nav a:hover,
.datepick-popup .mphb-datepicker-grayscale .datepick-nav a:hover {
  background-color: #B8862E !important;
  color: #fff !important;
}
/* "Today" label */
.datepick-popup a.datepick-cmd.datepick-cmd-today,
.mphb-calendar a.datepick-cmd.datepick-cmd-today {
  color: #B8862E !important;
}
/* Available dates — explicitly excludes check-in/check-out split cells */
.mphb-calendar .mphb-datepicker-grayscale .mphb-date-cell.mphb-available-date:not(.mphb-mark-as-unavailable--check-out):not(.mphb-mark-as-unavailable--check-in) {
  background-color: #C9D4BC !important;
  color: #3A2438 !important;
}
/* Check-in/check-out split cells (first available date) */
.mphb-calendar td .mphb-mark-as-unavailable--check-out,
.mphb-calendar td .mphb-mark-as-unavailable--check-in {
  background: linear-gradient(to top left, #C9D4BC 0, #C9D4BC 50%, #f0c0c0 50%, #f0c0c0 100%) !important;
}

/* Fixed-height gallery to match intro text, regardless of source photo size */
.stay-gallery-col .wpb_gallery .isotope-container {
  max-height: 480px;
  overflow: hidden;
}

/* Legacy equal-height room cards (old hand-built cards — likely dead CSS now, harmless to keep) */
.room-cards-row {
  display: flex !important;
  flex-wrap: wrap;
}
.room-card-col .wpb_wrapper {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.room-card-col .wpb_wrapper > *:last-child {
  margin-top: auto !important;
}
.room-cards-row.content-padding {
  padding-top: 1rem !important;
  padding-bottom: 2rem !important;
}

/* Choose Your Stay section spacing */
.choose-stay-row.content-padding {
  padding-top: 1rem !important;
  padding-bottom: 4rem !important;
}
.choose-stay-row p.lead {
  margin-bottom: 2.5rem !important;
}

/* MotoPress room grid — auto-scaling equal-width columns */
.mphb_sc_rooms-wrapper.mphb-room-types {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 2rem !important;
  align-items: start !important;
}
.mphb-room-type {
  display: flex !important;
  flex-direction: column !important;
  margin-top: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  height: 100%;
  background-color: #F5EFE3;
  border-radius: 6px;
  padding: 1.5rem;
  box-shadow: 0 2px 8px rgba(58,36,56,0.1);
}
.mphb-view-details-button-wrapper {
  margin-top: auto !important;
}
.mphb-room-type .mphb-loop-room-thumbnail img {
  height: 320px;
  width: 100%;
  object-fit: cover;
  display: block;
  border-radius: 4px;
}
.mphb-room-type-title + p {
  min-height: 3.2em;
}
.mphb-room-type-title {
  font-family: 'Playfair Display', serif !important;
  color: #3A2438 !important;
  margin-top: 1rem !important;
}
.mphb-regular-price {
  color: #241820;
}
.mphb-view-details-button {
  display: inline-block !important;
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
  padding: 10px 28px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  margin-top: 0.5rem;
}