@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap');
:root{--green:#183c35;--cream:#f8f6f0;--muted:#68736c;--line:#d9ddd4;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:60px}body{margin:0;background:var(--cream);color:var(--green);font-family:var(--sans);font-size:15px;line-height:1.75}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #bd9253;outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.06;letter-spacing:-.025em}h1{font-size:clamp(64px,7.8vw,122px);margin-bottom:28px}h2{font-size:clamp(42px,4.3vw,68px);margin-bottom:25px}h3{font-size:32px}em{font-weight:400}p{color:var(--muted)}.wrap{max-width:1400px;margin:0 auto;padding-left:6%;padding-right:6%}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.4px;color:inherit;margin-bottom:24px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:16px 23px;background:var(--green);color:white;font-size:12px;border:1px solid transparent;transition:background .2s}.button:hover{background:#31594c}.button span{font-size:19px}.light{background:var(--cream);color:var(--green)}.light:hover{background:white}.brand{display:flex;align-items:center;gap:10px;line-height:1.3;font-family:var(--serif);font-size:26px;letter-spacing:3px}.brand small{display:block;font:8px var(--sans);letter-spacing:2.2px;margin-top:5px}.brandmark{font-size:36px;font-family:Georgia;line-height:1}header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 4%;background:var(--cream);position:relative;z-index:10}nav{display:flex;gap:30px;font-size:12px}nav a:hover{box-shadow:0 1px currentColor}.hero{height:calc(88svh - 96px);min-height:550px;max-height:760px;position:relative;color:white}.hero>img{object-position:center 54%}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,25,22,.62),rgba(7,25,22,.06) 85%),linear-gradient(0deg,rgba(7,25,22,.42),transparent 35%)}.hero-copy{position:absolute;left:8%;top:50%;transform:translateY(-48%)}.hero-copy>p:not(.eyebrow){color:white;font-size:16px;line-height:1.8;margin-bottom:32px}.hero-bottom{position:absolute;bottom:28px;left:4%;right:4%;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:2px}.photo-link{border:0;background:none;color:white;font-size:11px;letter-spacing:0}.photo-link span{margin-left:18px}.side-note{position:absolute;right:25px;top:45%;writing-mode:vertical-rl;letter-spacing:3px;font-size:9px}.facts{display:flex;justify-content:center;gap:0;padding:26px 6%;border-bottom:1px solid var(--line)}.facts>div{width:22%;max-width:260px;text-align:center;border-right:1px solid var(--line)}.facts>div:last-child{border:0}.facts strong{display:block;font:38px var(--serif)}.facts span{display:block;font-size:9px;letter-spacing:1.8px;margin-top:8px}.intro{padding-top:65px;padding-bottom:45px;display:grid;grid-template-columns:1fr 1fr;gap:10%}.intro-copy{padding-top:20px}.lead{font-size:20px;color:var(--green);line-height:1.6}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;border:0;border-bottom:1px solid #81988c;background:none;padding:10px 0;font-size:12px;color:var(--green)}.text-link:hover{color:#8e6b39}.editorial{display:grid;grid-template-columns:1.5fr 1fr;gap:7%;padding-bottom:65px;align-items:start}.image-large{position:relative;height:570px}.image-caption{position:absolute;bottom:18px;left:20px;color:white;font-size:9px;letter-spacing:1.5px;text-shadow:0 1px 10px #000}.editorial-side{padding-top:60px}.editorial-side img{height:300px;margin-bottom:35px}.editorial-side h3{font-size:40px;margin-bottom:18px}.editorial-side .eyebrow{margin-bottom:15px}.living{background:#e9ede5;padding:60px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px;gap:30px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:13px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.image-button{padding:0;border:0;position:relative;display:block;width:100%;height:310px;overflow:hidden;background:#dce1d8}.image-button img{transition:transform .5s}.image-button:hover img{transform:scale(1.04)}.image-button>span{position:absolute;bottom:15px;right:15px;background:var(--cream);border-radius:50%;width:32px;height:32px;display:grid;place-items:center}.experience-grid .eyebrow{margin-top:28px;margin-bottom:15px;font-size:9px}.experience-grid h3{margin-bottom:16px}.experience-grid p:last-child{font-size:13px;line-height:1.9;margin-bottom:0}.bedrooms{padding-top:65px;padding-bottom:65px;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:8%}.bedroom-photo{height:570px;position:relative}.detail-list{padding:0;list-style:none;margin:28px 0;font-size:12px}.detail-list li{padding:10px 0;border-bottom:1px solid var(--line)}.detail-list li:before{content:'✓';margin-right:16px}.comfort{text-align:center;padding-bottom:65px}.amenities{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:30px}.amenities>div>span{font-size:30px;display:block;margin-bottom:15px}.amenities h3{font-size:25px;margin-bottom:14px}.amenities p{font-size:12px;line-height:1.9}.night{position:relative;height:460px;color:white}.night:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#061c1baa,transparent)}.night>div{position:absolute;z-index:1;top:50%;left:8%;transform:translateY(-50%)}.night h2{font-size:clamp(46px,5.4vw,84px)}.gallery{padding-top:65px;padding-bottom:60px}.filters{display:flex;gap:24px;margin:35px 0 25px;flex-wrap:wrap}.filters button{padding:7px 0;font-size:12px;border:0;border-bottom:1px solid transparent;background:none;color:var(--muted)}.filters button.active{border-color:var(--green);color:var(--green)}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.photo-grid button{height:250px}.island{padding:60px 0;background:#e9ede5}.island-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.island-image{height:570px}.location-note{display:block;font-size:10px;line-height:1.7;margin-top:20px;color:var(--muted)}.faq{padding-top:60px;padding-bottom:60px;display:grid;grid-template-columns:1fr 1.2fr;gap:8%}.faq h2{font-size:48px}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;padding:20px 30px 20px 0;list-style:none;position:relative;font-size:13px}.faq summary:after{content:'+';position:absolute;right:5px;font-size:20px;top:12px}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;padding-right:20px}.stay{padding:60px 0 65px;text-align:center;background:var(--green);color:var(--cream)}.stay h2{font-size:clamp(46px,5vw,76px)}.stay p{color:#c7d1c6}.stay .eyebrow{color:#d9c6a2}.stay form{display:grid;grid-template-columns:1fr 1fr .8fr 1.35fr;max-width:1050px;margin:40px auto 0;background:var(--cream);padding:12px;text-align:left;color:var(--green)}.stay label{padding:8px 20px;font-size:9px;font-weight:600;letter-spacing:1.3px;border-right:1px solid var(--line)}input,select{display:block;background:none;color:var(--green);border:0;width:100%;margin-top:6px;font-size:13px;min-height:28px;letter-spacing:0}.stay .button{margin-left:12px}.stay .booking-note{font-size:10px;margin-top:15px}.host-link{display:inline-block;font-size:12px;margin-top:20px;border-bottom:1px solid #8aa296}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:50px;padding-bottom:50px}footer p{font:italic 20px var(--serif);margin:0}footer>div{display:flex;gap:20px;font-size:11px}footer>small{font-size:9px;color:var(--muted)}dialog{border:0;padding:0;max-width:none;max-height:none;width:100vw;height:100dvh;background:#101c19;color:white}dialog::backdrop{background:#101c19}body:has(dialog[open]){overflow:hidden}.lightbox-top{position:absolute;top:20px;left:25px;right:25px;display:flex;justify-content:space-between;align-items:center;font-size:12px}.lightbox-top button{background:none;border:1px solid #ffffff55;color:white;padding:8px 18px}dialog figure{position:absolute;inset:75px 90px 35px;margin:0;display:flex;flex-direction:column;align-items:center;gap:15px}dialog figure img{object-fit:contain;min-height:0}dialog figcaption{font-size:12px;color:#cbd4cf;flex-shrink:0}.arrow{position:absolute;top:50%;z-index:2;border:1px solid #ffffff55;color:white;background:none;font-size:25px;width:45px;height:45px}.prev{left:20px}.next{right:20px}.skip{position:fixed;top:-80px;left:10px;background:white;padding:15px;z-index:50}.skip:focus{top:10px}.mobile-book{display:none}@media(min-width:1600px){.hero-copy{left:calc((100vw - 1320px)/2)}}@media(max-width:1000px){header{height:80px}nav{gap:18px}.navbook{gap:15px;padding:12px 16px}.brand{font-size:23px}.hero{height:calc(90svh - 80px);min-height:590px}.image-large{height:590px}.image-button{height:250px}.bedroom-photo{height:500px}.amenities{gap:20px}footer{flex-wrap:wrap}footer>small{width:100%}.stay label{padding:8px 10px}.stay .button{gap:10px;padding:12px}.island-image{height:510px}}@media(max-width:700px){.wrap{padding-left:6%;padding-right:6%}header{height:78px;padding:0 6%}header nav{display:none}.brand{font-size:22px;letter-spacing:2px}.brandmark{font-size:30px}.brand small{font-size:7px}.navbook{font-size:10px;padding:10px 13px}.navbook span{font-size:15px}.hero{height:calc(88svh - 78px);min-height:570px;max-height:800px}.hero>img{object-position:59% center}.hero-copy{left:7%;right:6%;top:46%}h1{font-size:68px}.hero .eyebrow{font-size:8px;letter-spacing:1.7px}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-bottom{left:7%;right:7%;font-size:7px;letter-spacing:1px}.photo-link{font-size:10px}.side-note{display:none}.facts{padding:27px 3%}.facts>div{width:25%}.facts strong{font-size:30px}.facts span{font-size:7px;letter-spacing:.8px}.intro{padding-top:65px;padding-bottom:45px;grid-template-columns:1fr;gap:0}.intro-copy{padding-top:0}.lead{font-size:18px}h2{font-size:46px}.eyebrow{font-size:9px;letter-spacing:1.8px;margin-bottom:18px}.editorial{grid-template-columns:1fr;gap:30px;padding-bottom:65px}.image-large{height:430px}.editorial-side{padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.editorial-side img{grid-row:1/5;height:100%;min-height:260px;margin:0}.editorial-side .eyebrow{font-size:8px;margin-top:10px}.editorial-side h3{font-size:30px}.editorial-side p:last-child{font-size:12px}.living{padding:65px 0}.section-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:30px}.section-heading>p{margin:0}.experience-grid{grid-template-columns:1fr;gap:35px}.image-button{height:330px}.experience-grid .eyebrow{margin-top:20px}.bedrooms{padding-top:65px;padding-bottom:65px;grid-template-columns:1fr;gap:35px}.bedroom-photo{height:380px}.comfort{padding-bottom:65px}.amenities{grid-template-columns:1fr 1fr;gap:25px 20px;margin-top:35px}.amenities h3{font-size:24px}.night{height:480px}.night>img{object-position:62% center}.night>div{left:7%}.gallery{padding-top:65px;padding-bottom:65px}.photo-grid{grid-template-columns:1fr 1fr;gap:10px}.photo-grid button{height:180px}.filters{gap:20px;margin-top:20px}.filters button{font-size:11px}.island{padding:65px 0}.island-layout{grid-template-columns:1fr;gap:35px}.island-image{height:400px}.faq{grid-template-columns:1fr;gap:5px;padding-top:65px;padding-bottom:65px}.faq h2{font-size:43px}.stay{padding:65px 0}.stay form{grid-template-columns:1fr 1fr;padding:12px;gap:10px}.stay label{padding:6px;border:0}.stay .button{margin:0}.stay h2{font-size:48px}.stay>div>p:not(.eyebrow){font-size:13px}.stay .booking-note{font-size:10px}footer{padding-top:40px;padding-bottom:60px;gap:25px}footer p{font-size:18px}footer>div{width:100%;gap:25px}.mobile-book{display:block;position:fixed;bottom:15px;left:50%;transform:translateX(-50%);padding:11px 28px;border:1px solid #ffffff77;background:var(--green);color:white;font-size:12px;z-index:5;box-shadow:0 4px 20px #0002;white-space:nowrap}body:has(#stay:hover) .mobile-book{display:none}dialog figure{inset:80px 15px 100px}.arrow{top:auto;bottom:25px}.prev{left:30%}.next{right:30%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Brighter opening photograph and a tighter editorial rhythm. */
.hero>img{object-position:center 57%;filter:brightness(1.12) saturate(1.08)}
.shade{background:linear-gradient(90deg,rgba(7,25,22,.55),rgba(7,25,22,.16) 44%,transparent 72%),linear-gradient(0deg,rgba(7,25,22,.28),transparent 22%)}
.hero-copy{left:6%;top:49%}.hero-copy h1{font-size:clamp(64px,7vw,106px)}
.editorial-side{padding-top:45px}.editorial-side img{height:270px;margin-bottom:25px}
.bedroom-photo{height:480px}.island-image{height:470px}
@media(max-width:700px){
.hero{height:calc(81svh - 78px);min-height:510px;max-height:680px}.hero>img{object-position:59% 55%}
.hero-copy{left:7%;top:48%}.hero-copy h1{font-size:64px}.hero-copy>p:not(.eyebrow){margin-bottom:24px}
.intro{padding-top:40px;padding-bottom:28px}.intro-copy{padding-top:0}.editorial{padding-bottom:40px;gap:24px}.image-large{height:360px}.editorial-side{padding-top:0}.editorial-side img{height:100%;margin:0}
.living{padding:40px 0}.bedrooms{padding-top:40px;padding-bottom:40px;gap:25px}.bedroom-photo{height:340px}
.comfort{padding-bottom:40px}.night{height:360px}.gallery{padding-top:40px;padding-bottom:40px}.island{padding:40px 0}.island-image{height:340px}.island-layout{gap:25px}
.faq{padding-top:40px;padding-bottom:40px}.stay{padding:45px 0}.section-heading{margin-bottom:25px}.experience-grid{gap:28px}
footer{padding-top:30px;padding-bottom:85px}}

.hero>img{object-position:center 58%}
@media(max-width:700px){.hero>img{object-position:58% center}}

/* Preserve the natural sunset glow without darkening the photograph. */
.night:after{background:linear-gradient(90deg,rgba(6,20,19,.18),transparent 65%)}
.night>img{object-position:center 48%}
.night>div{text-shadow:0 2px 16px rgba(0,0,0,.5)}
@media(max-width:700px){.night>img{object-position:57% center}}

.island-image{height:560px;background:#e1e6dc}.island-image img{object-fit:contain}
@media(max-width:700px){.island-image{height:480px}}

/* One-step larger type on mobile for easier reading. */
@media(max-width:700px){
body{font-size:16px}.eyebrow{font-size:10px}h2{font-size:47px}.lead{font-size:19px}
.brand{font-size:23px}.brand small{font-size:8px}.navbook{font-size:11px}
.button,.text-link{font-size:13px}.facts span{font-size:8px}.facts strong{font-size:31px}
.image-caption{font-size:10px}.editorial-side .eyebrow{font-size:9px}.editorial-side h3{font-size:31px}.editorial-side p:last-child{font-size:13px}
.section-heading>p{font-size:14px}.experience-grid .eyebrow{font-size:10px}.experience-grid h3{font-size:33px}.experience-grid p:last-child{font-size:14px}
.detail-list{font-size:13px}.amenities h3{font-size:25px}.amenities p{font-size:13px}
.filters button{font-size:12px}.location-note{font-size:11px}.faq h2{font-size:44px}.faq summary,.faq details p{font-size:14px}
.stay h2{font-size:49px}.stay>div>p:not(.eyebrow){font-size:14px}.stay label{font-size:10px}.stay input,.stay select{font-size:16px}.stay .booking-note{font-size:11px}.host-link{font-size:13px}
footer p{font-size:19px}footer>div{font-size:12px}footer>small{font-size:10px}.mobile-book{font-size:13px}dialog figcaption,.lightbox-top{font-size:13px}
}

.coming-soon{padding-top:55px;padding-bottom:40px;text-align:center}.coming-soon h2{font-size:44px;margin-bottom:28px}.coming-soon h2 span{font:14px var(--sans);letter-spacing:0;white-space:nowrap}.coming-soon>img{height:auto;object-fit:contain}.coming-soon>p{margin:24px 0 0;font-size:15px;letter-spacing:1px;color:var(--green)}@media(max-width:700px){.coming-soon{padding-top:36px;padding-bottom:30px}.coming-soon h2{font-size:35px;margin-bottom:22px}.coming-soon h2 span{font-size:13px}.coming-soon>p{font-size:16px;margin-top:20px}}

.coming-soon h2 span{display:block;margin-top:10px}.coming-soon>p{max-width:950px;margin-left:auto;margin-right:auto;line-height:1.6;letter-spacing:0}
