:root{--teal:#4db6ac;--green:#0a3d38;--white:#fff;--sand:#f7f3ea;--coral:#f76c5e;--green-dark:var(--green);--mint:color-mix(in srgb, var(--teal) 10%, var(--white));--cream:var(--white);--paper:var(--white);--ink:var(--green);--muted:color-mix(in srgb, var(--green) 80%, var(--white));--line:color-mix(in srgb, var(--green) 24%, var(--white));--serif:Georgia, "Times New Roman", serif;--sans:"Avenir Next", Avenir, "Segoe UI", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,summary{font:inherit}img{width:100%;height:auto;display:block}svg{vertical-align:middle;flex:none}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.04em;text-wrap:balance;line-height:1.1}h1{font-size:clamp(44px,5.5vw,76px)}h2{font-size:clamp(34px,3.5vw,49px)}h3{font-family:var(--serif);letter-spacing:-.02em;font-size:25px;line-height:1.25}em{font-weight:400}p{text-wrap:pretty;max-width:65ch}p+p{margin-top:16px}address{font-style:normal}.container{width:min(1248px,100% - 96px);margin-inline:auto}.section{padding-block:88px}.eyebrow{letter-spacing:.12em;text-transform:uppercase;margin-bottom:20px;font-size:12px;font-weight:650;line-height:1.6}.lead{font-size:19px;line-height:1.65}.button{background:var(--green);min-height:52px;color:var(--paper);border:1px solid var(--green);justify-content:center;align-items:center;gap:20px;padding:13px 23px;font-size:15px;font-weight:550;line-height:1.5;transition:background .2s;display:inline-flex}.button:hover{background:var(--teal);border-color:var(--green);color:var(--green)}.button-light{background:var(--cream);border-color:var(--cream);color:var(--green)}.button-light:hover{background:var(--sand);border-color:var(--green);color:var(--green)}.button[href^="https://wa.me/"]{background:var(--teal);color:var(--green);border-color:var(--green)}.button[href^="https://wa.me/"]:hover{background:var(--green);color:var(--white);border-color:var(--white)}.button:active,.button[href^="https://wa.me/"]:active{background:var(--sand);color:var(--green);border-color:var(--green);text-underline-offset:.2em;text-decoration:underline}.text-link{border-bottom:1px solid;justify-content:space-between;align-items:center;gap:20px;min-height:46px;padding-block:9px;font-size:15px;font-weight:550;display:inline-flex}.text-link:hover{color:var(--green);border-bottom-color:var(--green);background:var(--mint)}.text-link:active{background:var(--sand);color:var(--green);border-bottom-width:2px}.map-links{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.map-link{border:1px solid var(--green);min-height:46px;color:var(--green);justify-content:center;align-items:center;gap:12px;padding:10px 14px;font-size:14px;font-weight:550;line-height:1.5;display:inline-flex}.map-link:hover{background:var(--mint);text-underline-offset:.2em;text-decoration:underline}.map-link:active{background:var(--sand);text-underline-offset:.2em;text-decoration:underline}.map-links--compact{gap:8px;margin-top:10px}.map-links--compact .map-link{gap:8px;min-height:44px;padding:8px 10px}:where(.footer-grid a:not(.brand),.mobile-chat,.hero-bottom a):hover,:where(.footer-grid a:not(.brand),.mobile-chat,.hero-bottom a):active{text-underline-offset:.25em;text-decoration:underline}.desktop-nav a:is(:hover,[aria-current]),.mobile-menu nav>a[aria-current]{text-underline-offset:.3em;text-decoration:underline 2px}a:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:4px;box-shadow:0 0 0 4px var(--white)}.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:var(--green);color:var(--white);padding:12px 20px;position:fixed;top:-100px;left:12px}.skip-link:focus{top:12px}main:focus,#ubicacion:focus{outline:none}.site-header{z-index:30;background:var(--cream);border-bottom:1px solid var(--line);position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:24px;max-width:1440px;min-height:88px;margin:auto;padding:12px 36px;display:flex}.brand{flex-shrink:0;align-items:center;min-height:48px;display:inline-flex}.brand-logo{width:264px;height:auto;display:block}.brand>picture{display:block}.brand--stacked .brand-logo{width:200px}.desktop-nav{align-items:center;gap:21px;display:flex}.desktop-nav a{align-items:center;min-height:44px;font-size:14px;line-height:1.5;display:flex}.header-book{white-space:nowrap;gap:13px;min-height:46px;padding:10px 17px;font-size:14px}.mobile-menu,.mobile-chat{display:none}.hero{min-height:620px;color:var(--paper);isolation:isolate;position:relative}.hero-photo,.hero-shade{z-index:-2;width:100%;height:100%;position:absolute;inset:0}.hero-photo img{object-fit:cover;object-position:center 53%;width:100%;height:100%}.hero-shade{z-index:-1;background:linear-gradient(90deg,#0a3d38c2,#0a3d389e 38%,#0a3d3829 68%,#0a3d3800),linear-gradient(#0000 50%,#0a3d3847)}.hero-content{padding-top:70px;padding-bottom:115px}.hero h1{max-width:760px;font-size:clamp(60px,6.5vw,94px);line-height:1.04}.hero-content>p:not(.eyebrow){max-width:43ch;margin-top:24px;font-size:18px}.hero .eyebrow{letter-spacing:.12em;margin-bottom:24px;font-size:13px}.hero-actions{flex-wrap:wrap;align-items:center;gap:28px;margin-top:30px;display:flex}.hero-secondary{border-bottom:1px solid var(--white);align-items:center;gap:16px;min-height:46px;font-size:16px;display:inline-flex}.hero-secondary:hover,.hero-secondary:active{border-bottom-width:2px}.hero-bottom{position:absolute;bottom:25px;left:0;right:0}.hero-bottom a{align-items:center;gap:10px;min-height:44px;font-size:14px;display:inline-flex}.quick-facts{background:var(--sand);border-bottom:1px solid var(--line)}.quick-facts>.container{grid-template-columns:repeat(4,1fr);padding-block:22px;display:grid}.quick-facts>.container>div{border-right:1px solid var(--line);justify-content:center;align-items:center;gap:12px;font-size:14px;display:flex}.quick-facts>.container>div:last-child{border:0}.stay-preview,.restaurant-preview,.split-intro,.story-bottom,.location-detail{grid-template-columns:1fr 1fr;align-items:center;gap:80px;display:grid}.stay-preview .lead,.restaurant-preview .lead,.split-intro .lead{margin-top:24px}.portrait-photo img{object-fit:cover;height:560px}.portrait-photo figcaption,figure>figcaption{color:var(--muted);margin-top:12px;font-size:14px;line-height:1.6}.plain-list{margin-block:24px;padding-left:20px}.plain-list li{margin-block:9px;padding-left:4px}.stay-preview .text-link,.restaurant-preview .text-link{margin-top:16px}.facilities-section,.amenities-section,.values-section{background:var(--sand);padding-block:76px}.amenities-section{background:var(--sand)}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px;display:flex}.section-heading .eyebrow{margin-bottom:14px}.section-heading .text-link{flex-shrink:0}.property-gallery{grid-template-columns:1fr 1fr;gap:30px;display:grid}.property-gallery img{--gallery-photo-height:520px;height:var(--gallery-photo-height);object-fit:cover}.property-gallery .gallery-beach img{object-position:center max(100%, calc(48.3% - var(--gallery-photo-height) * .15))}.property-gallery .gallery-garden img{object-position:center 47%}.restaurant-preview>figure>img{object-fit:cover;object-position:center 65%;height:480px}.location-band{background:var(--sand);padding-block:65px}.location-band-inner{grid-template-columns:1fr 1fr;align-items:center;gap:80px;display:grid}.location-band address{max-width:38ch;font-size:20px}.location-band p:not(.eyebrow){color:var(--muted);margin-top:16px}.booking-cta{border-top:5px solid var(--coral);background:var(--green);color:var(--cream);padding-block:58px}.booking-inner{grid-template-columns:1.3fr 1fr;align-items:center;gap:55px;display:grid}.booking-cta h2{font-size:40px}.booking-action{text-align:right}.social-follow{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding-block:20px;display:flex}.social-follow h2,.footer-social h2{font-family:var(--sans);letter-spacing:0;font-size:20px;font-weight:650;line-height:1.4}.social-follow .social-links{width:300px}.social-links{flex-wrap:wrap;gap:12px;display:flex}.social-link{border:1px solid var(--green);background:var(--white);min-height:48px;color:var(--green);flex:110px;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:14px;font-weight:550;line-height:1.5;display:inline-flex}.social-link:hover,.social-link:active{background:var(--mint);text-underline-offset:.2em;text-decoration:underline}.footer-social{background:var(--sand);padding:22px}.footer-social h2{margin-bottom:16px}.site-footer{background:var(--paper);padding-top:60px;padding-bottom:40px}.footer-grid{grid-template-columns:.9fr 1.2fr 1.1fr;align-items:start;gap:40px;display:grid}.footer-grid>div>p{color:var(--muted);margin-top:18px;font-size:15px}.footer-grid .eyebrow{letter-spacing:.08em;margin-bottom:14px;font-size:12px;display:block}.footer-contact>a{align-items:center;gap:9px;min-height:46px;font-size:14px;line-height:1.5;display:flex}.footer-contact>p{margin-bottom:14px}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:24px;margin-top:40px;padding-top:22px;font-size:13px;display:flex}.footer-bottom>span:last-child{gap:15px;display:flex}.whatsapp-shortcut{z-index:25;background:var(--green);width:48px;height:48px;color:var(--cream);border:1px solid var(--mint);border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:24px;right:14px;box-shadow:0 4px 16px #0a3d3821}.whatsapp-shortcut span{display:none}.whatsapp-shortcut:hover{background:var(--teal);color:var(--green);border-color:var(--green)}.page-intro{text-align:center;padding-top:60px;padding-bottom:50px}.page-intro h1{margin-bottom:23px}.page-intro .lead{max-width:55ch;margin-inline:auto}.button-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:28px;margin-top:28px;display:flex}.pdf-note{color:var(--muted);margin:18px auto 0;font-size:14px}.food-gallery{grid-template-columns:repeat(3,1fr);gap:26px;display:grid}.food-gallery img{object-fit:cover;height:420px}.food-gallery figure:nth-child(2) img{object-position:center 65%}.food-gallery figcaption{font-size:16px}.restaurant-info{grid-template-columns:1fr 1.25fr;gap:75px;display:grid}.restaurant-info .text-link{margin-top:20px;margin-right:22px}.restaurant-info p:not(.lead){color:var(--muted);margin-top:20px}.split-intro{padding-top:60px;padding-bottom:75px}.split-intro h1{font-size:clamp(43px,4.7vw,67px)}.split-intro p:not(.eyebrow):not(.lead){color:var(--muted);margin-top:20px}.split-intro .button{margin-top:26px}.split-intro .text-link{margin-top:15px}.stay-actions{flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:26px;display:flex}.split-intro .stay-actions>a{margin-top:0}.help-note{color:var(--muted);max-width:48ch;font-size:14px}.values-grid{grid-template-columns:1fr 1fr;gap:65px;margin-top:45px;display:grid}.value-number{letter-spacing:.1em;border-top:1px solid var(--line);margin-bottom:24px;padding-top:24px;font-size:12px;display:block}.values-grid h3{margin-bottom:18px;font-size:29px}.values-grid p{max-width:50ch;font-size:16px}.story-bottom>img{object-fit:cover;height:430px}.story-bottom p:not(.eyebrow){margin-top:24px}.amenities{grid-template-columns:repeat(4,1fr);gap:35px;margin-top:45px;display:grid}.amenity{border-top:1px solid var(--line);padding-top:25px}.amenity h3{margin-top:19px;font-size:25px}.amenity p{color:var(--muted);margin-top:12px;font-size:15px}.faq-section{grid-template-columns:1fr 1.25fr;gap:75px;display:grid}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding-block:18px}.faq-list summary{cursor:pointer;min-height:44px;padding:8px 15px 8px 0;font-size:17px}.faq-list details p{color:var(--muted);margin-top:14px;padding-bottom:8px;font-size:16px}.contact-intro{padding-top:48px;padding-bottom:32px}.contact-intro h1{font-size:clamp(42px,4.6vw,62px)}.contact-intro .lead{margin-top:19px}.contact-intro .text-link{margin-top:14px}.contact-grid{grid-template-columns:1.25fr 1fr;gap:30px;display:grid}.contact-primary{border-inline-start:4px solid var(--coral);background:var(--sand);padding:36px}.contact-primary h2{font-size:32px}.contact-primary>p{max-width:48ch;margin-top:20px}.contact-primary .button{margin-top:24px}.contact-number{width:fit-content;min-height:44px;padding-top:12px;font-size:18px;display:block}.contact-secondary{border:1px solid var(--line);padding:30px 36px}.contact-secondary h2{font-family:var(--sans);letter-spacing:0;font-size:19px;font-weight:550;line-height:1.5}.contact-secondary article+article{border-top:1px solid var(--line);margin-top:23px;padding-top:23px}.contact-secondary .text-link{margin-top:10px;display:flex}.contact-secondary .social-links{margin-top:16px}.location-photo img{object-fit:cover;height:500px}.location-detail address{max-width:36ch;margin-top:25px;font-size:20px}.location-detail p:not(.eyebrow){margin-top:18px}.location-detail .text-link{margin-top:15px}.not-found{text-align:center;padding-block:70px 90px}.not-found>svg{margin-bottom:24px}.not-found>p:not(.eyebrow){color:var(--muted);margin:24px auto}@media (width<=1399px){.whatsapp-shortcut{display:none}}@media (width<=1099px){html,body{overscroll-behavior-y:none}.brand--horizontal .brand-logo{width:240px}.header-inner{gap:20px;min-height:78px;padding-inline:28px}.desktop-nav{display:none}.header-book{margin-left:auto}.mobile-menu{flex-shrink:0;display:block}.mobile-menu summary{cursor:pointer;justify-content:center;align-items:center;gap:10px;min-width:46px;min-height:46px;font-size:14px;list-style:none;display:flex}.mobile-menu summary::-webkit-details-marker{display:none}.menu-bars{border-top:1px solid var(--green);border-bottom:1px solid var(--green);width:21px;height:14px;display:block;position:relative}.menu-bars:after{content:"";border-top:1px solid var(--green);position:absolute;top:5px;left:0;right:0}.mobile-menu[open] .menu-bars{background:var(--green);border:0;height:1px;transform:rotate(45deg)}.mobile-menu[open] .menu-bars:after{top:0;transform:rotate(90deg)}.mobile-menu nav{background:var(--cream);border-bottom:1px solid var(--line);overscroll-behavior-y:contain;max-height:calc(100dvh - 78px);padding:12px 28px 26px;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 15px 20px #0a3d3817}.mobile-menu nav>a:not(.button){border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:50px;font-size:17px;display:flex}.mobile-menu nav>a[aria-current]{background:var(--sand);color:var(--green);font-weight:650}.mobile-menu nav>.button{width:100%;margin-top:20px}.container{width:calc(100% - 64px)}.stay-preview,.restaurant-preview,.split-intro,.story-bottom,.location-detail{gap:45px}.quick-facts>.container>div{gap:9px;font-size:12px}.portrait-photo img{height:520px}.footer-grid{grid-template-columns:1fr 1fr;gap:36px 50px}.footer-social{grid-area:2/1/auto/-1}.booking-inner{gap:30px}.booking-cta h2{font-size:36px}.booking-action .button{padding-inline:18px;font-size:14px}.amenities{grid-template-columns:repeat(2,1fr)}.food-gallery{gap:18px}.food-gallery img{height:340px}.restaurant-info,.faq-section{gap:45px}.property-gallery img{--gallery-photo-height:400px}.location-band-inner{gap:45px}}@media (width<=700px){html{scroll-padding-top:94px}.container{width:calc(100% - 40px)}.section{padding-block:56px}h1{font-size:45px}h2{font-size:35px}.eyebrow{letter-spacing:.09em;margin-bottom:17px;font-size:11px}.lead{font-size:17px}.header-inner{gap:10px;min-height:76px;padding:9px 20px}.brand--horizontal .brand-logo{width:190px}.header-book{display:none}.mobile-chat{flex-shrink:0;justify-content:center;align-items:center;width:44px;min-height:46px;margin-left:auto;display:flex}.mobile-menu summary{gap:7px;font-size:13px}.mobile-menu nav{max-height:calc(100dvh - 76px);padding-inline:20px}.hero{min-height:0}.hero-content{padding-top:44px;padding-bottom:88px}.hero h1{font-size:clamp(40px,12vw,50px);line-height:1.1}.hero .eyebrow{letter-spacing:.08em;max-width:none;margin-bottom:20px;font-size:11px}.hero-content>p:not(.eyebrow){max-width:36ch;margin-top:20px;font-size:16px;line-height:1.65}.hero-actions{flex-direction:column;align-items:start;gap:12px 20px;margin-top:25px}.hero-actions .button{padding-inline:18px;font-size:14px}.hero-secondary{font-size:15px}.hero-shade{background:linear-gradient(90deg,#0a3d38b8,#0a3d3885),linear-gradient(#0000 50%,#0a3d3847)}.hero-bottom{bottom:20px}.hero-bottom a{gap:8px;max-width:100%;font-size:12px;line-height:1.5}.quick-facts>.container{grid-template-columns:1fr 1fr;padding-block:5px}.quick-facts>.container>div{border-right:0;justify-content:start;gap:9px;padding:15px 0;font-size:13px;line-height:1.5}.quick-facts>.container>div:nth-child(2n){padding-left:15px}.quick-facts>.container>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.quick-facts svg{width:21px;height:21px}.stay-preview,.restaurant-preview,.split-intro,.story-bottom,.location-detail{grid-template-columns:1fr;gap:30px}.stay-preview>figure{order:2}.stay-preview .lead,.restaurant-preview .lead{margin-top:22px}.portrait-photo img{height:390px}.portrait-photo figcaption,figure>figcaption{font-size:14px}.plain-list{margin-block:20px;font-size:16px}.button{gap:14px;padding-inline:19px;font-size:15px}.text-link{gap:14px;max-width:100%;font-size:15px;line-height:1.6}.facilities-section,.amenities-section,.values-section{padding-block:50px}.section-heading{margin-bottom:28px;display:block}.section-heading>.text-link{margin-top:18px}.property-gallery{grid-template-columns:1fr;gap:30px}.property-gallery img{--gallery-photo-height:340px}.restaurant-preview>figure>img{height:350px}.location-band{padding-block:48px}.location-band-inner{grid-template-columns:1fr;gap:25px}.location-band address{font-size:18px}.booking-cta{padding-block:45px}.booking-inner{grid-template-columns:1fr;gap:27px}.booking-cta h2{font-size:35px}.social-follow{flex-wrap:wrap;gap:12px}.social-follow .social-links{width:100%}.booking-action{text-align:left}.booking-action .button{font-size:15px}.site-footer{padding-block:28px max(22px, env(safe-area-inset-bottom))}.brand--compact-mobile .brand-logo{aspect-ratio:800/180;width:240px}.footer-grid{grid-template-columns:1fr;gap:18px}.footer-social{grid-area:auto;padding:18px}.footer-social .social-links{gap:8px}.footer-social .social-link{flex-basis:100px;padding-inline:8px}.footer-grid .eyebrow{margin-bottom:6px;font-size:12px}.footer-grid>div>p{margin-top:8px;font-size:14px;line-height:1.5}.footer-contact>p{margin-bottom:6px}.footer-contact>a{min-height:44px;font-size:14px}.footer-bottom{flex-direction:column;gap:4px;margin-top:18px;padding-top:14px;font-size:13px}.page-intro{text-align:left;padding-top:42px;padding-bottom:35px}.page-intro h1{font-size:44px}.page-intro .lead{font-size:17px}.button-row{justify-content:start;gap:15px 24px;margin-top:24px}.pdf-note{max-width:38ch;margin-left:0;font-size:14px}.food-gallery{grid-template-columns:1fr;gap:30px}.food-gallery img{height:340px}.food-gallery figcaption{font-size:16px}.restaurant-info,.faq-section{grid-template-columns:1fr;gap:25px}.restaurant-info .text-link{margin-top:16px;margin-right:0}.split-intro{padding-top:42px;padding-bottom:52px}.split-intro h1{font-size:44px}.split-intro .lead{margin-top:22px;font-size:17px}.split-intro p:not(.eyebrow):not(.lead){font-size:16px}.split-intro p.help-note{font-size:14px}.split-intro .button{margin-top:23px}.values-grid{grid-template-columns:1fr;gap:30px;margin-top:35px}.value-number{margin-bottom:20px;font-size:12px}.values-grid h3{font-size:28px}.values-grid p{font-size:16px}.story-bottom>img{height:310px}.amenities{gap:30px 22px;margin-top:35px}.amenity h3{font-size:23px}.amenity p{font-size:15px}.faq-list summary,.faq-list details p{font-size:16px}.contact-intro{padding-top:36px;padding-bottom:27px}.contact-intro h1{font-size:42px}.contact-intro .lead{margin-top:17px;font-size:17px}.contact-intro .text-link{margin-top:12px}.contact-grid{grid-template-columns:1fr;gap:22px}.contact-primary{padding:27px 23px}.contact-primary h2{font-size:29px}.contact-primary>p{margin-top:17px;font-size:16px}.contact-primary .button{margin-top:22px;padding-inline:17px;font-size:14px}.contact-number{font-size:18px}.contact-primary p.help-note{font-size:14px}.contact-secondary{padding:25px 23px}.contact-secondary h2{font-size:19px}.location-detail address{margin-top:22px;font-size:18px}.location-photo img{height:380px}.not-found{padding-block:48px 65px}.not-found h1{font-size:52px}.not-found .button-row{justify-content:center}.not-found>p:not(.eyebrow){font-size:16px}}@media (width<=360px){.header-inner{padding-inline:16px}.mobile-chat{display:none}.mobile-menu{margin-left:auto}.mobile-menu summary>span:last-child{display:none}.hero-actions .button{font-size:14px}.contact-primary{padding-inline:19px}.contact-primary .button{gap:10px;padding-inline:13px}.contact-intro h1{font-size:38px}.amenities{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.food-gallery figure:nth-child(3) img{object-position:center bottom}
