@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{--ink:#123e45;--gold:#edba77;--paper:#faf8f3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--paper);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}header{height:94px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#faf8f3;gap:20px}.brand{font-size:18px;letter-spacing:2px;font-weight:700;line-height:1.3}.brand span{display:block;text-align:center;font-size:11px;letter-spacing:5px;margin-top:7px}nav{display:flex;gap:32px;font-size:14px}.button{display:inline-block;border:0;background:var(--gold);color:#153a40;padding:15px 25px;font-weight:600;font-size:14px;cursor:pointer;border-radius:2px}.button:hover{background:#ffd39b}.small{padding:11px 19px}.hero{height:720px;min-height:640px;position:relative;color:white;overflow:hidden;background:#326b78}.hero>img{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,39,46,.86),rgba(6,39,46,.2)),linear-gradient(0deg,rgba(6,39,46,.4),transparent)}.hero-copy{position:absolute;left:8%;top:12%;max-width:720px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.5px;margin:0 0 20px}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.13;margin:0}h1{font-size:clamp(42px,5vw,73px);letter-spacing:-1px}em{font-weight:400;color:#be864e}h1 em{color:#efc894}h2{font-size:clamp(34px,3.4vw,50px)}h3{font-size:30px}.hero-copy>p:not(.eyebrow){max-width:440px;margin:26px 0;color:#e4eceb}.text-link{margin-left:25px;font-size:14px;border-bottom:1px solid #a6b7b6;padding-bottom:7px}.hero-bottom{position:absolute;bottom:30px;left:8%;right:8%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:2px}.wrap{max-width:1240px;margin:auto;padding:0 55px}.intro{padding-top:92px;padding-bottom:95px;display:grid;grid-template-columns:1fr 1fr;gap:15px 70px}.intro .eyebrow{grid-column:1/-1}.intro>p:last-child{max-width:460px;margin:8px 0}.stays{padding-bottom:100px}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:38px}.section-head>p{font-size:14px;color:#667a7c}.stay-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.stay{padding:32px 28px;background:#f0ede5;border:1px solid #e5e1d6;min-height:375px}.stay.featured{background:#164952;color:white;border-color:#164952}.stay-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:35px}.stay-top>span{font-size:10px;letter-spacing:1.2px;max-width:135px}.stay-top strong{font:42px Georgia}.stay-top strong span{display:block;font:9px Arial;letter-spacing:1px}.stay h3{font-size:28px}.stay p{font-size:14px;opacity:.8;min-height:65px}.tags{display:flex;gap:12px;font-size:11px;margin:20px 0 28px}.tags span{padding:4px 8px;border:1px solid #9badaa}.stay-link{font-size:14px;border-bottom:1px solid currentColor;padding-bottom:7px}.note{font-size:13px;color:#64797b}.adventures{background:#09353d;color:white;padding:90px 0}.adventure-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.adventure-layout h2 em{color:#efc894}.adventure-layout>div>p:not(.eyebrow){max-width:370px;color:#b7cdce;margin:25px 0 30px}.activity-list article{display:flex;align-items:start;gap:22px;border-bottom:1px solid #3d5f63;padding:22px 0}.activity-list article:first-child{padding-top:0}.activity-list article>span{color:#c89860;font-size:13px}.activity-list h3{font-size:29px}.activity-list p{font-size:14px;color:#b7cdce;margin:10px 0 0}.activity-list b{font-size:9px;letter-spacing:1.5px;font-weight:400;padding-top:10px;color:#e0bb8c}.booking{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-top:100px;padding-bottom:100px}.booking>div>p{max-width:410px}.booking-steps{margin:35px 0}.booking-steps p{font-size:14px}.booking-steps span{display:inline-block;margin-right:15px;color:#b38147}form{background:white;border:1px solid #e5e5dd;padding:32px;box-shadow:0 16px 40px #09353d09}label{display:block;font-size:13px;font-weight:600;margin-bottom:18px}input,select,textarea{display:block;width:100%;border:1px solid #d9dfdb;border-radius:2px;background:#fafbf9;color:#123e45;padding:12px;margin-top:7px;min-width:0;font-size:14px}input:focus,select:focus,textarea:focus{outline:2px solid #bb9054;outline-offset:2px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}form .button{width:100%}.form-note{font-size:12px;text-align:center;color:#788582;margin:12px 0 0}#form-error{font-size:13px;color:#a33626}.contact{background:#ebe6da;padding:65px 0}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact p{font-size:14px}.contact-layout>div:last-child a{display:block;font-size:12px;padding:15px 0;border-bottom:1px solid #c8cebf}.contact a span{display:block;font-size:21px}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:35px!important;padding-bottom:35px!important}footer p,footer>a:last-child{font-size:11px;color:#667a7c}.floating{position:fixed;right:22px;bottom:22px;padding:12px 20px;background:#164952;color:white;border-radius:30px;box-shadow:0 4px 22px #0003;font-size:13px}a:focus-visible,button:focus-visible{outline:3px solid #bc8848;outline-offset:5px}@media(max-width:850px){header{height:80px}.brand{font-size:14px}nav{gap:15px}.wrap{padding-left:25px;padding-right:25px}.hero{height:650px}.hero-copy{left:7%;right:7%}.intro,.adventure-layout,.booking,.contact-layout{gap:35px}.stay-grid{gap:12px}.stay{padding:23px 17px}.stay h3{font-size:23px}.stay-top{gap:10px}.section-head>p{max-width:230px}}@media(max-width:620px){header nav{display:none}header .small{font-size:12px;padding:10px}.hero{height:690px}.hero-copy{top:11%}h1{font-size:45px}.hero-copy>p{font-size:15px}.text-link{display:block;width:max-content;margin:22px 0 0}.hero-bottom span:last-child{display:none}.hero-bottom{font-size:10px}.intro{display:block;padding-top:58px;padding-bottom:58px}.intro>p:last-child{margin-top:25px}.section-head{display:block}.stay-grid{grid-template-columns:1fr}.stay{padding:28px;min-height:320px}.stay-top{margin-bottom:24px}.stay h3{font-size:29px}.stay p{min-height:0}.tags{font-size:12px}.stays{padding-bottom:60px}.adventures{padding:60px 0}.adventure-layout,.booking,.contact-layout{grid-template-columns:1fr}.activity-list{margin-top:10px}.booking{padding-top:60px;padding-bottom:60px}form{padding:23px 18px}.contact{padding:55px 0}footer{flex-direction:column;align-items:start;gap:10px;padding-bottom:80px!important}footer p{margin:0}.floating{right:14px;bottom:14px}.eyebrow{font-size:11px}input,select,textarea{font-size:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.nightly-price{font-family:Georgia,serif;font-size:30px;line-height:1.3;margin:22px 0}.nightly-price span{display:block;font-family:Arial,sans-serif;font-size:13px;opacity:.75;margin-top:4px}

.video-section{padding-top:75px}.video-section video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#09353d;border-radius:3px}.video-section .section-head{margin-bottom:25px}@media(max-width:620px){.video-section{padding-top:45px}}

.gallery-cover{position:relative;display:block;width:calc(100% + 56px);margin:-32px -28px 25px;padding:0;border:0;background:#164952;cursor:pointer}.gallery-cover img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.gallery-cover span{position:absolute;bottom:12px;right:12px;background:#fff;padding:6px 12px;color:#123e45;font-size:13px}.gallery-thumbnails{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:20px 0}.gallery-thumbnails button{padding:0;border:0;cursor:pointer;background:transparent}.gallery-thumbnails img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}#photo-dialog{width:min(1050px,94vw);max-height:94dvh;padding:16px;border:0;border-radius:4px;background:#09353d;color:white}#photo-dialog::backdrop{background:#000c}#photo-full{display:block;width:100%;max-height:72dvh;object-fit:contain}.photo-toolbar,.photo-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 0}.photo-toolbar button,.photo-controls button{background:white;color:#123e45;border:0;border-radius:2px;padding:9px 14px;cursor:pointer;font-size:14px}#photo-caption{font-size:14px;text-align:center}@media(max-width:850px) and (min-width:621px){.gallery-cover{width:calc(100% + 34px);margin:-23px -17px 23px}}@media(max-width:620px){.gallery-cover{margin-top:-28px}.photo-controls{gap:8px}.photo-controls button{padding:9px}#photo-dialog{padding:10px}}

.contact a.email-contact span{font-size:clamp(14px,2vw,20px);overflow-wrap:anywhere}

.quad-activity>div{flex:1;min-width:0}.quad-ad{position:relative;max-width:330px;margin-top:24px;overflow:hidden;border-radius:3px;background:#164952}.quad-ad video{display:block;width:100%;aspect-ratio:9/16;object-fit:contain}.quad-ad-caption{position:absolute;bottom:0;left:0;right:0;padding:65px 20px 22px;background:linear-gradient(transparent,#05272be8);color:white}.quad-ad-caption span{font-size:9px;letter-spacing:1.5px}.quad-ad-caption strong{display:block;font:27px/1.2 Georgia,serif;margin:9px 0 15px}.quad-ad-caption a{display:inline-block;background:#edba77;color:#153a40;padding:9px 12px;font-size:12px}#quad-pause{position:absolute;top:12px;right:12px;border:1px solid #ffffff70;border-radius:3px;background:#09353daa;color:white;font-size:12px;padding:5px 10px;cursor:pointer}

header{position:sticky;top:0;z-index:20;border-bottom:1px solid #dddcd3}.skip-link{position:fixed;top:-100px;left:15px;z-index:99;background:white;padding:10px}.skip-link:focus{top:10px}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}.quick-facts{display:flex;justify-content:center;flex-wrap:wrap;gap:14px 35px;padding:22px 25px;background:#09353d;color:#e3d6bc;font-size:13px}.stay{display:flex;flex-direction:column;border-radius:5px;overflow:hidden;box-shadow:0 8px 30px #123e4508}.stay-link{align-self:flex-start;margin-top:auto}.gallery-thumbnails{grid-template-columns:repeat(5,1fr);gap:5px}.gallery-thumbnails button{min-height:36px}.nightly-price{margin:10px 0 0}.tags{margin-bottom:10px}.adventure-layout{display:block}.adventure-layout>div:first-child{max-width:850px;margin-bottom:45px}.adventure-layout>div>p:not(.eyebrow){max-width:560px}.activity-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.activity-list article,.activity-list article:first-child{padding:0;border:0;display:block}.activity-list article>span,.activity-list article>b{display:none}.activity-list h3{font-size:28px}.activity-list p{min-height:70px}.quad-ad{max-width:none}.quad-ad-caption{padding-top:80px}#jetski-pause,#dune-pause{position:absolute;top:12px;right:12px;border:1px solid #ffffff70;border-radius:3px;background:#09353daa;color:white;font-size:12px;padding:5px 10px;cursor:pointer}.stay-estimate{background:#edf3ef;border-left:3px solid #b38850;padding:18px;margin:0 0 24px}.stay-estimate>span{font-size:12px;letter-spacing:1px;text-transform:uppercase}.stay-estimate strong{display:block;font:27px/1.3 Georgia,serif;margin:7px 0}.stay-estimate p{margin:6px 0;font-size:13px}.stay-estimate small{font-size:12px;color:#576e70}.faq-section{padding-top:15px;padding-bottom:90px;display:grid;grid-template-columns:1fr 1.25fr;gap:65px}.faq-section>div>p:last-child{font-size:14px}.faq-section a{text-decoration:underline}.faq-list details{border-bottom:1px solid #d7ded6;padding:19px 0}.faq-list details:first-child{padding-top:0}.faq-list summary{font-size:16px;font-weight:500;cursor:pointer}.faq-list details p{font-size:14px;color:#526d70;margin:15px 0 5px}.contact a.location-link{display:inline-block;font-size:14px;border-bottom:1px solid #b38850;padding-bottom:5px}footer{flex-wrap:wrap}@media(max-width:900px){.activity-list{gap:16px}.activity-list h3{font-size:24px}.quad-ad-caption strong{font-size:23px}.quad-ad-caption{padding-left:13px;padding-right:13px}.quad-ad-caption a{font-size:11px}.faq-section{gap:30px}}@media(max-width:620px){.menu-toggle{display:block;background:transparent;border:1px solid #c7cfca;padding:8px 10px;color:#123e45;font-size:13px}header{gap:10px}.mobile-nav{position:sticky;top:80px;z-index:19;background:#faf8f3;display:flex;flex-direction:column;gap:0;padding:10px 25px;box-shadow:0 10px 20px #0001}.mobile-nav a{padding:10px 0;font-size:15px}.quick-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:11px}.activity-list{grid-template-columns:1fr;gap:42px}.activity-list h3{font-size:30px}.activity-list p{min-height:0}.quad-ad{max-width:340px;margin-left:auto;margin-right:auto}.quad-ad-caption strong{font-size:27px}.quad-ad-caption a{font-size:13px}.quad-ad-caption{padding-left:20px;padding-right:20px}.faq-section{grid-template-columns:1fr;padding-bottom:60px}.gallery-thumbnails{gap:6px}form{box-shadow:0 12px 35px #123e450a}}

.activity-rates{margin:22px 0}.activity-rates table{width:100%;border-collapse:collapse;font-size:14px;color:#f4eee2}.activity-rates caption{text-align:left;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#e4bf89;margin-bottom:10px}.activity-rates th,.activity-rates td{padding:9px 0;border-bottom:1px solid #ffffff20;text-align:left}.activity-rates td{text-align:right;white-space:nowrap}.activity-rates th{font-weight:400}.activity-rates thead{font-size:12px;color:#b7cdce}.activity-list .rate-note{font-size:12px;line-height:1.6;min-height:0;margin-top:12px}.arrival-times{display:flex;gap:45px;border-top:1px solid #d3dcd2;border-bottom:1px solid #d3dcd2;padding:18px 0;margin:25px 0}.arrival-times span{display:block;font-size:13px}.arrival-times strong{font:30px Georgia,serif;display:block;margin-top:5px}

.brand-logo{display:block;width:145px;height:86px;object-fit:contain;background:transparent;border-radius:0}.amenities-section{padding-bottom:90px;scroll-margin-top:25px}.amenity-highlights{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.amenity-highlights span{border:1px solid #c4d7d5;background:#eef4ef;border-radius:30px;padding:9px 17px;font-size:14px;font-weight:600}.amenity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.amenity-group{border:1px solid #d7dfd8;background:white;border-radius:8px;padding:18px 22px}.amenity-group summary{cursor:pointer;font-weight:600;min-height:28px}.amenity-group ul{padding-left:20px;margin:16px 0 4px;font-size:14px;line-height:1.9}.amenity-card-link{display:block;font-size:12px;line-height:1.8;margin:16px 0;text-decoration:underline;text-underline-offset:3px}footer .brand-logo{height:110px;width:180px}header nav{gap:22px}@media(max-width:700px){.amenity-grid{grid-template-columns:1fr}.brand-logo{width:110px;height:70px}.amenities-section{padding-bottom:60px}.amenity-highlights span{font-size:12px;padding:7px 12px}}

.policy-section,.location-section{padding-top:60px;padding-bottom:70px}.policy-table{overflow-x:auto;margin:25px 0;border:1px solid #d7dfd8;border-radius:8px}.policy-table table{width:100%;border-collapse:collapse;background:white;font-size:14px}.policy-table caption{text-align:left;padding:16px 20px;font-weight:700;background:#eef4ef}.policy-table th,.policy-table td{padding:15px 20px;text-align:left;border-bottom:1px solid #e3e8e2}.policy-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.policy-grid h3{font-size:25px}.policy-grid p,.policy-section>p{font-size:14px}.policy-section a:not(.button){text-decoration:underline}.first-guests{padding-top:70px;padding-bottom:70px;text-align:center;border-top:1px solid #d7dfd8}.first-guests>p:not(.eyebrow){max-width:650px;margin:24px auto}.location-section iframe{border:0;width:100%;height:380px;border-radius:8px;background:#e9eee9}.map-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:22px}.map-actions .text-link{margin-left:0}@media(max-width:700px){.policy-grid{grid-template-columns:1fr;gap:15px}.policy-table th,.policy-table td{padding:12px}.location-section iframe{height:300px}}

/* Comfortable phone and tablet browsing. */
@media(max-width:900px){
 header{height:80px;padding:0 20px;gap:12px}header nav{display:none}.menu-toggle{display:block;min-height:44px;min-width:52px;background:transparent;border:1px solid #c7cfca;border-radius:6px;color:var(--ink);padding:8px 12px;font-size:14px}
 header .brand{flex-shrink:0}header .brand-logo{width:120px;height:72px}header .small{min-height:44px;display:flex;align-items:center;text-align:center;padding:10px 14px;border-radius:6px}
 .mobile-nav{position:sticky;top:80px;z-index:19;display:flex;flex-direction:column;gap:0;max-height:calc(100dvh - 80px);overflow-y:auto;padding:8px 24px 16px;background:var(--paper);box-shadow:0 12px 20px #0001}.mobile-nav a{display:block;min-height:48px;padding:12px 0;border-bottom:1px solid #dde3da;font-size:16px}
 .stay-grid{grid-template-columns:1fr}.stay{padding:28px;max-width:620px;width:100%;margin-inline:auto}.gallery-cover{width:calc(100% + 56px);margin:-28px -28px 24px}.stay h3{font-size:30px}.stay p{min-height:0}.stay-top{margin-bottom:22px}.gallery-thumbnails{gap:8px}.gallery-thumbnails button{min-height:44px;overflow:hidden;border-radius:4px}.gallery-thumbnails img{height:100%;object-fit:cover}.stay-link{min-height:44px;display:flex;align-items:center}
 .activity-list{grid-template-columns:1fr}.activity-list article{max-width:620px;width:100%;margin-inline:auto}.activity-list h3{font-size:30px}.activity-list p{min-height:0}.activity-list{gap:48px}.quad-ad{max-width:360px;margin-inline:auto}.quad-ad-caption a{min-height:44px;padding:12px 14px;font-size:14px}.quad-ad-caption strong{font-size:28px}.quad-ad-caption{padding-inline:20px}#quad-pause,#jetski-pause,#dune-pause{min-height:44px;min-width:60px}
 .booking,.contact-layout,.faq-section{grid-template-columns:1fr;gap:32px}.booking>div>p{max-width:none}.section-head{display:block}.section-head>p{max-width:none}.policy-grid{grid-template-columns:1fr}.contact-layout>div{min-width:0}
}
@media(max-width:620px){
 html{scroll-padding-top:96px}.wrap{padding-left:20px;padding-right:20px}header{padding-inline:16px;gap:8px}header .brand-logo{width:112px;height:72px}header .small{font-size:12px;padding-inline:10px}.menu-toggle{padding-inline:10px;font-size:13px}
 .hero{height:auto;min-height:0}.hero>img{position:absolute;inset:0;object-position:62% center}.hero-copy{position:relative;left:auto;right:auto;top:auto;padding:54px 24px 40px;max-width:none}.hero h1{font-size:clamp(35px,9vw,46px);line-height:1.17;letter-spacing:-.5px}.hero-copy>p:not(.eyebrow){margin:22px 0;max-width:100%;font-size:16px}.hero-copy .button{min-height:48px;display:inline-flex;align-items:center;border-radius:6px}.hero-copy .text-link{width:fit-content;max-width:100%;min-height:44px;margin-top:12px;display:flex;align-items:center}.hero-bottom{position:relative;left:auto;right:auto;bottom:auto;padding:0 24px 25px;letter-spacing:1.5px}.hero-bottom span:last-child{display:none}
 .quick-facts{padding:20px;gap:14px;font-size:12px;line-height:1.5}.quick-facts span{min-width:0}.eyebrow{letter-spacing:1.8px;line-height:1.6}.section-head{margin-bottom:25px}h2{font-size:34px;line-height:1.18}h3{line-height:1.2}.intro{padding-block:52px}.video-section{padding-top:40px}.stays,.amenities-section,.booking,.faq-section{padding-bottom:52px}.adventures{padding-block:52px}.adventure-layout>div:first-child{margin-bottom:32px}
 .stay{padding:22px;border-radius:10px}.gallery-cover{width:calc(100% + 44px);margin:-22px -22px 22px}.gallery-cover span{min-height:44px;display:flex;align-items:center;border-radius:5px}.stay-top>span{max-width:180px}.tags{flex-wrap:wrap}.nightly-price{font-size:32px}.amenity-card-link{font-size:13px}.amenity-highlights{gap:8px}.amenity-highlights span{font-size:13px}.amenity-group{padding:16px}.amenity-group summary,.faq-list summary{min-height:44px;line-height:1.5}.amenity-group ul{font-size:15px}
 form{padding:22px 16px;border-radius:10px;min-width:0}.form-row{gap:12px}label{font-size:14px}input,select,textarea{min-height:48px;border-radius:6px;font-size:16px}textarea{resize:vertical}form .button{min-height:52px;border-radius:6px;white-space:normal;padding-inline:12px}.stay-estimate{padding:15px}.stay-estimate strong{font-size:26px}.form-note{font-size:13px;line-height:1.6}.arrival-times{justify-content:space-between;gap:20px}.booking-steps{margin-block:24px}
 .policy-section,.location-section,.first-guests{padding-top:44px;padding-bottom:48px}.policy-table table{font-size:13px;table-layout:fixed}.policy-table th,.policy-table td{padding:12px 10px;overflow-wrap:anywhere}.policy-grid p,.policy-section>p,.faq-list details p{font-size:15px}.location-section iframe{height:280px}.map-actions{align-items:stretch;flex-direction:column;gap:12px}.map-actions .button{text-align:center;min-height:48px;border-radius:6px}.map-actions .text-link{width:fit-content;min-height:44px;display:flex;align-items:center;margin:0}
 .contact a span{font-size:20px;overflow-wrap:anywhere}.contact a.email-contact span{font-size:16px}.contact-layout>div:last-child a{padding-block:18px}footer{align-items:center;text-align:center;padding-bottom:100px!important}.floating{min-height:48px;display:flex;align-items:center;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));padding-inline:18px}
 #photo-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:12px;border-radius:10px}.photo-toolbar{gap:10px;font-size:13px}.photo-toolbar button,.photo-controls button{min-height:44px;flex-shrink:0}.photo-controls{flex-wrap:wrap;gap:8px}#photo-caption{order:3;flex-basis:100%;font-size:14px;padding-top:6px}#photo-full{max-height:65dvh}.photo-controls button:last-child{margin-left:auto}
}
@media(max-width:380px){.form-row{grid-template-columns:1fr;gap:0}header .brand-logo{width:96px}header{gap:6px}.menu-toggle{min-width:48px;padding-inline:8px}.hero-copy{padding-inline:20px}.hero-bottom{padding-inline:20px}.stay h3{font-size:27px}.gallery-thumbnails{gap:5px}.quick-facts{font-size:11px}}

.bed-summary{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0;font-size:12px}.bed-summary span{padding:5px 9px;background:#e5e9df;border-radius:4px}.apartment-description{margin:10px 0 15px;border-top:1px solid #cad3c8;border-bottom:1px solid #cad3c8;padding:10px 0}.apartment-description summary{font-size:14px;font-weight:600;cursor:pointer;min-height:44px;align-content:center}.stay .apartment-description p{min-height:0;opacity:1;line-height:1.75;margin:14px 0;font-size:14px}

.room-arrangements{margin:0 0 18px;border:1px solid #cbd5cd;border-radius:8px;background:#fafbf8;padding:14px}.room-arrangements>summary{cursor:pointer;font-weight:600;font-size:15px;min-height:44px}.room-arrangements>summary>span{display:block;font-size:11px;font-weight:400;color:#617b77;margin-top:5px}.room-cards{display:grid;gap:10px;margin-top:16px}.room-card{background:white;border:1px solid #e0e6dd;border-radius:8px;padding:15px}.room-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.room-card h4{margin:0;font-size:14px;font-weight:600}.room-capacity{display:flex;align-items:center;gap:4px;font-size:10px;white-space:nowrap;border:1px solid #dae2d8;border-radius:25px;padding:4px 6px}.room-capacity svg{width:16px;height:16px}.ensuite-badge{display:inline-block;background:#f8ebd8;color:#704e20;border:1px solid #e4cba3;border-radius:20px;font-size:11px;padding:3px 9px;margin-top:9px}.stay .room-feature{display:flex;align-items:center;gap:10px;font-size:13px;line-height:1.6;opacity:1;min-height:0;margin:13px 0 0}.room-feature svg{width:23px;height:23px;flex-shrink:0}.stay .room-note{min-height:0;margin:13px 0 0;font-size:11px;line-height:1.6;opacity:1;color:#617b77}@media(max-width:900px){.room-cards{grid-template-columns:1fr 1fr}.room-card h4{font-size:15px}.room-capacity{font-size:11px}}@media(max-width:480px){.room-cards{grid-template-columns:1fr}.room-arrangements{padding:14px}.room-card{padding:16px}.stay .room-feature{font-size:14px}}

/* Apartment amenities at a glance */
.stay-features{margin:22px 0;padding:22px 0;border-top:1px solid #dce4df;border-bottom:1px solid #dce4df}.stay-features h4{font-family:"DM Sans",sans-serif;font-size:18px;margin:0 0 18px;color:var(--ink,#173b36)}.stay-features ul{display:grid;grid-template-columns:1fr 1fr;gap:18px 14px;list-style:none;margin:0 0 18px;padding:0}.stay-features li{display:flex;gap:10px;align-items:center;font-size:13px;line-height:1.5;min-width:0}.stay-features svg{width:25px;height:25px;flex:0 0 25px;color:#23675e}.feature-all,.stay-location a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:600;color:#23675e}.stay-location{margin-top:16px;padding-top:20px;border-top:1px solid #dce4df}.stay-location h4{margin-bottom:8px}.stay-location p{font-size:14px;margin:0;line-height:1.6}@media(max-width:380px){.stay-features ul{gap:16px 10px}.stay-features li{font-size:12px;gap:8px}}

.activity-options{border:1px solid #dce4df;border-radius:16px;padding:20px;margin:8px 0 20px;min-width:0}.activity-options legend{font-weight:700;padding:0 8px}.activity-options>p{font-size:14px;line-height:1.6}.activity-choice{padding:14px 0;border-top:1px solid #dce4df}.activity-check{display:flex;align-items:center;gap:12px;min-height:44px}.activity-check input{width:20px;height:20px;min-height:20px;margin:0;accent-color:#23675e}.activity-schedule{margin-top:14px}.activity-only{margin-top:18px;text-align:center}.activity-options[hidden],.activity-schedule[hidden]{display:none}

.villa-selection-note{display:flex;align-items:center;gap:32px;padding:28px 32px;margin:0 0 32px;background:#edf4ef;border:1px solid #d7e4dc;border-radius:20px}.villa-selection-note>div{flex:1}.villa-selection-note h3{font-size:26px;margin:8px 0 14px}.villa-selection-note p{font-size:15px;line-height:1.7;margin:8px 0}.villa-selection-note .eyebrow{font-size:11px}.villa-selection-note .button{flex-shrink:0;text-align:center}@media(max-width:900px){.villa-selection-note{align-items:flex-start;flex-direction:column;gap:12px;padding:24px}.villa-selection-note h3{font-size:24px}}@media(max-width:620px){.villa-selection-note .button{width:100%}}

.house-rules{padding-top:70px;padding-bottom:70px}.house-rules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.house-rules-grid article{padding:24px;border:1px solid #dce4df;border-radius:16px;background:#fff}.house-rules-grid h3{font-family:"DM Sans",sans-serif;font-size:18px;margin:0 0 10px}.house-rules-grid p{font-size:15px;line-height:1.7;margin:0}@media(max-width:620px){.house-rules{padding-top:52px;padding-bottom:52px}.house-rules-grid{grid-template-columns:1fr}.house-rules-grid article{padding:22px}}

.privacy-notice{padding-top:40px;padding-bottom:40px;border-top:1px solid #dce4df}.privacy-notice h2{font-size:28px;margin:8px 0 16px}.privacy-notice p{font-size:14px;line-height:1.8;max-width:850px}.privacy-notice a{overflow-wrap:anywhere}
