@font-face{font-family:Manrope;src:url('/fonts/manrope.woff2') format('woff2');font-weight:200 800;font-display:swap}@font-face{font-family:Newsreader;src:url('/fonts/newsreader.woff2') format('woff2');font-weight:300 700;font-display:swap}
:root{--ink:#173634;--sea:#174d4a;--foam:#f4f3ed;--sand:#e8e0d3;--white:#fff;--rust:#b7633f;--muted:#667572;--serif:Newsreader,Georgia,serif;--sans:Manrope,"Helvetica Neue",sans-serif;--pad:clamp(24px,5vw,82px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--foam);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}img{display:block;width:100%}a{color:inherit}.skip{position:fixed;z-index:1000;top:10px;left:10px;background:#fff;padding:10px 16px;transform:translateY(-150%)}.skip:focus{transform:none}.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;padding:26px var(--pad);display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid #ffffff55}.brand{display:flex;align-items:baseline;gap:5px;text-decoration:none;line-height:1}.brand span{font-size:12px;letter-spacing:.28em}.brand b{font:600 25px/1 var(--serif);font-style:italic}.site-header nav{display:flex;align-items:center;gap:32px}.site-header nav a{font-size:12px;letter-spacing:.08em;text-decoration:none}.nav-cta{border:1px solid #ffffff99;padding:10px 16px;border-radius:999px}.menu{display:none;background:none;border:0}.menu span{display:block;width:24px;height:1px;background:#fff;margin:6px}.hero{height:min(94vh,920px);min-height:660px;position:relative;color:#fff;overflow:hidden}.hero>img{height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0b292994 0%,#0b292925 55%,#0000),linear-gradient(0deg,#09201e99 0%,transparent 50%)}.hero-content{position:absolute;inset:auto var(--pad) 72px;max-width:1050px}.eyebrow,.kicker{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.hero h1,.section h2,.sunset h2,.contact h2{font:400 clamp(54px,7.2vw,112px)/.88 var(--serif);letter-spacing:-.045em;margin:18px 0 32px}.hero-foot{display:flex;align-items:end;justify-content:space-between;max-width:900px}.hero-foot p{max-width:360px;font-size:15px}.round-link{display:flex;align-items:center;gap:18px;text-decoration:none;font-size:12px;letter-spacing:.08em}.round-link span{display:grid;place-items:center;border:1px solid #fff8;width:48px;height:48px;border-radius:50%;font-size:17px}.availability{position:absolute;right:0;bottom:0;background:var(--rust);padding:18px 30px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.availability b{font-size:15px;margin-left:16px}.section{padding:120px var(--pad)}.section-label{font-size:10px;letter-spacing:.18em;text-transform:uppercase;border-top:1px solid currentColor;padding-top:10px;opacity:.75}.intro{display:grid;grid-template-columns:1fr 3fr;gap:50px}.intro-copy{max-width:940px}.intro h2{font-size:clamp(48px,6.2vw,92px)}.lede{max-width:700px;font-size:18px;color:var(--muted)}.facts{grid-column:2;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #b7c0bd;margin-top:50px}.facts div{padding:32px 20px 0 0}.facts strong{display:block;font:400 50px/1 var(--serif)}.facts span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.cinema{position:relative;margin:0 var(--pad);height:min(72vw,850px);overflow:hidden}.cinema img{height:100%;object-fit:cover}.cinema p{position:absolute;left:30px;bottom:18px;margin:0;background:#f4f3edef;padding:12px 18px;font:italic 19px var(--serif)}.details{padding-top:160px}.detail-grid{margin-top:55px;display:grid;grid-template-columns:1.45fr 1fr;gap:60px 28px}.feature img{aspect-ratio:4/3;object-fit:cover}.feature-large{grid-row:span 2}.feature-large img{height:100%;min-height:760px}.feature>div{display:grid;grid-template-columns:34px 1fr;gap:8px;padding-top:20px}.feature>div span{font-size:10px;color:var(--rust)}.feature h3{font:400 29px/1 var(--serif);margin:0 0 8px}.feature p{grid-column:2;margin:0;max-width:450px;font-size:13px;color:var(--muted)}.sunset{height:min(78vw,880px);position:relative;color:#fff}.sunset img{height:100%;object-fit:cover;filter:brightness(.78)}.sunset-copy{position:absolute;left:var(--pad);bottom:75px}.sunset-copy p{font-size:11px;letter-spacing:.2em;text-transform:uppercase}.sunset h2{font-size:clamp(60px,8vw,116px);margin:10px 0 20px}.sunset-copy span{display:block;max-width:440px;font-size:14px}.comfort-head{display:grid;grid-template-columns:1.7fr 1fr;gap:80px;align-items:end;margin-top:50px}.comfort h2{font-size:clamp(48px,6vw,86px);margin:0}.comfort-head p{color:var(--muted);max-width:440px}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:70px}.amenities ul{list-style:none;margin:0;padding:0;border-top:1px solid #b9c3c0}.amenities li{border-bottom:1px solid #cbd2d0;padding:16px 0;font-size:14px}.fineprint,.source-note{font-size:10px;color:var(--muted)}.gallery{padding:20px var(--pad) 120px;display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:min(28vw,390px);gap:16px}.gallery-item{padding:0;border:0;background:#ddd;position:relative;overflow:hidden;cursor:zoom-in}.gallery-item img{height:100%;object-fit:cover;transition:transform .7s}.gallery-item:hover img{transform:scale(1.025)}.gallery-item span{position:absolute;left:12px;bottom:12px;background:#fff;padding:6px 10px;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.gallery-item.wide{grid-column:span 2}.gallery-item.tall{grid-row:span 2}.video-tour{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;background:#e7dfd3}.video-tour h2{font-size:clamp(52px,6vw,86px)}.video-tour p{max-width:500px;color:var(--muted)}.video-tour video{width:100%;max-height:760px;background:#102c2a}.resort{background:var(--ink);color:#f2efe6}.resort-copy{display:grid;grid-template-columns:1.7fr 1fr;gap:80px;align-items:end;margin:52px 0 70px}.resort h2{font-size:clamp(50px,6vw,88px);margin:0}.resort-copy p{max-width:420px;color:#cbd8d4}.resort-images{display:grid;grid-template-columns:1.4fr .8fr .7fr;gap:14px;height:min(42vw,540px)}.resort-images img{height:100%;object-fit:cover}.location-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;align-items:center;margin-top:55px}.location-copy h2{font-size:clamp(52px,6vw,84px)}.location-copy>p{max-width:510px;color:var(--muted)}.text-link{display:inline-block;margin-top:20px;font-size:12px;font-weight:700;text-underline-offset:5px}.location-image{aspect-ratio:4/4.2;object-fit:cover}.distances{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #aebbb7;margin-top:80px}.distances div{padding:28px 10px 0 0}.distances strong{display:block;font:400 34px var(--serif)}.distances span{font-size:11px;color:var(--muted)}.story{background:#ded8ca}.story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:center;margin-top:60px}.portrait-pair{display:flex;align-items:end}.portrait-pair img{width:58%;aspect-ratio:3/4;object-fit:cover;filter:saturate(.75)}.portrait-pair img+img{width:50%;margin-left:-12%;margin-bottom:-50px;border:10px solid #ded8ca}.story h2{font-size:clamp(48px,5.5vw,78px)}.story-copy>p:not(.kicker):not(.signature){max-width:580px;color:#50625e}.signature{font:italic 28px var(--serif);margin-top:35px}.price{display:grid;grid-template-columns:1fr 1fr;gap:0;padding-bottom:0}.price-card{background:var(--sea);color:#fff;padding:70px;display:flex;flex-direction:column;justify-content:center}.price-card>p{text-transform:uppercase;font-size:10px;letter-spacing:.18em}.price-card h2{font-size:clamp(60px,7vw,100px);margin:20px 0}.price-card>div{display:flex;flex-direction:column;font-size:12px;color:#d4dfdc;margin-bottom:40px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--rust);color:#fff;border:0;min-height:54px;padding:0 25px;text-decoration:none;text-transform:uppercase;font:700 10px var(--sans);letter-spacing:.14em;cursor:pointer}.price>img{height:100%;min-height:640px;object-fit:cover}.contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;background:#f8f7f2}.contact h2{font-size:clamp(50px,5.5vw,82px)}.contact-intro>p{max-width:450px;color:var(--muted)}.trust{margin-top:50px;display:flex;flex-direction:column;font-size:15px;line-height:1.7;padding-left:22px;border-left:2px solid var(--rust)}.trust b{font-size:16px;margin-bottom:8px}.contact-form{background:#fff;padding:50px}.field{position:relative;margin-bottom:25px}.field label{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:7px}.field input,.field textarea,.field select{width:100%;border:0;border-bottom:1px solid #9fadaa;background:transparent;border-radius:0;padding:10px 2px;font:15px var(--sans);color:var(--ink);outline:none}.field textarea{resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--rust)}.field.split{display:grid;grid-template-columns:1fr 1fr;gap:24px}.counter{position:absolute;right:0;bottom:4px;font-size:9px;color:var(--muted)}.counter b{font-weight:400}.trap{position:absolute;left:-9999px}.consent{display:flex;gap:10px;align-items:flex-start;font-size:11px;color:var(--muted);margin:22px 0}.consent input{margin-top:3px}.submit{width:100%;justify-content:space-between}.submit i{font-style:normal;font-size:20px}.submit[disabled]{opacity:.65;cursor:wait}.form-note{font-size:9px;text-align:center;color:var(--muted)}.form-status{font-size:13px;text-align:center;min-height:24px}.form-status.success{color:#1b6a45}.form-status.error{color:#9b3829}footer{padding:70px var(--pad) 35px;background:#102c2a;color:#dce5e1;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:start}footer>p{margin:0;font-size:12px;text-align:center}footer>div:not(.brand){display:flex;justify-content:flex-end;gap:20px;font-size:11px}footer small{grid-column:1/-1;border-top:1px solid #ffffff22;padding-top:25px;color:#8fa4a0;font-size:9px}.lightbox{max-width:none;max-height:none;width:100vw;height:100vh;margin:0;border:0;padding:50px;background:#0b1f1eee}.lightbox::backdrop{background:#0b1f1e}.lightbox img{width:100%;height:100%;object-fit:contain}.lightbox button{position:absolute;z-index:2;right:22px;top:15px;border:0;background:none;color:#fff;font:32px var(--serif);cursor:pointer}.reveal{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s ease}.reveal.in{opacity:1;transform:none}
@media(max-width:900px){.site-header nav{display:none;position:absolute;top:78px;left:0;width:100%;padding:28px var(--pad);background:var(--ink);flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.menu{display:block}.hero{min-height:680px}.hero-content{bottom:70px}.hero h1{font-size:58px}.hero-foot{align-items:flex-start;flex-direction:column;gap:20px}.availability{font-size:9px;padding:12px 18px}.section{padding:85px var(--pad)}.intro,.comfort-head,.resort-copy,.location-grid,.story-grid,.contact,.video-tour{grid-template-columns:1fr}.facts{grid-column:1;grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}.feature-large{grid-row:auto}.feature-large img{height:auto;min-height:0}.cinema{height:70vh}.amenities{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr;grid-auto-rows:42vw}.resort-images{grid-template-columns:1fr 1fr;height:auto}.resort-images img{aspect-ratio:4/3}.resort-images img:first-child{grid-column:span 2}.distances{grid-template-columns:1fr 1fr}.story-grid{gap:80px}.price{grid-template-columns:1fr;padding-left:0;padding-right:0}.price>img{min-height:440px}.contact{gap:50px}footer{grid-template-columns:1fr;text-align:left}footer>p{text-align:left}footer>div:not(.brand){justify-content:flex-start}footer small{grid-column:1}.portrait-pair{max-width:600px}}
@media(max-width:560px){.site-header{padding-top:20px;padding-bottom:20px}.hero h1{font-size:49px}.hero{height:90vh}.hero-content{inset:auto 22px 78px}.hero-foot p{font-size:13px}.round-link{display:none}.availability b{margin-left:7px}.section{padding:72px 22px}.intro h2,.comfort h2,.resort h2,.location-copy h2,.story h2,.contact h2{font-size:46px}.facts strong{font-size:40px}.cinema{margin:0 22px;height:62vh}.cinema p{font-size:15px;left:12px;right:12px}.details{padding-top:90px}.sunset{height:80vh}.sunset-copy{left:22px;bottom:40px}.sunset h2{font-size:55px}.comfort-head,.resort-copy,.location-grid,.story-grid{gap:38px}.gallery{padding:0 22px 80px;display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.gallery-item,.gallery-item.wide,.gallery-item.tall{min-width:82vw;height:62vh;scroll-snap-align:center}.resort-images{gap:8px}.distances{grid-template-columns:1fr 1fr}.story .section-label{margin-bottom:40px}.portrait-pair img+img{margin-bottom:-25px}.price-card{padding:62px 22px}.price>img{min-height:360px}.contact-form{padding:30px 22px;margin:0 -5px}.field.split{grid-template-columns:1fr}.contact{padding-bottom:70px}footer{padding:55px 22px 30px}.lightbox{padding:42px 10px 10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.gallery-item img{transition:none}}
