:root{--ink:#2d2b27;--muted:#6d6a61;--olive:#687561;--olive-dark:#39493e;--cream:#f6f2eb;--paper:#fffaf4;--sand:#e8dfd1;--line:#ded6ca;--white:#fff;--shadow:0 20px 50px #27231917;--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,h4,p{margin-top:0}p{line-height:1.65}.container{width:min(100% - 48px,1240px);margin-inline:auto}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:#fff;padding:12px;position:absolute;top:-100px;left:20px}.skip-link:focus{top:15px}:focus-visible{outline-offset:3px;outline:3px solid #ae8050}.button{letter-spacing:.015em;border:1px solid #0000;border-radius:100px;justify-content:center;align-items:center;gap:18px;min-height:48px;padding:13px 24px;font-size:13px;font-weight:700;transition:transform .2s,background .2s,color .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:var(--white)}.button-dark:hover{background:var(--olive-dark)}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:#e5e1d8}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.eyebrow{letter-spacing:.23em;text-transform:uppercase;color:var(--olive);margin-bottom:21px;font-size:11px;font-weight:700;line-height:1.5}.section{padding:105px 0}.section-title{font:400 clamp(35px,4.6vw,59px)/1.08 var(--serif);letter-spacing:-.035em;max-width:720px;margin-bottom:22px}.section-heading{margin-bottom:42px}.section-heading p:not(.eyebrow){color:var(--muted);max-width:580px}.lead{color:var(--muted);font-size:16px;line-height:1.85}.placeholder-note{letter-spacing:.09em;text-transform:uppercase;color:#717264;font-size:11px;display:inline-block}.micro-note{color:#777267;margin:8px 0 0;font-size:11px;line-height:1.5}.text-link{border-bottom:1px solid;padding-bottom:5px;font-size:13px;font-weight:700}.back-link{margin-bottom:58px;font-size:13px;font-weight:700;display:inline-block}.back-link:hover,.text-link:hover{color:var(--olive)}.site-header{z-index:30;background:var(--cream);position:relative}.header-inner{justify-content:space-between;align-items:center;gap:28px;height:88px;display:flex}.brand{white-space:nowrap;flex-direction:column;line-height:1;display:inline-flex}.brand span{font:400 29px/.95 var(--serif);letter-spacing:-.065em}.brand small{letter-spacing:.27em;margin:7px 0 0 2px;font-size:8px;font-weight:700}.site-nav{align-items:center;gap:24px;display:flex}.site-nav>a:not(.button){white-space:nowrap;font-size:12px;font-weight:700}.site-nav>a:not(.button):hover{color:var(--olive)}.nav-controls{gap:9px;display:flex}.nav-controls select{appearance:none;border:1px solid var(--line);background:0 0;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);cursor:pointer;background-position:calc(100% - 12px) 14px,calc(100% - 8px) 14px;background-repeat:no-repeat;background-size:4px 4px;border-radius:40px;padding:8px 22px 8px 11px;font-size:11px}.nav-cta{min-height:40px;padding:10px 19px;font-size:11px}.menu-toggle{background:0 0;border:0;width:36px;height:36px;padding:6px;display:none}.menu-toggle span{background:var(--ink);height:2px;margin:5px 0;display:block}.staging-ribbon{color:#fff;text-align:center;letter-spacing:.11em;text-transform:uppercase;background:#536353;padding:7px 12px;font-size:10px}.staging-ribbon span{opacity:.5;margin-inline:7px}.hero{color:#fff;background:#647062;height:min(725px,80vw);min-height:600px;position:relative;overflow:hidden}.hero-image,.hero-shade{width:100%;height:100%;position:absolute;inset:0}.hero-image{object-fit:cover}.hero-shade{background:linear-gradient(90deg,#13271da6 0%,#1a30226e 38%,#0e23191a 100%),linear-gradient(#0000 52%,#10261a6a)}.hero-content{z-index:1;padding-top:clamp(130px,15vw,210px);position:relative}.hero .eyebrow{color:#fff;font-size:12px}.hero h1{font:400 clamp(59px,7.6vw,112px)/.99 var(--serif);letter-spacing:-.055em;max-width:790px;margin:0 0 28px}.hero-subtitle{color:#fffdf9e8;max-width:535px;margin-bottom:29px;font-size:17px;line-height:1.7}.hero-actions{align-items:center;gap:28px;display:flex}.hero-link{border-bottom:1px solid #fff;padding-bottom:5px;font-size:13px;font-weight:700}.hero-side{writing-mode:vertical-rl;letter-spacing:.25em;font-size:10px;position:absolute;bottom:42px;right:30px}.search-shell{z-index:2;margin-top:-37px;position:relative}.booking-search{background:var(--paper);box-shadow:var(--shadow);grid-template-columns:1fr 1fr .8fr auto;align-items:stretch;gap:0;padding:18px 18px 18px 25px;display:grid}.search-field{border-right:1px solid var(--line);flex-direction:column;justify-content:center;min-width:0;padding:0 22px;display:flex}.search-field:first-child{padding-left:0}.search-field label{letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:700}.search-field input,.search-field select{outline-offset:4px;color:var(--muted);background:0 0;border:0;width:100%;min-width:0;font-size:14px}.search-button{border-radius:0;min-width:210px}.search-disclaimer{color:#69665d;text-align:right;margin:12px 0 0;font-size:11px}.form-error{color:#9c3c2d;grid-column:1/-1;margin:10px 0 0;font-size:12px}.collection-search{margin-top:0;padding-top:70px}.collection-intro h1{font:400 clamp(45px,5vw,70px)/1.05 var(--serif);letter-spacing:-.04em;max-width:720px;margin-bottom:45px}.collection-section{padding-top:92px}.collection-heading{justify-content:space-between;align-items:end;gap:40px;display:flex}.collection-heading p:not(.eyebrow){max-width:390px;margin:0 0 6px}.villa-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;display:grid}.clear-search{color:var(--olive-dark);background:0 0;border:0;margin:-15px 0 24px;padding:4px;text-decoration:underline}.empty-results{background:var(--paper);border:1px solid var(--line);padding:45px}.benefits-section{background:#e9e8df}.benefits-layout{grid-template-columns:1fr 1fr;gap:90px;display:grid}.benefits-layout>.lead,.benefits-layout>div:first-child .lead{max-width:500px}.benefits-list>div{border-bottom:1px solid #c9ccbf;grid-template-columns:55px 1fr;gap:25px;padding:23px 0;display:grid}.benefits-list>div:first-child{padding-top:0}.benefits-list>div>span{font:400 24px var(--serif);color:var(--olive)}.benefits-list h3{font:400 24px var(--serif);margin-bottom:7px}.benefits-list p{color:var(--muted);margin:0;font-size:14px}.experiences-section{background:var(--paper)}.experiences-layout{grid-template-columns:1.03fr .97fr;align-items:center;gap:90px;display:grid}.experience-photo{background:#d5dacb;height:550px;position:relative}.experience-photo img{object-fit:cover;width:100%;height:100%}.experience-photo>span{text-transform:uppercase;letter-spacing:.08em;background:#fffdf0dc;padding:7px 9px;font-size:10px;position:absolute;bottom:15px;left:16px}.experience-copy .lead{margin-bottom:35px}.experience-list>div{border-top:1px solid var(--line);font:400 23px var(--serif);align-items:center;gap:20px;padding:20px 0;display:flex}.experience-list>div span:first-child{font:700 11px var(--sans);color:var(--olive)}.experience-list>div span:last-child{font:400 22px var(--sans);margin-left:auto}.amenities-section{background:#eee9df}.section-heading.centered{text-align:center}.section-heading.centered .section-title{margin-inline:auto}.amenity-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.amenity{background:#fffaf4a8;align-items:center;gap:17px;min-height:84px;padding:18px 22px;font-size:14px;display:flex}.amenity>span{font:400 31px var(--serif);color:var(--olive);text-align:center;width:32px}.review-section{background:var(--olive-dark);color:#fff;text-align:center}.review-inner{max-width:720px}.review-section .eyebrow{color:#c6d4c1}.review-section .section-title{margin-inline:auto}.review-section p:not(.eyebrow){color:#d8dfd6;font-size:16px}.review-section .placeholder-note{color:#c5cec0}.editorial-gallery{background:var(--cream)}.editorial-gallery>.container>p:not(.eyebrow){color:var(--muted)}.editorial-grid{grid-template-columns:1.2fr .8fr 1fr .85fr;gap:13px;height:320px;margin-top:36px;display:grid}.editorial-grid img{object-fit:cover;width:100%;height:100%}.location-section{background:var(--paper)}.location-layout{grid-template-columns:1.4fr .6fr;min-height:370px;display:grid}.map-frame{background:#d8d8cc;min-height:320px}.map-frame iframe{border:0;width:100%;height:100%}.location-panel{background:#e8e6dc;flex-direction:column;justify-content:center;align-items:flex-start;padding:48px 42px;display:flex}.location-panel h3{font:400 30px var(--serif);margin:8px 0 12px}.location-panel p{color:var(--muted);margin-bottom:24px;font-size:14px}.faq-section{background:var(--cream)}.faq-layout{grid-template-columns:.8fr 1.2fr;gap:80px;display:grid}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:19px 0}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;font-size:15px;font-weight:700;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:24px;font-weight:400}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);margin:16px 34px 0 0;font-size:14px}.footer{color:#f4f0e8;background:#292d29;padding:78px 0 27px}.footer-grid{grid-template-columns:2fr 1fr 1fr 1.25fr;gap:45px;display:grid}.footer-brand .brand span{font-size:35px}.footer-brand p{color:#bfc5bc;max-width:290px;margin:25px 0;font-size:14px}.footer .placeholder-note{color:#abb4a8}.footer h3{font:400 20px var(--serif);margin-bottom:22px}.footer ul{margin:0;padding:0;list-style:none}.footer li{margin:0 0 13px}.footer li a,.footer-grid>div>a,.footer-grid>div>p{color:#bfc5bc;font-size:13px;line-height:1.5}.footer a:hover{color:#fff}.footer-grid>div>a{margin:10px 0;display:block}.footer-bottom{color:#b2b9af;border-top:1px solid #ffffff25;justify-content:space-between;gap:25px;margin-top:64px;padding-top:24px;display:flex}.footer-bottom>div{flex-wrap:wrap;gap:20px;display:flex}.footer-bottom a,.footer-bottom small{font-size:11px}.villa-page{padding:65px 0 100px}.villa-intro .eyebrow{text-transform:uppercase;margin-bottom:15px}.villa-intro h1{font:400 clamp(55px,6vw,83px)/1 var(--serif);letter-spacing:-.05em;margin:0 0 24px}.villa-facts{color:var(--muted);flex-wrap:wrap;gap:12px 27px;margin-bottom:26px;font-size:14px;display:flex}.intro-cta{margin-bottom:29px}.villa-gallery{grid-template-rows:1fr 1fr;grid-template-columns:1.55fr 1fr 1fr;gap:9px;height:520px;display:grid;position:relative}.gallery-tile{background:#ddd8cb;border:0;padding:0;overflow:hidden}.gallery-tile img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.gallery-tile:hover img{transform:scale(1.04)}.gallery-tile-0{grid-row:1/3}.gallery-label{letter-spacing:.1em;text-transform:uppercase;background:#fffdf0e6;padding:8px 11px;font-size:10px;position:absolute;bottom:15px;left:15px}.lightbox{z-index:100;background:#141a16f2;justify-content:center;align-items:center;padding:65px 80px;display:flex;position:fixed;inset:0}.lightbox img{object-fit:contain;max-width:100%;max-height:100%}.lightbox button{color:#222;background:#fffae7;border:0;place-items:center;width:42px;height:42px;font-size:33px;display:grid;position:absolute}.lightbox-close{top:18px;right:24px}.lightbox-prev{left:18px}.lightbox-next{right:18px}.lightbox-count{color:#fff;font-size:13px;position:absolute;bottom:20px}.villa-content{grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:70px;padding-top:75px;display:grid}.villa-section{border-bottom:1px solid var(--line);margin-bottom:54px;padding:0 0 54px}.villa-section .section-title{font-size:clamp(35px,3.8vw,50px)}.villa-section .lead{max-width:650px}.villa-section .placeholder-note{margin-top:12px}.detail-heading{font:400 35px var(--serif);margin-bottom:25px}.detail-amenities{grid-template-columns:repeat(2,1fr)}.detail-amenities .amenity{background:#ece8df}.bed-grid{grid-template-columns:repeat(2,1fr);gap:13px;display:grid}.bed-grid>div{background:var(--paper);border:1px solid var(--line);padding:22px}.bed-grid .eyebrow{margin-bottom:12px}.bed-grid h3{font:400 26px var(--serif);margin-bottom:8px}.bed-grid p{color:var(--muted);margin:0;font-size:13px}.location-detail .section-heading{margin-bottom:24px}.location-detail .section-title{font-size:35px}.location-detail .location-layout{grid-template-columns:1fr;min-height:0}.location-detail .map-frame{height:300px}.location-detail .location-panel{padding:24px}.rule-list{margin:0;padding:0;list-style:none}.rule-list li{border-bottom:1px solid var(--line);color:var(--muted);padding:13px 0}.rule-list li:before{content:"✓";color:var(--olive);margin-right:13px}.review-placeholder{background:#e9e7dc;padding:33px}.review-placeholder .section-title{font-size:32px}.review-placeholder p:not(.eyebrow){color:var(--muted)}.faq-block .section-title{font-size:34px}.villa-sidebar{position:sticky;top:30px}.enquiry-card{background:var(--paper);border:1px solid var(--line);padding:29px;box-shadow:0 12px 25px #2d2b270d}.enquiry-card .eyebrow{margin-bottom:9px}.enquiry-card h2{font:400 31px var(--serif);margin-bottom:7px}.enquiry-intro{color:var(--muted);font-size:13px}.enquiry-rate{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:end;gap:4px 9px;margin:19px 0;padding:16px 0;display:flex}.enquiry-rate span{width:100%;color:var(--muted);font-size:12px}.enquiry-rate strong{font:400 27px var(--serif)}.enquiry-rate small{color:var(--muted);margin-bottom:5px;font-size:11px}.enquiry-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.enquiry-fields label{text-transform:uppercase;letter-spacing:.1em;flex-direction:column;gap:7px;font-size:11px;font-weight:700;display:flex}.enquiry-fields label:last-child{grid-column:1/-1}.enquiry-fields input,.enquiry-fields select{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:#fff;padding:10px;font-size:12px}.enquiry-button{width:100%;margin-top:18px}.enquiry-facts{border-top:1px solid var(--line);margin:22px 0 0;padding-top:9px}.enquiry-facts>div{justify-content:space-between;padding-top:10px;font-size:12px;display:flex}.enquiry-facts dt{color:var(--muted)}.enquiry-facts dd{margin:0;font-weight:700}.mobile-enquiry{display:none}.policy-page{min-height:68vh;padding:75px 0 115px}.policy-container{max-width:800px}.policy-page h1{font:400 clamp(48px,6vw,75px)/1.04 var(--serif);letter-spacing:-.04em}.policy-alert{border-left:4px solid var(--olive);background:#e5e8dc;margin:35px 0 45px;padding:20px 24px}.policy-alert strong{letter-spacing:.08em;text-transform:uppercase;font-size:12px}.policy-alert p{color:var(--muted);margin:7px 0 0}.policy-page section{border-bottom:1px solid var(--line);margin:0 0 30px;padding:0 0 25px}.policy-page section h2{font:400 28px var(--serif)}.policy-page section p{color:var(--muted)}.not-found{min-height:60vh;padding:110px 0}.not-found h1{font:400 58px var(--serif)}@media (max-width:1100px){.site-nav{gap:13px}.site-nav>a:not(.button){font-size:11px}.brand span{font-size:25px}.villa-grid{gap:16px}.benefits-layout,.experiences-layout{gap:45px}.villa-content{grid-template-columns:minmax(0,1fr) 315px;gap:35px}}@media (max-width:850px){.header-inner{height:75px}.menu-toggle{display:block}.site-nav{background:var(--paper);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:20px;padding:24px;display:none;position:absolute;top:75px;left:0;right:0}.site-nav.is-open{display:flex}.site-nav>a:not(.button){font-size:15px}.nav-controls{justify-content:flex-start}.nav-cta{align-self:flex-start}.hero{height:650px;min-height:0}.hero-content{padding-top:145px}.villa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-search{grid-template-columns:1fr 1fr 1fr}.search-button{border-radius:0;grid-column:1/-1;margin-top:14px}.search-field:nth-child(3){border:0}.benefits-layout{grid-template-columns:1fr;gap:30px}.experiences-layout{grid-template-columns:1fr 1fr;gap:35px}.experience-photo{height:470px}.faq-layout{grid-template-columns:1fr;gap:20px}.footer-grid{grid-template-columns:2fr 1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}.villa-content{grid-template-columns:1fr}.villa-sidebar{max-width:500px;position:static}.mobile-enquiry{z-index:25;background:var(--paper);justify-content:space-between;align-items:center;padding:10px 24px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 24px #0002}.mobile-enquiry>span{color:var(--muted);font-size:12px}.mobile-enquiry strong{font:400 19px var(--serif);color:var(--ink);margin-top:2px;display:block}.footer{padding-bottom:105px}}@media (max-width:620px){.container{width:min(100% - 36px,1240px)}.section{padding:72px 0}.section-title{font-size:38px}.hero{height:640px}.hero-content{padding-top:115px}.hero h1{max-width:520px;font-size:clamp(53px,13vw,70px)}.hero-subtitle{max-width:400px;font-size:15px}.hero-side{display:none}.hero-actions{gap:19px}.search-shell{margin-top:-20px}.booking-search{grid-template-columns:1fr 1fr;padding:10px 16px 16px}.search-field{border-bottom:1px solid var(--line);padding:14px 10px}.search-field:first-child{padding-left:10px}.search-field:nth-child(2){border-right:0}.search-field:nth-child(3){border:0;grid-column:1/-1;padding:14px 10px}.search-button{min-width:0;margin-top:0}.search-disclaimer{text-align:left}.collection-section{padding-top:65px}.collection-heading{display:block}.villa-grid{grid-template-columns:1fr}.benefits-layout{gap:24px}.experiences-layout{grid-template-columns:1fr}.experience-photo{height:360px}.experience-copy{order:-1}.amenity-grid{grid-template-columns:repeat(2,1fr)}.amenity{gap:8px;min-height:75px;padding:15px 12px;font-size:12px}.amenity>span{width:25px;font-size:25px}.editorial-grid{grid-template-columns:1fr 1fr;height:auto}.editorial-grid img{aspect-ratio:1;object-fit:cover}.location-layout{grid-template-columns:1fr}.location-panel{padding:30px}.faq-list details{padding:17px 0}.footer-grid{grid-template-columns:1fr 1fr;gap:34px}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{display:block}.footer-bottom>div{gap:13px;margin-top:20px}.villa-page{padding:40px 0 70px}.villa-intro .back-link{margin-bottom:42px}.villa-intro h1{font-size:56px}.villa-gallery{grid-template-rows:2fr 1fr;grid-template-columns:1fr 1fr;height:380px}.gallery-tile-0{grid-area:1/1/auto/-1}.gallery-tile:nth-of-type(n+4){display:none}.villa-content{padding-top:55px}.villa-section{margin-bottom:40px;padding-bottom:40px}.bed-grid,.detail-amenities{grid-template-columns:1fr 1fr}.lightbox{padding:70px 45px}.lightbox-prev{left:4px}.lightbox-next{right:4px}.policy-page{padding:50px 0 80px}}@media (max-width:390px){.hero h1{font-size:49px}.hero-subtitle{font-size:14px}.hero-actions{flex-wrap:wrap}.footer-grid{grid-template-columns:1fr 1fr}.bed-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.villa-gallery .gallery-label{cursor:pointer;z-index:1;border:0}.villa-gallery .gallery-label:hover{background:#fffaf4}
