html{width:100%;max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{width:100%;max-width:100%;min-width:0;overflow-x:hidden}#page-wrap{width:100%;max-width:100%;min-width:0;overflow-x:clip}#page-wrap main,#page-wrap section,#page-wrap article,#page-wrap aside,#page-wrap header,#page-wrap footer,#page-wrap nav,#page-wrap div{min-width:0}img,svg,video,canvas,iframe{max-width:100%;height:auto}iframe{width:100%}input,select,textarea,button{max-width:100%}table{max-width:100%}.table-responsive,[class*=table-wrap],[class*=table-scroll]{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.container,.container-fluid,.pw-container,.md-container,.sf-wrap,.legal-wrap,.region-page-wrap{max-width:100%}.md-richtext,.md-richtext *,.page-content,.page-content *{overflow-wrap:anywhere;word-break:normal}.md-richtext table,.page-content table{display:block;width:100%!important;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.md-richtext img,.page-content img{max-width:100%!important;height:auto!important}.modal,.modal-dialog,[role=dialog]{max-width:100vw}.md-shell,.pw-home,.md-main,.md-layout,.md-content,.md-booking-stack,.md-gallery,.md-title,.md-premium-facts,.md-card{max-width:100%}.md-layout>*{min-width:0}.md-gallery button{min-width:0;overflow:hidden}.md-gallery img{max-width:none}.md-title>div:first-child{min-width:0}.md-title h1,.md-title p{overflow-wrap:anywhere}.md-booking-popover{max-width:calc(100vw - 24px)!important}.villa-lightbox,.md-cancellation-modal{max-width:100vw;overflow:hidden}.vlb-stage,.vlb-stage>div{min-width:0;max-width:100vw}.md-location-canvas{max-width:100%;overflow:hidden}.vcal,.vcal-month,.vcal-grid{min-width:0;max-width:100%}.vcal-day{min-width:0}.site-footer-v108,.site-footer-v108 footer{max-width:100%;overflow:hidden}
@media(min-width:1920px){.md-container{width:min(1760px,calc(100% - 80px))!important}.md-layout{grid-template-columns:minmax(0,1fr) 420px!important;gap:38px!important}.md-gallery{height:clamp(500px,32vw,680px)!important}.container{width:min(1760px,calc(100% - 80px))!important}.pw-container,.sf-wrap{width:min(1760px,calc(100% - 80px))!important}.md-card{padding:clamp(28px,1.8vw,38px)}.md-richtext{font-size:clamp(14px,.78vw,17px)}}
@media(min-width:2560px){.md-container,.container,.pw-container,.sf-wrap{max-width:2100px!important}.md-layout{grid-template-columns:minmax(0,1fr) 460px!important}.md-gallery{height:720px!important}body{font-size:clamp(16px,.68vw,20px)}}
@media(min-width:768px) and (max-width:1180px){.container,.pw-container,.sf-wrap,.md-container{width:calc(100% - 36px)!important;max-width:none!important}.md-gallery{height:clamp(360px,48vw,500px)!important}.md-layout{grid-template-columns:1fr!important}.md-booking-stack{width:100%!important}.md-booking{position:static!important}.md-premium-facts{grid-template-columns:repeat(3,minmax(0,1fr))!important}.md-amenities,.md-rule-grid,.md-distance-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.md-booking-popover{position:fixed!important;inset:50% auto auto 50%!important;width:min(760px,calc(100vw - 40px))!important;max-height:calc(100vh - 40px)!important;margin:0!important;overflow:auto!important;transform:translate(-50%,-50%)!important}.md-title-actions{flex-wrap:wrap}.md-detail-tabs{max-width:100%;overflow-x:auto}}
@media(max-width:767px){body{font-size:14px}.container,.container-fluid,.pw-container,.sf-wrap,.md-container,.legal-wrap{width:calc(100% - 20px)!important;max-width:none!important;margin-right:auto!important;margin-left:auto!important;padding-right:0!important;padding-left:0!important}.md-main{padding:10px 0 82px!important}.md-breadcrumb{max-width:100%;padding:8px 0!important;overflow-x:auto!important;white-space:nowrap;-webkit-overflow-scrolling:touch}.md-gallery{display:block!important;width:100%!important;height:clamp(240px,70vw,390px)!important;margin-bottom:18px!important;border-radius:14px!important}.md-gallery-main{display:block!important;width:100%!important;height:100%!important}.md-gallery>div{display:none!important}.md-gallery img{width:100%!important;height:100%!important;object-fit:cover!important}.md-title{align-items:stretch!important;flex-direction:column!important;gap:13px!important;padding:0!important}.md-title h1{font-size:clamp(23px,7vw,30px)!important;line-height:1.15!important}.md-title-actions{display:grid!important;width:100%!important;grid-template-columns:1fr 1fr!important}.md-title-actions button{width:100%!important;min-width:0!important;padding:0 9px!important}.md-premium-facts{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}.md-premium-facts article{min-width:0!important;min-height:76px!important;padding:9px 7px!important}.md-layout{display:block!important}.md-content,.md-booking-stack{width:100%!important;max-width:100%!important}.md-card,.md-overview,.md-booking{width:100%!important;padding:16px!important;border-radius:14px!important}.md-section-title{align-items:flex-start!important;gap:10px!important}.md-section-title>span{width:42px!important;height:42px!important;flex:0 0 42px!important}.md-section-title h2{font-size:clamp(19px,5.5vw,23px)!important}.md-section-title p{line-height:1.45}.md-quick{grid-template-columns:repeat(2,minmax(0,1fr))!important}.md-quick>span{min-width:0!important;padding:8px 5px!important;border:0!important}.md-amenities,.md-rule-grid,.md-distance-grid,.md-review-grid,.md-useful-services,.md-useful-rules{grid-template-columns:1fr!important}.md-calendar-legend{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}.vcal-months{grid-template-columns:1fr!important}.vcal-month:nth-child(2){display:none!important}.vcal-grid{gap:2px!important}.vcal-day{min-width:0!important;min-height:42px!important;padding:0!important;font-size:11px!important}.md-detail-tabs{width:calc(100% + 20px)!important;max-width:none!important;margin-right:-10px!important;margin-left:-10px!important;border-right:0!important;border-left:0!important;border-radius:0!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}.md-detail-tabs a{flex:0 0 auto!important}.md-booking-popover{position:fixed!important;inset:auto 6px 72px!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 90px)!important;margin:0!important;padding:13px!important;overflow:auto!important}.md-mobile-cta{max-width:100vw!important}.md-cancellation-modal>section{width:calc(100% - 20px)!important;max-width:none!important;max-height:calc(100dvh - 20px)!important;overflow:auto!important}.villa-lightbox .vlb-toolbar{padding:8px!important}.villa-lightbox .vlb-thumbs{max-width:100vw;overflow-x:auto}.site-footer-v108 .sf-grid{grid-template-columns:1fr!important}.site-footer-v108 .sf-mobile{max-width:100vw!important}.pos259-shell,.reservation-checkout-v247{max-width:100%;overflow-x:hidden}}
@media(max-width:420px){.container,.container-fluid,.pw-container,.sf-wrap,.md-container,.legal-wrap{width:calc(100% - 14px)!important}.md-gallery{height:68vw!important;min-height:230px}.md-title-actions{grid-template-columns:1fr!important}.md-premium-facts{grid-template-columns:1fr 1fr!important}.md-premium-facts article{gap:7px!important}.md-card,.md-overview,.md-booking{padding:13px!important}.md-calendar-legend{grid-template-columns:1fr!important}.vcal-day{min-height:39px!important;font-size:10px!important}.md-mobile-cta{padding:8px!important}.md-mobile-cta a{padding:11px 10px!important;font-size:11px!important}}
@media(max-width:932px) and (max-height:520px) and (orientation:landscape){.container,.pw-container,.sf-wrap,.md-container{width:calc(100% - 24px)!important}.md-main{padding-bottom:68px!important}.md-gallery{height:72vh!important;min-height:260px!important}.md-title{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important}.md-title-actions{display:flex!important;width:auto!important}.md-premium-facts{grid-template-columns:repeat(3,minmax(0,1fr))!important}.md-mobile-cta{padding:6px 14px!important}.md-booking-popover{inset:6px!important;max-height:calc(100vh - 12px)!important}.md-cancellation-modal>section{max-height:calc(100vh - 12px)!important}}
@media(min-width:768px) and (max-width:1180px) and (orientation:portrait){.md-gallery{height:46vw!important}.md-premium-facts{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(min-width:900px) and (max-width:1366px) and (orientation:landscape){.md-container{width:calc(100% - 28px)!important}.md-layout{grid-template-columns:minmax(0,1fr) minmax(320px,34vw)!important;gap:22px!important}.md-gallery{height:clamp(390px,38vw,520px)!important}.md-premium-facts{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
/* Form controls that are visually hidden must never inherit the global 100% input width. */
.md-promo-toggle{position:relative!important;overflow:hidden!important}
.md-promo-toggle>input[type="checkbox"]{position:absolute!important;top:0!important;left:0!important;width:1px!important;min-width:1px!important;max-width:1px!important;height:1px!important;margin:0!important;opacity:0!important;pointer-events:none!important}

/* Keep long villa thumbnail rails inside their own horizontal scroller. */
.villa-lightbox,.vlb-thumbs{max-width:100vw!important}
.vlb-thumbs{overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain}

/* Mobile header search must stay inside the header container. */
@media(max-width:780px){
  .nvh-v113 .nvh-row{width:calc(100% - 20px)!important;max-width:calc(100% - 20px)!important;margin-right:auto!important;margin-left:auto!important;box-sizing:border-box!important}
  .nvh-header-search{display:none!important}
  .nvh-v113 .nvh-bar,.nvh-v113 .nvh-bar.is-scrolled,.nvh-top+.nvh-bar.is-scrolled{height:66px!important}
  .nvh-v113 .nvh-row,.nvh-v113 .nvh-bar.is-scrolled .nvh-row{height:66px!important;display:flex!important;align-items:center!important;padding-bottom:0!important}
  .nvh-v113 .nvh-actions{margin-left:auto!important}
}
