:root{--navy:#122d38;--deep:#0b2029;--cream:#f7f4ed;--paper:#fffdf9;--gold:#a5824b;--bronze:#846333;--muted:#56666b;--line:#d8d5cc;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif;--ease:cubic-bezier(.22,.68,0,1.02)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:116px}body{margin:0;color:var(--navy);background:var(--cream);font:400 16px/1.8 var(--sans);-webkit-font-smoothing:antialiased}body.no-scroll{overflow:hidden}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}p{margin:0 0 22px}img{display:block;width:100%;height:auto}figure{margin:0}figcaption{font-size:12px;color:var(--muted);margin-top:12px;letter-spacing:.025em}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.03;margin:0 0 26px;letter-spacing:-.025em}h1{font-size:clamp(60px,6.7vw,108px)}h2{font-size:clamp(43px,4.5vw,70px)}h3{font-size:32px}h1 em,h2 em{font-weight:400;color:var(--bronze)}[hidden]{display:none!important}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #aa762f;outline-offset:5px}.site-header a:focus-visible,.site-header button:focus-visible,.site-footer a:focus-visible{outline-color:#efcf91}::selection{background:#dfc69d;color:var(--navy)}.skip-link{position:fixed;z-index:1000;top:-100px;left:15px;background:var(--paper);padding:12px 22px}.skip-link:focus{top:15px}.section{width:min(88%,1376px);margin:0 auto;padding:110px 0}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.19em;line-height:1.6;text-transform:uppercase;color:var(--bronze);display:block;margin:0 0 24px}.eyebrow.light{color:#e1c89e}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;min-height:56px;border:1px solid transparent;padding:15px 25px;font-size:13px;font-weight:600;line-height:1.6;transition:background .25s,color .25s,transform .25s}.button span{font-size:21px;line-height:1}.button:hover{transform:translateY(-2px)}.button-navy{color:var(--cream);background:var(--navy)}.button-navy:hover{background:#234a59}.button-cream{background:var(--cream);color:var(--navy)}.button-cream:hover{background:#e8d7bb}.text-link{display:inline-flex;gap:35px;align-items:center;min-height:46px;font-size:13px;font-weight:600;border-bottom:1px solid var(--gold);padding:8px 0}.text-link span{font-size:22px;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}.preview-note{background:var(--deep);color:#decaaa;line-height:27px;min-height:27px;text-align:center;font-size:11px;letter-spacing:.08em}.site-header{position:absolute;z-index:20;top:27px;left:0;width:100%;height:123px;display:grid;grid-template-columns:1fr 210px 1fr;align-items:center;gap:24px;padding:0 4%;color:#fff;border-bottom:1px solid #ffffff38;transition:background .25s,height .25s}.site-header.is-scrolled{position:fixed;top:0;height:90px;background:var(--navy);box-shadow:0 8px 20px #071b2514}.header-side{display:flex;align-items:center;gap:32px}.header-right{justify-content:flex-end}.header-location{font-size:11px;letter-spacing:.12em}.brand{display:inline-flex;flex-direction:column;align-items:center;color:inherit;line-height:1}.brand-name{position:relative;font:italic 400 53px/.95 var(--serif);letter-spacing:-.025em}.brand-wave{font-style:normal;font-size:29px;position:absolute;right:-21px;top:-13px;transform:rotate(-13deg);color:#d7ba88}.brand-sub{font-size:9px;letter-spacing:.28em;margin-top:12px;white-space:nowrap}.languages{display:flex;align-items:center;gap:9px}.languages a{display:inline-flex;align-items:center;justify-content:center;min-width:33px;min-height:44px;font-size:12px}.languages a[aria-current]{border-bottom:1px solid #dcc295}.header-book{font-size:12px;line-height:1.5;display:flex;align-items:center;gap:17px;min-height:48px;border-bottom:1px solid #d7ba88}.header-book span{font-size:22px}.menu-toggle{display:flex;align-items:center;gap:13px;min-height:44px;color:inherit;background:none;border:0;padding:0;font-size:12px}.menu-lines{width:25px;height:12px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.hero{position:relative;isolation:isolate;height:calc(100svh - 27px);min-height:740px;max-height:1060px;color:#fff;background:var(--navy)}.hero-photo{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:50% 58%;z-index:-2}.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#08202b9e 0%,#08202b59 58%,#08202b35),linear-gradient(0deg,#08202b9c,transparent 35%,transparent 72%,#08202b88)}.hero-content{width:min(88%,1376px);margin:auto;padding-top:clamp(230px,27vh,340px)}.hero h1{margin-bottom:28px;max-width:900px;line-height:.98;text-shadow:0 2px 25px #132b3329}.hero h1 em{color:#f6e5c6}.hero-text{max-width:465px;line-height:1.85;font-size:15px;color:#f5f2eb;margin-bottom:31px}.hero .eyebrow{margin-bottom:24px}.hero-bottom{position:absolute;bottom:27px;left:6%;right:6%;display:flex;justify-content:space-between;gap:25px;align-items:center;font-size:11px;letter-spacing:.12em}.hero-bottom a{display:flex;align-items:center;gap:35px;min-height:44px}.hero-bottom a span{font-size:23px}.booking-section{scroll-margin-top:90px;padding:49px 6% 39px;background:var(--paper);border-bottom:1px solid var(--line)}.booking-intro{display:grid;grid-template-columns:1fr 2fr;gap:0 45px;align-items:start}.booking-intro .eyebrow{grid-column:1;margin-bottom:10px}.booking-intro h2{grid-column:1;font-size:39px;margin:0 0 24px}.booking-intro>p{grid-column:2;grid-row:1/3;max-width:660px;justify-self:end;font-size:14px;margin-top:6px}.booking-fields{display:grid;grid-template-columns:1.25fr 1.25fr .75fr .75fr 1.6fr;border:1px solid var(--line);background:var(--cream)}.booking-field{display:flex;flex-direction:column;gap:4px;padding:15px 22px;border-right:1px solid var(--line);min-width:0}.booking-field>span,.child-age-field>span:first-child{font-size:12px;color:var(--muted)}.booking-field input,.booking-field select{width:100%;min-width:0;min-height:34px;color:var(--navy);font-size:16px;background:none;border:0;border-radius:0}.booking-field:focus-within{outline:2px solid var(--gold);outline-offset:-2px;background:#fff}.booking-fields>.button{margin:-1px;transform:none}.child-ages{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.child-age-field{display:flex;flex-direction:column;min-width:140px}.child-age-field select{min-height:44px;width:100%;padding:6px 10px;background:var(--paper);border:1px solid var(--line);color:var(--navy)}.booking-status,.booking-language{font-size:12px;line-height:1.7;margin:14px 0 0;color:var(--muted)}.booking-status.is-error{color:#a12e25}.booking-language{margin-top:6px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding-top:140px;padding-bottom:140px}.intro-copy{max-width:510px}.intro-copy>p:not(.eyebrow){color:var(--muted)}.serif-note{font:italic 400 27px/1.3 var(--serif)!important;color:var(--bronze)!important}.intro-art{position:relative;padding:0 28px 54px 0}.intro-art:after{content:'';position:absolute;right:0;top:25px;bottom:25px;left:25px;border:1px solid #af966c;z-index:-1}.intro-art img{aspect-ratio:4/5;object-fit:cover;object-position:51% center}.outline-word{position:absolute;font:italic 400 clamp(50px,6.2vw,100px)/1 var(--serif);bottom:-5px;right:23px;background:var(--cream);padding:0 22px;color:var(--bronze)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:44px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:385px;margin:0;color:var(--muted);font-size:15px}.stay{padding-top:0}.stay-image{display:block;position:relative;overflow:hidden}.stay-image img{height:clamp(410px,44vw,650px);object-fit:cover;transition:transform 1s var(--ease)}.stay-image:hover img{transform:scale(1.025)}.image-link{position:absolute;bottom:24px;right:24px;background:var(--cream);padding:16px 24px;display:flex;gap:40px;align-items:center;font-size:13px}.image-link span{font-size:23px}.facts-strip{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);padding:31px 0}.facts-strip>div{display:flex;flex-direction:column;align-items:center;border-right:1px solid var(--line);gap:7px}.facts-strip>div:last-child{border:0}.facts-strip strong{font:400 42px/1.1 var(--serif)}.facts-strip small{font-size:25px}.facts-strip span{font-size:12px;color:var(--muted)}.pool-story{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:var(--cream);align-items:stretch}.pool-photo img{height:100%;min-height:620px;object-fit:cover}.pool-copy{padding:85px clamp(36px,6vw,95px);align-self:center}.pool-copy h2 em{color:#dcc295}.pool-copy>p:not(.eyebrow){color:#d1dbdd;font-size:15px;max-width:500px}.pool-copy .caption{display:block;color:#bbcdce;font-size:12px;margin-bottom:20px}.pool-copy .text-link{color:#ecd7b5}.beach-heading{max-width:690px;margin:0 auto 50px;text-align:center}.beach-heading>p:not(.eyebrow){color:var(--muted)}.beach-story>figure img{aspect-ratio:1.92;object-fit:cover}.beach-story figcaption{text-align:center}.virtual-tour{--vt-bg:var(--navy)!important;--vt-ink:var(--cream)!important;--vt-accent:#dfc69d!important;--sans:'Manrope',Arial,sans-serif;--serif:'Cormorant Garamond',Georgia,serif}.virtual-tour-privacy{font-size:12px!important}.reviews{padding-top:0}.center-heading{text-align:center;max-width:700px;margin:0 auto 50px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.review-card{position:relative;padding:40px 32px;display:flex;flex-direction:column;border-right:1px solid var(--line)}.review-card:last-child{border:0}.review-number{font:italic 400 36px/1 var(--serif);color:var(--bronze);margin-bottom:24px}.review-card>p{font-size:15px;color:var(--muted);flex:1}.review-card>div{display:flex;align-items:baseline;gap:12px;margin-top:15px}.review-card strong{font-size:14px}.review-card>div span{font-size:12px;color:var(--muted)}.review-card>a{font-size:12px;text-decoration:underline;text-underline-offset:4px;min-height:44px;display:flex;align-items:center;gap:20px;color:var(--bronze)}.source-note{font-size:12px;color:var(--muted);max-width:710px;margin:20px auto 0;text-align:center}.gallery-teaser{padding-top:0}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.photo-button{border:0;padding:0;background:var(--line);position:relative;overflow:hidden;text-align:left;color:#fff}.photo-button img{height:100%;aspect-ratio:1.3;object-fit:cover;transition:transform .8s var(--ease)}.photo-button:hover img{transform:scale(1.04)}.photo-expand{position:absolute;bottom:14px;right:14px;border:1px solid #ffffff99;width:39px;height:39px;background:#0e293773;display:grid;place-items:center;font-size:25px}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;padding-top:0}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px;line-height:1.6;font-weight:500;padding:23px 0;list-style:none;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary>span{font-size:22px;color:var(--bronze);transition:transform .2s}.faq details[open] summary>span{transform:rotate(45deg)}.faq details p{font-size:14px;color:var(--muted);padding-right:28px;margin-bottom:24px}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:70px;border-top:1px solid var(--line)}.contact-section p:not(.eyebrow){max-width:470px;color:var(--muted)}.contact-links{align-self:center}.contact-links a{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:18px 0;font-size:14px}.contact-links a span{font-size:25px;color:var(--bronze)}.site-footer{background:var(--deep);color:var(--cream);padding:75px 6% 25px}.footer-main{display:grid;grid-template-columns:1.2fr .9fr 1fr;gap:55px;padding-bottom:65px}.site-footer .brand{align-items:flex-start;margin:0 0 26px}.footer-manifesto{font:italic 400 30px/1.2 var(--serif);color:#d6c2a3;margin:0}.footer-main>nav{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.footer-main>nav a{font-size:13px;min-height:38px;display:flex;align-items:center}.footer-contact{display:flex;flex-direction:column;align-items:flex-start;font-size:13px}.footer-contact p{color:#bdc9cc}.footer-contact>a{min-height:35px}.footer-contact .languages{margin-top:13px}.footer-bottom{border-top:1px solid #ffffff24;padding-top:25px;display:flex;justify-content:space-between;gap:25px;align-items:start;font-size:11px;color:#bdc9cc}.footer-bottom>p{margin:0;max-width:370px}.footer-bottom nav{display:flex;gap:18px;flex-wrap:wrap}.footer-bottom nav a{min-height:36px;display:flex;align-items:center}.footer-bottom>span{white-space:nowrap}.whatsapp-float{position:fixed;z-index:15;bottom:25px;right:24px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;border:1px solid #d7c399;box-shadow:0 6px 20px #091e3033;transition:opacity .2s,visibility .2s}.whatsapp-float svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.mobile-book{display:none}.booking-visible .whatsapp-float,.booking-visible .mobile-book{opacity:0;visibility:hidden;pointer-events:none}.inner-page .site-header{color:var(--navy);background:var(--cream);border-bottom-color:var(--line)}.inner-page .site-header.is-scrolled{color:#fff;background:var(--navy)}.inner-page .site-header a:focus-visible,.inner-page .site-header button:focus-visible{outline-color:#aa762f}.page-intro{padding:208px 6% 70px;text-align:center}.page-intro h1{font-size:clamp(59px,6.3vw,92px)}.page-intro>p:not(.eyebrow){max-width:690px;margin:0 auto;color:var(--muted)}.detail-hero img{height:clamp(400px,50vw,760px);object-fit:cover}.detail-overview{display:grid;grid-template-columns:1fr 1fr;gap:10%}.detail-overview p:not(.eyebrow){color:var(--muted)}.detail-facts{margin:0}.detail-facts>div{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);font-size:14px}.detail-facts dt{color:var(--muted)}.detail-facts dd{margin:0;text-align:right}.amenities{padding-top:0;padding-bottom:15px}.amenities>h2{font-size:43px}.amenities ul{list-style:none;padding:0;margin:30px 0 45px;display:grid;grid-template-columns:repeat(3,1fr);gap:0 35px}.amenities li{display:flex;gap:15px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.amenities li>span{color:var(--bronze)}.access-note{background:#eae8df;padding:30px 35px;display:grid;grid-template-columns:.7fr 1.3fr;gap:35px}.access-note h3{margin:0}.access-note p{margin:0;font-size:14px;color:var(--muted)}.inner-page .booking-section{margin-bottom:90px}.gallery-jump{display:flex;justify-content:center;flex-wrap:wrap;gap:16px 35px;padding:0 6% 25px}.gallery-jump a{font-size:13px;min-height:44px;display:flex;align-items:center;border-bottom:1px solid var(--gold)}.gallery-section{padding-top:45px;padding-bottom:70px;scroll-margin-top:110px}.gallery-section h2{font-size:43px;margin-bottom:35px}.beach-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.beach-grid img{aspect-ratio:1.5;object-fit:cover}.location-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:7%;padding-top:10px}.location-details h2{font-size:42px}.location-details>p{font-size:14px;color:var(--muted)}.location-details strong,.location-details a{font-weight:500;color:var(--navy)}.location-details .button{color:#fff}.map-shell{min-height:480px;background:#e4e6dd;position:relative;overflow:hidden;border:1px solid var(--line)}.map-placeholder{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:35px;background:repeating-linear-gradient(45deg,transparent,transparent 60px,#83958e11 60px,#83958e11 62px)}.map-symbol{font:400 60px/1 var(--serif);color:var(--bronze)}.map-placeholder strong{font:400 40px/1.2 var(--serif);margin:15px 0 25px}.map-placeholder>p{font-size:12px;max-width:340px;margin:20px 0 0;color:var(--muted)}.map-shell iframe{width:100%;height:100%;min-height:480px;border:0;display:block}.legal-page{max-width:850px;margin:0 auto;padding:210px 24px 100px}.legal-page h1{font-size:65px}.legal-page h2{font-size:34px;margin:40px 0 16px}.legal-page a{text-decoration:underline;text-underline-offset:4px}.legal-page p{color:var(--muted);font-size:15px}.legal-page strong{color:var(--navy)}.language-landing{padding:15vh 6%;text-align:center}.language-landing nav{display:flex;justify-content:center;gap:30px;flex-wrap:wrap}.language-landing nav a{padding:20px}.mobile-menu{padding:40px 6%;margin:0;inset:0;max-width:none;max-height:none;width:100%;height:100%;height:100dvh;background:var(--navy);color:var(--cream);border:0;overflow:auto}.mobile-menu::backdrop,.lightbox::backdrop{background:#06171cee}.mobile-menu:not([open]),.lightbox:not([open]){display:none}.menu-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:35px;border-bottom:1px solid #ffffff33}.text-button{min-height:48px;display:flex;align-items:center;gap:20px;font-size:14px;background:none;border:0;color:inherit}.text-button span{font-size:35px}.menu-body{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;padding-top:55px}.menu-body>nav{display:flex;flex-direction:column}.menu-body>nav>a{font:400 clamp(35px,4.2vw,63px)/1.18 var(--serif);padding:7px 0}.menu-body>nav>a:hover{color:#e1c395}.menu-details{align-self:center;display:flex;flex-direction:column;font-size:15px;color:#d2dddf}.menu-details>a{min-height:40px}.menu-details .languages{margin-top:30px}.lightbox{padding:48px 65px 58px;border:0;margin:auto;width:100%;height:100%;max-width:100vw;max-height:100dvh;background:transparent;color:#fff;overflow:hidden}.lightbox[open]{display:flex;justify-content:center;align-items:center}.lightbox>img{max-width:100%;max-height:calc(100dvh - 125px);width:auto;height:auto;object-fit:contain}.lightbox button{position:absolute;width:48px;height:48px;display:grid;place-items:center;font-size:30px;background:#122d38d9;color:#fff;border:1px solid #ffffff66;z-index:2}.lightbox-close{top:12px;right:15px}.lightbox-prev{left:10px;top:50%;transform:translateY(-50%)}.lightbox-next{right:10px;top:50%;transform:translateY(-50%)}.lightbox [data-lightbox-count]{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);font-size:13px}.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .8s,transform .8s var(--ease)}.js .reveal.is-visible{opacity:1;transform:none}
@media(min-width:1600px){.booking-section{padding-left:max(6%,calc((100vw - 1376px)/2));padding-right:max(6%,calc((100vw - 1376px)/2))}}
@media(max-width:1150px){.header-location{display:none}.site-header{grid-template-columns:1fr 190px 1fr;padding-left:5%;padding-right:5%;gap:14px}.header-right{gap:15px}.header-book{font-size:11px;gap:10px}.hero h1{font-size:87px}.booking-fields{grid-template-columns:1.2fr 1.2fr .7fr .7fr 1.5fr}.booking-field{padding:14px 12px}.booking-fields .button{padding:13px;gap:12px}.intro{gap:6%}.intro h2,.pool-copy h2{font-size:51px}.pool-photo img{min-height:550px}.pool-copy{padding:60px 35px}.footer-main{gap:35px}.footer-bottom{flex-wrap:wrap}.photo-grid{gap:15px}.hero-content{padding-top:250px}}
@media(max-width:900px){.header-right>.languages{display:none}.hero{min-height:760px}.hero-content{padding-top:235px}.booking-intro{grid-template-columns:1fr 1.4fr;gap:20px}.booking-intro h2{font-size:35px}.booking-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.booking-fields>.button{grid-column:1/-1;margin:0 -1px -1px;min-height:54px}.booking-field:nth-child(4){border-right:0}.section{padding:85px 0}.intro{padding-top:100px;padding-bottom:100px}.intro-art img{aspect-ratio:3/4}.section-heading{gap:30px}.section-heading>p{max-width:320px;font-size:14px}.stay{padding-top:0}.stay-image img{height:450px}.review-card{padding:30px 22px}.review-card>p{font-size:14px}.reviews,.gallery-teaser,.faq{padding-top:0}.faq{gap:6%}.contact-section{gap:7%}.detail-overview{gap:6%}.amenities{padding-top:0}.amenities ul{grid-template-columns:repeat(2,1fr)}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-teaser .photo-button:last-child{display:none}.location-section{grid-template-columns:1fr 1.15fr;gap:5%}.location-details h2{font-size:35px}.location-details .button{font-size:12px;padding:14px 17px;gap:15px}.footer-main{grid-template-columns:1fr 1fr}.footer-main>nav{display:none}.page-intro{padding-top:190px}.beach-grid{gap:16px}.gallery-section{padding-top:40px;padding-bottom:45px}.virtual-tour{width:88vw!important}}
@media(max-width:650px){html{scroll-padding-top:83px}body{font-size:15px;padding-bottom:63px}h2{font-size:45px}h1{font-size:61px}h3{font-size:30px}.section{width:88%;padding:66px 0}.eyebrow{font-size:11px;letter-spacing:.16em;margin-bottom:18px}.preview-note{font-size:10px}.site-header{height:90px;grid-template-columns:1fr 145px 1fr;padding:0 6%;gap:9px}.brand-name{font-size:43px}.brand-sub{font-size:7px;letter-spacing:.23em;margin-top:10px}.brand-wave{font-size:24px;right:-17px;top:-10px}.menu-toggle{font-size:0;gap:0}.menu-lines{width:24px;height:12px}.header-book{font-size:0;border:0;min-width:44px;justify-content:flex-end}.header-book span{font-size:26px}.site-header.is-scrolled{height:77px}.hero{height:calc(100svh - 27px);min-height:690px;max-height:860px}.hero-photo{object-position:53% center}.hero-shade{background:linear-gradient(90deg,#08202b8c,#08202b40),linear-gradient(0deg,#08202baa,transparent 43%,#08202b44)}.hero-content{width:88%;padding-top:192px}.hero h1{font-size:clamp(55px,12vw,77px);line-height:1.03;margin-bottom:24px}.hero .eyebrow{font-size:10px;letter-spacing:.14em}.hero-text{font-size:14px;line-height:1.8;max-width:335px;margin-bottom:24px}.button{min-height:53px;font-size:12px;gap:25px;padding:14px 21px}.hero-bottom{bottom:17px;font-size:10px;letter-spacing:.06em}.hero-bottom>span{display:none}.booking-section{padding:34px 6% 28px;scroll-margin-top:77px}.booking-intro{display:block}.booking-intro h2{font-size:35px;margin-bottom:14px}.booking-intro .eyebrow{font-size:10px;margin-bottom:7px}.booking-intro>p{font-size:13px;margin:0 0 20px}.booking-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-field{padding:12px 13px;border-bottom:1px solid var(--line)}.booking-field:nth-child(2){border-right:0}.booking-field input,.booking-field select{min-height:36px;font-size:15px}.booking-field>span{font-size:11px}.booking-fields .button{font-size:13px}.booking-status,.booking-language{font-size:12px}.child-ages{gap:10px}.child-age-field{min-width:0;flex:1 1 calc(50% - 10px)}.intro{display:flex;flex-direction:column;gap:40px;padding-top:66px;padding-bottom:66px}.intro-copy{max-width:none}.intro h2{font-size:45px}.intro-copy>p:not(.eyebrow){font-size:14px}.serif-note{font-size:26px!important}.intro-art{width:100%;padding:0 18px 36px 0}.intro-art img{aspect-ratio:1.1;object-position:center 62%}.outline-word{font-size:62px;right:11px;bottom:-6px;padding:0 15px}.intro-art figcaption{font-size:10px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{margin-bottom:20px}.section-heading>p{max-width:none;font-size:14px}.section-heading>.text-link{margin-top:0}.stay{padding-top:0}.stay-image img{height:340px;object-position:48% center}.image-link{bottom:12px;right:12px;left:12px;justify-content:space-between;font-size:12px;padding:11px 17px}.facts-strip{grid-template-columns:1fr 1fr;padding:5px 0}.facts-strip>div{padding:20px 8px}.facts-strip>div:nth-child(2){border-right:0}.facts-strip>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.facts-strip strong{font-size:35px}.facts-strip span{font-size:11px}.pool-story{grid-template-columns:1fr}.pool-photo img{height:360px;min-height:0;object-position:center 58%}.pool-copy{padding:43px 6% 50px}.pool-copy h2{font-size:43px}.pool-copy>p:not(.eyebrow){font-size:14px}.beach-heading{margin-bottom:29px;text-align:left}.beach-story>figure img{aspect-ratio:1.25;object-position:50% center}.beach-story figcaption{text-align:left;font-size:11px}.virtual-tour{width:88vw!important;margin-bottom:65px!important;padding:25px 18px!important}.virtual-tour-heading h2{font-size:37px!important}.virtual-tour-heading p{font-size:14px!important}.virtual-tour-eyebrow{font-size:10px!important}.virtual-tour-stage{height:360px!important}.virtual-tour-toolbar p{font-size:12px!important}.virtual-tour-toolbar a,.virtual-tour-stop{font-size:12px!important}.virtual-tour-launch{font-size:12px!important}.center-heading{text-align:left;margin-bottom:30px}.review-grid{display:block}.review-card{padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}.review-number{font-size:28px;margin-bottom:16px}.review-card>p{font-size:14px;margin-bottom:14px}.review-card>div{margin-top:0}.source-note{text-align:left;font-size:11px}.reviews,.gallery-teaser{padding-top:0}.photo-grid{gap:12px}.photo-button img{aspect-ratio:.86}.photo-expand{width:29px;height:29px;right:8px;bottom:8px;font-size:22px}.gallery-teaser .photo-grid{grid-template-columns:1fr 1fr}.gallery-teaser .photo-button img{aspect-ratio:.8}.faq{grid-template-columns:1fr;gap:12px;padding-top:0}.faq h2{font-size:43px;margin-bottom:20px}.faq summary{font-size:13px;padding:20px 0}.faq details p{font-size:13px}.contact-section{grid-template-columns:1fr;gap:12px;padding-top:45px}.contact-section h2{font-size:43px}.contact-section p:not(.eyebrow){font-size:14px}.contact-links a{font-size:13px;padding:15px 0}.site-footer{padding-top:50px}.footer-main{grid-template-columns:1fr;gap:32px;padding-bottom:37px}.site-footer .brand{margin-bottom:24px}.footer-manifesto{font-size:28px}.footer-contact{font-size:13px}.footer-bottom{font-size:10px;gap:14px}.footer-bottom nav{gap:18px}.footer-bottom>span{padding-bottom:12px}.whatsapp-float{bottom:80px;right:17px;width:48px;height:48px}.mobile-book{position:fixed;bottom:0;left:0;right:0;z-index:15;display:flex;align-items:center;justify-content:center;gap:40px;min-height:63px;padding:13px 20px calc(13px + env(safe-area-inset-bottom));font-size:13px;font-weight:600;color:var(--cream);background:var(--navy);border-top:1px solid #c7af83;transition:opacity .2s,visibility .2s}.mobile-book>span{font-size:24px}.page-intro{padding:145px 6% 43px}.page-intro h1{font-size:55px}.page-intro>p:not(.eyebrow){font-size:14px}.detail-hero img{height:335px;object-position:48% center}.detail-overview{grid-template-columns:1fr;gap:20px;padding-bottom:50px}.detail-overview h2{font-size:45px}.detail-overview p:not(.eyebrow){font-size:14px}.detail-facts>div{font-size:13px;gap:10px;padding:14px 0}.detail-facts dd{max-width:57%}.amenities{padding-top:0;padding-bottom:0}.amenities>h2{font-size:36px}.amenities ul{grid-template-columns:1fr;gap:0;margin:20px 0 30px}.amenities li{font-size:13px;padding:11px 0}.access-note{grid-template-columns:1fr;gap:15px;padding:25px}.access-note h3{font-size:30px}.access-note p{font-size:13px}.inner-page .booking-section{margin-bottom:65px}.gallery-jump{gap:10px 22px;justify-content:flex-start;padding-bottom:5px}.gallery-jump a{font-size:12px}.gallery-section{padding-top:35px;padding-bottom:35px}.gallery-section h2{font-size:35px;margin-bottom:22px}.beach-grid{grid-template-columns:1fr;gap:25px}.beach-grid img{aspect-ratio:1.4}.location-section{grid-template-columns:1fr;gap:35px;padding-top:10px}.location-details h2{font-size:38px}.map-shell{min-height:420px}.map-placeholder{min-height:420px;padding:25px}.map-shell iframe{min-height:420px}.legal-page{padding-top:148px;padding-bottom:65px;width:88%;padding-left:0;padding-right:0}.legal-page h1{font-size:47px;overflow-wrap:break-word}.legal-page h2{font-size:30px}.legal-page p{font-size:14px}.mobile-menu{padding:25px 6%}.menu-top{padding-bottom:25px}.menu-body{grid-template-columns:1fr;padding-top:25px;gap:32px}.menu-body>nav>a{font-size:36px;padding:6px 0}.menu-details{font-size:13px}.menu-details p{margin-bottom:12px}.menu-details .languages{margin-top:10px}.text-button{font-size:12px;gap:13px}.lightbox{padding:65px 8px 65px}.lightbox button{width:44px;height:44px;font-size:27px}.lightbox-prev{left:8px;top:auto;bottom:10px;transform:none}.lightbox-next{right:8px;top:auto;bottom:10px;transform:none}.lightbox>img{max-height:calc(100dvh - 140px)}.lightbox [data-lightbox-count]{bottom:20px}.language-landing h1{font-size:50px}.language-landing nav{gap:15px}.language-landing nav a{padding:14px}.reveal{transition-duration:.5s!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.js .reveal{opacity:1;transform:none}.button:hover,.stay-image:hover img,.photo-button:hover img{transform:none}}
 .map-close{position:absolute;right:16px;bottom:16px;z-index:2;min-height:44px;padding:10px 18px;background:#122d38;color:#fff;border:1px solid #dfc089;font:500 13px/1.5 var(--sans,Arial,sans-serif)}

/* Seaside editorial residence direction — version 2 */
:root{
  --navy:#071c25;
  --deep:#04151c;
  --ink:#102a33;
  --cream:#f1eee6;
  --paper:#faf8f2;
  --champagne:#c8aa75;
  --gold:#b18a4c;
  --bronze:#7a5b30;
  --muted:#526268;
  --line:#cbc5b8;
  --shadow:0 30px 80px rgba(4,21,28,.14);
}
body{color:var(--ink);background:var(--cream)}
body:before{content:'';position:fixed;inset:0;z-index:1000;pointer-events:none;opacity:.11;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E")}
.preview-note{position:relative;z-index:30;background:#021117;color:#d8c29c;font-size:.75rem;letter-spacing:.14em;line-height:30px;min-height:30px;text-transform:uppercase}
.section{width:min(90%,1440px);padding:clamp(7rem,10vw,10.5rem) 0}
h1,h2,h3{letter-spacing:-.035em}
h2{font-size:clamp(3.25rem,5.1vw,5.6rem);line-height:.95}
.eyebrow{font-size:.78rem;letter-spacing:.22em;color:#77592e}
.text-link{font-size:.88rem;letter-spacing:.035em;padding:.55rem 0;border-bottom-color:#9f7c47}
.chapter{display:flex;align-items:center;gap:1rem;margin:0 0 2.1rem;color:#856738;font-size:.78rem;line-height:1;text-transform:uppercase;letter-spacing:.16em}
.chapter span{font-family:var(--serif);font-size:1.45rem;font-style:italic;letter-spacing:0}
.chapter i{display:block;width:clamp(2rem,4vw,4.75rem);height:1px;background:currentColor;opacity:.65}
.chapter small{font:600 .75rem/1.3 var(--sans);letter-spacing:.16em}
.chapter-light{color:#dac49d}.chapter-center{justify-content:center}.chapter+.eyebrow{display:none}
.button{position:relative;overflow:hidden;min-height:3.75rem;padding:1rem 1.75rem;font-size:.84rem;letter-spacing:.035em;border-radius:0;isolation:isolate}
.button:before{content:'';position:absolute;z-index:-1;inset:0;background:var(--champagne);transform:translateX(-102%);transition:transform .45s cubic-bezier(.65,0,.35,1)}
.button:hover:before{transform:none}.button-cream:hover{color:#071c25;background:var(--cream)}.button-navy:hover{color:#071c25;background:var(--navy)}

/* Cinematic arrival */
.site-header{top:30px;height:132px;padding:0 5.5%;grid-template-columns:1fr 230px 1fr;border-bottom-color:rgba(255,255,255,.28)}
.site-header.is-scrolled{height:94px;background:rgba(4,21,28,.94);backdrop-filter:blur(18px);box-shadow:0 12px 45px rgba(0,0,0,.15)}
.brand-name{font-size:3.7rem;font-weight:400}.brand-sub{font-size:.72rem;letter-spacing:.33em;margin-top:.9rem}
.menu-toggle,.header-location,.header-book,.languages a{font-size:.79rem;letter-spacing:.055em}
.languages a{min-width:2.35rem}.header-book{gap:1.25rem}
.hero{height:calc(100svh - 30px);min-height:780px;max-height:none;overflow:hidden;background:#061820}
.hero-frame{position:absolute;z-index:3;inset:1.4rem;border:1px solid rgba(241,238,230,.22);pointer-events:none}
.hero-photo{z-index:-3;object-position:50% 57%;transform:scale(1.045);animation:seaside-hero 1.8s cubic-bezier(.2,.7,.2,1) both}
.hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(3,17,23,.82),rgba(3,17,23,.38) 55%,rgba(3,17,23,.16)),linear-gradient(0deg,rgba(3,17,23,.85),transparent 43%,rgba(3,17,23,.44))}
.hero:after{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 73% 38%,rgba(216,192,148,.12),transparent 24%)}
.hero-content{position:relative;width:min(82%,1320px);padding-top:clamp(16rem,28vh,22rem)}
.hero-content:before{content:'';position:absolute;left:-2.6rem;top:calc(clamp(16rem,28vh,22rem) + .4rem);width:1px;height:8.5rem;background:linear-gradient(var(--champagne),transparent)}
.hero .eyebrow{font-size:.8rem;letter-spacing:.27em;margin-bottom:2rem;animation:seaside-rise .9s .25s both}
.hero h1{max-width:920px;font-size:clamp(5.3rem,8.6vw,9.3rem);line-height:.84;letter-spacing:-.055em;margin-bottom:2.25rem;animation:seaside-rise 1.1s .14s both}
.hero h1 em{display:inline-block;margin-left:clamp(2rem,7vw,8rem);color:#f0dbb6;text-shadow:0 7px 40px rgba(0,0,0,.22)}
.hero-text{max-width:31rem;margin:0 0 2.2rem  clamp(2rem,7vw,8rem);font-family:var(--sans);font-size:1rem;line-height:1.9;color:rgba(255,255,255,.88);animation:seaside-rise 1s .35s both}
.hero-content>.button{margin-left:clamp(2rem,7vw,8rem);animation:seaside-rise 1s .46s both}
.hero-vertical{position:absolute;z-index:4;left:2.6rem;top:50%;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.68)}
.hero-signature{position:absolute;z-index:4;right:7%;top:31%;width:8.4rem;height:8.4rem;border:1px solid rgba(237,214,175,.68);border-radius:50%;display:grid;place-items:center;color:#f0dbb6;transform:rotate(8deg);animation:seal-in 1.2s .65s both}
.hero-signature:before,.hero-signature:after{content:'';position:absolute;background:#e7d0aa;opacity:.55}.hero-signature:before{width:2.25rem;height:1px;left:-1.15rem}.hero-signature:after{width:1px;height:2.25rem;bottom:-1.15rem}
.hero-signature span{font:italic 400 4.7rem/.75 var(--serif)}.hero-signature small{position:absolute;bottom:1.25rem;font-size:.6rem;letter-spacing:.12em}
.hero-bottom{z-index:5;bottom:2.8rem;left:5.5%;right:5.5%;font-size:.75rem;letter-spacing:.1em;color:rgba(255,255,255,.82)}
.hero-bottom>a{gap:2rem}.hero-facts{display:flex;align-items:center}.hero-facts span{display:flex;align-items:center;white-space:nowrap}.hero-facts span+span:before{content:'';width:2.8rem;height:1px;background:rgba(255,255,255,.4);margin:0 1.15rem}
@keyframes seaside-hero{from{opacity:.25;transform:scale(1.12)}to{opacity:1;transform:scale(1.045)}}
@keyframes seaside-rise{from{opacity:0;transform:translateY(2rem)}to{opacity:1;transform:none}}
@keyframes seal-in{from{opacity:0;transform:scale(.72) rotate(-10deg)}to{opacity:1;transform:scale(1) rotate(8deg)}}

/* Reservation concierge */
.home-page .booking-section{position:relative;z-index:8;width:min(91%,1440px);margin:-1.4rem auto 0;padding:0;background:var(--paper);border:0;box-shadow:var(--shadow)}
.home-page .booking-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:3rem;padding:2.15rem 2.6rem 1.5rem;border-bottom:1px solid var(--line)}
.home-page .booking-intro .eyebrow{display:none}.home-page .booking-intro h2{font-size:2.8rem;line-height:1;margin:0;white-space:nowrap}.home-page .booking-intro>p{grid-column:auto;grid-row:auto;max-width:46rem;margin:0;font-size:.88rem;line-height:1.75;text-align:right}
.home-page .booking-form{padding:0 2.6rem 2rem}.booking-fields{border:0;border-bottom:1px solid var(--line);background:transparent;grid-template-columns:1.35fr 1.35fr .8fr .8fr 1.6fr}
.booking-field{position:relative;padding:1.15rem 1.45rem 1rem;border-right:1px solid var(--line)}
.booking-field:first-child{border-left:1px solid var(--line)}
.booking-field>span,.child-age-field>span:first-child{font-size:.78rem;letter-spacing:.04em}.booking-field input,.booking-field select{font-size:1rem;font-weight:500}.booking-fields>.button{min-height:100%;margin:0;border:0}.booking-status,.booking-language{font-size:.78rem}.child-age-field select{font-size:.95rem}

/* Editorial story */
.intro{position:relative;display:grid;grid-template-columns:repeat(12,1fr);gap:0 2.1rem;align-items:start;padding-top:clamp(9rem,13vw,13rem);padding-bottom:clamp(11rem,15vw,15rem)}
.intro-copy{grid-column:1/6;max-width:34rem;padding-top:4.5rem;z-index:2}.intro-copy h2{font-size:clamp(3.8rem,5.6vw,6rem);margin-bottom:2.5rem}.intro-copy>p:not(.eyebrow){font-size:1rem;line-height:2;color:#4c5d62}.intro-copy .serif-note{font-size:2rem!important;line-height:1.32!important;margin:2.3rem 0;color:#725832!important}.intro-art{grid-column:7/13;padding:0;min-height:760px}.intro-art:after{display:none}.intro-main{position:absolute;right:0;top:0;width:78%;height:680px;overflow:hidden}.intro-main:before{content:'';position:absolute;z-index:2;inset:1rem;border:1px solid rgba(255,255,255,.48);pointer-events:none}.intro-main img{height:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 50%;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.intro-main:hover img{transform:scale(1.025)}
.intro-inset{position:absolute;z-index:3;left:-2.5rem;bottom:-1.5rem;width:42%;padding:.65rem;background:var(--cream);box-shadow:0 22px 55px rgba(6,28,37,.14)}.intro-inset img{aspect-ratio:4/5;object-fit:cover}.intro-inset figcaption{padding:.1rem .25rem .25rem}.outline-word{z-index:4;right:-.6rem;bottom:1rem;background:transparent;padding:0;color:#745a31;font-size:clamp(4.5rem,7.5vw,8.1rem);text-shadow:0 1px var(--cream)}
.residence-seal{position:absolute;z-index:4;left:4%;top:5%;width:7rem;height:7rem;border:1px solid #a98a58;border-radius:50%;background:rgba(241,238,230,.88);backdrop-filter:blur(8px);display:flex;align-items:baseline;justify-content:center;gap:.25rem;transform:rotate(-8deg)}.residence-seal strong{font:italic 400 3.25rem/1 var(--serif)}.residence-seal span{font-size:.75rem;letter-spacing:.1em}
.intro-manifesto{grid-column:1/13;margin:8.7rem 0 0;font:italic 400 clamp(3.1rem,6.25vw,7rem)/.95 var(--serif);text-align:center;color:#17323b;letter-spacing:-.045em}.intro-manifesto:before,.intro-manifesto:after{content:'';display:inline-block;width:6vw;max-width:5rem;height:1px;background:#a7844c;vertical-align:middle;margin:0 1.25rem}

/* The residence */
.stay{padding-top:1rem}.stay .section-heading{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;margin-bottom:4.5rem}.stay .section-heading>div h2{max-width:56rem}.stay .section-heading>p{font-size:1rem;line-height:1.9;max-width:28rem;padding-bottom:.7rem}.stay-image{box-shadow:var(--shadow)}.stay-image:before{content:'';position:absolute;z-index:2;inset:1.25rem;border:1px solid rgba(255,255,255,.45);pointer-events:none}.stay-image img{height:min(64vw,790px);min-height:580px}.stay-index{position:absolute;z-index:3;left:3rem;top:3rem;color:#fff;font-size:.78rem;letter-spacing:.16em;text-shadow:0 2px 12px #000}.image-link{z-index:3;bottom:0;right:0;min-width:20rem;padding:1.35rem 1.8rem;background:var(--paper);font-size:.86rem}.facts-strip{padding:0;background:var(--paper);box-shadow:0 18px 45px rgba(5,23,30,.08)}.facts-strip>div{padding:2.45rem 1rem}.facts-strip strong{font-size:3.25rem;color:#102a33}.facts-strip span{font-size:.8rem;letter-spacing:.04em}.image-reveal{overflow:hidden}.js .image-reveal{clip-path:inset(0 0 0 0)}
@supports(animation-timeline:view()){.image-reveal{animation:editorial-reveal linear both;animation-timeline:view();animation-range:entry 5% cover 32%}.image-reveal>img{animation:editorial-image linear both;animation-timeline:view();animation-range:entry 5% cover 48%}@keyframes editorial-reveal{from{clip-path:inset(0 0 26% 0)}to{clip-path:inset(0)}}@keyframes editorial-image{from{transform:scale(1.08)}to{transform:scale(1)}}}

/* Water pavilion */
.pool-story{position:relative;grid-template-columns:minmax(0,1.12fr) minmax(31rem,.88fr);min-height:850px;margin:6rem 0 0;background:var(--deep);overflow:hidden}
.pool-photo{padding:5.5rem 0 5.5rem 5.5vw}.pool-photo img{min-height:700px;height:100%;object-fit:cover}.pool-copy{position:relative;padding:8.8rem clamp(3.5rem,6vw,7rem) 7rem;align-self:stretch;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(140deg,#08232d,#04151c)}.pool-copy:before{content:'03';position:absolute;right:-.2rem;top:-2.5rem;font:italic 400 14rem/1 var(--serif);color:rgba(218,196,157,.055)}.pool-copy h2{position:relative;font-size:clamp(3.6rem,4.7vw,5.5rem);margin-bottom:2.2rem}.pool-copy>p:not(.eyebrow){font-size:1rem;line-height:1.95;max-width:31rem}.pool-copy .caption{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;margin-top:.6rem}.pool-copy .text-link{align-self:flex-start}.pool-inset{position:absolute;z-index:3;left:-8rem;bottom:2.7rem;width:13rem;padding:.45rem;background:#f1eee6;box-shadow:0 20px 55px rgba(0,0,0,.28);transform:rotate(-2deg)}.pool-inset img{aspect-ratio:1.25;object-fit:cover}.pool-inset figcaption{color:#24383e;font-size:.68rem;line-height:1.3;margin:.45rem .2rem .15rem}.pool-copy .chapter{position:relative}

/* Coast editorial spread */
.beach-story{padding-top:clamp(10rem,14vw,15rem);padding-bottom:clamp(11rem,15vw,16rem)}.beach-heading{text-align:left;max-width:none;display:grid;grid-template-columns:1fr .8fr;gap:0 10%;align-items:end;margin:0 0 5rem}.beach-heading .chapter,.beach-heading h2{grid-column:1}.beach-heading h2{font-size:clamp(4rem,6vw,6.6rem);max-width:49rem}.beach-heading>p:not(.eyebrow){grid-column:2;grid-row:1/3;font-size:1rem;line-height:1.95;align-self:end}.beach-heading>.text-link{grid-column:2;justify-self:start;margin-top:1.3rem}.beach-editorial{position:relative;min-height:900px}.beach-wide{position:absolute;left:0;top:0;width:78%;z-index:1}.beach-wide img{aspect-ratio:1.7;object-fit:cover}.beach-wide:before{content:'';position:absolute;z-index:2;inset:1rem;border:1px solid rgba(255,255,255,.45)}.beach-detail{position:absolute;z-index:3;right:0;bottom:0;width:34%;padding:.65rem;background:var(--cream);box-shadow:var(--shadow)}.beach-detail img{aspect-ratio:.82;object-fit:cover}.coast-word{position:absolute;z-index:4;right:5%;top:3%;font:italic 400 clamp(6rem,12vw,13rem)/1 var(--serif);color:#efe8da;text-shadow:0 1px #b39768;writing-mode:vertical-rl;opacity:.92}.beach-editorial figcaption{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}

/* Guest notes */
.reviews{position:relative;width:100%;max-width:none;padding:10rem max(5%,calc((100vw - 1440px)/2));background:#0a2631;color:var(--cream);overflow:hidden}.reviews:before{content:'Guestbook';position:absolute;left:-1rem;top:-.2rem;font:italic 400 14vw/1 var(--serif);color:rgba(231,214,184,.035);white-space:nowrap}.reviews .center-heading{position:relative;max-width:60rem;margin-bottom:5.5rem}.reviews .center-heading h2{font-size:clamp(4rem,6vw,6.6rem)}.reviews .eyebrow{display:none}.review-grid{position:relative;border-color:rgba(255,255,255,.2)}.review-card{min-height:31rem;padding:3.5rem 2.7rem;border-right-color:rgba(255,255,255,.2)}.review-card .quote-glyph{position:absolute;right:2.2rem;top:1.5rem;font:italic 400 6.5rem/1 var(--serif);color:#c9ab77;opacity:.35}.review-number{font-size:2.4rem;color:#d8bd8c}.review-card>p{font:italic 400 1.65rem/1.45 var(--serif);color:#f2eee7}.review-card>div{display:block;margin-top:2rem}.review-card strong{font-size:.9rem;letter-spacing:.06em;text-transform:uppercase}.review-card>div span{display:block;font-size:.78rem;color:#b9c7ca;margin-top:.25rem}.review-card>a{font-size:.78rem;color:#dbc294}.source-note{font-size:.78rem;color:#afbec1;margin-top:2rem}

/* Gallery and final touchpoints */
.gallery-teaser{padding-top:10rem}.gallery-teaser .section-heading{align-items:end}.gallery-teaser .photo-grid{grid-template-columns:1.35fr .85fr .85fr;gap:1rem}.gallery-teaser .photo-button:first-child{grid-row:span 2}.gallery-teaser .photo-button:first-child img{aspect-ratio:.82}.gallery-teaser .photo-button:not(:first-child) img{aspect-ratio:1.35}.photo-button:after{content:'';position:absolute;inset:0;border:1px solid rgba(255,255,255,.32);margin:.65rem;pointer-events:none}.photo-expand{width:3rem;height:3rem;bottom:1.2rem;right:1.2rem;border-color:rgba(255,255,255,.6);background:rgba(4,21,28,.65);backdrop-filter:blur(8px)}
.faq{padding-top:8rem;padding-bottom:10rem}.faq>div:first-child{position:sticky;top:8rem;align-self:start}.faq summary{font-size:.9rem;min-height:4.5rem}.faq details p{font-size:.9rem;line-height:1.85}.contact-section{width:min(90%,1440px);margin-bottom:9rem;padding:6rem 7%;background:var(--paper);border:1px solid var(--line);box-shadow:0 24px 60px rgba(5,23,30,.07)}.contact-section h2{font-size:clamp(3.6rem,5vw,5.4rem)}.contact-links a{font-size:.9rem;min-height:4rem}.site-footer{padding-top:7rem;background:#031319}.footer-main{padding-bottom:6rem}.footer-manifesto{font-size:2.35rem}.footer-main>nav a,.footer-contact{font-size:.88rem}.footer-bottom{font-size:.76rem}.footer-bottom nav a{font-size:.78rem}

/* Inner pages keep the same residence identity */
.inner-page .site-header{color:var(--ink);background:rgba(241,238,230,.94);backdrop-filter:blur(14px);border-bottom-color:rgba(16,42,51,.18)}.inner-page .site-header.is-scrolled{color:#fff;background:rgba(4,21,28,.95)}
.page-intro{position:relative;overflow:hidden;padding:16.5rem 7% 8.5rem;background:linear-gradient(135deg,#f7f4ed,#e9e4d8);text-align:left}.page-intro:after{content:'S';position:absolute;right:3%;bottom:-5.5rem;font:italic 400 24rem/1 var(--serif);color:rgba(177,138,76,.08)}.page-intro .eyebrow,.page-intro h1,.page-intro>p{position:relative;z-index:1}.page-intro h1{max-width:70rem;font-size:clamp(5rem,8vw,9rem);line-height:.86}.page-intro>p:not(.eyebrow){max-width:43rem;margin:2.25rem 0 0;font-size:1rem;line-height:1.9}.detail-hero{position:relative;margin:0 3vw}.detail-hero:after{content:'';position:absolute;inset:1.2rem;border:1px solid rgba(255,255,255,.42)}.detail-hero img{height:min(65vw,850px)}
.detail-overview{padding-top:10rem;padding-bottom:8rem}.detail-overview>div:first-child{max-width:42rem}.detail-overview h2{font-size:clamp(4rem,5.7vw,6.2rem)}.detail-overview p:not(.eyebrow){font-size:1rem;line-height:2}.detail-facts>div{padding:1.3rem .2rem;font-size:.9rem}.detail-facts dd{font-family:var(--serif);font-size:1.2rem}.amenities>h2{font-size:3.5rem}.amenities li{font-size:.88rem;min-height:3.6rem}.access-note{padding:3.5rem;background:#e4ded1}.access-note h3{font-size:2.7rem}.access-note p{font-size:.95rem;line-height:1.9}
.gallery-jump{padding:2rem 6% 1rem;background:#0a2631;color:#fff}.gallery-jump a{font-size:.8rem;border-bottom-color:#c5a56d}.gallery-section{padding-top:7rem}.gallery-section h2{font-size:4rem}.gallery-section .photo-grid{gap:1.15rem}.gallery-section .photo-button:nth-child(6n+1),.gallery-section .photo-button:nth-child(6n+5){grid-row:span 2}.gallery-section .photo-button:nth-child(6n+1) img,.gallery-section .photo-button:nth-child(6n+5) img{aspect-ratio:.63}.gallery-section .photo-button img{aspect-ratio:1.25}.beach-grid{gap:1rem}.beach-grid figure:first-child{margin-top:7rem}.beach-grid img{aspect-ratio:1.25}.location-section{padding-top:6rem}.location-details h2{font-size:3.5rem}.location-details>p{font-size:.9rem}.map-shell{min-height:38rem;background:#dfe2da}.map-placeholder{min-height:38rem}.legal-page{padding-top:16rem;max-width:58rem}.legal-page h1{font-size:clamp(4rem,7vw,7rem)}.legal-page h2{font-size:2.6rem}.legal-page p{font-size:1rem;line-height:1.9}

/* Dialogs and fixed actions */
.mobile-menu{background:linear-gradient(135deg,#061e28,#031319);padding:3rem 6%}.menu-top{padding-bottom:2.8rem}.menu-body{padding-top:4.5rem}.menu-body>nav>a{font-size:clamp(3rem,5.2vw,5.7rem);line-height:1.03}.menu-details{font-size:.95rem}.text-button{font-size:.86rem}.lightbox{background:rgba(2,14,19,.2)}.whatsapp-float{width:3.7rem;height:3.7rem;background:rgba(6,31,41,.92);backdrop-filter:blur(12px);border-color:#cbb083}.mobile-book{background:#061e28}

@media(max-width:1180px){
  .site-header{grid-template-columns:1fr 200px 1fr}.brand-name{font-size:3.15rem}.brand-sub{font-size:.65rem}.hero h1{font-size:clamp(5rem,8.4vw,7.8rem)}.hero-signature{right:5%;width:7rem;height:7rem}.hero-signature span{font-size:4rem}.booking-fields{grid-template-columns:1.2fr 1.2fr .75fr .75fr 1.45fr}.home-page .booking-intro{align-items:flex-start}.home-page .booking-intro>p{max-width:35rem}.intro{gap:0 1.5rem}.intro-copy{grid-column:1/7}.intro-art{grid-column:7/13}.intro-main{width:88%}.intro-inset{left:-1.5rem}.intro-manifesto{margin-top:7rem}.pool-story{grid-template-columns:1fr 31rem}.pool-photo{padding-left:3vw}.pool-copy{padding-left:4rem;padding-right:3rem}.pool-inset{left:-5rem}.beach-editorial{min-height:760px}
}
@media(max-width:900px){
  .hero-vertical{display:none}.hero-signature{top:28%;right:4%;opacity:.8}.hero-content{width:86%;padding-top:17rem}.hero h1{font-size:clamp(4.7rem,10vw,6.8rem)}.hero-facts span:first-child{display:none}.hero-facts span:nth-child(2):before{display:none}.home-page .booking-section{margin-top:0;width:100%;box-shadow:none}.home-page .booking-intro{padding:2rem 5%;display:block}.home-page .booking-intro h2{white-space:normal;margin-bottom:1rem}.home-page .booking-intro>p{text-align:left}.home-page .booking-form{padding:0 5% 2rem}.intro{display:grid}.intro-copy{grid-column:1/7}.intro-art{grid-column:7/13;min-height:650px}.intro-main{height:560px;width:94%}.intro-inset{width:52%;left:-2rem}.intro-manifesto{margin-top:5rem}.stay .section-heading{gap:5%}.stay-image img{min-height:500px}.pool-story{grid-template-columns:1fr}.pool-photo{padding:4rem 5% 0}.pool-photo img{min-height:520px}.pool-copy{padding:6rem 8% 10rem}.pool-inset{left:auto;right:6%;bottom:2rem;width:13rem}.beach-heading{grid-template-columns:1fr;gap:1rem}.beach-heading .chapter,.beach-heading h2,.beach-heading>p:not(.eyebrow),.beach-heading>.text-link{grid-column:1;grid-row:auto}.beach-heading>p:not(.eyebrow){max-width:39rem}.beach-editorial{min-height:650px}.beach-wide{width:84%}.beach-detail{width:35%}.reviews{padding-left:5%;padding-right:5%}.review-card{padding:2.5rem 1.8rem}.review-card>p{font-size:1.35rem}.gallery-teaser .photo-grid{grid-template-columns:1.25fr 1fr}.gallery-teaser .photo-button:last-child{display:block;grid-column:2}.gallery-teaser .photo-button:first-child{grid-row:span 2}.contact-section{padding:4rem 5%}.page-intro{padding-top:14rem}.detail-overview{gap:5%}
}
@media(max-width:650px){
  body:before{opacity:.07}.preview-note{font-size:.66rem;letter-spacing:.08em;line-height:27px;min-height:27px}.section{width:88%;padding:5.5rem 0}.eyebrow{font-size:.72rem}.chapter{margin-bottom:1.5rem}.chapter span{font-size:1.25rem}.chapter small{font-size:.68rem}.site-header{top:27px;height:92px;grid-template-columns:1fr 145px 1fr}.site-header.is-scrolled{height:78px}.brand-name{font-size:2.75rem}.brand-sub{font-size:.56rem}.hero{height:calc(100svh - 27px);min-height:710px}.hero-frame{inset:.7rem}.hero-content{padding-top:11.8rem;width:84%}.hero-content:before{display:none}.hero h1{font-size:clamp(4rem,17vw,5.55rem);line-height:.86;margin-bottom:1.8rem}.hero h1 em{display:block;margin-left:1.5rem;margin-top:.22rem}.hero .eyebrow{font-size:.69rem;margin-bottom:1.5rem;letter-spacing:.18em}.hero-text{margin-left:1.5rem;max-width:19rem;font-size:.9rem;line-height:1.75}.hero-content>.button{margin-left:1.5rem}.hero-signature{width:5.5rem;height:5.5rem;top:auto;right:1.7rem;bottom:9rem}.hero-signature span{font-size:3.2rem}.hero-signature small{font-size:.45rem;bottom:.85rem}.hero-signature:before{width:1.5rem;left:-.75rem}.hero-signature:after{height:1.5rem;bottom:-.75rem}.hero-bottom{left:7%;right:7%;bottom:1.5rem}.hero-bottom>a{gap:1rem}.hero-facts span:nth-child(3){display:none}.home-page .booking-intro{padding-top:2rem}.home-page .booking-intro h2{font-size:2.5rem}.home-page .booking-intro>p{font-size:.84rem}.booking-fields{grid-template-columns:1fr 1fr}.booking-field{padding:1rem .85rem}.booking-field:first-child{border-left:0}.booking-field:nth-child(2){border-right:0}.booking-field>span{font-size:.74rem}.booking-status,.booking-language{font-size:.75rem}.home-page .booking-form{padding-bottom:1.7rem}.intro{display:block;padding-top:7rem;padding-bottom:8rem}.intro-copy{padding-top:0}.intro-copy h2{font-size:3.75rem}.intro-copy>p:not(.eyebrow){font-size:.95rem}.intro-copy .serif-note{font-size:1.8rem!important}.intro-art{margin-top:4.7rem;min-height:560px}.intro-main{height:500px;width:92%;right:0}.intro-inset{width:43%;left:0;bottom:-1.8rem}.residence-seal{width:5.6rem;height:5.6rem;left:auto;right:0;top:-2.4rem}.residence-seal strong{font-size:2.6rem}.outline-word{font-size:4.2rem;bottom:.2rem}.intro-manifesto{margin-top:7rem;font-size:3.15rem}.intro-manifesto:before,.intro-manifesto:after{display:block;margin:1.4rem auto;width:4rem}.stay{padding-top:0}.stay .section-heading{display:block;margin-bottom:2.7rem}.stay .section-heading>p{font-size:.94rem;padding:0}.stay .section-heading h2{font-size:3.65rem}.stay-image:before{inset:.65rem}.stay-image img{height:31rem;min-height:0}.stay-index{left:1.4rem;top:1.4rem;font-size:.7rem}.image-link{left:.65rem;right:.65rem;bottom:.65rem;min-width:0}.facts-strip>div{padding:1.7rem .5rem}.facts-strip strong{font-size:2.45rem}.facts-strip span{font-size:.75rem}.pool-story{margin-top:3rem}.pool-photo{padding:2.8rem 5% 0}.pool-photo img{height:28rem;min-height:0}.pool-copy{padding:5rem 7% 11rem}.pool-copy:before{font-size:9rem}.pool-copy h2{font-size:3.7rem}.pool-copy>p:not(.eyebrow){font-size:.94rem}.pool-inset{width:12rem;bottom:1.3rem}.beach-story{padding-top:8rem;padding-bottom:9rem}.beach-heading{margin-bottom:3rem}.beach-heading h2{font-size:3.8rem}.beach-heading>p:not(.eyebrow){font-size:.94rem}.beach-editorial{min-height:610px}.beach-wide{width:92%}.beach-wide img{aspect-ratio:.98}.beach-detail{width:46%;bottom:0}.coast-word{font-size:6rem;right:-.8rem;top:2rem}.reviews{padding:7.5rem 6%}.reviews .center-heading{text-align:left;margin-bottom:3.2rem}.chapter-center{justify-content:flex-start}.reviews .center-heading h2{font-size:3.8rem}.review-grid{display:block}.review-card{min-height:0;padding:3rem .2rem;border-right:0}.review-card>p{font-size:1.55rem;max-width:29rem}.review-card .quote-glyph{right:.3rem;top:1rem}.source-note{text-align:left}.gallery-teaser{padding-top:7rem}.gallery-teaser .photo-grid{grid-template-columns:1fr 1fr}.gallery-teaser .photo-button:first-child{grid-column:1/-1;grid-row:auto}.gallery-teaser .photo-button:first-child img{aspect-ratio:1.12}.gallery-teaser .photo-button:last-child{grid-column:auto}.gallery-teaser .photo-button:not(:first-child) img{aspect-ratio:.78}.faq{padding-top:5rem;padding-bottom:7rem}.faq>div:first-child{position:static}.contact-section{width:88%;margin-bottom:6rem;padding:3.5rem 6%;display:block}.contact-section h2{font-size:3.6rem}.site-footer{padding-top:5rem}.footer-manifesto{font-size:2rem}.page-intro{padding:11.5rem 6% 5rem}.page-intro h1{font-size:4.5rem;line-height:.9}.page-intro>p:not(.eyebrow){font-size:.94rem}.page-intro:after{font-size:15rem;bottom:-3rem}.detail-hero{margin:0 .65rem}.detail-hero:after{inset:.65rem}.detail-hero img{height:32rem}.detail-overview{padding-top:6rem;padding-bottom:5rem}.detail-overview h2{font-size:3.8rem}.detail-overview p:not(.eyebrow){font-size:.95rem}.detail-facts dd{font-size:1.05rem}.amenities>h2{font-size:3rem}.access-note{padding:2rem}.access-note h3{font-size:2.35rem}.access-note p{font-size:.9rem}.gallery-jump{padding-top:1.4rem}.gallery-section{padding-top:5rem}.gallery-section h2{font-size:3.25rem}.gallery-section .photo-grid{grid-template-columns:1fr 1fr;gap:.65rem}.gallery-section .photo-button:nth-child(6n+1),.gallery-section .photo-button:nth-child(6n+5){grid-row:auto}.gallery-section .photo-button img,.gallery-section .photo-button:nth-child(6n+1) img,.gallery-section .photo-button:nth-child(6n+5) img{aspect-ratio:.78}.beach-grid figure:first-child{margin-top:3.5rem}.location-section{padding-top:4rem}.location-details h2{font-size:3rem}.map-shell,.map-placeholder{min-height:31rem}.legal-page{padding-top:12rem}.legal-page h1{font-size:4rem}.legal-page h2{font-size:2.25rem}.legal-page p{font-size:.94rem}.mobile-menu{padding-top:2rem}.menu-body{padding-top:2.8rem}.menu-body>nav>a{font-size:2.55rem}.menu-details{font-size:.86rem}
}
@media(prefers-reduced-motion:reduce){.hero-photo,.hero .eyebrow,.hero h1,.hero-text,.hero-content>.button,.hero-signature{animation:none!important}.image-reveal,.image-reveal>img{animation:none!important;clip-path:none!important;transform:none!important}}

/* Public release has no preview banner, on desktop and mobile. */
body.production .site-header{top:0}
body.production .hero{height:100svh}
