/* VALDAR booking design — version 1 */
body:has(.mphb_sc_search-wrapper, .mphb_sc_search_results-wrapper, .mphb_sc_checkout-wrapper, .mphb_sc_booking_confirmation) {
  background: #f3ede3;
  color: #756347;
}
body:has(.mphb_sc_search-wrapper, .mphb_sc_search_results-wrapper, .mphb_sc_checkout-wrapper, .mphb_sc_booking_confirmation) .wp-site-blocks {
  background: #f3ede3;
}
body:has(.mphb_sc_search-wrapper, .mphb_sc_search_results-wrapper, .mphb_sc_checkout-wrapper, .mphb_sc_booking_confirmation) .wp-block-post-title {
  max-width: 1060px;
  margin: 40px auto 28px;
  padding: 0 24px;
  color: #756347;
  font: 400 clamp(36px, 5vw, 54px)/1.15 "Oranienbaum", Georgia, serif;
  letter-spacing: 0;
}
:is(.mphb_sc_search-wrapper, .mphb_sc_search_results-wrapper, .mphb_sc_checkout-wrapper, .mphb_sc_booking_confirmation, .mphb_sc_booking_form-wrapper) {
  width: 100%;
  max-width: 1060px !important;
  margin: 24px auto 56px;
  padding: clamp(22px, 4vw, 44px);
  background: #f3ede3;
  color: #756347;
  font: 14px/1.8 "Manrope", Arial, sans-serif;
  box-sizing: border-box;
  animation: valdar-booking-in .55s ease both;
}
:is(.mphb_sc_search-wrapper, .mphb_sc_search_results-wrapper, .mphb_sc_checkout-wrapper, .mphb_sc_booking_confirmation, .mphb_sc_booking_form-wrapper) * {
  box-sizing: border-box;
}
:is(.mphb_sc_search-wrapper, .mphb_sc_search_results-wrapper, .mphb_sc_checkout-wrapper, .mphb_sc_booking_confirmation, .mphb_sc_booking_form-wrapper) :is(h2,h3,h4) {
  color: #756347;
  font-family: "Oranienbaum", Georgia, serif !important;
  font-weight: 400;
  font-size: clamp(25px, 3vw, 34px);
  line-height: 1.25;
  letter-spacing: 0;
  margin: 0 0 20px;
}
:is(.mphb_sc_search-wrapper, .mphb_sc_search_results-wrapper, .mphb_sc_checkout-wrapper, .mphb_sc_booking_confirmation, .mphb_sc_booking_form-wrapper) :is(p,li,table,label) {
  color: inherit;
  font-family: "Manrope", Arial, sans-serif;
  font-size: 14px;
  line-height: 1.8;
}
:is(.mphb_sc_search_results-wrapper, .mphb_sc_checkout-wrapper, .mphb_sc_booking_confirmation) a {
  color: #756347;
  text-underline-offset: 4px;
}
.mphb_sc_search-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: end;
  gap: 24px;
  padding: 28px;
  border: 1px solid #7563474d;
  background: #75634706;
}
.mphb_sc_search-form > p { margin: 0 !important; min-width: 0; }
.mphb_sc_search-form > p > br { display: none; }
.mphb_sc_search-form :is(.mphb-required-fields-tip, .mphb_sc_search-submit-button-wrapper, .mphb-errors-wrapper) { grid-column: 1 / -1; }
:is(.mphb_sc_search-form, .mphb_sc_checkout-form, .mphb-booking-form) label {
  display: block;
  margin-bottom: 9px;
  font: 13px/1.65 "Manrope", Arial, sans-serif;
}
:is(.mphb_sc_search-form, .mphb_sc_checkout-form, .mphb-booking-form) abbr { text-decoration: none; }
:is(.mphb_sc_search-form, .mphb_sc_checkout-form, .mphb-booking-form) :is(input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="password"], select, textarea) {
  display: block;
  width: 100%;
  max-width: 100%;
  min-height: 50px;
  padding: 12px 14px;
  border: 1px solid #75634766;
  border-radius: 4px;
  background: #f3ede3;
  color: #756347;
  font: 16px/1.5 "Manrope", Arial, sans-serif;
  box-shadow: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}
