@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#163a38;--deep:#123f3c;--deepest:#0a302e;--teal:#2c7169;--mint:#dcebe4;--sand:#f5f1e8;--paper:#fffdf8;--coral:#d9876a;--muted:#71817a;--line:#d9e1da;--display:'Manrope',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.skip-link{position:absolute;left:12px;top:-50px;z-index:100;background:#fff;color:var(--ink);padding:10px 14px}.skip-link:focus{top:10px}.topline{height:29px;background:var(--deepest);color:#c0d5ca;display:flex;justify-content:center;align-items:center;gap:9px;font-size:8px;font-weight:700;letter-spacing:.2em}.topline-dot{color:var(--coral)}.header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(calc((100% - 1200px)/2),6%);background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid #163a380c}.brand{display:flex;gap:11px;align-items:center}.brand-mark{display:grid;place-content:center;width:39px;height:39px;border:1px solid var(--teal);border-radius:50%;font:500 18px var(--serif);color:var(--teal)}.brand-mark span{font-style:italic;margin-left:-4px;color:var(--coral)}.brand-name{font:700 11px var(--display);letter-spacing:.18em}.brand-name small{display:block;font:600 7px var(--body);letter-spacing:.19em;color:#788a82;margin-top:5px}.nav{display:flex;align-items:center;gap:30px;font-size:11px;font-weight:600}.nav>a:not(.nav-book):hover,.text-link:hover,.quiet-link:hover{color:var(--coral)}.nav-book{background:var(--deep);color:#fff;padding:12px 16px}.nav-book span{margin-left:10px;color:#e9aa8d}.menu-toggle{display:none}.hero{min-height:650px;background:var(--deepest);color:#fff;position:relative;overflow:hidden;display:flex;align-items:center}.hero-art{position:absolute;inset:0 0 0 38%;opacity:.92}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--deepest) 0%,#0a302e66 24%,#0a302e00 80%),linear-gradient(0deg,#0a302e55,transparent 36%)}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-content{position:relative;z-index:1;width:min(1200px,88%);margin:0 auto;padding:65px 0 78px}.eyebrow,.overline{font-size:8px;font-weight:700;letter-spacing:.22em;color:#81948a;margin:0}.eyebrow{display:flex;align-items:center;gap:11px;color:#d3e2d9}.eyebrow-line{height:1px;width:25px;background:var(--coral)}h1,h2,h3,p{margin-top:0}.hero h1{font:600 clamp(48px,6vw,78px)/1.04 var(--display);letter-spacing:-.06em;margin:26px 0 18px;max-width:740px}.hero h1 em,h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}.hero-copy{max-width:475px;color:#d2e0d8;font-size:13px;line-height:1.9;margin:0}.hero-actions{display:flex;align-items:center;gap:23px;margin-top:30px}.button{display:inline-flex;align-items:center;gap:21px;padding:15px 18px;font-size:10px;font-weight:700;letter-spacing:.02em;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-light{background:var(--paper);color:var(--deep)}.button-light span{color:var(--coral)}.quiet-link{font-size:10px;font-weight:600;color:#e5ece7}.quiet-link span{margin-left:9px;color:var(--coral)}.hero-caption{font-size:8px;color:#d3e2d94d;margin:22px 0 0}.hero-index{position:absolute;right:6%;bottom:42px;display:flex;align-items:center;gap:12px;color:#d7e4dd;font:500 9px var(--display);letter-spacing:.13em}.hero-index i{height:1px;width:35px;background:var(--coral)}.hero-scroll{position:absolute;left:6%;bottom:41px;color:#c5d7cc;font-size:7px;letter-spacing:.2em}.hero-scroll span{color:var(--coral);margin-left:12px}.facts{max-width:1000px;margin:-1px auto 0;padding:30px 5%;display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--line);position:relative;background:var(--paper)}.facts>div{text-align:center;border-right:1px solid var(--line);display:flex;justify-content:center;align-items:baseline;gap:7px}.facts>div:last-child{border:0}.facts strong{font:600 23px var(--display);color:var(--teal)}.facts span{font-size:9px;color:var(--muted)}.section-wrap{width:min(1100px,86%);margin:auto}.intro{padding:112px 0 104px;display:grid;grid-template-columns:.45fr 1.5fr .8fr;gap:45px;align-items:start}.section-kicker{font:700 9px var(--display);letter-spacing:.13em;color:var(--coral);display:flex;gap:12px}.section-kicker span{color:var(--muted)}.intro-copy{max-width:670px}.intro-copy .overline{margin:2px 0 17px}.intro h2,.community h2,.details h2{font:600 42px/1.16 var(--display);letter-spacing:-.055em;margin:0 0 21px}.lead{font:400 18px/1.55 var(--serif);color:#526a61;margin-bottom:17px}.intro-copy>p:not(.overline):not(.lead),.community-heading>p:not(.overline):not(.lead),.location-copy>p:not(.overline),.experience-copy>p:not(.overline){font-size:12px;line-height:1.9;color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:10px;font-weight:700;border-bottom:1px solid #b6c8bd;padding:0 0 8px;margin-top:12px}.text-link span{color:var(--coral)}.intro-note{margin-top:106px;border-top:1px solid var(--line);padding-top:17px;display:grid;grid-template-columns:26px 1fr;gap:10px}.note-icon{color:var(--coral);font-size:17px}.intro-note p{font:italic 13px/1.7 var(--serif);color:#6d8076;margin:0}.experience{display:grid;grid-template-columns:1.07fr .93fr;background:var(--deep);color:#fff}.experience-image{min-height:475px;position:relative;overflow:hidden}.experience-image:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#102f2b44)}.experience-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.image-label{position:absolute;z-index:2;left:7%;bottom:27px;color:white;font-size:8px;letter-spacing:.18em}.experience-copy{align-self:center;padding:65px clamp(35px,7vw,105px)}.overline-light{color:#b7ccc2}.experience h2,.location-copy h2,.booking-cta h2{font:600 42px/1.16 var(--display);letter-spacing:-.055em;margin:18px 0}.experience-copy>p:not(.overline){color:#c4d7ce;font-size:12px;line-height:1.9;max-width:430px}.feature-list{list-style:none;padding:15px 0 0;margin:24px 0 0;border-top:1px solid #ffffff2a}.feature-list li{padding:12px 0;border-bottom:1px solid #ffffff20;font-size:10px;color:#e4ece7}.feature-list span{display:inline-block;width:32px;color:#e4a084;font-size:8px}.community{padding:112px 0 118px;display:grid;grid-template-columns:.45fr 1.45fr;column-gap:45px}.community-heading{max-width:670px}.community-heading .overline{margin:2px 0 17px}.community h2{margin-bottom:19px}.community-heading .lead{max-width:550px}.amenity-grid{grid-column:2;display:grid;grid-template-columns:repeat(2,1fr);margin-top:22px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.amenity-card{padding:24px 25px 25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:156px}.amenity-number{font-size:8px;color:var(--coral);font-weight:700;letter-spacing:.12em}.amenity-card h3{font:600 18px var(--display);letter-spacing:-.03em;margin:16px 0 7px}.amenity-card p{font-size:10px;line-height:1.75;color:var(--muted);margin:0;max-width:330px}.amenity-card-featured{background:var(--sand)}.drive-time{display:block;font-size:7px;font-weight:700;letter-spacing:.16em;color:var(--teal);margin-top:14px}.location-band{background:var(--deepest);color:#fff;display:grid;grid-template-columns:1fr 1fr;min-height:490px}.location-map{min-height:490px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 60% 44%,#286963 0%,#174a45 39%,#0e3936 73%)}.location-map:before,.location-map:after{content:"";position:absolute;border:1px solid #b6d3c41c;border-radius:50%;width:500px;height:500px;left:10%;top:4%}.location-map:after{width:700px;height:700px;left:-2%;top:-15%}.map-ring{position:absolute;border:1px solid #d3e3d51f;border-radius:50%;width:260px;height:260px;left:36%;top:25%}.ring-two{width:365px;height:365px;left:26%;top:13%}.map-marker{position:absolute;z-index:2;left:48%;top:42%;width:61px;height:61px;border:1px solid #f1c09f;border-radius:50%;display:grid;place-content:center;text-align:center;background:#163f3cbb;font:700 8px/1.3 var(--display);letter-spacing:.12em;color:#fff}.map-marker:after{content:"";position:absolute;inset:-7px;border:1px solid #f1c09f70;border-radius:50%}.map-label{position:absolute;z-index:3;color:#d6e2da;font-size:7px;letter-spacing:.17em}.map-label-coco{left:16%;top:26%}.map-label-ocotal{right:13%;bottom:23%}.map-route{position:absolute;left:51%;top:55%;width:31%;height:25%;border-bottom:1px dashed #e2a080aa;border-radius:0 0 50% 0;transform:rotate(-31deg)}.location-copy{align-self:center;padding:70px clamp(35px,7vw,108px)}.location-copy h2{margin:18px 0 26px}.distance{display:flex;gap:17px;align-items:center;border-top:1px solid #ffffff32;border-bottom:1px solid #ffffff32;padding:17px 0;margin:22px 0}.distance-time{font:500 29px var(--display);color:#e1a184;letter-spacing:-.06em}.distance-description b,.distance-description small{display:block}.distance-description b{font-size:10px}.distance-description small{font-size:9px;color:#b7ccc2;margin-top:4px}.location-copy>p:not(.overline){color:#c4d7ce;margin-bottom:25px}.button-outline-light{border:1px solid #ffffff6b;color:#fff}.button-outline-light span{color:#e1a184}.details{padding:110px 0;display:grid;grid-template-columns:.45fr 1.45fr;gap:45px}.details-main>.overline{margin:2px 0 17px}.details h2{margin-bottom:37px}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 36px;border-top:1px solid var(--line)}.details-grid>div{padding:23px 0;border-bottom:1px solid var(--line)}.detail-icon{font-size:17px;color:var(--coral)}.details-grid h3{font:600 14px var(--display);margin:11px 0 6px}.details-grid p{font-size:10px;line-height:1.8;color:var(--muted);margin:0}.faq{padding:50px 0 100px;display:grid;grid-template-columns:.65fr 1.35fr;gap:45px}.faq-heading .overline{margin-bottom:15px}.faq-heading h2{font:600 28px var(--display);letter-spacing:-.04em;margin:0}.faq-items details{border-top:1px solid var(--line);padding:17px 0}.faq-items details:last-child{border-bottom:1px solid var(--line)}.faq-items summary{list-style:none;cursor:pointer;font-size:11px;font-weight:700;display:flex;justify-content:space-between;gap:15px}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary span{font-size:16px;line-height:.8;color:var(--coral);transition:transform .2s}.faq-items details[open] summary span{transform:rotate(45deg)}.faq-items details p{font-size:10px;line-height:1.8;color:var(--muted);max-width:570px;margin:12px 0 0}.booking-cta{background:var(--teal);color:#fff;text-align:center;padding:82px 20px 75px}.booking-cta h2{margin:18px 0 13px}.booking-cta>p:not(.overline){font-size:11px;line-height:1.8;color:#d3e4dc;margin:0 auto 23px;max-width:450px}.booking-cta small{display:block;font-size:8px;color:#d3e4dc8c;margin-top:17px}.footer{background:var(--deepest);color:#fff;padding:28px max(calc((100% - 1200px)/2),6%);display:grid;grid-template-columns:1fr auto;align-items:center;gap:17px}.brand-footer .brand-mark{border-color:#8fb2a4;color:#d6e4dc}.brand-footer .brand-name{color:#fff}.brand-footer .brand-name small{color:#9eb9ad}.footer>p{font:italic 12px var(--serif);color:#b7ccc2;margin:0}.footer-airbnb{font-size:9px;color:#e8a587;font-weight:700}.copyright{grid-column:1/-1;border-top:1px solid #ffffff20;padding-top:16px;color:#94afa4;font-size:8px;letter-spacing:.03em}.nav-book:focus-visible,.button:focus-visible,.nav a:focus-visible,.quiet-link:focus-visible,.text-link:focus-visible,.faq summary:focus-visible{outline:2px solid var(--coral);outline-offset:3px}
@media(max-width:800px){.header{padding:0 6%;height:68px}.menu-toggle{display:flex;flex-direction:column;gap:5px;background:none;border:0;padding:10px;cursor:pointer}.menu-toggle span{width:20px;height:1px;background:var(--ink)}.nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);padding:20px 6% 24px;box-shadow:0 16px 24px #102c2714;align-items:stretch;gap:18px;flex-direction:column}.nav.open{display:flex}.nav-book{text-align:center}.hero{min-height:600px}.hero-art{left:15%;opacity:.57}.hero-content{width:88%;padding:65px 0 95px}.hero h1{font-size:clamp(44px,10vw,68px)}.hero-copy{max-width:400px}.hero-index{bottom:18px}.hero-scroll{bottom:20px}.facts{padding:22px 3%;grid-template-columns:repeat(5,1fr)}.facts>div{display:flex;flex-direction:column;align-items:center;gap:2px}.facts strong{font-size:20px}.facts span{font-size:8px}.section-wrap{width:88%}.intro{padding:82px 0;grid-template-columns:1fr;gap:23px}.intro-note{margin:8px 0 0;max-width:450px}.intro h2,.community h2,.details h2,.experience h2,.location-copy h2{font-size:36px}.experience{grid-template-columns:1fr}.experience-image{min-height:340px}.experience-copy{padding:50px 8% 58px}.community{padding:82px 0;grid-template-columns:1fr;gap:24px}.amenity-grid{grid-column:1;margin-top:4px}.location-band{grid-template-columns:1fr}.location-map{min-height:330px}.location-copy{padding:53px 8% 62px}.details{padding:82px 0;grid-template-columns:1fr;gap:23px}.faq{padding:30px 0 82px;grid-template-columns:1fr;gap:25px}.footer{padding:26px 6%;grid-template-columns:1fr auto}.footer>p{grid-column:1/-1;grid-row:2}.footer-airbnb{grid-column:2;grid-row:1}.copyright{grid-row:3}}@media(max-width:480px){.topline{font-size:7px}.hero{min-height:580px}.hero-art{left:0;opacity:.45}.hero-actions{align-items:flex-start;flex-direction:column;gap:19px}.hero h1{font-size:43px}.facts{padding:19px 2%}.facts strong{font-size:18px}.facts span{font-size:7px}.intro h2,.community h2,.details h2,.experience h2,.location-copy h2{font-size:32px}.amenity-grid,.details-grid{grid-template-columns:1fr}.amenity-card{min-height:130px;padding:20px}.location-map{min-height:280px}.map-marker{left:45%;top:39%}.map-label-coco{left:9%}.map-label-ocotal{right:8%}.footer{grid-template-columns:1fr}.footer-airbnb{grid-column:1;grid-row:3;justify-self:start}.footer>p{grid-row:2}.copyright{grid-row:4}}

