.mpc-booking,.mpc-booking *{box-sizing:border-box}.mpc-booking [hidden]{display:none!important}.mpc-booking{--mpc-navy:#071733;--mpc-navy-2:#10284b;--mpc-accent:#13aaa9;--mpc-coral:#ef6a61;--mpc-gold:#c9ad7f;--mpc-text:#10233f;--mpc-muted:#65768a;--mpc-line:#dfe7ed;--mpc-soft:#f6f9fa;position:relative;width:100%;max-width:1190px;margin:28px auto;padding:30px 34px 24px;border:1px solid #dce5eb;border-radius:24px;background:#fff;color:var(--mpc-text);box-shadow:0 24px 62px rgba(7,23,51,.11);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.45}.mpc-booking button,.mpc-booking input{font:inherit}.mpc-booking button{appearance:none}.mpc-booking__accent{position:absolute;top:0;left:34px;width:72px;height:4px;border-radius:0 0 6px 6px;background:linear-gradient(90deg,var(--mpc-accent) 0 55%,var(--mpc-coral) 55%)}
.mpc-booking__compact-head{display:flex;align-items:center;gap:15px;margin-bottom:22px}.mpc-booking__calendar-icon{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:13px;background:var(--mpc-navy)}.mpc-booking__calendar-icon svg{width:22px;fill:#fff}.mpc-booking__compact-head>div{min-width:0}.mpc-booking__title{margin:0!important;color:var(--mpc-navy)!important;font:800 clamp(22px,2.3vw,30px)/1.05 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;letter-spacing:-.6px}.mpc-booking__compact-head p{margin:5px 0 0!important;color:#7a8a99;font-size:12px;font-weight:550;letter-spacing:1.4px;text-transform:uppercase}.mpc-booking__direct-badge{margin-left:auto;padding:7px 12px;border:1px solid #efb5b0;border-radius:999px;color:#e55249;font-size:8px;font-weight:900;letter-spacing:1.35px;line-height:1.05;text-align:center}.mpc-booking__direct-badge small{display:block;margin-top:2px;font-size:7px;letter-spacing:1.1px}
.mpc-booking__searchbar{display:grid;grid-template-columns:1.2fr 1.2fr .9fr .9fr 1.16fr;gap:12px;align-items:stretch}.mpc-booking__search-field{display:flex;align-items:center;gap:12px;min-width:0;min-height:58px;padding:10px 13px;border:1px solid #d8e2e8;border-radius:12px;background:#fff;color:var(--mpc-text);text-align:left;cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .18s}.mpc-booking__search-field:hover,.mpc-booking__search-field:focus-visible{border-color:var(--mpc-accent);box-shadow:0 0 0 3px rgba(19,170,169,.1);outline:0;transform:translateY(-1px)}.mpc-booking__field-icon{flex:0 0 auto;color:var(--mpc-accent);font-size:24px;line-height:1}.mpc-booking__search-field>span:last-child{display:block;min-width:0}.mpc-booking__search-field small{display:block;margin-bottom:4px;color:#607384;font-size:9px;font-weight:850;letter-spacing:.3px}.mpc-booking__search-field strong{display:block;overflow:hidden;color:var(--mpc-navy);font-size:13px;font-weight:750;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.mpc-booking__search-field strong b{font-weight:850}.mpc-booking__search-button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:58px;padding:0 18px;border:0;border-radius:12px;background:linear-gradient(135deg,#18b8b6,#099998);color:#fff;cursor:pointer;box-shadow:0 10px 24px rgba(19,170,169,.23);font-size:12px;font-weight:850;letter-spacing:.8px;transition:transform .18s,box-shadow .18s}.mpc-booking__search-button b{font-size:25px;font-weight:400}.mpc-booking__search-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 28px rgba(19,170,169,.3)}.mpc-booking__search-button:disabled{cursor:not-allowed;opacity:.48;box-shadow:none}.mpc-booking__trustline{display:flex;flex-wrap:wrap;gap:26px;margin-top:19px;padding-top:16px;border-top:1px solid #e7ecef;color:#5f7280;font-size:9px;font-weight:750;letter-spacing:1px}.mpc-booking__trustline span::first-letter{color:var(--mpc-accent)}.mpc-booking__message{min-height:0;margin-top:10px;font-size:11px;font-weight:750}.mpc-booking__message:empty{display:none}.mpc-booking__message.is-error,.mpc-booking__modal-message.is-error{color:#b42318}.mpc-booking__message.is-success,.mpc-booking__modal-message.is-success{color:#087e59}.mpc-booking__message.is-loading,.mpc-booking__modal-message.is-loading{color:#5f6f7d}.mpc-booking__guest-field-wrap{position:relative;min-width:0}.mpc-booking__guest-field-wrap>.mpc-booking__search-field{width:100%;height:100%}.mpc-booking__guest-popover{position:absolute;z-index:20;top:calc(100% + 10px);left:0;width:310px;padding:18px;border:1px solid var(--mpc-line);border-radius:16px;background:#fff;box-shadow:0 18px 48px rgba(7,23,51,.18)}.mpc-booking__guest-popover:before{content:"";position:absolute;top:-7px;left:30px;width:13px;height:13px;border-top:1px solid var(--mpc-line);border-left:1px solid var(--mpc-line);background:#fff;transform:rotate(45deg)}.mpc-booking__guest-popover p{margin:12px 0!important;color:var(--mpc-muted);font-size:9px}.mpc-booking__guest-done{width:100%;height:38px;border:0;border-radius:9px;background:var(--mpc-navy);color:#fff;cursor:pointer;font-size:11px;font-weight:800}
body.mpc-modal-open{overflow:hidden}.mpc-modal{position:fixed;z-index:999999;inset:0;display:grid;place-items:center;padding:22px}.mpc-modal[aria-hidden="true"]{display:none}.mpc-modal__backdrop{position:absolute;inset:0;background:rgba(4,15,33,.72);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}.mpc-modal__dialog{position:relative;z-index:1;width:min(100%,980px);max-height:calc(100vh - 44px);overflow:auto;border:1px solid rgba(255,255,255,.65);border-radius:24px;background:#fff;box-shadow:0 35px 100px rgba(0,0,0,.35);animation:mpcModalIn .23s ease-out}.mpc-modal__dialog--calendar{padding:28px 32px 24px}.mpc-modal__dialog--booking{width:min(100%,1040px)}.mpc-modal__close{position:absolute;z-index:8;top:16px;right:17px;display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #dce5eb;border-radius:50%;background:#fff;color:var(--mpc-navy);cursor:pointer;font-size:24px;line-height:1;box-shadow:0 5px 18px rgba(7,23,51,.08)}.mpc-modal__close:hover{background:var(--mpc-navy);color:#fff}.mpc-modal__header{padding-right:52px}.mpc-modal__header--booking{padding:30px 34px 22px;border-bottom:1px solid var(--mpc-line);background:linear-gradient(135deg,#fff,#f4fafb)}.mpc-modal__eyebrow{display:block;margin-bottom:6px;color:#987847;font-size:9px;font-weight:900;letter-spacing:2.2px}.mpc-modal__header h3,.mpc-booking__payment-stage h3,.mpc-booking__success-stage h3{margin:0!important;color:var(--mpc-navy)!important;font:800 clamp(26px,3vw,38px)/1.08 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;letter-spacing:-1px}.mpc-modal__header p,.mpc-booking__payment-stage header p{margin:8px 0 0!important;color:var(--mpc-muted);font-size:13px}.mpc-booking__selection{display:grid;grid-template-columns:1fr 30px 1fr;align-items:center;gap:10px;margin:22px 0}.mpc-booking__selection>span{text-align:center;color:var(--mpc-gold);font-size:20px}.mpc-booking__date-field{width:100%;min-height:61px;padding:10px 14px;border:1px solid var(--mpc-line);border-radius:12px;background:#fff;color:var(--mpc-text);cursor:pointer;text-align:left}.mpc-booking__date-field.is-active{border-color:var(--mpc-accent);box-shadow:0 0 0 3px rgba(19,170,169,.1)}.mpc-booking__date-field small{display:block;margin-bottom:5px;color:var(--mpc-muted);font-size:8px;font-weight:850;letter-spacing:1.5px}.mpc-booking__date-field strong{font-size:13px}.mpc-booking__calendar-nav{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px}.mpc-booking__calendar-nav strong{color:#71808e;font-size:10px;letter-spacing:1.5px;text-transform:uppercase}.mpc-booking__calendar-nav button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--mpc-line);border-radius:50%;background:#fff;color:var(--mpc-navy);cursor:pointer;font-size:25px;line-height:1}.mpc-booking__calendar-nav button:hover{border-color:var(--mpc-navy);background:var(--mpc-navy);color:#fff}.mpc-booking__months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}.mpc-month h4{margin:0 0 14px!important;color:var(--mpc-navy)!important;font:800 18px/1.2 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;text-align:center;text-transform:capitalize}.mpc-weekdays,.mpc-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.mpc-weekdays span{padding:6px;text-align:center;color:#8d99a5;font-size:9px;font-weight:850;text-transform:uppercase}.mpc-days{gap:3px}.mpc-day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:52px;padding:5px 2px;border:0;border-radius:9px;background:#fff;color:var(--mpc-text);cursor:pointer;font-weight:800;transition:.16s}.mpc-day:hover:not(:disabled){background:#e7f8f8;color:#057a7a;transform:translateY(-1px)}.mpc-day small{margin-top:1px;color:#97a2ae;font-size:8px;font-weight:650}.mpc-day.is-today:after{content:"";position:absolute;bottom:4px;width:4px;height:4px;border-radius:50%;background:var(--mpc-coral)}.mpc-day.is-selected{border-radius:10px;background:var(--mpc-navy);color:#fff;box-shadow:0 6px 15px rgba(7,23,51,.25)}.mpc-day.is-selected small{color:#c7e7ea}.mpc-day.is-in-range{border-radius:3px;background:#e2f6f6;color:#067a7a}.mpc-day.is-unavailable{background:repeating-linear-gradient(135deg,#fafbfc,#fafbfc 4px,#eff2f4 4px,#eff2f4 7px);color:#b8c0c8;cursor:not-allowed;text-decoration:line-through}.mpc-day.is-unavailable small{display:none}.mpc-day.is-empty{min-height:52px;background:transparent}.mpc-booking__legend{display:flex;justify-content:center;gap:24px;margin-top:18px;padding-top:15px;border-top:1px solid var(--mpc-line);color:var(--mpc-muted);font-size:9px;font-weight:750}.mpc-booking__legend span{display:flex;align-items:center;gap:7px}.mpc-booking__legend i{width:11px;height:11px;border:1px solid var(--mpc-line);border-radius:3px}.mpc-booking__legend .is-available{background:#fff}.mpc-booking__legend .is-selected{background:var(--mpc-navy)}.mpc-booking__legend .is-unavailable{background:#e8ebef}.mpc-modal__footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:20px -32px -24px;padding:18px 32px;border-top:1px solid var(--mpc-line);background:var(--mpc-soft)}.mpc-modal__footer span{color:var(--mpc-muted);font-size:11px;font-weight:750}.mpc-modal__footer button{min-width:150px;height:46px;border:0;border-radius:10px;background:var(--mpc-navy);color:#fff;cursor:pointer;font-size:11px;font-weight:850;letter-spacing:.5px}.mpc-modal__footer button:disabled{cursor:not-allowed;opacity:.38}
.mpc-booking__checkout-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.mpc-booking__stay-summary{padding:28px 32px;background:#f5f8fa;border-right:1px solid var(--mpc-line)}.mpc-booking__stay-summary h4,.mpc-booking__guest-form>h4{display:flex;justify-content:space-between;margin:0 0 18px!important;color:var(--mpc-navy)!important;font:800 16px/1.2 Inter,sans-serif!important}.mpc-booking__stay-summary h4 strong{color:#8b7047;font-size:11px;letter-spacing:.5px}.mpc-booking__stay-dates{display:grid;grid-template-columns:1fr 20px 1fr;align-items:center;gap:8px;padding:15px;border:1px solid var(--mpc-line);border-radius:12px;background:#fff}.mpc-booking__stay-dates>b{color:var(--mpc-gold);text-align:center}.mpc-booking__stay-dates small,.mpc-booking__stay-dates strong{display:block}.mpc-booking__stay-dates small{margin-bottom:5px;color:var(--mpc-muted);font-size:8px;font-weight:850;letter-spacing:1px}.mpc-booking__stay-dates strong{color:var(--mpc-navy);font-size:10px}.mpc-booking__extras{padding:19px 0 10px}.mpc-booking__extras h5{margin:0 0 10px!important;color:var(--mpc-navy)!important;font-size:13px!important}.mpc-extra-option{display:grid;grid-template-columns:17px minmax(0,1fr) auto;align-items:start;gap:8px;margin:7px 0;padding:10px;border:1px solid var(--mpc-line);border-radius:10px;background:#fff;cursor:pointer}.mpc-extra-option:has(input:checked){border-color:var(--mpc-accent);box-shadow:0 0 0 2px rgba(19,170,169,.08)}.mpc-extra-option input{width:15px;height:15px;margin:2px 0 0;accent-color:var(--mpc-accent)}.mpc-extra-option span strong,.mpc-extra-option span small,.mpc-extra-option>b small{display:block}.mpc-extra-option span strong{font-size:10px}.mpc-extra-option span small{margin-top:2px;color:var(--mpc-muted);font-size:8px}.mpc-extra-option>b{color:var(--mpc-navy);font-size:9px;text-align:right}.mpc-extra-option>b small{color:var(--mpc-muted);font-size:7px}.mpc-booking__price{padding-top:14px;border-top:1px solid var(--mpc-line)}.mpc-booking__price>div{display:flex;justify-content:space-between;gap:15px;padding:4px 0;color:var(--mpc-muted);font-size:10px}.mpc-booking__price strong{color:var(--mpc-text)}.mpc-booking__price .mpc-booking__total{margin-top:8px;padding-top:12px;border-top:1px dashed #c5d0d9;color:var(--mpc-navy);font-size:15px;font-weight:850}.mpc-booking__total strong{color:var(--mpc-navy);font-size:19px}.mpc-booking__guest-form{padding:28px 34px}.mpc-booking__guest-form>label{display:block;margin-bottom:14px}.mpc-booking__guest-form>label>span{display:block;margin-bottom:6px;color:#4f6273;font-size:10px;font-weight:800;letter-spacing:.5px}.mpc-booking__guest-form input[type="text"],.mpc-booking__guest-form input[type="email"],.mpc-booking__guest-form input[type="tel"]{width:100%;height:48px;padding:0 14px;border:1px solid #d8e2e8;border-radius:10px;background:#fff;color:var(--mpc-navy);font-size:13px;outline:0}.mpc-booking__guest-form input:focus{border-color:var(--mpc-accent);box-shadow:0 0 0 3px rgba(19,170,169,.1)}.mpc-booking__policies{margin-top:18px;padding-top:16px;border-top:1px solid var(--mpc-line)}.mpc-booking__policies label{display:flex;gap:8px;align-items:flex-start;margin:0 0 8px;color:var(--mpc-muted);font-size:9px;line-height:1.45;cursor:pointer}.mpc-booking__policies input{flex:0 0 auto;width:15px;height:15px;margin:0;accent-color:var(--mpc-accent)}.mpc-booking__policies a{color:#087b83;text-decoration:underline}.mpc-booking__modal-message{min-height:18px;margin:8px 0;font-size:10px;font-weight:750}.mpc-booking__continue{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;padding:0 17px;border:0;border-radius:11px;background:linear-gradient(135deg,var(--mpc-navy),var(--mpc-navy-2));color:#fff;cursor:pointer;box-shadow:0 10px 22px rgba(7,23,51,.2);font-size:11px;font-weight:850;letter-spacing:.5px}.mpc-booking__continue svg{width:19px;fill:#fff}.mpc-booking__continue:disabled{cursor:not-allowed;opacity:.4;box-shadow:none}.mpc-booking__secure{display:flex;justify-content:space-between;gap:8px;margin-top:10px;color:var(--mpc-muted);font-size:8px}.mpc-booking__payment-stage{padding:26px}.mpc-booking__payment-stage header{padding:0 48px 18px 4px}.mpc-booking__payment-stage iframe{display:block;width:100%;height:min(650px,68vh);border:1px solid var(--mpc-line);border-radius:15px;background:#f7f9fa}.mpc-booking__payment-stage>a{display:block;margin-top:10px;color:#087b83;font-size:10px;text-align:center}.mpc-booking__success-stage{padding:70px 30px;text-align:center}.mpc-booking__success-stage>span{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 20px;border-radius:50%;background:#e5f7f2;color:#07825e;font-size:34px;font-weight:800}.mpc-booking__success-stage p{max-width:520px;margin:12px auto 25px!important;color:var(--mpc-muted);font-size:13px}.mpc-booking__success-stage button{min-width:150px;height:45px;border:0;border-radius:10px;background:var(--mpc-navy);color:#fff;cursor:pointer;font-weight:800}.mpc-booking.is-loading:after{content:"";position:absolute;z-index:30;inset:0;border-radius:inherit;background:rgba(255,255,255,.35);pointer-events:none}.mpc-starting-price{color:#071733;font-weight:700}@keyframes mpcModalIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.mpc-stepper{display:grid;grid-template-columns:32px 28px 32px;align-items:center}.mpc-stepper button{width:32px;height:32px;padding:0;border:1px solid #cbd6df;border-radius:50%;background:#fff;color:var(--mpc-navy);cursor:pointer;font-size:18px}.mpc-stepper output{text-align:center;font-size:12px;font-weight:850}.mpc-booking__guest-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0}.mpc-booking__guest-row span strong,.mpc-booking__guest-row span small{display:block}.mpc-booking__guest-row span strong{font-size:12px}.mpc-booking__guest-row span small{color:var(--mpc-muted);font-size:9px}
@media(max-width:980px){.mpc-booking__searchbar{grid-template-columns:repeat(2,1fr)}.mpc-booking__search-button{grid-column:1/-1}.mpc-booking__checkout-grid{grid-template-columns:1fr}.mpc-booking__stay-summary{border-right:0;border-bottom:1px solid var(--mpc-line)}.mpc-modal__dialog--booking{width:min(100%,760px)}}
@media(max-width:680px){.mpc-booking{margin:15px 0;padding:23px 16px 18px;border-radius:18px}.mpc-booking__accent{left:16px}.mpc-booking__compact-head{align-items:flex-start}.mpc-booking__calendar-icon{width:42px;height:42px;flex-basis:42px}.mpc-booking__title{font-size:21px!important}.mpc-booking__compact-head p{font-size:9px;letter-spacing:1px}.mpc-booking__direct-badge{display:none}.mpc-booking__searchbar{grid-template-columns:1fr 1fr;gap:9px}.mpc-booking__search-field{min-height:58px;padding:9px}.mpc-booking__field-icon{display:none}.mpc-booking__search-field strong{font-size:11px}.mpc-booking__search-button{grid-column:1/-1}.mpc-booking__trustline{gap:9px 15px;justify-content:center;font-size:8px;letter-spacing:.3px}.mpc-booking__guest-popover{position:fixed;z-index:1000000;top:auto;right:16px;bottom:16px;left:16px;width:auto}.mpc-modal{padding:0}.mpc-modal__dialog{width:100%;max-height:100vh;border:0;border-radius:0}.mpc-modal__dialog--calendar{padding:22px 15px 18px}.mpc-modal__header h3,.mpc-booking__payment-stage h3,.mpc-booking__success-stage h3{font-size:26px!important}.mpc-booking__selection{gap:5px;margin:18px 0}.mpc-booking__date-field{padding:8px;min-height:57px}.mpc-booking__date-field strong{font-size:10px}.mpc-booking__months{grid-template-columns:1fr}.mpc-month--2{display:none}.mpc-day{min-height:47px}.mpc-modal__footer{margin:18px -15px -18px;padding:14px 15px}.mpc-modal__footer span{font-size:9px}.mpc-modal__footer button{min-width:118px}.mpc-booking__legend{gap:12px;font-size:8px}.mpc-modal__header--booking{padding:24px 20px 18px}.mpc-booking__stay-summary,.mpc-booking__guest-form{padding:22px 18px}.mpc-booking__payment-stage{padding:18px 12px}.mpc-booking__payment-stage iframe{height:72vh}.mpc-modal__close{top:11px;right:11px}}
@media(prefers-reduced-motion:reduce){.mpc-booking *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.mpc-booking__legal-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 22px;margin:12px 0 0;padding-top:12px;border-top:1px solid #edf1f4}.mpc-booking__legal-links a,.mpc-modal__legal-links a{color:#526a7c;text-decoration:none;font-size:9px;font-weight:750;letter-spacing:.35px;transition:color .18s}.mpc-booking__legal-links a:hover,.mpc-modal__legal-links a:hover{color:var(--mpc-accent);text-decoration:underline}.mpc-modal__dialog--calendar{width:min(100%,1060px)}.mpc-modal__dialog--calendar .mpc-booking__months{gap:18px}.mpc-modal__dialog--calendar .mpc-month{padding:20px 18px 16px;border:1px solid #e1e8ed;border-radius:16px;background:#fff;box-shadow:0 7px 24px rgba(7,23,51,.045)}.mpc-modal__dialog--calendar .mpc-days{gap:5px}.mpc-modal__dialog--calendar .mpc-day{min-height:56px;border:1px solid transparent}.mpc-modal__dialog--calendar .mpc-day:hover:not(:disabled){border-color:#b9e4e4}.mpc-modal__dialog--calendar .mpc-day.is-in-range{border-color:#d6eeee}.mpc-day.is-selected.is-checkout{background:var(--mpc-accent);color:#fff;box-shadow:0 6px 15px rgba(0,174,186,.3)}.mpc-day.is-selected.is-checkout small{color:#e9ffff}.mpc-booking__legend .is-checkin{background:var(--mpc-navy)}.mpc-booking__legend .is-checkout{border-color:var(--mpc-accent);background:var(--mpc-accent)}.mpc-modal__footer>div{display:flex;min-width:0;flex-direction:column;gap:7px}.mpc-modal__legal-links{display:flex;flex-wrap:wrap;gap:6px 16px}.mpc-modal__legal-links a{font-size:8px}.mpc-modal__footer>button{flex:0 0 auto}
@media(max-width:680px){.mpc-booking__legal-links{gap:8px 13px}.mpc-booking__legal-links a{font-size:8px}.mpc-modal__dialog--calendar .mpc-month{padding:13px 8px}.mpc-modal__dialog--calendar .mpc-day{min-height:48px}.mpc-modal__footer{align-items:flex-end}.mpc-modal__legal-links{gap:5px 10px}.mpc-modal__legal-links a{font-size:7px}}

/* 1.6.1: independent Airbnb-style date controls inside the real calendar. */
.mpc-modal__dialog--calendar .mpc-booking__selection{margin:14px 0 12px}
.mpc-modal__dialog--calendar .mpc-booking__date-field{min-height:52px;padding:8px 14px}
.mpc-modal__dialog--calendar .mpc-booking__calendar-nav{margin-top:0}
.mpc-modal__dialog--calendar .mpc-booking__months{min-height:350px}
@media(max-width:680px){.mpc-modal__dialog--calendar .mpc-booking__months{min-height:340px}.mpc-modal__dialog--calendar .mpc-month:nth-child(2){display:none}}

/* 1.3.3: polished direct-booking shell and gateway-neutral secure payment stage. */
.mpc-modal{z-index:2147483646}
.mpc-booking{isolation:isolate;overflow:visible;padding:32px 34px 22px;border-color:#d8e3e9;background:linear-gradient(145deg,#fff 0%,#fbfdfe 72%,#f4fafb 100%);box-shadow:0 24px 65px rgba(7,23,51,.12),0 2px 7px rgba(7,23,51,.04)}
.mpc-booking:before,.mpc-booking:after{content:"";position:absolute;z-index:-1;border:1px solid rgba(19,170,169,.14);border-radius:50%;pointer-events:none}.mpc-booking:before{top:-74px;left:10%;width:150px;height:150px}.mpc-booking:after{right:7%;bottom:-104px;width:185px;height:185px}
.mpc-booking__compact-head{margin-bottom:14px}.mpc-booking__calendar-icon{box-shadow:0 10px 22px rgba(7,23,51,.18)}
.mpc-booking__direct-badge{background:rgba(255,255,255,.78);box-shadow:0 5px 15px rgba(7,23,51,.04)}
.mpc-booking__live-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 15px;padding:9px 13px;border:1px solid #e3ebef;border-radius:10px;background:rgba(244,249,250,.85);color:#53697a}.mpc-booking__live-strip span{display:flex;align-items:center;gap:7px;font-size:9px;font-weight:850;letter-spacing:.65px;text-transform:uppercase}.mpc-booking__live-strip span i{width:7px;height:7px;border-radius:50%;background:#16a777;box-shadow:0 0 0 4px rgba(22,167,119,.11)}.mpc-booking__live-strip small{font-size:9px;font-weight:650;letter-spacing:.25px}
.mpc-booking__searchbar{position:relative;padding:14px;border:1px solid #e0e8ed;border-radius:17px;background:rgba(255,255,255,.9);box-shadow:0 10px 30px rgba(7,23,51,.06)}
.mpc-booking__search-field{min-height:64px;padding:10px 14px;border-color:#dbe5ea;background:#fff;box-shadow:0 2px 8px rgba(7,23,51,.025)}
.mpc-booking__field-icon{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#eaf8f8}.mpc-booking__field-icon svg{width:17px;height:17px;fill:var(--mpc-accent)}
.mpc-booking__search-button{min-height:64px;background:linear-gradient(135deg,#12aeac,#078e90);box-shadow:0 12px 25px rgba(11,157,158,.25)}
.mpc-booking__trustline{align-items:center;margin-top:15px;padding:14px 4px 0}.mpc-booking__checkout-badge{display:flex;align-items:center;gap:6px;margin-left:auto;padding:6px 9px;border:1px solid #dae5ea;border-radius:999px;background:#fff;color:#53697a;font-size:8px;font-weight:800;letter-spacing:.35px}.mpc-booking__checkout-badge svg{width:12px;height:12px;fill:#0e918e}
.mpc-booking__payment-note{display:flex;align-items:center;gap:10px;margin-top:14px;padding:11px 12px;border:1px solid #dce9eb;border-radius:10px;background:#f2f9f9}.mpc-booking__payment-note svg{flex:0 0 auto;width:22px;height:22px;fill:#0a9694}.mpc-booking__payment-note strong,.mpc-booking__payment-note small{display:block}.mpc-booking__payment-note strong{color:var(--mpc-navy);font-size:10px}.mpc-booking__payment-note small{margin-top:2px;color:var(--mpc-muted);font-size:8px}
.mpc-booking__payment-frame-wrap{position:relative;min-height:430px;border:1px solid var(--mpc-line);border-radius:15px;overflow:hidden;background:#f7f9fa}.mpc-booking__payment-stage iframe{position:relative;z-index:1;border:0;border-radius:0;background:transparent}.mpc-booking__payment-loader{position:absolute;z-index:0;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;color:#5b6f80;font-size:11px;letter-spacing:.4px}.mpc-booking__payment-loader i{width:34px;height:34px;border:3px solid #d9e8e9;border-top-color:var(--mpc-accent);border-radius:50%;animation:mpcSpin .8s linear infinite}.mpc-booking__payment-stage .mpc-booking__payment-link{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:11px;padding:11px 14px;border:1px solid #dce6eb;border-radius:10px;background:#fff;color:#607487;text-decoration:none;text-align:left}.mpc-booking__payment-link span{font-size:9px}.mpc-booking__payment-link strong{color:#087b83;font-size:10px}.mpc-booking__payment-link:hover{border-color:#acdcdc;background:#f5fbfb}.mpc-booking__payment-loader[hidden]{display:none!important}
@keyframes mpcSpin{to{transform:rotate(360deg)}}
@media(max-width:980px){.mpc-booking__checkout-badge{width:100%;justify-content:center;margin-left:0}.mpc-booking__searchbar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.mpc-booking{padding:22px 14px 17px}.mpc-booking__live-strip{align-items:flex-start;flex-direction:column;gap:3px}.mpc-booking__live-strip small{padding-left:14px}.mpc-booking__searchbar{gap:8px;padding:9px}.mpc-booking__search-field{min-height:59px}.mpc-booking__field-icon{display:none}.mpc-booking__trustline{gap:8px 13px}.mpc-booking__checkout-badge{width:auto}.mpc-booking__payment-frame-wrap{min-height:65vh}.mpc-booking__payment-stage .mpc-booking__payment-link{align-items:flex-start;flex-direction:column;gap:4px}}

/* 1.3.3: high-contrast guest form with true black field content. */
.mpc-booking__guest-form{background:#fff}.mpc-booking__guest-form>h4{color:#050505!important}.mpc-booking__guest-form>label>span{margin-bottom:8px;color:#080808!important;font-size:11px;font-weight:900;letter-spacing:.15px}.mpc-booking__guest-form input[type="text"],.mpc-booking__guest-form input[type="email"],.mpc-booking__guest-form input[type="tel"]{height:54px;border:1.5px solid #aebbc5!important;background:#fff!important;color:#050505!important;font-size:15px!important;font-weight:700!important;caret-color:#078f8d;box-shadow:0 3px 11px rgba(7,23,51,.055)!important;-webkit-text-fill-color:#050505!important;opacity:1!important}.mpc-booking__guest-form input::placeholder{color:#353535!important;opacity:1!important;font-weight:600!important;-webkit-text-fill-color:#353535!important}.mpc-booking__guest-form input:focus{border-color:#079f9d!important;box-shadow:0 0 0 4px rgba(7,159,157,.14)!important}.mpc-booking__policies label,.mpc-booking__policies label span{color:#151515!important;font-size:10px!important}.mpc-booking__policies a{color:#006f78!important;font-weight:800}.mpc-booking__modal-message{color:#101010!important;font-size:11px!important}.mpc-booking__payment-note small{color:#242b31!important;font-size:9px}.mpc-booking__payment-note strong{color:#050505!important;font-size:11px}.mpc-booking__continue:not(:disabled){background:linear-gradient(135deg,#0aa6a4,#087c83)!important;box-shadow:0 12px 26px rgba(8,142,141,.25)}

/* 1.3.8: readable system typography and stronger checkout contrast. */
.mpc-modal__dialog--booking,.mpc-modal__dialog--booking button,.mpc-modal__dialog--booking input,.mpc-modal__dialog--booking label,.mpc-modal__dialog--booking a,.mpc-modal__dialog--booking span,.mpc-modal__dialog--booking small,.mpc-modal__dialog--booking strong{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important}
.mpc-booking__stay-summary h4,.mpc-booking__guest-form>h4{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;letter-spacing:0!important}
.mpc-booking__stay-summary h4 strong{color:#7b6138!important;font-size:12px!important;letter-spacing:0!important}
.mpc-booking__stay-dates small{color:#475569!important;font-size:10px!important;letter-spacing:.02em!important}
.mpc-booking__stay-dates strong{color:#071733!important;font-size:12px!important;font-weight:700!important;letter-spacing:0!important}
.mpc-booking__price>div{padding:6px 0;color:#27364a!important;font-size:13px!important;font-weight:600!important;letter-spacing:0!important;line-height:1.35!important}
.mpc-booking__price>div>span{color:#27364a!important;letter-spacing:0!important}
.mpc-booking__price>div>strong{color:#071733!important;font-size:13px!important;font-weight:750!important;letter-spacing:0!important}
.mpc-booking__price .mpc-booking__total{color:#071733!important;font-size:16px!important;font-weight:800!important;letter-spacing:0!important}
.mpc-booking__price .mpc-booking__total strong{color:#071733!important;font-size:22px!important;font-weight:800!important;letter-spacing:0!important}
.mpc-booking__guest-form>label>span{color:#111827!important;font-size:12px!important;font-weight:700!important;letter-spacing:0!important}
.mpc-booking__guest-form input[type="text"],.mpc-booking__guest-form input[type="email"],.mpc-booking__guest-form input[type="tel"]{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;font-size:16px!important;font-weight:600!important;letter-spacing:0!important}
.mpc-booking__guest-form input::placeholder{color:#52606d!important;font-weight:500!important;letter-spacing:0!important;-webkit-text-fill-color:#52606d!important}
.mpc-booking__policies label,.mpc-booking__policies label span{color:#111827!important;font-size:13px!important;font-weight:500!important;letter-spacing:0!important;line-height:1.45!important}
.mpc-booking__policies a{color:#00777d!important;font-weight:700!important;letter-spacing:0!important;text-underline-offset:2px}
.mpc-booking__payment-note strong{color:#071733!important;font-size:13px!important;font-weight:700!important;letter-spacing:0!important}
.mpc-booking__payment-note small{color:#475569!important;font-size:11px!important;font-weight:500!important;letter-spacing:0!important;line-height:1.35!important}
.mpc-booking__modal-message{color:#111827!important;font-size:13px!important;font-weight:650!important;letter-spacing:0!important;line-height:1.4!important}
.mpc-booking__continue{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;font-size:16px!important;font-weight:700!important;letter-spacing:0!important}
.mpc-booking__secure,.mpc-booking__secure span{color:#334155!important;font-size:10px!important;font-weight:600!important;letter-spacing:0!important;line-height:1.35!important}

/* 1.3.9: visible transaction state above the embedded WooCommerce payment page. */
.mpc-booking__payment-loader:not([hidden]){z-index:4;padding:24px;background:rgba(247,249,250,.96);color:#071733;text-align:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.mpc-booking__payment-loader strong{max-width:390px;color:#071733;font-size:14px;font-weight:700;letter-spacing:0;line-height:1.45}
.mpc-booking__payment-frame-wrap.is-processing .mpc-booking__payment-loader{background:rgba(255,255,255,.97)}
.mpc-booking__payment-frame-wrap.is-processing .mpc-booking__payment-loader i{width:48px;height:48px;border-width:4px}
.mpc-booking__payment-frame-wrap.is-processing iframe{pointer-events:none}

/* 1.4.0: premium, high-impact availability card. */
.mpc-booking.mpc-booking--compact{padding:38px 40px 24px;border:1px solid #cfdae3;border-radius:28px;background:linear-gradient(145deg,#fff 0%,#fbfdfe 66%,#f1f8f9 100%);box-shadow:0 34px 82px rgba(7,23,51,.14),0 4px 12px rgba(7,23,51,.05)}
.mpc-booking--compact .mpc-booking__accent{z-index:2;left:52px;width:104px;height:5px;background:linear-gradient(90deg,#14b5b2 0 58%,#ff7068 58%)}
.mpc-booking--compact .mpc-booking__compact-head{position:relative;align-items:center;gap:18px;margin:-12px -12px 18px;padding:24px 26px;border:1px solid rgba(255,255,255,.08);border-radius:21px;background:linear-gradient(128deg,#071733 0%,#0d2748 68%,#0a7378 135%);box-shadow:0 18px 36px rgba(7,23,51,.2);overflow:hidden}
.mpc-booking--compact .mpc-booking__compact-head:after{content:"";position:absolute;right:-58px;bottom:-104px;width:220px;height:220px;border:1px solid rgba(100,230,226,.17);border-radius:50%;pointer-events:none}
.mpc-booking--compact .mpc-booking__calendar-icon{position:relative;z-index:1;flex-basis:54px;width:54px;height:54px;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:linear-gradient(145deg,#17b8b5,#0b8f93);box-shadow:0 12px 26px rgba(0,0,0,.22)}
.mpc-booking--compact .mpc-booking__calendar-icon svg{width:24px}
.mpc-booking--compact .mpc-booking__compact-head>div{position:relative;z-index:1}
.mpc-booking--compact .mpc-booking__title{color:#fff!important;font-size:clamp(27px,3vw,36px)!important;letter-spacing:-1px!important}
.mpc-booking--compact .mpc-booking__compact-head p{margin-top:7px!important;color:#c9d8e5!important;font-size:11px;font-weight:700;letter-spacing:1.55px}
.mpc-booking--compact .mpc-booking__direct-badge{position:relative;z-index:1;padding:9px 15px;border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.1);color:#fff;box-shadow:none;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.mpc-booking--compact .mpc-booking__direct-badge small{color:#9ce5e2}
.mpc-booking--compact .mpc-booking__live-strip{min-height:42px;margin-bottom:14px;padding:10px 14px;border-color:#cfe5e6;border-radius:12px;background:linear-gradient(90deg,#effafa,#f8fbfc);color:#304b5d;box-shadow:inset 3px 0 0 #13aaa9}
.mpc-booking--compact .mpc-booking__live-strip span,.mpc-booking--compact .mpc-booking__live-strip small{font-size:10px}
.mpc-booking--compact .mpc-booking__searchbar{grid-template-columns:1.18fr 1.18fr .86fr .86fr 1.22fr;gap:12px;padding:13px;border-color:#d5e1e7;border-radius:20px;background:#fff;box-shadow:0 15px 36px rgba(7,23,51,.08)}
.mpc-booking--compact .mpc-booking__search-field{min-height:72px;padding:11px 14px;border-color:#ccd9e1;border-radius:14px;background:linear-gradient(145deg,#fff,#fbfdfe);box-shadow:0 3px 10px rgba(7,23,51,.035)}
.mpc-booking--compact .mpc-booking__search-field:hover,.mpc-booking--compact .mpc-booking__search-field:focus-visible{border-color:#0ba5a3;box-shadow:0 0 0 4px rgba(19,170,169,.11),0 7px 16px rgba(7,23,51,.06)}
.mpc-booking--compact .mpc-booking__field-icon{width:36px;height:36px;border-radius:10px;background:#e2f7f7}
.mpc-booking--compact .mpc-booking__field-icon svg{width:18px;height:18px}
.mpc-booking--compact .mpc-booking__search-field small{margin-bottom:5px;color:#53697a;font-size:9px;letter-spacing:.45px}
.mpc-booking--compact .mpc-booking__search-field strong{color:#071733;font-size:14px;font-weight:800}
.mpc-booking--compact .mpc-booking__search-button{min-height:72px;padding:0 20px;border-radius:14px;background:linear-gradient(135deg,#12aeac 0%,#087f86 100%);box-shadow:0 14px 28px rgba(9,143,145,.27);font-size:14px;font-weight:800;letter-spacing:.15px}
.mpc-booking--compact .mpc-booking__search-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 18px 34px rgba(9,143,145,.34)}
.mpc-booking--compact .mpc-booking__search-button:disabled{background:linear-gradient(135deg,#93d7d7,#74c4c6);color:#fff;opacity:1;box-shadow:0 8px 18px rgba(9,143,145,.13)}
.mpc-booking--compact .mpc-booking__trustline{display:flex;align-items:center;gap:9px;margin-top:16px;padding:15px 2px 0;border-top-color:#dce6eb}
.mpc-booking--compact .mpc-booking__trustline>span:not(.mpc-booking__checkout-badge){display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border:1px solid #dde7ec;border-radius:999px;background:#fff;color:#455f70;font-size:9px;font-weight:800;letter-spacing:.45px;box-shadow:0 3px 9px rgba(7,23,51,.035)}
.mpc-booking--compact .mpc-booking__checkout-badge{min-height:30px;padding:6px 11px;border-color:#cce1e3;background:#eefafa;color:#285363;font-size:9px}
.mpc-booking--compact>.mpc-booking__legal-links{margin:15px -40px -24px;padding:14px 40px;border-top:1px solid #dce7ec;border-radius:0 0 27px 27px;background:#f2f7f9}
.mpc-booking--compact>.mpc-booking__legal-links a{color:#435d70;font-size:9px;font-weight:800}

@media(max-width:980px){.mpc-booking.mpc-booking--compact{padding:30px 26px 22px}.mpc-booking--compact .mpc-booking__compact-head{margin:-7px -7px 16px;padding:22px}.mpc-booking--compact .mpc-booking__searchbar{grid-template-columns:repeat(2,minmax(0,1fr))}.mpc-booking--compact .mpc-booking__search-button{grid-column:1/-1}.mpc-booking--compact .mpc-booking__checkout-badge{width:auto;margin-left:0}.mpc-booking--compact>.mpc-booking__legal-links{margin:15px -26px -22px;padding:14px 26px}}
@media(max-width:680px){.mpc-booking.mpc-booking--compact{padding:18px 12px 15px;border-radius:20px}.mpc-booking--compact .mpc-booking__accent{left:31px;width:78px}.mpc-booking--compact .mpc-booking__compact-head{align-items:center;gap:12px;margin:-5px -4px 13px;padding:19px 16px;border-radius:17px}.mpc-booking--compact .mpc-booking__calendar-icon{flex-basis:44px;width:44px;height:44px;border-radius:13px}.mpc-booking--compact .mpc-booking__calendar-icon svg{width:20px}.mpc-booking--compact .mpc-booking__title{font-size:23px!important;letter-spacing:-.6px!important}.mpc-booking--compact .mpc-booking__compact-head p{font-size:9px;letter-spacing:.9px}.mpc-booking--compact .mpc-booking__live-strip{min-height:0;padding:9px 11px}.mpc-booking--compact .mpc-booking__live-strip span,.mpc-booking--compact .mpc-booking__live-strip small{font-size:8px}.mpc-booking--compact .mpc-booking__searchbar{gap:8px;padding:8px;border-radius:15px}.mpc-booking--compact .mpc-booking__search-field{min-height:62px;padding:9px 10px}.mpc-booking--compact .mpc-booking__search-field strong{font-size:12px}.mpc-booking--compact .mpc-booking__search-button{min-height:58px;font-size:13px}.mpc-booking--compact .mpc-booking__trustline{justify-content:center;gap:7px;padding-top:12px}.mpc-booking--compact .mpc-booking__trustline>span:not(.mpc-booking__checkout-badge),.mpc-booking--compact .mpc-booking__checkout-badge{min-height:28px;padding:5px 8px;font-size:8px}.mpc-booking--compact>.mpc-booking__legal-links{margin:13px -12px -15px;padding:12px;border-radius:0 0 19px 19px}}

/* 1.4.1: keep the guest selector above later Elementor sections. */
.mpc-booking.is-guest-popover-open{z-index:2147483644!important}
.mpc-booking.is-guest-popover-open .mpc-booking__searchbar{z-index:2147483645}
.mpc-booking.is-guest-popover-open .mpc-booking__guest-field-wrap{z-index:2147483646}
.mpc-booking.is-guest-popover-open .mpc-booking__guest-popover{z-index:2147483647}

/* 1.5.5: branded Stripe trust badge, permanently presented in English. */
.mpc-booking--compact .mpc-booking__checkout-badge{display:inline-flex;align-items:center;gap:7px;min-height:36px;margin-left:auto;padding:5px 12px 5px 6px;border:1px solid rgba(99,91,255,.25);border-radius:999px;background:linear-gradient(135deg,#fff 0%,#f3f1ff 100%);color:#334155;font-size:9px;font-weight:800;letter-spacing:.2px;line-height:1;box-shadow:0 6px 16px rgba(7,23,51,.07)}
.mpc-booking__checkout-lock{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border-radius:50%;background:#e4f8f7;color:#078f8d}
.mpc-booking__checkout-lock svg{width:12px!important;height:12px!important;fill:currentColor!important}
.mpc-booking__checkout-copy{color:#334155;white-space:nowrap}
.mpc-booking__stripe-wordmark{display:inline-flex;align-items:center;color:#635bff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:15px;font-weight:850;letter-spacing:-.85px;white-space:nowrap}
.mpc-booking__stripe-wordmark i{display:grid;place-items:center;width:16px;height:16px;margin-right:3px;border-radius:5px;background:#635bff;color:#fff;font-family:Arial,sans-serif;font-size:10px;font-style:normal;font-weight:900;letter-spacing:-1px;line-height:1}
.mpc-booking__trustline .mpc-booking__checkout-badge span::first-letter{color:inherit}
@media(max-width:680px){.mpc-booking--compact .mpc-booking__checkout-badge{gap:5px;min-height:32px;padding:4px 9px 4px 5px;font-size:8px}.mpc-booking__checkout-lock{flex-basis:22px;width:22px;height:22px}.mpc-booking__stripe-wordmark{font-size:13px}.mpc-booking__stripe-wordmark i{width:14px;height:14px;font-size:9px}}