:is(.mphb_sc_search-form, .mphb_sc_checkout-form, .mphb-booking-form) textarea { min-height: 120px; resize: vertical; }
:is(.mphb_sc_search-form, .mphb_sc_checkout-form, .mphb-booking-form) input::placeholder { color: #756347; opacity: .75; }
:is(.mphb_sc_search-form, .mphb_sc_checkout-form, .mphb-booking-form) :is(input,select,textarea):focus-visible {
  outline: 2px solid #756347;
  outline-offset: 3px;
  box-shadow: 0 0 0 4px #7563470d;
}
:is(.mphb_sc_search-wrapper, .mphb_sc_search_results-wrapper, .mphb_sc_checkout-wrapper, .mphb_sc_booking_form-wrapper) :is(input[type="submit"], button:not(.mphb-price-breakdown-expand), .mphb-book-button, .mphb-confirm-reservation, .mphb-reserve-btn) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 13px 24px;
  border: 1px solid #756347;
  border-radius: 4px;
  background: #756347;
  color: #f3ede3 !important;
  font: 14px/1.5 "Manrope", Arial, sans-serif;
  text-decoration: none;
  cursor: pointer;
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.mphb_sc_search-form input[type="submit"] { width: 100%; }
:is(.mphb_sc_search-wrapper, .mphb_sc_search_results-wrapper, .mphb_sc_checkout-wrapper) :is(button,input[type="submit"]):disabled {
  opacity: .55;
  cursor: not-allowed;
  transform: none;
}
.mphb_sc_checkout-form .mphb-checkout-section {
  margin: 0 0 24px !important;
  padding: 28px;
  border: 1px solid #75634740;
  background: #75634704;
}
.mphb_sc_checkout-form p { margin: 0 0 18px; }
.mphb_sc_checkout-form .mphb-checkout-section > p:last-child { margin-bottom: 0; }
.mphb_sc_checkout-form .mphb-customer-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 20px 24px;
}
.mphb-customer-details > :is(h3,.mphb-required-fields-tip,.mphb-customer-note,.mphb-customer-create-account) { grid-column: 1 / -1; }
.mphb_sc_checkout-form .mphb-customer-details > p { min-width: 0; margin: 0; }
.mphb_sc_checkout-form :is(input[type="checkbox"],input[type="radio"]) {
  width: 19px;
  height: 19px;
  min-height: 0;
  margin: 0 8px 0 0;
  vertical-align: middle;
  accent-color: #756347;
}
.mphb_sc_checkout-form .mphb-room-rate-variant {
  padding: 18px;
  border: 1px solid #75634740;
  border-radius: 4px;
  transition: background .2s ease, border-color .2s ease;
}
.mphb_sc_checkout-form .mphb-room-rate-variant:has(input:checked) {
  border-color: #756347;
  background: #7563470b;
}
.mphb_sc_checkout-form .mphb-room-rate-variant label { margin: 0; cursor: pointer; }
.mphb_sc_checkout-form .mphb-price-breakdown { width: 100%; border-collapse: collapse; }
.mphb_sc_checkout-form .mphb-price-breakdown :is(td,th) {
  padding: 12px 10px;
  border: 0;
  border-bottom: 1px solid #75634733;
  text-align: left;
  overflow-wrap: anywhere;
}
.mphb_sc_checkout-form .mphb-price-breakdown .mphb-table-price-column { text-align: right; white-space: nowrap; }
.mphb_sc_checkout-form .mphb-price-breakdown-expand {
  padding: 3px 8px;
  border: 1px solid #75634766;
  background: transparent;
  color: #756347;
  cursor: pointer;
}
.mphb_sc_checkout-form .mphb-total-price {
  padding: 20px 24px;
  border-top: 1px solid #75634766;
  border-bottom: 1px solid #75634766;
  font-size: 20px;
}
.mphb_sc_checkout-form .mphb-total-price-field { font-size: 28px; font-weight: 500; }
.mphb_sc_checkout-form .mphb-terms-and-conditions-accept label { font-size: 13px; line-height: 1.9; }
.mphb_sc_search_results-wrapper .mphb-room-type {
  margin: 24px 0 !important;
  padding: 24px;
  border: 1px solid #75634740;
}
.mphb_sc_search_results-wrapper :is(.mphb-room-type-featured-image,.mphb-room-type-gallery) { margin: 0 0 24px; }
.mphb_sc_search_results-wrapper img { max-width: 100%; height: auto; border-radius: 4px; }
.mphb_sc_search_results-wrapper .mphb-room-type-description p {
  font: 400 23px/1.5 "Cormorant Garamond", Georgia, serif;
}
.mphb_sc_search_results-wrapper .mphb-regular-price {
  padding: 16px 0;
  border-top: 1px solid #75634733;
  font-size: 16px;
}
.mphb_sc_search_results-wrapper .mphb-reservation-cart {
  margin-bottom: 28px;
  padding: 22px;
  border: 1px solid #7563474d;
  background: #75634709;
}
.mphb_sc_search_results-wrapper .mphb-reservation-cart::after { content: ""; display: block; clear: both; }
:is(.mphb_sc_search-wrapper,.mphb_sc_search_results-wrapper,.mphb_sc_checkout-wrapper) .mphb-errors-wrapper:not(.mphb-hide):not(:empty) {
  padding: 16px 20px;
  border: 1px solid #75634780;
  border-left: 3px solid #756347;
  background: #75634709;
  color: #756347;
  font: 14px/1.8 "Manrope", Arial, sans-serif;
}
.mphb_sc_booking_confirmation {
  border: 1px solid #75634740;
  padding: clamp(26px,5vw,52px);
}
:is(.mphb_sc_checkout-wrapper,.mphb_sc_booking_confirmation) > p { max-width: 760px; }
.mphb-datepick-popup .datepick, .mphb-calendar .datepick {
  max-width: calc(100vw - 24px) !important;
  padding: 12px;
  border: 1px solid #75634766 !important;
  border-radius: 6px;
  background: #f3ede3 !important;
  color: #756347;
  box-shadow: 0 12px 34px #7563471a;
  font: 14px/1.6 "Manrope", Arial, sans-serif !important;
}
:is(.mphb-datepick-popup,.mphb-calendar) :is(.datepick-nav,.datepick-ctrl,.datepick-month-header,.datepick-month-header select,.datepick-month-header input) {
  background: #f3ede3 !important;
  color: #756347 !important;
  border-color: #75634733 !important;
  font-family: "Manrope", Arial, sans-serif;
}
:is(.mphb-datepick-popup,.mphb-calendar) .datepick-month { background: #f3ede3 !important; border-color: #75634733 !important; }
:is(.mphb-datepick-popup,.mphb-calendar) .datepick-month :is(th,th span) { background: #756347 !important; color: #f3ede3 !important; border-color: #756347 !important; font-size: 11px; }
:is(.mphb-datepick-popup,.mphb-calendar) .datepick-month td { border-color: #75634722 !important; }
:is(.mphb-datepick-popup,.mphb-calendar) .datepick-month td a {
  background: #f3ede3 !important;
  color: #756347 !important;
  border-radius: 3px;
  transition: background .15s ease, color .15s ease;
}
:is(.mphb-datepick-popup,.mphb-calendar) .datepick-month td a:is(.datepick-selected,.datepick-highlight,.mphb-check-in-date,.mphb-check-out-date) {
  background: #756347 !important;
  color: #f3ede3 !important;
}
:is(.mphb-datepick-popup,.mphb-calendar) .datepick-month td span:not(.mphb-date-cell__price) {
  background-color: #75634709;
  color: #756347;
}
:is(.mphb-datepick-popup,.mphb-calendar) .datepick-month td :is(.mphb-booked-date,.mphb-past-date):not(.mphb-selectable-date) {
  opacity: .45;
  text-decoration: line-through;
}
:is(.mphb-datepick-popup,.mphb-calendar) .datepick-cmd { color: #756347 !important; }
:is(.mphb-datepick-popup,.mphb-calendar) a:focus-visible { outline: 2px solid #756347 !important; outline-offset: -2px; }
@keyframes valdar-booking-in {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (hover:hover) {
  :is(.mphb_sc_search-wrapper,.mphb_sc_search_results-wrapper,.mphb_sc_checkout-wrapper) :is(input[type="submit"],button:not(.mphb-price-breakdown-expand),.mphb-book-button,.mphb-confirm-reservation,.mphb-reserve-btn):not(:disabled):hover {
    background: #635339;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px #75634718;
  }
}
@media (max-width:650px) {
  :is(.mphb_sc_search-wrapper,.mphb_sc_search_results-wrapper,.mphb_sc_checkout-wrapper,.mphb_sc_booking_confirmation,.mphb_sc_booking_form-wrapper) { padding: 20px; margin-bottom: 32px; }
  .mphb_sc_search-form { grid-template-columns: minmax(0,1fr); padding: 20px; gap: 20px; }
  .mphb_sc_checkout-form .mphb-customer-details { grid-template-columns: minmax(0,1fr); }
  .mphb_sc_checkout-form .mphb-checkout-section { padding: 20px; }
  .mphb_sc_search_results-wrapper .mphb-room-type { padding: 18px; }
  .mphb_sc_checkout-form .mphb-price-breakdown :is(td,th) { padding: 10px 4px; font-size: 12px; }
}
@media (prefers-reduced-motion:reduce) {
  :is(.mphb_sc_search-wrapper,.mphb_sc_search_results-wrapper,.mphb_sc_checkout-wrapper,.mphb_sc_booking_confirmation,.mphb_sc_booking_form-wrapper),
  :is(.mphb_sc_search-wrapper,.mphb_sc_search_results-wrapper,.mphb_sc_checkout-wrapper,.mphb_sc_booking_confirmation,.mphb_sc_booking_form-wrapper) *,
  .mphb-datepick-popup * { animation: none !important; transition: none !important; }
}

/* Complete experience layer: overrides the original visual foundation. */
body.vb-booking{background:#f3ede3;color:#756347}
body.vb-booking .wp-site-blocks{padding-top:20px;background:#f3ede3}
body.vb-booking .wp-block-post-title{margin:28px auto 16px!important;font-size:clamp(34px,4.5vw,50px)!important}
.vb-eyebrow{font:11px/1.6 "Manrope",Arial,sans-serif!important;letter-spacing:2.4px;color:#756347;margin:0 0 16px!important}
.vb-small{font:12px/1.8 "Manrope",Arial,sans-serif!important;color:#756347;margin:0}
.vb-serif{font:400 25px/1.45 "Cormorant Garamond",Georgia,serif!important;color:#756347;margin:0 0 22px}
.vb-booking :is(.mphb_sc_search-wrapper,.mphb_sc_search_results-wrapper,.mphb_sc_checkout-wrapper,.mphb_sc_booking_confirmation){margin-top:16px;animation:none}
.vb-journey{display:flex;flex-wrap:wrap;gap:12px 28px;margin:0 0 32px;padding:0 0 20px;list-style:none;border-bottom:1px solid #75634733;font:11px/1.6 "Manrope",Arial,sans-serif;letter-spacing:.5px}
.vb-journey li{display:flex;align-items:center;gap:8px;color:#756347}
.vb-journey li[aria-current="step"]{font-weight:700}
.vb-journey span{display:grid;place-items:center;width:27px;height:27px;border:1px solid #75634766;border-radius:50%;font-size:10px}
.vb-journey li[aria-current="step"] span{background:#756347;color:#f3ede3}
.vb-screen-intro{margin-bottom:26px}
.vb-screen-intro h2{font-size:clamp(29px,4vw,40px)!important;margin-bottom:12px!important}
.vb-screen-intro p{font:23px/1.4 "Cormorant Garamond",Georgia,serif!important;margin:0!important}
.vb-booking .mphb_sc_search-form{border:1px solid #75634740;border-radius:16px;background:#75634704;box-shadow:0 12px 40px #75634706;gap:22px;padding:30px}
.vb-booking .mphb_sc_search-form>p>label{font-size:12px;letter-spacing:.25px}
.vb-booking .mphb_sc_search-form :is(input[type="text"],select){border-radius:9px;min-height:54px;background:#f3ede3}
.vb-booking .mphb_sc_search-form input[type="submit"]{border-radius:9px;min-height:54px}
.vb-booking .mphb_sc_search-wrapper>.mphb-required-fields-tip{font-size:11px;opacity:.8}
.vb-booking .mphb_sc_checkout-form .mphb-checkout-section{border-radius:12px;background:transparent}
.vb-booking .mphb_sc_checkout-form .mphb-booking-details{background:#75634705}
.vb-booking .mphb_sc_checkout-form :is(input[type="text"],input[type="email"],input[type="tel"],select,textarea){border-radius:8px}
.vb-booking .mphb_sc_checkout-form .mphb-room-rate-variant{border-radius:10px;padding:20px;transition:transform .2s,background .2s,border-color .2s}
.vb-booking .mphb_sc_checkout-form .mphb-room-rate-variant:has(input:checked){box-shadow:inset 3px 0 #756347}
.vb-booking .mphb-login-form-wrap,.vb-booking .mphb-customer-create-account{display:none!important}
.vb-booking .mphb_sc_checkout-form .mphb-total-price{border:1px solid #75634766;border-radius:10px;background:#75634706}
.vb-booking .vb-total-changed{animation:vb-price-flash .65s ease}
.vb-dates-summary{padding:22px 0;margin:0 0 24px;border-bottom:1px solid #75634733}
.vb-dates-summary .vb-eyebrow{margin-bottom:9px!important}
.vb-dates-summary .vb-selected-dates{font:400 clamp(22px,3vw,29px)/1.4 "Cormorant Garamond",Georgia,serif!important;margin:0 0 10px}
.vb-dates-summary .vb-selected-dates>span{display:inline-block;margin:0 10px;font-size:20px}
.vb-booking .mphb-reservation-cart.mphb-empty-cart{display:none!important}
.vb-booking .mphb_sc_search_results-wrapper .vb-result-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;padding:0!important;border-radius:16px;overflow:hidden;background:#75634703}
.vb-result-photo{position:relative;display:block;min-width:0;min-height:420px;overflow:hidden}
.vb-booking .vb-result-photo img{display:block;width:100%;height:100%;min-height:420px;object-fit:cover;border-radius:0;transition:transform .8s ease}
.vb-result-photo>span{position:absolute;bottom:22px;left:22px;padding:11px 16px;border-radius:30px;background:#f3ede3;color:#756347;font:12px/1.5 "Manrope",Arial,sans-serif}
.vb-result-copy{min-width:0;padding:32px}
.vb-booking .vb-result-copy h2{font-size:36px;margin-bottom:18px}
.vb-result-chips{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none;margin:20px 0}
.vb-result-chips li{padding:7px 11px;border:1px solid #75634740;border-radius:24px;font:11px/1.5 "Manrope",Arial,sans-serif!important}
.vb-result-price{padding:20px 0;margin:18px 0;border-top:1px solid #75634733;border-bottom:1px solid #75634733}
.vb-booking .vb-result-price .mphb-regular-price{margin:0 0 8px;padding:0;border:0;font-size:17px}
.vb-booking .vb-result-copy .mphb-reserve-room-section{margin-top:12px}
.vb-booking .vb-result-copy .mphb-reserve-room-section>button{width:100%;border-radius:8px}
.vb-solid,.vb-outline,.vb-booking .mphb-view-details-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;padding:12px 20px;border:1px solid #756347;border-radius:8px;background:#756347;color:#f3ede3!important;font:13px/1.6 "Manrope",Arial,sans-serif;text-decoration:none!important;transition:transform .25s,background .25s,box-shadow .25s}
.vb-outline,.vb-booking .mphb-view-details-button{background:transparent;color:#756347!important}
.vb-result-copy>.vb-outline{width:100%}
.vb-booking .mphb-reservation-submitted-title{padding-top:20px;font-size:36px!important}
.vb-booking .mphb_sc_checkout-wrapper:not(:has(form)){padding:42px;border:1px solid #75634740;border-radius:14px;background:#75634704}
.vb-policy-strip{padding:22px 0;text-align:center;font:12px/1.8 "Manrope",Arial,sans-serif}
.vb-policy-strip p{font:inherit!important;margin:0 0 12px;color:#756347}
.vb-policy-strip a{display:inline-flex;align-items:center;min-height:44px;margin:0 12px;color:#756347;text-underline-offset:5px}
.vb-guest-help{margin:10px 0 20px!important;font:12px/1.8 "Manrope",Arial,sans-serif!important}

/* Single-month popup: target the popup element itself, not only descendants. */
.datepick-popup .datepick.mphb-datepick-popup{box-sizing:border-box!important;width:354px!important;max-width:calc(100vw - 24px)!important;padding:16px!important;border:1px solid #75634740!important;border-radius:16px!important;background:#f3ede3!important;box-shadow:0 18px 55px #75634726!important;color:#756347!important;font:14px/1.5 "Manrope",Arial,sans-serif!important;overflow:hidden;animation:vb-calendar-in .22s ease both}
.datepick-popup .mphb-datepick-popup *{box-sizing:border-box;font-family:"Manrope",Arial,sans-serif}
.datepick-popup .mphb-datepick-popup .datepick-month-row{display:block!important;clear:both}
.datepick-popup .mphb-datepick-popup .datepick-month{float:none!important;width:100%!important;border:0!important;background:transparent!important}
.datepick-popup .mphb-datepick-popup .datepick-nav{display:flex!important;align-items:center;justify-content:space-between;gap:6px;padding:0 0 12px!important;height:auto!important;min-height:42px;border:0!important;background:transparent!important}
.datepick-popup .mphb-datepick-popup .datepick-nav .datepick-cmd{float:none!important;position:static!important;display:flex!important;align-items:center;justify-content:center;width:auto!important;min-width:38px;min-height:38px;height:auto!important;padding:7px 12px!important;border:1px solid #75634733;border-radius:24px;background:transparent!important;color:#756347!important;font-size:12px!important;line-height:1.5!important;text-decoration:none}
.datepick-popup .mphb-datepick-popup .datepick-nav .datepick-cmd.datepick-disabled{opacity:.35}
.datepick-popup .mphb-datepick-popup .datepick-month-header{height:auto!important;min-height:42px;padding:8px 0 14px!important;background:transparent!important;border:0!important;color:#756347!important;font-size:16px!important;font-weight:500!important;line-height:1.5!important;text-align:center}
.datepick-popup .mphb-datepick-popup .datepick-month-header :is(select,input){width:auto!important;min-height:28px!important;height:auto!important;padding:0 4px!important;border:0!important;background:transparent!important;color:#756347!important;font-size:16px!important;line-height:1.5!important}
.datepick-popup .mphb-datepick-popup table{width:100%!important;table-layout:fixed!important;border-collapse:separate!important;border-spacing:3px!important;margin:0!important;border:0!important}
.datepick-popup .mphb-datepick-popup .datepick-month :is(th,td){border:0!important;background:transparent!important;padding:0!important;text-align:center!important;font-size:13px!important}
.datepick-popup .mphb-datepick-popup .datepick-month th :is(span,a),.datepick-popup .mphb-datepick-popup .datepick-month th{background:transparent!important;color:#756347!important;font-size:10px!important;font-weight:400!important;padding:5px 0!important}
.datepick-popup .mphb-datepick-popup .datepick-month td>a,.datepick-popup .mphb-datepick-popup .datepick-month td>span{display:flex!important;align-items:center;justify-content:center;width:100%!important;height:38px!important;min-height:38px!important;padding:0!important;border:0!important;border-radius:50%!important;font-size:13px!important;line-height:1!important;background:transparent!important;color:#756347!important;text-decoration:none!important}
.datepick-popup .mphb-datepick-popup .datepick-month td>a:hover{background:#75634716!important}
.datepick-popup .mphb-datepick-popup .datepick-month td>a:is(.datepick-selected,.datepick-highlight,.mphb-check-in-date,.mphb-check-out-date){background:#756347!important;color:#f3ede3!important}
.datepick-popup .mphb-datepick-popup .datepick-month td>span:is(.mphb-booked-date,.mphb-past-date){opacity:.35;text-decoration:line-through!important}
.datepick-popup .mphb-datepick-popup .datepick-month td>span.datepick-other-month{opacity:0}
.datepick-popup .mphb-datepick-popup .datepick-ctrl{display:flex;justify-content:space-between;align-items:center;clear:both;padding-top:12px!important;margin-top:10px!important;border:0!important;border-top:1px solid #75634726!important;background:transparent!important;min-height:40px}
.datepick-popup .mphb-datepick-popup .datepick-ctrl::before{display:none!important}
.datepick-popup .mphb-datepick-popup .datepick-ctrl .datepick-cmd{height:auto!important;min-height:34px;padding:7px 12px!important;width:auto!important;border-radius:20px;color:#756347!important;font-size:11px!important;line-height:1.6!important;text-decoration:none}

/* Dedicated villa page. */
body.vb-villa-page{margin:0;background:#f3ede3;color:#756347;font-family:"Manrope",Arial,sans-serif}
.vb-villa-page *{box-sizing:border-box}
.vb-villa-page :is(h1,h2){font-family:"Oranienbaum",Georgia,serif;font-weight:400;color:#756347;letter-spacing:0;line-height:1.15;margin:0 0 22px}
.vb-villa-page h1{font-size:clamp(42px,5.5vw,68px)}
.vb-villa-page h2{font-size:clamp(30px,4vw,42px)}
.vb-villa-header{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1200px;padding:28px 24px;margin:auto;border-bottom:1px solid #75634733}
.vb-wordmark{font:30px/1 "Oranienbaum",Georgia,serif;letter-spacing:4px}
.vb-villa-main{max-width:1200px;padding:0 24px;margin:auto}
.vb-villa-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:center;padding:48px 0}
.vb-hero-photo{height:540px;overflow:hidden;border-radius:180px 180px 8px 8px}
.vb-hero-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1s ease}
.vb-hero-copy .vb-solid{margin-top:8px}
.vb-villa-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;border-top:1px solid #75634733;border-bottom:1px solid #75634733;padding:32px 0}
.vb-villa-facts>div>span{font:11px/1 "Manrope",Arial,sans-serif}
.vb-villa-facts h2{font-size:27px;margin:16px 0 12px}
.vb-villa-facts p{font:13px/1.8 "Manrope",Arial,sans-serif;margin:0}
.vb-villa-story{max-width:850px;padding:64px 0;margin:auto}
.vb-stay-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:26px}
.vb-stay-notes p{font:13px/1.9 "Manrope",Arial,sans-serif;padding:24px;border:1px solid #75634733;margin:0;border-radius:10px}
.vb-villa-gallery-section{padding:0 0 56px}
.vb-villa-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.vb-photo{position:relative;aspect-ratio:4/3;display:block;padding:0;border:0;border-radius:10px;overflow:hidden;background:#75634715;cursor:pointer}
.vb-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.vb-photo>span{position:absolute;right:12px;bottom:12px;padding:7px 11px;border-radius:30px;background:#f3ede3;color:#756347;font:11px/1.6 "Manrope",Arial,sans-serif}
.vb-reserve-section{padding:40px 28px;border:1px solid #75634733;border-radius:16px;scroll-margin-top:30px}
.vb-reserve-section .mphb_sc_booking_form-wrapper{max-width:100%!important;padding:22px 0;margin:0}
.vb-villa-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding:32px 0;font:12px/1.8 "Manrope",Arial,sans-serif}
.vb-villa-footer a{color:#756347;text-underline-offset:5px}
.vb-photo-dialog{width:min(1100px,94vw);max-height:94vh;padding:18px;border:1px solid #75634766;border-radius:12px;background:#f3ede3;color:#756347}
.vb-photo-dialog::backdrop{background:#211c16dc}
.vb-photo-dialog>img{display:block;max-width:100%;width:100%;height:70vh;object-fit:contain}
.vb-dialog-tools,.vb-dialog-nav{display:flex;justify-content:space-between;gap:18px;align-items:center;font:12px/1.5 "Manrope",Arial,sans-serif}
.vb-photo-dialog button{min-height:44px;padding:10px 14px;border:1px solid #75634766;border-radius:6px;background:transparent;color:#756347;font:12px/1.5 "Manrope",Arial,sans-serif;cursor:pointer}
.vb-dialog-nav{margin-top:12px}
.vb-skip{position:absolute;left:16px;top:-100px;background:#f3ede3;color:#756347;padding:12px;z-index:100000}
.vb-skip:focus{top:16px}
.vb-booking :is(.vb-solid,.vb-outline,.vb-photo,.vb-photo-dialog button):focus-visible{outline:2px solid #756347;outline-offset:4px}
.vb-reveal{opacity:1;transform:none}
.vb-reveal.vb-pending{opacity:0;transform:translateY(22px)}
.vb-reveal.vb-visible{opacity:1;transform:none;transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
@keyframes vb-calendar-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@keyframes vb-price-flash{0%,100%{background:#75634706}40%{background:#7563471c}}
@media(hover:hover){
 .vb-booking .vb-result-photo:hover img,.vb-photo:hover img,.vb-hero-photo:hover img{transform:scale(1.035)}
 .vb-solid:hover,.vb-outline:hover{transform:translateY(-3px);box-shadow:0 8px 20px #75634712}
 .vb-booking .mphb_sc_checkout-form .mphb-room-rate-variant:hover{transform:translateY(-2px)}
}
@media(max-width:760px){
 .vb-booking .mphb_sc_search_results-wrapper .vb-result-card{grid-template-columns:minmax(0,1fr)}
 .vb-result-photo,.vb-booking .vb-result-photo img{min-height:0;height:280px}
 .vb-result-copy{padding:24px}
 .vb-villa-hero{grid-template-columns:minmax(0,1fr);gap:28px;padding:32px 0}
 .vb-hero-photo{height:390px;border-radius:140px 140px 8px 8px}
 .vb-villa-facts{grid-template-columns:minmax(0,1fr);gap:22px}
 .vb-villa-facts>div+div{padding-top:22px;border-top:1px solid #75634726}
 .vb-stay-notes{grid-template-columns:minmax(0,1fr)}
 .vb-villa-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .vb-villa-story{padding:44px 0}
 .vb-villa-header{padding:22px 20px}
 .vb-villa-header .vb-outline{padding:10px 13px;font-size:11px;gap:10px}
 .vb-villa-main{padding:0 20px}
 .vb-reserve-section{padding:28px 20px}
 .vb-photo-dialog{padding:12px}
 .vb-photo-dialog>img{height:65vh}
}
@media(max-width:450px){.vb-journey{gap:8px 14px;font-size:10px}.vb-journey span{width:24px;height:24px}.vb-booking .mphb_sc_search-form{padding:20px}.vb-booking .mphb_sc_checkout-wrapper:not(:has(form)){padding:26px}}
@media(prefers-reduced-motion:reduce){
 .vb-reveal.vb-pending{opacity:1;transform:none}
 .vb-booking *,.vb-villa-page *,.datepick-popup .mphb-datepick-popup{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}


/* 1.0.1 — selected villa state and balanced detail-page hero. */
.vb-booking .mphb_sc_search_results-wrapper .mphb-reserve-room-section.mphb-rooms-added>.mphb-book-button{display:none!important}
.vb-booking .mphb_sc_search_results-wrapper .mphb-reserve-room-section:not(.mphb-rooms-added)>.mphb-confirm-reservation{display:none!important}
.vb-booking .mphb_sc_search_results-wrapper .mphb-reserve-room-section.mphb-rooms-added>.mphb-confirm-reservation{display:inline-flex}
body.vb-villa-page{display:block!important;width:100%!important;max-width:none!important;min-height:100vh;padding:0}
.vb-villa-header,.vb-villa-main{width:100%;max-width:1200px}
.vb-villa-page h1{font-size:clamp(36px,4.3vw,52px)!important;line-height:1.12!important;border:0;padding:0;max-width:13ch}
.vb-villa-hero{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:36px;align-items:center;padding:40px 0}
.vb-hero-copy{min-width:0}
.vb-hero-copy .vb-serif{font-size:24px!important;line-height:1.45!important;max-width:450px}
.vb-hero-photo{height:auto;min-height:0;aspect-ratio:3/2;border-radius:12px;align-self:center}
.vb-hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.vb-reserve-section .mphb_sc_booking_form-wrapper{padding:18px 0 8px!important;margin:0!important}
.vb-reserve-section .mphb-booking-form{margin:0}
.vb-reserve-section .vb-policy-strip{margin-top:10px;padding:16px 0 4px}
@media(max-width:980px){
 .vb-villa-hero{grid-template-columns:minmax(0,1fr);gap:28px;padding:32px 0}
 .vb-villa-page h1{max-width:650px;font-size:clamp(36px,5vw,48px)!important}
 .vb-hero-copy .vb-serif{max-width:640px}
 .vb-hero-photo{height:auto;aspect-ratio:3/2;width:100%;border-radius:12px}
}
