.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;
}
.datepick-ctrl {
  background-color: #E5E0D5 !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;
}

body:not(.single-post) .ct-social-box {
  display: none !important;
}

.mphb-single-room-type-thumbnails img {
  width: 100% !important;
  height: 500px !important;
  object-fit: cover !important;
}

.datepick-cmd-clear {
  white-space: nowrap;
}

body.single-mphb_room_type {
  background-color: #F5EFE3; /* Warm Cream */
}
#site {
  background-color: #F5EFE3;
  background-image: none;
}

.wp-block-post-navigation-link a {
  font-weight: 700;
  color: #B8862E;
}
.wp-block-post-navigation-link a:hover {
  color: #A6552E;
}
.post-navigation-link-next {
  text-align: right;
}

.wp-block-group h2.wp-block-heading {
  font-family: 'Playfair Display', serif;
  font-weight: 600;
  color: #3A2438; /* Deep Aubergine, brändin ohjeen mukainen otsikkoväri */
}

.sidebar-widget .widget-title {
  font-family: 'Playfair Display', serif;
  font-weight: 600;
  color: #3A2438;
}
.mphb_sc_search_results-wrapper > h2,
.mphb_sc_search_results-wrapper h3 {
  font-family: 'Playfair Display', serif;
  font-weight: 600;
  color: #3A2438;
}

@media (min-width: 992px) {
  .page-template-page-right .col-lg-3.col-lg-offset-1 {
    position: sticky;
    top: 20px;
    align-self: flex-start;
  }
}

.post-26411 .col-lg-3.col-lg-offset-1 {
  padding-top: 56px !important;
}

.mphb-room-type {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  grid-auto-flow: row dense;
  column-gap: 15px;
  margin-bottom: 20px !important;
}
.mphb-room-type > * {
  grid-column: 1 / -1;
}
.mphb-room-type .mphb-regular-price {
  grid-column: 1;
}
.mphb-room-type .mphb-view-details-button-wrapper {
  grid-column: 1;
}
.mphb-room-type .mphb-reserve-room-section {
  grid-column: 2;
  grid-row: span 2;
  align-self: end;
  justify-self: end;
  display: flex;
  align-items: center;
  gap: 10px;
}
.mphb-room-type .mphb-rooms-quantity-wrapper {
  margin: 0;
}
.mphb-room-type .mphb-rooms-quantity {
  width: auto;
  min-width: 60px;
}

.mphb-book-button {
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
  border: none !important;
  border-radius: 4px !important;
  padding: 10px 28px !important;
  font-family: 'Roboto', sans-serif !important;
  font-weight: 600 !important;
  font-size: 16.8px !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer;
}
.mphb-book-button:hover {
  background-color: #8a4526 !important;
}

.mphb-book-button,
.mphb-recommendation-reserve-button {
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
  border: none !important;
  border-radius: 4px !important;
  padding: 10px 28px !important;
  font-family: 'Roboto', sans-serif !important;
  font-weight: 600 !important;
  font-size: 16.8px !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer;
}
.mphb-book-button:hover,
.mphb-recommendation-reserve-button:hover {
  background-color: #8a4526 !important;
}

.btn-brand-terracotta a {
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
  border: none !important;
  border-radius: 4px !important;
  padding: 10px 28px !important;
}
.btn-brand-terracotta a:hover {
  background-color: #8a4526 !important;
}

.mphb_sc_account a {
  color: #A6552E;
  text-decoration: underline;
}

/* Accommodation: Adults + Guest Name side by side */
.mphb-adults-chooser {
  float: left;
  width: 160px;
  margin-right: 20px;
  box-sizing: border-box;
}
.mphb-adults-chooser select {
  width: 100%;
}
.mphb-guest-name-wrapper {
  overflow: hidden;
}
.mphb-rate-chooser {
  clear: both;
}

/* Additional Services: 2-column grid, compound rows (guest-count/quantity) stay full width */
.mphb_sc_checkout-services-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 24px;
}
.mphb_sc_checkout-services-list li:has(.mphb_sc_checkout-service-quantity) {
  grid-column: 1 / -1;
}
.mphb_sc_checkout-services-list li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 8px;
}
.mphb_sc_checkout-services-list li label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0;
}

/* Coupon code: don't stretch full width */
.mphb-coupon-code-wrapper input[type="text"] {
  max-width: 240px;
}

.mphb-customer-details {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 24px;
}
.mphb-customer-details-title,
.mphb-required-fields-tip,
.mphb-customer-note {
  grid-column: 1 / -1;
}

.mphb-room-type-title {
  margin-bottom: 20px;
}
.mphb-adults-chooser,
.mphb-guest-name-wrapper {
  margin-top: 0 !important;
}

.mphb_sc_checkout-services-list input[type="number"],
.mphb_sc_checkout-services-list select {
  padding: 6px 12px;
  height: auto;
  line-height: 1.2;
}

.mphb_sc_checkout-services-list select {
  min-width: 70px;
}

.mphb_sc_booking_confirmation .label {
  background-color: #9CAA8C; /* Sage Mist */
  color: #241820;            /* Charcoal Plum */
}

.page-id-26416 #side {
  padding-top: 0 !important;
}

.page-id-26413 .mphb-booking-details-title,
.page-id-26413 .mphb-room-number,
.page-id-26413 .mphb-room-rate-chooser-title,
.page-id-26413 .mphb-services-details-title,
.page-id-26413 .mphb-price-breakdown-title,
.page-id-26413 .mphb-customer-details-title,
.page-id-26413 .mphb-gateway-chooser-title {
  color: #3A2438 !important; /* Deep Aubergine */
}

.page-id-26413 strong {
  color: #241820; /* Charcoal Plum */
}

.page-id-26413 tr.mphb-price-breakdown-total,
.page-id-26413 .mphb-total-price-field {
  color: #B8862E !important; /* Sunbaked Ochre */
  font-weight: 700;
}

.page-id-26413 .mphb-apply-coupon-code-button {
  background-color: transparent !important;
  color: #A6552E !important;
  border: 1.5px solid #A6552E !important;
  font-weight: 600 !important;
  border-radius: 4px;
}
.page-id-26413 .mphb-apply-coupon-code-button:hover {
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
}

.page-id-26413 .mphb_sc_checkout-submit-wrapper input.button {
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
  border: none !important;
  border-radius: 4px;
  padding: 10px 28px;
  font-weight: 600;
}
.page-id-26413 .mphb_sc_checkout-submit-wrapper input.button:hover {
  background-color: #8a4526 !important;
}

.page-id-26413 .mphb-coupon-code-wrapper {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 10px;
}
.page-id-26413 .mphb-coupon-code-wrapper > p {
  margin: 0;
}
.page-id-26413 .mphb-coupon-code-wrapper .mphb-coupon-message {
  flex-basis: 100%;
}