/* Property photography */
.hero-art img{object-position:center 56%}.hero-art:after{background:linear-gradient(90deg,var(--deepest) 0%,#0a302e88 18%,#0a302e12 77%),linear-gradient(0deg,#0a302e66,transparent 38%)}
.photo-gallery{padding:104px 0 112px;display:grid;grid-template-columns:.45fr 1.45fr;column-gap:45px}.gallery-main{min-width:0}.gallery-heading .overline{margin:2px 0 17px}.gallery-heading h2{font:600 42px/1.16 var(--display);letter-spacing:-.055em;margin:0 0 16px}.gallery-heading .lead{max-width:560px;margin-bottom:28px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.photo-card{border:0;padding:0;background:#e4e9e4;position:relative;overflow:hidden;aspect-ratio:4/3;cursor:zoom-in;text-align:left;color:#fff}.photo-card:first-child{grid-column:span 2;grid-row:span 2;aspect-ratio:auto;min-height:100%}.photo-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.photo-card:hover img{transform:scale(1.035)}.photo-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#102c27aa)}.photo-card>span{position:absolute;z-index:1;left:14px;right:14px;bottom:13px;font-size:9px;line-height:1.5;text-shadow:0 1px 8px #0008}.photo-card:focus-visible,.gallery-more:focus-visible,.lightbox-close:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.photo-card:nth-child(n+13){display:none}.photo-grid.show-all .photo-card:nth-child(n+13){display:block}.gallery-more{margin-top:18px;background:transparent;border:1px solid #b6c8bd;padding:12px 16px;color:var(--deep);font:700 10px var(--body);cursor:pointer}.gallery-more span{margin-left:10px;color:var(--coral)}.photo-lightbox{border:0;padding:0;background:#071c1b;width:min(92vw,1200px);max-width:none;max-height:90vh;overflow:visible}.photo-lightbox::backdrop{background:#051615e8}.photo-lightbox img{display:block;width:100%;max-height:90vh;object-fit:contain}.lightbox-close{position:absolute;right:-14px;top:-14px;width:40px;height:40px;border:1px solid #fff8;border-radius:50%;background:var(--paper);color:var(--deep);font-size:24px;cursor:pointer}
@media(max-width:800px){.photo-gallery{padding:78px 0 84px;grid-template-columns:1fr;gap:24px}.gallery-heading h2{font-size:36px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.photo-card:first-child{min-height:0}.photo-card>span{font-size:8px;left:10px;right:10px;bottom:9px}}
@media(max-width:480px){.gallery-heading h2{font-size:32px}.photo-grid{gap:6px}.photo-card{aspect-ratio:1/1}.photo-card:first-child{aspect-ratio:4/3;grid-column:span 2}.photo-card>span{font-size:7px}}
