:root{--paper:#f7f6f2;--white:#fff;--ink:#243d4c;--muted:#677479;--line:#dedfd8;--sand:#b99973;--navy:#233e4e;--serif:'Playfair Display',Georgia,serif;--sans:'Manrope',Arial,sans-serif;--max:1240px;--ease:cubic-bezier(.2,.65,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.75;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid #af8760;outline-offset:4px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.2;letter-spacing:-.035em}h1{font-size:64px}h2{font-size:43px}h3{font-size:30px}h4{font-size:11px;letter-spacing:.13em;text-transform:uppercase}h1 em,h2 em{font-weight:400;color:inherit}p{margin-bottom:20px}svg.icon{width:21px;height:21px;flex:none;vertical-align:middle}.wrap{width:calc(100% - 104px);max-width:var(--max);margin-left:auto;margin-right:auto}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.2em;line-height:1.6;text-transform:uppercase;margin-bottom:19px}.button{background:var(--ink);color:white;border:1px solid var(--ink);border-radius:3px;display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:51px;padding:14px 25px;font-size:12px;font-weight:600;line-height:1.4;transition:background .2s,transform .2s}.button:hover{background:#355466;border-color:#355466}.button .icon{width:18px;height:18px}.button-light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button-light:hover{background:white;border-color:white}.icon-button{display:inline-flex;align-items:center;justify-content:center;padding:8px;background:none;border:1px solid var(--line);border-radius:50%;width:40px;height:40px}.icon-button:hover{background:#ffffff22}.text-link{display:inline-flex;gap:25px;align-items:center;font-size:12px;font-weight:600;padding:5px 0;border:none;border-bottom:1px solid var(--sand);background:none}.text-link .icon{width:18px;height:18px}.text-link:hover{color:#a17f56}.skip{position:fixed;left:15px;top:-70px;z-index:1000;background:var(--ink);color:white;padding:10px}.skip:focus{top:10px}[hidden]{display:none!important}
.header{position:sticky;top:0;z-index:30;background:#f7f6f2f5;backdrop-filter:blur(18px);border-bottom:1px solid transparent}.header-inner{height:100px;max-width:1480px;padding:0 42px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;line-height:1.3}.brand img{width:62px;height:48px;object-fit:contain;mix-blend-mode:multiply}.brand>span{font-family:var(--serif);font-size:20px;letter-spacing:.07em}.brand small{display:block;font:8px var(--sans);letter-spacing:.2em;margin-top:7px}.desktop-nav{display:flex;align-items:center;gap:30px}.desktop-nav a{font-size:11px;font-weight:500;white-space:nowrap;padding:9px 0;border-bottom:1px solid transparent}.desktop-nav a.active{border-color:var(--sand)}.desktop-nav a:hover{color:#92704d}.nav-book{font-size:11px;gap:22px;padding:13px 20px;min-height:45px}.menu-toggle{display:none}.mobile-nav{padding:8px 24px 24px;border-top:1px solid var(--line)}.mobile-nav a{display:block;padding:11px 0}
.hero{height:clamp(560px,calc(100svh - 145px),790px);min-height:560px;margin:0 22px;position:relative;isolation:isolate;overflow:hidden;border-radius:4px;color:white;background:#26485b}.hero-photo,.hero-shade{position:absolute;inset:0;z-index:-1}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 57%;animation:hero-zoom 16s ease-out both;transition:opacity .35s}.hero-shade{background:linear-gradient(90deg,rgba(12,29,37,.56),rgba(15,25,33,.12) 80%),linear-gradient(0deg,rgba(9,27,35,.56),transparent 45%)}.hero-content{position:absolute;left:max(5.5%,calc((100% - 1160px)/2));top:24%;max-width:850px}.hero-content .eyebrow{letter-spacing:.23em;margin-bottom:23px;font-size:11px}.hero h1{font-size:clamp(48px,5.4vw,80px);line-height:1.15;letter-spacing:-.04em;margin-bottom:25px;text-shadow:0 2px 15px #00000018}.hero-content>p:not(.eyebrow){font-size:14px;font-weight:400;line-height:1.85;color:#ffffffed}.hero-link{display:inline-flex;align-items:center;gap:27px;font-size:12px;border-bottom:1px solid #ffffff80;padding-bottom:8px;margin-top:12px}.hero-bottom{position:absolute;bottom:77px;left:5.5%;right:5.5%;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.04em}.hero-controls{display:flex;gap:15px;align-items:center}.hero-controls .icon-button{width:34px;height:34px;border-color:#ffffff65}.hero-controls .icon{width:17px;height:17px}#hero-prev .icon{transform:rotate(180deg)}#hero-counter{font-size:12px;font-variant-numeric:tabular-nums}#hero-counter i{font-style:normal;color:#ffffff80;margin-left:6px}@keyframes hero-zoom{from{transform:scale(1.04)}to{transform:scale(1)}}
.home-search{position:relative;margin-top:-43px;z-index:2;max-width:1120px}.search-form{display:grid;grid-template-columns:1fr 1fr .85fr 1.3fr;align-items:center;gap:0;background:#fff;border-radius:4px;box-shadow:0 10px 35px #253b4a0b;padding:17px 18px;position:relative}.search-field{padding:0 26px;border-right:1px solid var(--line)}.search-field label{display:flex;align-items:center;gap:8px;font-size:9px;font-weight:600;letter-spacing:.15em;color:var(--muted);margin-bottom:5px}.search-field label .icon{width:15px;height:15px}.search-field input,.search-field select{width:100%;border:0;background:transparent;min-height:29px;font-size:12px;color:var(--ink);padding:1px 0;cursor:pointer}.search-field input[type=date]{color-scheme:light}.search-submit{margin-left:25px;height:54px}.promise-strip{display:flex;justify-content:space-around;gap:20px;padding:30px 0 29px;border-bottom:1px solid var(--line);max-width:1120px;font-size:10px;color:#54666c}.promise-strip>span{display:flex;gap:11px;align-items:center}.promise-strip .icon{width:21px;height:21px;stroke:#8f826c}.intro{display:grid;grid-template-columns:1.05fr 1fr;gap:12%;padding-top:100px;padding-bottom:94px}.intro h2{font-size:46px;margin-bottom:0}.intro-copy{padding-top:28px;color:var(--muted);font-size:13px;line-height:1.9}.intro-copy .text-link{color:var(--ink)}.intro-copy p+p{font-size:12px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:40px}.section-heading h2{margin:0}.section-heading .eyebrow{margin-bottom:12px}.filter-tabs{display:flex;gap:7px;flex-wrap:wrap;padding-bottom:2px}.filter-tabs button{border:1px solid var(--line);background:none;border-radius:2px;padding:10px 15px;font-size:10px;white-space:nowrap;transition:.2s}.filter-tabs button span{margin-left:6px;font-size:9px;opacity:.6}.filter-tabs button.selected{background:var(--ink);border-color:var(--ink);color:white}.filter-tabs button:hover:not(.selected){background:#e9eae4}.stays-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:45px 26px}.stay-card{min-width:0;grid-column:span 2}.stay-card.villa{grid-column:span 3}.card-image{display:block;position:relative;aspect-ratio:1.5;overflow:hidden;border-radius:4px;background:#d8e1e3}.card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#071d2b4a,transparent 45%)}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.card-image:hover img{transform:scale(1.035)}.image-label{position:absolute;top:17px;left:17px;z-index:1;background:#fbfaf6f2;color:var(--ink);font-size:9px;padding:5px 10px;border-radius:2px}.pool-label{position:absolute;bottom:17px;left:17px;z-index:1;display:flex;align-items:center;gap:7px;color:white;font-size:9px}.pool-label .icon{width:17px;height:17px}.card-image-arrow{position:absolute;right:16px;bottom:14px;z-index:1;width:35px;height:35px;border:1px solid #ffffffb0;display:flex;align-items:center;justify-content:center;border-radius:50%;color:white}.card-image-arrow .icon{width:17px;height:17px}.card-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-top:20px}.card-heading h3{font-size:27px;line-height:1.2;margin-bottom:7px}.card-price{font-size:10px;white-space:nowrap}.card-price strong{font-size:14px;font-weight:500}.card-price>span{color:var(--muted);font-size:9px}.card-tagline{color:var(--muted);font-size:11px;margin-bottom:14px}.card-facts{border-top:1px solid var(--line);padding-top:12px;display:flex;gap:17px;font-size:9px;color:var(--muted)}.card-facts>span{display:flex;align-items:center;gap:6px}.card-facts .icon{width:16px;height:16px}.card-availability{font-size:11px;margin-top:10px}.card-availability:empty{display:none}.card-availability .available{color:#42654e}.card-availability .unknown{color:#826941}.card-availability .stay-total{float:right}.collection-note{font-size:10px;text-align:center;margin-top:38px;color:var(--muted)}.collection{padding-bottom:92px}
.experience-band{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:var(--paper)}.experience-image{min-height:570px}.experience-image img{width:100%;height:100%;object-fit:cover;object-position:42% center}.experience-copy{padding:82px 13%;max-width:710px;display:flex;align-items:flex-start;flex-direction:column;justify-content:center}.experience-copy .eyebrow{color:#d8c1a4}.experience-copy h2{font-size:43px}.experience-copy>p:not(.eyebrow){font-size:12px;line-height:1.9;color:#cad5db;max-width:390px}.experience-points{display:flex;flex-direction:column;gap:15px;margin:6px 0 33px;font-size:11px}.experience-points span{display:flex;gap:12px;align-items:center}.experience-points .icon{color:#d8c1a4;width:19px;height:19px}.destination-teaser{display:grid;grid-template-columns:.9fr 1fr;gap:11%;padding-top:110px;padding-bottom:110px;align-items:center}.destination-copy>p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.9}.destination-links{margin:25px 0 22px}.destination-links a{display:flex;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.destination-links a>span{font-size:9px;color:var(--sand);margin-right:23px}.destination-links a>.icon{margin-left:auto;width:17px;height:17px}.destination-image{position:relative;height:560px}.destination-image img{height:100%;width:100%;object-fit:cover;border-radius:3px}.destination-image>span{position:absolute;bottom:20px;left:20px;background:#fcfaf5ed;padding:8px 15px;font-size:10px;border-radius:2px}.destination-image>span .icon{width:14px;height:14px;margin-right:5px}
.cta-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:60px;padding:62px max(52px,calc((100vw - 1240px)/2));background:#eeeee7}.cta-section h2{font-size:40px;margin:0}.cta-contact{max-width:420px;font-size:12px}.cta-contact>p{color:var(--muted)}.cta-contact>a:not(.text-link){display:flex;gap:12px;align-items:center;margin:13px 0;font-size:15px}.cta-contact small{color:var(--muted);font-size:11px}.cta-contact .text-link{margin-top:15px}.footer{--ink:#fff;--muted:#d9e5e7;--line:#ffffff30;padding:63px max(52px,calc((100vw - 1240px)/2)) 0;color:var(--ink);background-color:#173d4b;background-image:linear-gradient(110deg,rgba(18,48,61,.84) 0%,rgba(19,53,65,.70) 46%,rgba(16,42,54,.94) 100%),url("/assets/home/17.webp");background-position:center,center 46%;background-size:cover,106% auto;background-repeat:no-repeat}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:50px}.footer-main>div>a:not(.brand){display:block;font-size:11px;margin:9px 0;color:var(--muted)}.footer-main>div>a.text-link{display:inline-flex;color:var(--ink)}.footer-main h4{margin-top:10px;margin-bottom:22px;font-size:10px;color:#f0dfc7;letter-spacing:.05em}.footer-main p{font-size:11px;color:var(--muted);line-height:1.9;margin-top:20px}.footer .brand img{width:52px;height:41px;mix-blend-mode:normal;filter:brightness(0) invert(1)}.footer .brand>span{font-size:17px}.footer .brand small{font-size:7px;color:#eadbc7}.footer a{transition:color .2s}.footer a:hover,.footer-main>div>a:not(.brand):hover{color:#f0dfc7}.footer a:focus-visible{outline:2px solid #f0dfc7;outline-offset:5px;border-radius:2px}.footer .text-link{border-color:#cbb08b}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:24px 0;border-top:1px solid var(--line);margin-top:42px;font-size:9px;color:var(--muted)}
.page-intro{padding-top:65px;padding-bottom:33px}.page-intro h1{font-size:55px;margin-bottom:18px}.page-intro>p:not(.eyebrow){color:var(--muted);font-size:13px}.listing-search .search-form{box-shadow:none;border:1px solid var(--line)}.listing-collection{padding-top:52px}.listing-collection .section-heading{align-items:center;margin-bottom:30px}#results-count{margin:0;font-size:11px}#results-dates{font-size:12px;color:var(--muted);margin:7px 0 0}.notice{background:#eceee7;border-left:2px solid var(--sand);padding:15px 20px;font-size:12px;margin-bottom:25px}.snapshot-note{font-size:10px;color:var(--muted);line-height:1.7;margin-top:18px;margin-bottom:10px}.empty-state{padding:60px 20px;text-align:center}.empty-state h2{font-size:40px}.empty-state p{color:var(--muted);font-size:13px}.empty-state .button{margin:8px 0 24px}
.property-title{padding-top:28px;padding-bottom:25px}.breadcrumb{display:flex;align-items:center;gap:11px;color:var(--muted);font-size:10px}.breadcrumb .icon{width:12px;height:12px}.property-title-row{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:23px}.property-title h1{font-size:51px;margin-bottom:12px}.property-title-row p{font-size:11px;display:flex;align-items:center;gap:7px;margin:0;color:var(--muted)}.property-title-row p .icon{width:15px;height:15px}.property-type{display:flex;align-items:center;gap:10px;font-size:11px;padding:10px 15px;border:1px solid var(--line)}.property-type .icon{width:19px;height:19px}.property-gallery{height:485px;display:grid;grid-template-columns:1.65fr 1fr;gap:9px;position:relative;overflow:hidden;border-radius:4px}.property-gallery button:not(.gallery-all){border:0;padding:0;background:#e3e7e4;overflow:hidden;display:block}.property-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.property-gallery button:hover img{transform:scale(1.025)}.gallery-side{display:grid;grid-template-rows:1fr 1fr;gap:9px;min-height:0}.gallery-side button{min-height:0}.property-gallery .gallery-all{position:absolute;right:21px;bottom:21px;background:white;color:var(--ink);border-color:#fff;min-height:40px;font-size:10px;padding:11px 16px;gap:10px;box-shadow:0 2px 12px #0002}.detail-nav{border-bottom:1px solid var(--line);display:flex;gap:35px;align-items:center;padding-top:20px;padding-bottom:20px;font-size:11px}.detail-nav a:hover{color:#96754d}.property-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:70px;position:relative}.property-content{min-width:0}.detail-section{padding:50px 0;border-bottom:1px solid var(--line);scroll-margin-top:115px}.detail-section h2{font-size:34px;margin-bottom:26px}.detail-section>.eyebrow{margin-bottom:15px}.detail-section>p:not(.eyebrow):not(.snapshot-note):not(.calendar-message){font-size:12px;color:var(--muted);line-height:1.95}.property-about h2{font-size:36px}.property-facts{display:grid;grid-template-columns:repeat(4,1fr);margin:30px 0;gap:15px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.property-facts>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:10px}.property-facts .icon{width:25px;height:25px}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:24px 30px;margin-top:32px}.amenities>div{display:flex;gap:15px;align-items:center;font-size:11px}.amenities .icon{width:22px;height:22px;stroke:#788b8e}.small-section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.small-section-heading>span{font-size:10px;color:var(--muted);white-space:nowrap}.detail-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.detail-photo-grid button{padding:0;border:0;aspect-ratio:1.3;overflow:hidden;border-radius:2px}.detail-photo-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.detail-photo-grid button:hover img{transform:scale(1.05)}#galerija>.text-link{margin-top:22px}.booking-sidebar{padding-top:47px;align-self:stretch}.booking-card{position:sticky;top:125px;border:1px solid var(--line);background:white;padding:28px;border-radius:4px;box-shadow:0 8px 25px #243d4c05}.booking-card>.eyebrow{font-size:8px;margin-bottom:17px}.booking-from{font-size:11px;color:var(--muted)}.booking-from strong{font-size:31px;color:var(--ink);font-family:var(--serif);font-weight:400;margin-left:5px}.booking-caption{font-size:10px;color:var(--muted);margin:5px 0 22px}.booking-dates{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:2px}.booking-dates label{padding:11px 12px 8px;font-size:9px;color:var(--muted);min-width:0}.booking-dates label+label{border-left:1px solid var(--line)}.booking-dates input{display:block;width:100%;max-width:100%;font-size:10px;color:var(--ink);padding:5px 0;border:0;min-height:27px;background:white}.guest-select{display:block;padding:10px 12px;border:1px solid var(--line);border-radius:2px;margin-top:10px;font-size:9px;color:var(--muted)}.guest-select select{display:block;width:100%;font-size:11px;border:0;color:var(--ink);padding:5px 0 0;background:white}.booking-submit{width:100%;font-size:11px;margin-top:19px;gap:18px}.booking-reassurance{text-align:center;font-size:9px;margin:15px 0 4px;display:flex;align-items:center;justify-content:center;gap:4px}.booking-reassurance .icon{width:12px;height:12px}.booking-help{text-align:center;font-size:8px;color:var(--muted);line-height:1.6}.booking-contact{text-align:center;border-top:1px solid var(--line);padding-top:17px;margin-top:20px}.booking-contact>span{display:block;font-size:9px;color:var(--muted)}.booking-contact>a{font-size:12px;font-weight:600}.booking-contact .icon{width:14px;height:14px;margin-right:5px}.booking-estimate{font-size:11px;margin-top:15px}.booking-estimate:empty{display:none}.estimate-row{display:flex;justify-content:space-between;gap:10px;margin:10px 0}.estimate-total{border-top:1px solid var(--line);padding-top:12px;font-weight:600;font-size:13px}.estimate-status{display:flex;gap:8px;align-items:center;font-size:10px;color:#45684f;padding:8px 10px;background:#f1f5ef;border-radius:2px;margin:14px 0}.estimate-status.unknown{color:#866b44;background:#f6f2e9}.estimate-status.unavailable{color:#954c43;background:#faf0ed}.booking-estimate .estimate-note{font-size:9px;color:var(--muted);line-height:1.7;margin:5px 0}.form-error{font-size:11px;color:#9a4e44;background:#fcf1ef;padding:10px;margin:10px 0 0;grid-column:1/-1}.alternative-hint{font-size:11px;margin-top:20px}.alternative-hint a{display:block;margin:8px 0;text-decoration:underline}.calendar-nav{display:flex;justify-content:space-between;align-items:center;margin:25px 0 16px}.calendar-nav>span{font-size:10px;color:var(--muted)}.calendar-nav>div{display:flex;gap:6px}.calendar-nav .icon-button{height:32px;width:32px}.calendar-nav .icon{width:15px;height:15px}#cal-prev .icon{transform:rotate(180deg)}.calendar-months{display:grid;grid-template-columns:1fr 1fr;gap:25px}.calendar-month h3{font-family:var(--sans);font-size:12px;font-weight:600;text-align:center;letter-spacing:0;margin-bottom:18px}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.calendar-weekdays{font-size:8px;color:var(--muted);text-align:center;margin-bottom:8px}.calendar-day{height:44px;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid transparent;background:#e9eee5;border-radius:2px;padding:2px;font-size:10px;line-height:1.3;gap:3px}.calendar-day small{font-size:6px;color:#6e7e70}.calendar-day.unavailable{background:repeating-linear-gradient(135deg,#ebeae5,#ebeae5 4px,#e3e3dd 4px,#e3e3dd 5px);text-decoration:line-through;color:#949c98}.calendar-day.unavailable small{visibility:hidden}.calendar-day.unknown{background:transparent;border:1px dashed #d9d9d0}.calendar-day.past{background:transparent;color:#a1aaa8}.calendar-day.selected{background:var(--ink);color:white}.calendar-day.selected small{color:#dde6e7}.calendar-day.in-range{background:#d4dedb}.calendar-day:hover:not(:disabled){border-color:var(--ink)}.calendar-legend{display:flex;gap:15px;flex-wrap:wrap;margin-top:22px}.calendar-legend>span{display:flex;align-items:center;gap:5px;font-size:8px;color:var(--muted)}.calendar-legend i{display:block;width:10px;height:10px;border-radius:1px}.legend-available{background:#e1e9dc}.legend-booked{background:repeating-linear-gradient(135deg,#e5e3dd,#e5e3dd 2px,#bbbeb6 2px,#bbbeb6 3px)}.legend-selected{background:var(--ink)}.legend-unknown{border:1px dashed #b5b8ae}.calendar-message{font-size:10px;line-height:1.6;color:#886240;margin:16px 0}.calendar-message:empty{display:none}.rates-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:28px;padding:16px 0;font-size:11px}.rates-details summary{display:flex;justify-content:space-between;list-style:none;cursor:pointer;align-items:center;font-weight:500}.rates-details summary .icon{width:15px;height:15px;transform:rotate(90deg)}.rates-details[open] summary .icon{transform:rotate(-90deg)}.rates-details>p{font-size:9px;margin-top:15px;color:var(--muted)}.rates-table{width:100%;border-collapse:collapse;margin-top:20px;font-size:10px}.rates-table th{text-align:left;font-weight:500;color:var(--muted);background:#efefe8}.rates-table td,.rates-table th{padding:10px 13px;border-bottom:1px solid var(--line)}.rates-table td:last-child,.rates-table th:last-child{text-align:right}.location-map{display:flex;width:max-content;margin-top:16px}.tour-placeholder{height:270px;position:relative;border-radius:3px;overflow:hidden}.tour-placeholder>img{width:100%;height:100%;object-fit:cover;filter:brightness(.6)}.tour-placeholder>div{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.tour-placeholder small{display:block;color:white;font-size:8px;margin-top:13px}.tour-frame{width:100%;height:400px;border:0;border-radius:3px}.related-section{padding-top:85px;padding-bottom:85px}.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.related-grid .stay-card{grid-column:auto}.related-grid .card-heading{flex-direction:column;gap:0;padding-top:16px}.related-grid h3{font-size:22px}.related-grid .card-facts{flex-wrap:wrap;gap:7px 12px}.related-grid .card-tagline{font-size:10px;min-height:35px}.related-grid .card-price{margin-bottom:8px}.related-grid .card-image{aspect-ratio:1.25}.related-grid .image-label{left:10px;top:10px;font-size:8px}.related-grid .pool-label{font-size:8px;left:10px}.related-grid .card-image-arrow{right:10px;width:26px;height:26px}.mobile-book{display:none}
.destination-hero{height:540px;position:relative;isolation:isolate;border-radius:4px;overflow:hidden;color:#fff;margin-top:15px}.destination-hero>img{width:100%;height:100%;object-fit:cover;filter:brightness(.8)}.destination-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#122e496b,transparent)}.destination-hero>div{position:absolute;bottom:46px;left:50px;z-index:1}.destination-hero h1{font-size:68px;margin:0}.beaches{padding-bottom:40px}.beaches>article{display:grid;grid-template-columns:80px 1fr 100px;gap:55px;border-top:1px solid var(--line);padding:48px 0}.beaches .beach-number{font-family:var(--serif);font-size:35px;color:var(--sand)}.beaches article>div{max-width:700px}.beaches article>div p:not(.eyebrow){font-size:13px;color:var(--muted)}.beaches article>div h2{font-size:38px}.beaches article>.icon{width:54px;height:54px;stroke:#a6b1ad;align-self:center}.destination-end{display:grid;grid-template-columns:1fr 1fr;margin-top:20px;margin-bottom:95px;gap:70px;align-items:center}.destination-end img{width:100%;height:390px;object-fit:cover;border-radius:3px}.destination-end h2{font-size:37px}.legal-page{max-width:780px;padding-top:65px;padding-bottom:80px}.legal-page h1{font-size:48px;margin-bottom:40px}.legal-page h2{font-size:28px;margin-top:35px;margin-bottom:15px}.legal-page p{font-size:13px;color:var(--muted)}.legal-page a{text-decoration:underline}
dialog{border:0;padding:0}dialog::backdrop{background:#102330c4;backdrop-filter:blur(7px)}.lightbox{background:#15242d;color:#fff;width:100vw;height:100svh;max-width:100vw;max-height:100svh;inset:0;margin:0;overflow:hidden}.lightbox-head{position:absolute;left:35px;right:90px;top:25px;display:flex;align-items:center;justify-content:space-between;font-size:12px}.lightbox-close{position:absolute;right:25px;top:18px;border-color:#ffffff45;z-index:2}#lightbox-image{position:absolute;left:80px;top:75px;width:calc(100% - 160px);height:calc(100% - 185px);object-fit:contain}.lightbox-prev,.lightbox-next{position:absolute;top:46%;z-index:2;border-color:#ffffff45}.lightbox-prev{left:20px}.lightbox-prev .icon{transform:rotate(180deg)}.lightbox-next{right:20px}.lightbox-thumbs{position:absolute;bottom:22px;left:10%;right:10%;display:flex;gap:7px;overflow-x:auto;padding:7px;scrollbar-width:thin;scrollbar-color:#99a6a9 transparent}.lightbox-thumbs button{border:2px solid transparent;background:transparent;padding:0;flex:0 0 67px;height:48px;opacity:.5;border-radius:2px;overflow:hidden}.lightbox-thumbs button.active{border-color:#fff;opacity:1}.lightbox-thumbs img{width:100%;height:100%;object-fit:cover}.booking-dialog{width:min(620px,calc(100% - 30px));max-height:90svh;background:var(--paper);padding:42px;border-radius:5px;overflow-y:auto}.dialog-close{position:absolute;right:15px;top:15px;width:32px;height:32px}.dialog-close .icon{width:15px;height:15px}.booking-dialog h2{font-size:33px;margin-bottom:24px}.booking-dialog .eyebrow{font-size:9px}.inquiry-property{display:flex;gap:18px;align-items:center;margin:20px 0;padding-bottom:20px;border-bottom:1px solid var(--line)}.inquiry-property img{width:90px;height:75px;object-fit:cover;border-radius:2px}.inquiry-property h3{font-size:22px;margin-bottom:5px}.inquiry-property p{font-size:10px;color:var(--muted);margin:0}.inquiry-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.inquiry-grid label{font-size:10px;color:var(--muted);display:block}.inquiry-grid input,.inquiry-grid textarea{width:100%;border:1px solid var(--line);border-radius:2px;min-height:43px;background:#fff;padding:10px;margin-top:5px;font-size:12px;color:var(--ink)}.inquiry-grid .full{grid-column:1/-1}.inquiry-grid textarea{min-height:75px;resize:vertical}.privacy-consent{font-size:10px;display:flex;gap:10px;align-items:flex-start;margin:20px 0;color:var(--muted)}.privacy-consent input{margin-top:5px}.privacy-consent a{text-decoration:underline}.inquiry-note{font-size:10px;color:var(--muted);line-height:1.7;margin:15px 0}.inquiry-form>.button{width:100%}.inquiry-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:25px}.inquiry-actions .button{padding:14px 17px;font-size:11px;gap:10px}.inquiry-actions .secondary{background:transparent;color:var(--ink)}.inquiry-summary{background:white;padding:18px;border:1px solid var(--line);font-size:12px;white-space:pre-wrap;max-height:240px;overflow-y:auto}.inquiry-success-icon{color:#64816d;margin-bottom:20px}.inquiry-success-icon .icon{width:35px;height:35px}.edit-inquiry{font-size:11px;border:0;border-bottom:1px solid var(--line);padding:5px 0;background:none;margin-top:20px}
@media(min-width:1600px){.hero{margin:0 35px}.hero-content{top:25%}}
@media(max-width:1190px){.header-inner{padding:0 28px;gap:18px}.desktop-nav{gap:20px}.brand img{width:53px;height:41px}.brand>span{font-size:18px}.nav-book{padding:12px 15px;gap:12px;font-size:10px}.wrap{width:calc(100% - 72px)}.card-heading h3{font-size:23px}.card-heading{flex-wrap:wrap;gap:0}.card-price{margin-left:auto}.card-facts{gap:12px;font-size:8px}.property-layout{grid-template-columns:minmax(0,1fr) 320px;gap:40px}.booking-card{padding:23px}.calendar-months{gap:14px}.calendar-day{height:39px}.property-gallery{height:420px}.experience-copy{padding:60px 10%}.experience-copy h2{font-size:37px}.cta-section{padding-left:36px;padding-right:36px}.footer{padding-left:36px;padding-right:36px}.footer-main{gap:30px}.related-grid{grid-template-columns:repeat(2,1fr);gap:35px 25px}.related-grid .card-heading{flex-direction:row}.related-grid .card-image{aspect-ratio:1.6}.related-grid .card-tagline{min-height:0}}
@media(max-width:950px){.desktop-nav{display:none}.menu-toggle{display:inline-flex}.header-inner{height:85px}.nav-book{margin-left:auto}.hero{margin:0 14px;min-height:550px;height:70svh}.hero-content{top:20%;left:6%}.hero h1{font-size:59px}.hero-bottom{bottom:65px}.search-form{grid-template-columns:1fr 1fr .85fr 1.15fr;padding:15px 10px}.search-field{padding:0 15px}.search-submit{margin-left:15px;padding:12px 16px;gap:10px}.intro{gap:8%;padding-top:75px;padding-bottom:70px}.intro h2{font-size:38px}.section-heading{align-items:flex-start;flex-direction:column;gap:22px}.section-heading h2{font-size:38px}.stays-grid{gap:35px 20px}.stay-card{grid-column:span 3}.stay-card:last-child{grid-column:span 3}.collection{padding-bottom:65px}.experience-image{min-height:515px}.experience-copy{padding:45px 10%}.experience-copy h2{font-size:33px}.destination-teaser{gap:7%;padding-top:80px;padding-bottom:80px}.destination-copy h2{font-size:38px}.destination-image{height:480px}.cta-section{gap:35px}.cta-section h2{font-size:34px}.footer-main{grid-template-columns:1.2fr 1fr 1fr}.footer-main>div:last-child{display:none}.property-layout{grid-template-columns:minmax(0,1fr) 300px;gap:27px}.property-facts{grid-template-columns:1fr 1fr;gap:18px}.property-facts>div{flex-direction:row;align-items:center}.calendar-months{grid-template-columns:1fr}.calendar-month:nth-child(2){display:none}.calendar-day{height:43px}.calendar-day small{font-size:7px}.amenities{grid-template-columns:1fr;gap:18px}.detail-section h2{font-size:29px}.booking-card{padding:20px}.property-title h1{font-size:46px}.detail-nav{gap:25px;font-size:10px}.property-gallery{height:365px}.destination-hero{height:450px}.destination-end{gap:35px}.destination-end h2{font-size:32px}.beaches>article{gap:25px;grid-template-columns:55px 1fr 60px}.beaches article>.icon{width:40px;height:40px}}
@media(max-width:700px){html{scroll-padding-top:90px}body{font-size:13px}.wrap{width:calc(100% - 40px)}.header-inner{height:77px;padding:0 20px;gap:12px}.brand{gap:8px}.brand img{width:45px;height:35px}.brand>span{font-size:16px}.brand small{font-size:6px;margin-top:5px}.nav-book{font-size:9px;min-height:37px;padding:9px 12px;gap:0}.nav-book .icon{display:none}.menu-toggle{width:33px;height:33px;padding:6px}.menu-toggle .icon{width:18px;height:18px}.hero{margin:0 10px;min-height:590px;height:76svh;max-height:720px;border-radius:3px}.hero-content{top:15%;left:7%;right:7%}.hero-content .eyebrow{font-size:8px;letter-spacing:.2em;margin-bottom:19px}.hero h1{font-size:46px;line-height:1.15;letter-spacing:-.045em}.hero-content>p:not(.eyebrow){font-size:11px;line-height:1.9;max-width:260px}.hero-content>p:not(.eyebrow) br{display:none}.hero-link{font-size:10px;gap:20px;margin-top:10px}.hero-photo img{object-position:var(--hero-mobile-position,58% center)}.hero-shade{background:linear-gradient(90deg,#142c419c,#17283c20),linear-gradient(0deg,#0c223e66,transparent)}.hero-bottom{left:7%;right:7%;bottom:115px;font-size:8px}.hero-bottom>span{max-width:180px}.hero-controls{gap:9px}.hero-controls .icon-button{width:28px;height:28px}#hero-counter{font-size:9px}.home-search{margin-top:-85px;width:calc(100% - 50px)}.search-form{grid-template-columns:1fr 1fr;padding:18px 17px;gap:15px 0}.search-field{padding:0 13px 0 0;min-width:0}.search-field:nth-child(2){padding-left:15px;padding-right:0;border-right:0}.search-field label{font-size:8px;gap:5px}.search-field label .icon{width:13px;height:13px}.search-field input,.search-field select{font-size:11px;padding-top:3px;min-height:28px}.guests-field{border:0;border-top:1px solid var(--line);padding-top:13px}.search-submit{margin:0 0 0 12px;height:43px;min-height:43px;font-size:9px;gap:10px;padding:10px 12px}.search-submit .icon{width:15px;height:15px}.promise-strip{display:grid;grid-template-columns:1fr 1fr;gap:17px 20px;padding:28px 0;font-size:8px}.promise-strip>span{gap:8px}.promise-strip .icon{width:18px;height:18px}.intro{grid-template-columns:1fr;gap:25px;padding-top:60px;padding-bottom:55px}.intro h2{font-size:36px}.eyebrow{font-size:8px;margin-bottom:16px}.intro-copy{padding-top:0;font-size:12px}.intro-copy p+p{font-size:11px}.intro-copy p{margin-bottom:14px}.section-heading{margin-bottom:27px;gap:23px}.section-heading h2{font-size:34px}.filter-tabs{gap:5px}.filter-tabs button{font-size:9px;padding:9px 13px}.stays-grid{display:flex;flex-direction:column;gap:35px}.card-image{aspect-ratio:1.45}.card-heading{padding-top:17px}.card-heading h3{font-size:27px}.card-price{font-size:10px}.card-price strong{font-size:14px}.card-tagline{font-size:10px}.card-facts{font-size:9px;gap:20px}.image-label{top:14px;left:14px;font-size:8px}.pool-label{left:14px;bottom:14px;font-size:9px}.collection-note{font-size:9px;line-height:1.8;margin-top:30px}.collection{padding-bottom:50px}.experience-band{grid-template-columns:1fr}.experience-image{min-height:0;height:340px}.experience-image img{object-position:50% 45%}.experience-copy{padding:46px 30px;max-width:none}.experience-copy h2{font-size:36px}.experience-copy>p:not(.eyebrow){max-width:500px;font-size:11px}.experience-points{display:grid;gap:16px;font-size:10px;margin:8px 0 27px}.destination-teaser{grid-template-columns:1fr;gap:30px;padding-top:60px;padding-bottom:60px}.destination-copy h2{font-size:36px}.destination-copy>p:not(.eyebrow){font-size:11px}.destination-links a{font-size:11px;padding:13px 0}.destination-image{height:370px}.cta-section{flex-direction:column;align-items:flex-start;padding:42px 25px;gap:30px}.cta-section h2{font-size:33px}.cta-contact{font-size:11px}.cta-contact>a:not(.text-link){font-size:14px}.footer{padding:42px 25px 0;background-image:linear-gradient(170deg,rgba(18,48,61,.80),rgba(16,42,54,.95)),url("/assets/home/17.webp");background-position:center,44% center;background-size:cover,auto 106%}.footer-main{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-main>div:first-child{grid-column:1/-1}.footer-main>div:first-child>p{margin-top:15px;font-size:10px}.footer-main h4{font-size:9px;margin-bottom:17px}.footer-main>div>a:not(.brand){font-size:10px}.footer-main>div:last-child{display:block}.footer-bottom{font-size:8px;flex-wrap:wrap;row-gap:12px;justify-content:space-between;margin-top:30px}.footer-bottom>span:last-child{flex:0 0 100%}.page-intro{padding-top:35px;padding-bottom:20px}.page-intro h1{font-size:38px}.page-intro>p:not(.eyebrow){font-size:11px;max-width:290px}.listing-search .search-form{border:1px solid var(--line)}.listing-collection{padding-top:32px}.listing-collection .section-heading{align-items:flex-start;gap:20px}.notice{font-size:10px;padding:13px 15px}.snapshot-note{font-size:9px}.property-title{padding-top:20px;padding-bottom:20px}.property-title-row{margin-top:15px;align-items:flex-start}.property-title h1{font-size:38px;margin-bottom:12px}.property-title-row p{font-size:9px}.property-type{display:none}.breadcrumb{font-size:9px}.property-gallery{width:calc(100% - 20px);height:370px;display:flex;gap:5px}.gallery-main{flex:1}.gallery-side{display:none}.property-gallery .gallery-all{right:15px;bottom:15px;min-height:35px;font-size:9px;padding:10px 13px}.detail-nav{gap:25px;overflow:auto;white-space:nowrap;padding:19px 0;font-size:10px;scrollbar-width:none}.property-layout{display:flex;flex-direction:column;gap:0}.detail-section{padding:35px 0;scroll-margin-top:90px}.detail-section h2{font-size:29px}.property-about h2{font-size:31px}.detail-section>p:not(.eyebrow):not(.snapshot-note):not(.calendar-message){font-size:11px}.property-facts{grid-template-columns:1fr 1fr;gap:22px 10px;margin:25px 0;padding:21px 0}.property-facts>div{font-size:10px;gap:10px}.property-facts .icon{width:23px;height:23px}.amenities{grid-template-columns:1fr 1fr;gap:22px 15px}.amenities>div{font-size:10px;gap:11px}.amenities .icon{width:20px;height:20px}.small-section-heading{gap:10px}.small-section-heading h2{font-size:27px}.small-section-heading>span{font-size:8px}.detail-photo-grid{gap:6px;grid-template-columns:repeat(2,1fr)}.detail-photo-grid button{aspect-ratio:1.4}.calendar-day{height:47px;font-size:11px}.calendar-day small{font-size:8px}.calendar-weekdays{font-size:9px}.calendar-month h3{font-size:13px}.calendar-legend{gap:13px}.calendar-legend>span{font-size:8px}.booking-sidebar{padding-top:35px;scroll-margin-top:92px}.booking-card{position:static;padding:26px}.booking-card>.eyebrow{font-size:9px}.booking-from strong{font-size:34px}.booking-dates input{font-size:12px}.booking-caption{font-size:11px}.booking-dates label,.guest-select{font-size:10px}.guest-select select{font-size:12px}.booking-submit{font-size:12px}.booking-reassurance{font-size:10px}.booking-help{font-size:9px}.booking-contact>span{font-size:10px}.booking-contact>a{font-size:13px}.mobile-book{display:flex;position:fixed;bottom:12px;left:20px;right:20px;z-index:20;box-shadow:0 6px 24px #0002;font-size:12px}.mobile-book.is-hidden{display:none}.related-section{padding-top:55px;padding-bottom:50px}.related-grid{grid-template-columns:1fr 1fr;gap:25px 15px}.related-grid .card-image{aspect-ratio:1.05}.related-grid .image-label{font-size:6px;left:7px;top:7px;padding:4px 6px}.related-grid .pool-label{font-size:6px;left:7px;gap:3px;bottom:10px}.related-grid .pool-label .icon{width:13px;height:13px}.related-grid .card-image-arrow{display:none}.related-grid h3{font-size:19px}.related-grid .card-tagline{display:none}.related-grid .card-price{font-size:8px;margin:2px 0 8px}.related-grid .card-price strong{font-size:11px}.related-grid .card-facts{font-size:7px;padding-top:8px;gap:7px}.related-grid .card-facts .icon{width:12px;height:12px}.related-grid .card-facts>span:last-child{display:none}.related-grid .card-heading{display:flex;flex-direction:column;align-items:flex-start}.related-grid .card-price{margin-left:0}body[data-page=property] .footer-bottom{padding-bottom:82px}.destination-hero{height:420px;width:calc(100% - 20px);margin-top:0}.destination-hero>div{left:25px;bottom:35px}.destination-hero h1{font-size:50px}.destination-hero .eyebrow{font-size:8px}.beaches>article{grid-template-columns:35px 1fr;gap:20px;padding:35px 0}.beaches article>.icon{display:none}.beaches .beach-number{font-size:28px}.beaches article>div h2{font-size:29px}.beaches article>div p:not(.eyebrow){font-size:11px}.beaches article .text-link{font-size:10px;gap:15px}.destination-end{grid-template-columns:1fr;gap:30px;margin-bottom:60px}.destination-end img{height:300px}.destination-end h2{font-size:32px}.legal-page{padding-top:40px;padding-bottom:50px}.legal-page h1{font-size:36px}.legal-page h2{font-size:26px}.legal-page p{font-size:12px}.lightbox-head{top:26px;left:20px;right:75px;font-size:10px;gap:15px}.lightbox-close{right:15px;top:18px;width:32px;height:32px}#lightbox-image{left:0;top:85px;width:100%;height:calc(100% - 190px)}.lightbox-prev,.lightbox-next{top:50%;background:#12293966;width:32px;height:32px}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-thumbs{left:15px;right:15px;bottom:20px}.booking-dialog{padding:35px 22px 25px}.booking-dialog h2{font-size:28px}.inquiry-grid{gap:12px}.inquiry-actions{grid-template-columns:1fr}.inquiry-property{gap:13px}.inquiry-property h3{font-size:21px}.inquiry-property p{font-size:9px}.inquiry-property img{width:76px;height:68px}}
.listing-collection .stays-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.listing-collection .stay-card{grid-column:auto}.listing-collection .card-heading{flex-wrap:wrap;gap:7px}.listing-collection .card-price{margin-left:0}.listing-collection .card-facts{flex-wrap:wrap}.listing-collection .card-availability .stay-total{display:block;float:none;margin-top:5px}
@media(max-width:950px) and (min-width:701px){.listing-collection .stays-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.detail-section>p:not(.eyebrow):not(.snapshot-note):not(.calendar-message){font-size:13px}.destination-copy>p:not(.eyebrow),.experience-copy>p:not(.eyebrow){font-size:13px}
@media(max-width:700px){.intro-copy,.intro-copy p+p,.detail-section>p:not(.eyebrow):not(.snapshot-note):not(.calendar-message),.destination-copy>p:not(.eyebrow),.experience-copy>p:not(.eyebrow),.beaches article>div p:not(.eyebrow){font-size:13px}.search-field input,.search-field select{font-size:12px}.search-field label{font-size:9px}.card-tagline{font-size:12px}.card-facts{font-size:10px}.property-facts>div,.amenities>div{font-size:11px}.calendar-legend>span{font-size:9px}.snapshot-note{font-size:10px}.footer-main>div>a:not(.brand){font-size:11px}.page-intro>p:not(.eyebrow){font-size:12px}}
@media(max-width:380px){.header-inner{padding:0 15px;gap:9px}.brand img{width:37px;height:29px}.brand>span{font-size:14px}.brand small{font-size:5px}.brand{gap:6px}.nav-book{font-size:8px;padding:8px 10px;max-width:92px}.menu-toggle{width:29px;height:29px;flex:none}.hero h1{font-size:40px}.card-facts{gap:12px}.calendar-legend{gap:8px}.calendar-legend>span{font-size:8px}}
/* One shared check-in/check-out calendar for search and property booking. */
.date-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;border:0;background:transparent;padding:2px 0;min-height:29px;color:var(--ink);font-size:12px;text-align:left;white-space:nowrap}.date-trigger svg{width:16px;height:16px;flex:none;stroke:#89959a}.date-trigger .date-placeholder{color:#7b888e}.date-trigger[aria-expanded=true]{color:var(--ink)}.date-trigger[aria-expanded=true] svg{stroke:var(--ink)}.booking-dates .date-trigger{font-size:10px;min-height:32px;gap:6px}.booking-dates .date-trigger svg{width:13px;height:13px}.range-picker-open{overflow:hidden}.date-range-popover{position:fixed;inset:auto;margin:0;width:min(680px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:27px 30px 0;background:#fff;color:var(--ink);border:1px solid #e4e7e3;border-radius:12px;box-shadow:0 22px 75px #16314330;overflow:auto}.date-range-popover::backdrop{background:#132d4212;backdrop-filter:none}.range-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:21px}.range-eyebrow{font-size:8px;font-weight:600;letter-spacing:.19em;color:#87928c;margin:0 0 6px}.range-heading h2{font-size:27px;margin:0;line-height:1.25}.range-close{background:#f5f6f3;border:0;border-radius:50%;height:31px;width:31px;padding:7px;flex:none;display:flex;align-items:center;justify-content:center}.range-close:hover{background:#e8ece7}.range-close svg{width:18px;height:18px}.range-selection{display:grid;grid-template-columns:1fr 35px 1fr;align-items:center;margin-bottom:14px;gap:9px}.range-choice{text-align:left;background:#f8f9f6;border:1px solid #e7eae4;border-radius:6px;padding:11px 15px;min-height:64px;transition:background .15s,border-color .15s}.range-choice.is-active{background:#f0f4ef;border-color:#859b92;box-shadow:inset 0 0 0 .3px #859b92}.range-choice>span{display:block;letter-spacing:.14em;font-size:8px;font-weight:600;color:#73867d}.range-choice strong{display:block;font-size:13px;font-weight:500;line-height:1.6;margin-top:3px}.range-between{text-align:center;color:#a1aaa3;font-size:20px}.range-instruction{display:flex;justify-content:space-between;align-items:baseline;gap:15px;color:#6b7d74;font-size:11px;margin:15px 0 19px;min-height:20px}.range-step{font-size:9px;color:#596e62;white-space:nowrap}.range-step i{font-style:normal;color:#a2ada5;margin-left:4px}.range-calendar-area{position:relative}.range-navigation{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;pointer-events:none;z-index:1}.range-nav{width:31px;height:31px;display:flex;align-items:center;justify-content:center;border:1px solid #e3e7e0;background:white;border-radius:50%;pointer-events:auto}.range-nav:hover:not(:disabled){background:#eef3ed}.range-nav svg{width:15px;height:15px}.range-prev svg{transform:rotate(180deg)}.range-months{display:grid;grid-template-columns:1fr 1fr;gap:36px}.range-month h3{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:0;text-align:center;margin:0 0 23px;min-height:31px;line-height:31px}.range-weekdays,.range-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.range-weekdays{font-size:8px;font-weight:500;color:#97a49d;text-align:center;margin-bottom:8px}.range-days{row-gap:4px}.range-day{position:relative;height:36px;min-width:0;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:0;font-size:12px;border-radius:0;color:#334f43}.range-day>span{position:relative;z-index:1;height:34px;width:34px;border-radius:50%;display:flex;align-items:center;justify-content:center}.range-day:hover:not(:disabled)>span{background:#e6eee6}.range-day.is-today>span{box-shadow:inset 0 0 0 1px #bac8bd}.range-day.in-range,.range-day.range-preview{background:#eaf0e7}.range-day.range-start:has(~.in-range),.range-day.range-start:has(~.range-preview){background:linear-gradient(90deg,transparent 50%,#eaf0e7 50%)}.range-day.range-end{background:linear-gradient(90deg,#eaf0e7 50%,transparent 50%)}.range-day.range-start>span,.range-day.range-end>span,.range-day.range-start:hover>span,.range-day.range-end:hover>span{background:var(--ink);color:#fff;box-shadow:none}.range-day.is-booked:not(.range-start):not(.range-end){text-decoration:line-through;color:#a4aaa7}.range-day:disabled{opacity:1;color:#c8cfc9}.range-day:focus-visible{outline:none;z-index:2}.range-day:focus-visible>span{outline:2px solid var(--sand);outline-offset:2px}.range-footer{margin:22px -30px 0;padding:17px 30px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #e9ece6;background:#fafbf8}.range-clear{font-size:10px;border:0;border-bottom:1px solid #b5c0b6;background:transparent;padding:3px 0;color:#687e6c}.range-summary{font-size:10px;color:#6c7e70}.range-clear:hover{color:var(--ink)}
@media(max-width:700px){.date-trigger{font-size:11px}.date-trigger svg{width:13px;height:13px}.booking-dates .date-trigger{font-size:12px}.date-range-popover{width:100%;max-width:100%;max-height:94dvh;left:0!important;right:0;top:auto!important;bottom:0!important;border:0;border-radius:17px 17px 0 0;padding:25px 24px 0;box-shadow:0 -12px 55px #122c4826}.date-range-popover::backdrop{background:#172b4a66;backdrop-filter:blur(3px)}.range-heading{margin-bottom:20px}.range-heading h2{font-size:27px}.range-close{height:34px;width:34px}.range-selection{grid-template-columns:1fr 22px 1fr;gap:6px}.range-choice{padding:10px 12px}.range-choice strong{font-size:12px}.range-instruction{font-size:12px;margin:16px 0 22px}.range-months{grid-template-columns:1fr;gap:0}.range-month h3{font-size:14px;margin-bottom:22px;line-height:34px}.range-nav{width:34px;height:34px}.range-weekdays{font-size:9px;margin-bottom:9px}.range-days{row-gap:5px}.range-day{height:40px;font-size:13px}.range-day>span{height:38px;width:38px}.range-footer{margin:23px -24px 0;padding:18px 24px calc(18px + env(safe-area-inset-bottom))}.range-clear,.range-summary{font-size:11px}}
@media(max-width:380px){.date-range-popover{padding:22px 18px 0}.range-heading h2{font-size:25px}.range-choice{padding:9px 10px}.range-choice strong{font-size:11px}.range-day{height:36px}.range-day>span{height:33px;width:33px}.range-footer{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}.date-trigger{font-size:10px}.range-summary{font-size:10px}.booking-dates .date-trigger{font-size:10px}}
@media(min-width:701px){.date-range-popover{padding:20px 27px 0}.range-heading{margin-bottom:16px}.range-heading h2{font-size:25px}.range-choice{min-height:56px;padding:8px 13px}.range-selection{margin-bottom:10px}.range-instruction{margin:12px 0;min-height:18px}.range-month h3{margin-bottom:16px}.range-day{height:32px}.range-day>span{height:31px;width:31px}.range-days{row-gap:2px}.range-footer{margin:14px -27px 0;padding:13px 27px}}
/* A quiet coastal backdrop for the home-page welcome. */
.welcome-intro{position:relative;isolation:isolate;overflow:hidden;grid-template-columns:1.1fr 1fr;gap:64px;min-height:350px;margin-top:58px;margin-bottom:86px;padding:62px 58px;border-radius:14px;background-color:#173d4b;background-image:linear-gradient(110deg,rgba(18,48,61,.84) 0%,rgba(19,53,65,.68) 46%,rgba(16,42,54,.94) 100%),url("/assets/home/17.webp");background-position:center,center 46%;background-size:cover,106% auto;background-repeat:no-repeat;color:#fff;box-shadow:0 18px 48px #213d4b0a}
.welcome-intro .intro-heading{padding-top:4px;min-width:0}
.welcome-intro .eyebrow{display:flex;align-items:center;gap:13px;color:#eadbc7;font-size:9px;margin-bottom:24px}
.welcome-intro .eyebrow::before{content:"";width:27px;height:1px;background:#cbb08b;flex:none}
.welcome-intro h2{font-size:44px;line-height:1.22}
.welcome-intro h2 em{color:#f0dfc7}
.welcome-intro .intro-location{display:flex;align-items:center;gap:8px;margin:29px 0 0;font-size:10px;letter-spacing:.08em;color:#d4e2e3}
.welcome-intro .intro-location .icon{width:15px;height:15px;stroke:#dbc5a7}
.welcome-intro .intro-copy{padding:4px 0 0 42px;border-left:1px solid #ffffff2e;color:#e4ecec;font-size:13px;line-height:1.95}
.welcome-intro .intro-copy p+p{font-size:12px;color:#d1dfdf}
.welcome-intro .text-link{color:#fff;border-color:#cbb08b;margin-top:5px;padding-bottom:10px;gap:25px}
.welcome-intro .text-link .icon{transition:transform .2s}
.welcome-intro .text-link:hover{color:#f0dfc7}
.welcome-intro .text-link:hover .icon{transform:translate(3px,-3px)}
@media(max-width:1100px) and (min-width:701px){.welcome-intro{gap:35px;padding:48px 38px;margin-top:45px;margin-bottom:65px}.welcome-intro h2{font-size:36px}.welcome-intro .intro-copy{padding-left:28px}.welcome-intro .eyebrow{font-size:8px;gap:10px}}
@media(max-width:700px){.welcome-intro{grid-template-columns:1fr;gap:27px;min-height:0;padding:35px 27px;margin-top:32px;margin-bottom:50px;border-radius:12px}.welcome-intro{background-image:linear-gradient(170deg,rgba(18,48,61,.75),rgba(16,42,54,.95)),url("/assets/home/17.webp");background-position:center,44% center;background-size:cover,auto 106%}.welcome-intro .intro-heading{padding:0}.welcome-intro .eyebrow{font-size:8px;gap:10px;margin-bottom:21px}.welcome-intro .eyebrow::before{width:21px}.welcome-intro h2{font-size:clamp(28px,7.9vw,36px);line-height:1.25}.welcome-intro .intro-location{margin-top:22px;font-size:9px}.welcome-intro .intro-copy{border-left:0;border-top:1px solid #ffffff2e;padding:24px 0 0;font-size:13px;line-height:1.85}.welcome-intro .intro-copy p+p{font-size:13px}.welcome-intro .text-link{font-size:11px;margin-top:7px;padding-bottom:9px}}
/* Five equal cards across the full-width home-page collection. */
.home-collection{width:100%;max-width:none;margin-left:0;margin-right:0;padding:0 32px 86px}
.home-collection .section-heading{align-items:flex-end;flex-direction:row;margin-bottom:32px}
.home-collection .stays-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;align-items:stretch}
.home-collection .stay-card{grid-column:auto;display:flex;flex-direction:column;min-width:0;border:1px solid #e0e1db;border-radius:18px;background:#fff;box-shadow:0 3px 10px #18384907;overflow:hidden;transition:box-shadow .25s,border-color .25s}
.home-collection .stay-card:hover{border-color:#bdc8c7;box-shadow:0 9px 24px #18384912}
.home-collection .card-image{aspect-ratio:4/3;border-radius:0;flex:none}
.home-collection .card-image:after{background:linear-gradient(0deg,#0a26312b,transparent 45%)}
.home-collection .image-label{left:12px;top:12px;font-size:8px;padding:5px 8px;border-radius:4px;max-width:calc(100% - 24px)}
.home-collection .card-price{position:absolute;right:12px;bottom:12px;z-index:1;display:inline-flex;align-items:baseline;gap:3px;max-width:calc(100% - 24px);margin:0;padding:6px 10px;border-radius:22px;background:#fffffff5;color:var(--ink);font-size:10px;box-shadow:0 2px 8px #102d4012}
.home-collection .card-price strong{font-size:13px;font-weight:600}
.home-collection .card-price>span{font-size:10px}
.home-collection .card-body{display:flex;flex-direction:column;flex:1;min-width:0;padding:20px 18px 21px}
.home-collection .card-heading{display:block;padding:0;margin:0 0 8px}
.home-collection .card-heading h3{font-size:clamp(20px,1.4vw,27px);line-height:1.25;margin:0;min-height:2.5em;letter-spacing:-.025em}
.home-collection .card-location{display:flex;align-items:center;gap:5px;margin:0 0 17px;color:#64797f;font-size:11px;line-height:1.5}
.home-collection .card-location .icon{width:14px;height:14px}
.home-collection .card-facts{display:flex;flex-wrap:wrap;gap:9px 11px;border:0;padding:0;margin:0 0 15px;color:#526971;font-size:11px;line-height:1.5}
.home-collection .card-facts>span{gap:4px;white-space:nowrap}
.home-collection .card-facts .icon{width:15px;height:15px}
.home-collection .card-tagline{font-size:11px;line-height:1.75;margin:0 0 24px;min-height:3.5em;color:var(--muted)}
.home-collection .card-details{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:15px;border-top:1px solid #edf0eb;font-size:11px;font-weight:600;color:#54736e;min-height:36px}
.home-collection .card-details .icon{width:17px;height:17px;transition:transform .2s}
.home-collection .card-details:hover{color:var(--ink)}
.home-collection .card-details:hover .icon{transform:translateX(3px)}
.collection-swipe-hint{display:none}
.home-collection .collection-note{margin-top:27px}
@media(min-width:1280px){.home-collection .card-heading h3{min-height:1.25em}}
@media(min-width:1700px){.home-collection{padding-left:40px;padding-right:40px}.home-collection .stays-grid{gap:24px}.home-collection .card-body{padding:23px 22px}.home-collection .card-heading h3{min-height:1.25em}.home-collection .card-facts{gap:16px;font-size:12px}.home-collection .card-location,.home-collection .card-tagline,.home-collection .card-details{font-size:12px}}
@media(min-width:1101px) and (max-width:1279px){.home-collection{padding-left:24px;padding-right:24px}.home-collection .stays-grid{gap:16px}.home-collection .card-body{padding:18px 14px}.home-collection .card-facts{gap:8px;font-size:10px}}
@media(max-width:1100px){.home-collection{padding:0 28px 65px}.home-collection .stays-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);gap:20px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#b7c5c5 transparent;padding:0 1px 13px;scroll-padding:1px}.home-collection .stay-card{scroll-snap-align:start}.home-collection .card-heading h3{font-size:22px}.home-collection .section-heading{align-items:flex-start;flex-direction:column}.collection-swipe-hint{display:flex;align-items:center;justify-content:center;gap:10px;font-size:10px;color:var(--muted);margin:13px 0 0}.collection-swipe-hint .icon{width:16px;height:16px}.home-collection .collection-note{margin-top:16px}}
@media(max-width:800px){.home-collection .stays-grid{grid-auto-columns:calc((100% - 20px)/2.15)}}
@media(max-width:600px){.home-collection{padding:0 20px 50px}.home-collection .section-heading{margin-bottom:25px;gap:21px}.home-collection .stays-grid{grid-auto-columns:86%;gap:16px}.home-collection .card-image{aspect-ratio:4/3}.home-collection .card-body{padding:20px 20px 21px}.home-collection .card-heading h3{font-size:24px;min-height:1.25em}.home-collection .card-location{font-size:12px;margin-bottom:16px}.home-collection .card-facts{font-size:12px;gap:15px}.home-collection .card-facts .icon{width:17px;height:17px}.home-collection .card-tagline,.home-collection .card-details{font-size:12px}.home-collection .card-tagline{min-height:3.5em;margin-bottom:20px}.home-collection .card-price{font-size:11px}.home-collection .card-price strong{font-size:14px}.home-collection .image-label{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Hotel Vali and footer contact */
.hotel-promo{padding:70px 0;background:#eeeee7;border-top:1px solid var(--line)}
.hotel-promo-inner{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:70px}
.hotel-promo-photo{display:block;position:relative;overflow:hidden;isolation:isolate;border-radius:12px;aspect-ratio:1.55;background:#d5e1df}
.hotel-promo-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .6s var(--ease)}
.hotel-promo-photo:hover img{transform:scale(1.025)}
.hotel-promo-photo>span{position:absolute;bottom:20px;left:20px;display:flex;align-items:center;gap:7px;padding:10px 13px;background:#f7f6f2f0;color:var(--ink);font-size:10px;border-radius:3px}
.hotel-promo-photo>span .icon{width:14px;height:14px}
.hotel-promo-copy{max-width:450px;padding:8px 0}
.hotel-promo-copy .eyebrow{color:#856b4f;font-size:9px;margin-bottom:17px}
.hotel-promo-copy h2{font-size:43px;line-height:1.2;margin-bottom:23px}
.hotel-promo-copy>p:not(.eyebrow){font-size:13px;line-height:1.95;color:var(--muted);margin-bottom:20px}
.hotel-promo-details{display:flex;gap:24px;flex-wrap:wrap;margin:0 0 29px;color:var(--ink);font-size:11px}
.hotel-promo-details>span{display:flex;gap:8px;align-items:center}
.hotel-promo-details .icon{width:18px;height:18px;stroke:#967957}
.hotel-promo-copy .button{gap:28px}
.hotel-promo a:focus-visible{outline:2px solid var(--sand);outline-offset:5px}
.footer-main{grid-template-columns:minmax(180px,1.25fr) minmax(130px,.85fr) minmax(130px,.85fr) minmax(250px,1.4fr);gap:42px}
.footer-main>.footer-contact{display:block;scroll-margin-top:125px;min-width:0}
.footer-main .footer-address{margin-top:17px;margin-bottom:8px}
.footer-main>.footer-contact>p{font-size:11px;line-height:1.9;margin:0 0 17px;max-width:290px}
.footer-main>.footer-contact>a.footer-contact-link{display:flex;align-items:center;gap:11px;min-height:30px;margin:10px 0;color:#fff;font-size:13px;line-height:1.6}
.footer-contact-link>.icon{width:19px;height:19px;flex:none;stroke:#e9d9c0}
.footer-contact-link small{font-size:10px;color:#d9e5e7;margin-left:7px}
.footer-main>.footer-contact>.text-link{gap:17px;margin-top:20px;font-size:11px}
.footer-main>.footer-contact>a:hover{color:#f0dfc7}
@media(max-width:1100px){
.hotel-promo-inner{gap:40px;grid-template-columns:1.1fr 1fr}
.hotel-promo-copy h2{font-size:38px}
.hotel-promo-photo{aspect-ratio:1.25}
.footer{background-size:cover,auto 106%}
.footer-main{grid-template-columns:1fr 1fr;gap:35px 50px}
.footer-main>.footer-brand{order:0}
.footer-main>.footer-contact{order:1}
.footer-main>.footer-stays{order:2}
.footer-main>.footer-explore{order:3}
}
@media(max-width:700px){
.hotel-promo{padding:40px 0 44px}
.hotel-promo-inner{grid-template-columns:1fr;gap:28px}
.hotel-promo-photo{aspect-ratio:1.5;border-radius:10px}
.hotel-promo-photo>span{left:14px;bottom:14px;font-size:9px;padding:9px 11px}
.hotel-promo-copy{padding:0 5px;max-width:none}
.hotel-promo-copy .eyebrow{font-size:8px;margin-bottom:14px}
.hotel-promo-copy h2{font-size:35px;margin-bottom:19px}
.hotel-promo-copy>p:not(.eyebrow){font-size:13px;line-height:1.85}
.hotel-promo-details{gap:18px;font-size:10px;margin-bottom:25px}
.hotel-promo-copy .button{min-height:48px;padding:13px 21px}
.footer-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px 20px}
.footer-main>.footer-contact{grid-column:1/-1;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);scroll-margin-top:105px}
.footer-main>.footer-contact>h4{margin-top:0;margin-bottom:14px}
.footer-main>.footer-contact>p{max-width:320px;font-size:12px}
.footer-main>.footer-contact>a.footer-contact-link{font-size:14px;min-height:33px}
}
@media(prefers-reduced-motion:reduce){.hotel-promo-photo img{transition:none}.hotel-promo-photo:hover img{transform:none}}
