@font-face{font-family:Forum;src:url('/assets/fonts/forum-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:"Work Sans";src:url('/assets/fonts/work-sans-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:"Work Sans";src:url('/assets/fonts/work-sans-500.woff2') format('woff2');font-weight:500;font-display:swap}@font-face{font-family:"Work Sans";src:url('/assets/fonts/work-sans-600.woff2') format('woff2');font-weight:600;font-display:swap}
:root{--cream:#f8f4ec;--cream-2:#f3ede3;--honey:#f1cf94;--gold:#ba8d36;--ink:#181914;--green:#314c40;--muted:#6b6a63;--line:#d8cdbb;--serif:Forum,Georgia,serif;--sans:"Work Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:400 17px/1.72 var(--sans);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit}.shell{width:min(1620px,calc(100% - 80px));margin-inline:auto}.narrow{max-width:890px}.skip{position:fixed;left:14px;top:-100px;z-index:100;background:#fff;padding:10px 16px}.skip:focus{top:14px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}
.masthead{position:sticky;z-index:50;top:0;background:rgba(248,244,236,.97);border-bottom:1px solid rgba(186,141,54,.18);box-shadow:0 5px 18px rgba(39,61,52,.055);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}.masthead-inner{min-height:145px;display:flex;align-items:center;gap:35px}.brand{margin-right:auto}.brand img{width:285px}.nav{display:flex;gap:37px;align-items:center}.nav a{font-size:16px;text-decoration:none;white-space:nowrap}.nav a:hover,.nav a:focus{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:7px}.controls{display:flex;gap:10px;align-items:center}.controls select{font:500 13px var(--sans);background:transparent;border:0;border-left:1px solid var(--line);padding:8px 4px 8px 18px}.nav-button{display:none;border:0;background:none;font-size:25px}.hero{position:relative;width:100%;height:clamp(560px,69vh,800px);overflow:hidden;background:#d7cec0}.hero picture,.hero img{width:100%;height:100%}.hero img{object-fit:cover;object-position:center 47%}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(25,22,15,.2),transparent 32%)}.hero-note{position:absolute;z-index:2;bottom:0;left:max(40px,calc((100% - 1620px)/2));background:rgba(248,244,236,.96);padding:17px 25px;color:#4e4c45;font-size:13px;letter-spacing:.1em;text-transform:uppercase}
.section{padding-block:118px;scroll-margin-top:30px}.kicker{margin:0 0 17px;color:var(--gold);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.welcome{text-align:center}.welcome h1,.section h2,.contact h2{margin:0 0 25px;font:400 clamp(52px,5vw,76px)/1.04 var(--serif)}.welcome .lead{font-size:22px;line-height:1.6;margin:0 auto 14px}.welcome>p:not(.kicker){max-width:820px;margin-left:auto;margin-right:auto}.text-link{display:inline-block;margin-top:18px;color:var(--green);font-weight:600;text-underline-offset:6px}.section-heading{text-align:center;margin-bottom:62px}.section-heading h2{font-size:clamp(47px,4.4vw,66px)}.section-heading p{font-size:19px;line-height:1.75}.align-left{text-align:left;margin-left:0;max-width:780px}
.facts{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.facts>div{min-height:130px;padding:24px 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-right:1px solid var(--line)}.facts>div:last-child{border-right:0}.facts strong{font:400 31px/1.1 var(--serif);color:var(--green)}.facts span{margin-top:8px;color:var(--muted);font-size:12px;line-height:1.35;letter-spacing:.065em;text-transform:uppercase}
.rooms{padding-top:72px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.gallery-grid button{border:0;padding:0;background:none;cursor:zoom-in;overflow:hidden}.gallery-grid img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover}.gallery-grid button:nth-child(2){grid-column:span 2}.gallery-grid button:nth-child(2) img{aspect-ratio:2.05/1}.gallery-grid button:nth-child(6){grid-row:span 2}.gallery-grid button:nth-child(6) img{aspect-ratio:auto;min-height:100%}.gallery-grid button:hover img,.gallery-grid button:focus img{opacity:.86}
.swipe-hint{display:none}.location{background:#fbf8f2}.destination-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:1240px}.destination-grid figure{margin:0}.destination-grid img{width:100%;height:330px;object-fit:cover}.destination-grid figure:nth-child(2) img,.destination-grid figure:nth-child(3) img{object-position:center 38%}.destination-grid figcaption{padding-top:12px;font:400 25px var(--serif)}.map-row{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center;margin-top:105px}.map-row>picture{background:#fff;padding:18px;border:1px solid var(--line)}.map-row picture img{width:100%;aspect-ratio:1.25/1;object-fit:cover}.map-row h3{margin:0 0 20px;font:400 clamp(38px,4vw,57px)/1.08 var(--serif)}.map-row ul{list-style:none;margin:28px 0 0;padding:0;border-top:1px solid var(--line)}.map-row li{padding:11px 0;border-bottom:1px solid var(--line)}
.honey{background:var(--honey)}.connections h2{margin-bottom:55px}.connection-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid rgba(38,34,24,.3);border-left:1px solid rgba(38,34,24,.3)}.connection-columns article{padding:32px;border-right:1px solid rgba(38,34,24,.3);border-bottom:1px solid rgba(38,34,24,.3)}.connection-columns h3{font:400 30px/1.15 var(--serif);text-transform:uppercase;margin:0 0 18px}.connection-columns p{margin:0;font-size:15px}
.activities{background:var(--cream)}.activity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1240px;margin-inline:auto}.activity-grid figure{position:relative;margin:0;overflow:hidden;background:#222}.activity-grid img{width:100%;aspect-ratio:1/1;object-fit:cover;opacity:.79}.activity-grid figure:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.52),rgba(0,0,0,.03) 65%)}.activity-grid figcaption{position:absolute;z-index:2;left:21px;right:21px;bottom:21px;color:#fff;font:400 clamp(25px,1.9vw,34px)/1.15 var(--serif)}
.dining-intro{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px;align-items:start;margin-bottom:55px}.dining-intro h2{margin:0}.dining-intro p{max-width:700px;font-size:19px;margin:5px 0}.dining-card{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--cream)}.dining-card>img{width:100%;height:100%;min-height:670px;object-fit:cover}.dining-card>div{padding:55px 65px}.dining-card h3{font:400 35px var(--serif);margin:0 0 26px}.dining-card p{margin:0 0 22px}.dining-card strong,.dining-card span{display:block}.dining-card span{color:var(--muted);font-size:15px;margin-top:3px}
.prices{text-align:center}.prices .section-heading{margin-bottom:0}.lead{font-size:21px}.button{display:inline-flex;align-items:center;justify-content:center;margin-top:18px;padding:13px 24px;border:1px solid var(--green);background:var(--green);color:#fff;text-decoration:none;font:500 15px var(--sans);cursor:pointer}.button:hover,.button:focus{background:var(--gold);border-color:var(--gold)}.soft{background:var(--cream-2)}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{position:relative;cursor:pointer;list-style:none;padding:20px 45px 20px 0;font-weight:500}summary::-webkit-details-marker{display:none}summary:after{content:"+";position:absolute;right:10px;font:400 25px var(--serif)}details[open] summary:after{content:"–"}details p{margin:0 0 22px;color:var(--muted)}
.contact{background:#273d34;color:#fff;border-top:7px solid var(--gold)}.contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:110px}.contact h2{color:#fff}.contact-details{font-size:19px;line-height:1.9}.contact-details a{text-underline-offset:5px}form{display:grid;gap:15px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.single-narrow{grid-template-columns:minmax(160px,220px)}label span{display:block;margin-bottom:4px;font-size:14px}input,textarea,form select{width:100%;border:1px solid rgba(255,255,255,.65);border-radius:0;background:#fff;color:#202a25;padding:11px 12px;font:inherit}textarea{resize:vertical}.consent{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:start}.consent input{width:18px;height:18px;margin-top:4px}.consent span{font-size:13px}.trap{position:absolute!important;left:-9999px!important}.contact .button{justify-self:start;background:var(--gold);border-color:var(--gold)}.contact .button:hover,.contact .button:focus{background:#fff;border-color:#fff;color:var(--green)}[data-response]{min-height:1.7em;margin:0;font-size:14px}
.amenities{padding-top:78px;background:#fbf8f2}.amenities-layout{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:100px;align-items:start}.amenities-heading h2,.booking-heading h2{margin:0 0 22px;font:400 clamp(47px,4.4vw,66px)/1.04 var(--serif)}.amenities-heading p:last-child{font-size:18px}.amenities-list{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;padding:0;border-top:1px solid var(--line);list-style:none}.amenities-list li{position:relative;padding:19px 20px 19px 28px;border-bottom:1px solid var(--line);font-size:16px}.amenities-list li:before{content:"";position:absolute;left:2px;top:28px;width:12px;height:1px;background:var(--gold)}
.reviews{background:var(--cream);padding-block:92px}.reviews-layout{display:grid;grid-template-columns:.62fr 1.38fr;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.review-score{padding:52px 60px 52px 0;border-right:1px solid var(--line)}.review-score>strong{display:block;color:var(--green);font:400 70px/1 var(--serif)}.review-score>strong span{font-size:28px}.review-score>p:not(.kicker){margin:12px 0 4px;font-weight:600}.review-score small{color:var(--muted)}.reviews blockquote{margin:0;padding:52px 0 52px 90px}.reviews blockquote>p{margin:0 0 25px;font:400 clamp(35px,3.4vw,52px)/1.22 var(--serif)}.reviews blockquote footer{display:flex;gap:13px;align-items:baseline}.reviews blockquote footer span{color:var(--muted);font-size:14px}
.booking-heading{text-align:center;max-width:850px;margin:0 auto 58px}.booking-heading>p:last-child{font-size:18px}.booking-layout{display:grid;grid-template-columns:minmax(280px,.58fr) minmax(600px,1.42fr);gap:30px;align-items:stretch}.price-card,.calendar-card{background:var(--cream);border:1px solid var(--line)}.price-card{padding:46px;display:flex;flex-direction:column;align-items:flex-start}.price-card>p:first-child{margin:0;color:var(--gold);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.price-card>strong{display:block;margin:5px 0 25px;color:var(--green);font:400 58px/1 var(--serif)}.price-card>strong small{display:block;margin-top:9px;color:var(--muted);font:400 14px var(--sans)}.price-card>p:not(:first-child){color:var(--muted);font-size:15px}.price-card .button{margin-top:auto}.calendar-card{padding:26px 30px}.calendar-toolbar{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;margin-bottom:22px}.calendar-toolbar p{margin:0;text-align:center;color:var(--muted);font-size:13px}.calendar-toolbar button{width:42px;height:42px;border:1px solid var(--line);background:transparent;color:var(--green);font-size:19px;cursor:pointer}.calendar-toolbar button:hover,.calendar-toolbar button:focus{background:var(--green);color:#fff}.calendar-months{display:grid;grid-template-columns:1fr 1fr;gap:34px}.calendar-month h3{margin:0 0 16px;text-align:center;font:400 27px var(--serif)}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-weekdays span{text-align:center;color:var(--muted);font-size:11px;text-transform:uppercase}.calendar-days{margin-top:7px}.calendar-day{aspect-ratio:1;border:0;background:transparent;color:var(--ink);font:500 13px var(--sans);display:grid;place-items:center}.calendar-day.button{margin:0;padding:0;border:1px solid transparent;cursor:pointer}.calendar-day.button:hover,.calendar-day.button:focus{border-color:var(--gold)}.calendar-day.other,.calendar-day.past{color:#b7b1a8}.calendar-day.booked{background:#e1d9ce;color:#807a71;text-decoration:line-through}.calendar-day.chosen,.calendar-day.in-range{background:var(--green);color:#fff}.calendar-day.in-range{background:#b7c2bc}.calendar-legend{display:flex;flex-wrap:wrap;gap:18px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.calendar-legend span{display:flex;align-items:center;gap:7px}.calendar-legend i{width:13px;height:13px;border:1px solid var(--line)}.calendar-legend i.unavailable{background:#e1d9ce}.calendar-legend i.selected{background:var(--green)}.calendar-legend b{font-size:11px;font-weight:500;color:var(--muted)}.calendar-response{min-height:1.5em;margin:12px 0 0;color:var(--green);font-size:13px;text-align:center}
.footer{padding:34px 0;background:var(--cream);border-top:1px solid var(--line)}.footer-inner{display:flex;align-items:center;gap:30px;color:var(--muted);font-size:13px}.footer img{width:180px;margin-right:auto}.footer p{margin:0}.footer p:last-child{display:flex;gap:20px}.footer a{text-underline-offset:4px}dialog{width:min(1200px,calc(100% - 30px));max-height:94vh;padding:0;border:0;background:#111;box-shadow:0 25px 90px rgba(0,0,0,.45)}dialog::backdrop{background:rgba(13,17,14,.82)}dialog img{max-height:91vh;margin:auto;object-fit:contain}dialog button{position:absolute;z-index:2;right:10px;top:8px;width:40px;height:40px;border:0;border-radius:50%;font-size:25px;cursor:pointer}
@media(max-width:1180px){.shell{width:min(100% - 50px,1620px)}.masthead-inner{min-height:105px}.brand img{width:230px}.nav{gap:22px}.nav a{font-size:14px}.hero{height:62vh}.facts{grid-template-columns:repeat(3,1fr)}.facts>div:nth-child(3){border-right:0}.facts>div:nth-child(-n+3){border-bottom:1px solid var(--line)}.connection-columns{grid-template-columns:1fr 1fr}.activity-grid{grid-template-columns:1fr 1fr}.dining-card>div{padding:45px}.map-row{gap:55px}}
@media(max-width:840px){.shell{width:min(100% - 28px,1620px)}.masthead-inner{min-height:78px}.brand img{width:185px}.nav-button{display:block}.nav{display:none;position:absolute;z-index:30;left:0;right:0;top:78px;padding:22px 20px;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.nav.open{display:flex}.controls select{padding-left:11px}.hero{height:50vh;min-height:390px}.hero-note{left:14px;padding:11px 14px;font-size:10px}.section{padding-block:75px}.welcome h1,.section h2,.contact h2{font-size:48px}.welcome .lead{font-size:19px}.section-heading{margin-bottom:40px}.gallery-grid{grid-template-columns:1fr 1fr;gap:12px}.gallery-grid button:nth-child(2){grid-column:auto}.gallery-grid button:nth-child(2) img{aspect-ratio:4/3}.gallery-grid button:nth-child(6){grid-row:auto}.gallery-grid button:nth-child(6) img{aspect-ratio:4/3}.destination-grid{grid-template-columns:1fr;gap:24px}.destination-grid img{height:360px}.map-row{grid-template-columns:1fr;gap:38px;margin-top:75px}.connection-columns{grid-template-columns:1fr}.activity-grid{gap:12px}.dining-intro,.dining-card,.contact-layout{grid-template-columns:1fr;gap:35px}.dining-card>img{min-height:0;height:390px}.dining-card>div{padding:35px 28px}.contact-layout{gap:50px}.footer-inner{flex-wrap:wrap}.footer p:last-child{width:100%}}
@media(max-width:640px){.swipe-hint{display:block;margin-top:-22px;margin-bottom:14px;color:var(--muted);font-size:12px;letter-spacing:.035em}.gallery-grid,.activity-grid{display:flex;overflow-x:auto;gap:14px;max-width:none;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding-bottom:14px;scrollbar-width:thin;scrollbar-color:var(--gold) transparent}.gallery-grid button,.activity-grid figure{flex:0 0 82vw;max-width:370px;scroll-snap-align:start}.gallery-grid button:nth-child(2){grid-column:auto}.gallery-grid button:nth-child(6){grid-row:auto}.gallery-grid img,.gallery-grid button:nth-child(2) img,.gallery-grid button:nth-child(6) img{width:100%;aspect-ratio:4/3}.destination-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;overflow:visible}.destination-grid figure:first-child{grid-column:1/-1}.destination-grid img{height:auto;aspect-ratio:4/3}.destination-grid figure:first-child img{aspect-ratio:16/9}.destination-grid figcaption{padding-top:7px;font-size:20px}.activity-grid img{aspect-ratio:4/3}.activity-grid figcaption{font-size:29px}}
@media(max-width:520px){body{font-size:16px}.hero{height:46vh;min-height:320px}.hero img{object-position:center}.section{padding-block:60px}.welcome h1,.section h2,.contact h2{font-size:42px}.facts{grid-template-columns:1fr 1fr}.facts>div{min-height:112px;padding:18px 10px}.facts>div:nth-child(3){border-right:1px solid var(--line)}.facts>div:nth-child(2n){border-right:0}.facts>div:nth-child(-n+4){border-bottom:1px solid var(--line)}.facts strong{font-size:27px}.gallery-grid{grid-template-columns:1fr}.activity-grid{grid-template-columns:1fr}.connection-columns article{padding:25px}.destination-grid img{height:360px}.form-row{grid-template-columns:1fr}.single-narrow{grid-template-columns:1fr}.footer img{width:155px}}
@media(max-width:1050px){.amenities-layout{gap:55px}.booking-layout{grid-template-columns:1fr}.price-card{display:grid;grid-template-columns:1fr 1.5fr;column-gap:45px;align-items:start}.price-card>p:first-child,.price-card>strong{grid-column:1}.price-card>p:not(:first-child){grid-column:2;grid-row:1/3}.price-card .button{grid-column:2;justify-self:start}.reviews blockquote{padding-left:55px}}
@media(max-width:840px){.amenities-layout{grid-template-columns:1fr;gap:40px}.reviews-layout{grid-template-columns:1fr}.review-score{padding:38px 0;border-right:0;border-bottom:1px solid var(--line)}.reviews blockquote{padding:40px 0}.price-card{display:flex;padding:34px}.booking-heading{margin-bottom:40px}.calendar-card{padding:22px 18px}.calendar-months{gap:18px}}
@media(max-width:640px){.amenities-list{grid-template-columns:1fr}.amenities-list li{padding-block:16px}.reviews{padding-block:70px}.reviews blockquote footer{align-items:flex-start;flex-direction:column;gap:2px}.calendar-months{grid-template-columns:1fr}.calendar-month:nth-child(2){display:none}.calendar-toolbar p{padding-inline:7px}.calendar-legend{gap:11px}.booking-layout{width:min(100% - 20px,1620px)}}
.location,.activities,.dining{padding-block:82px}.location .section-heading,.activities .section-heading{margin-bottom:36px}.destination-grid{max-width:1100px;gap:15px}.destination-grid figure{display:grid;grid-template-columns:125px 1fr;align-items:center;background:var(--cream);border:1px solid var(--line)}.destination-grid img{height:96px}.destination-grid figcaption{padding:0 18px;font-size:22px}.map-row{max-width:1100px;grid-template-columns:minmax(260px,.68fr) minmax(0,1.32fr);gap:48px;margin-top:42px}.map-row>picture{padding:10px}.map-row h3{font-size:42px}.map-row ul{display:grid;grid-template-columns:1fr 1fr;column-gap:25px;margin-top:18px}.activity-grid{max-width:1100px;gap:14px}.activity-grid img{aspect-ratio:4/3}.activity-grid figcaption{left:15px;right:15px;bottom:15px;font-size:25px}.activity-more{max-width:1100px;margin:20px auto 0;color:var(--muted);font-size:14px}.dining-intro{max-width:1100px;grid-template-columns:.75fr 1.25fr;gap:50px;margin-bottom:32px}.recommendation-card{max-width:1100px;background:var(--cream);padding:36px 42px}.recommendation-card h3{margin:0 0 24px;font:400 32px var(--serif)}.recommendation-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 32px}.recommendation-grid p{margin:0;padding:15px 0;border-top:1px solid var(--line)}.recommendation-grid strong,.recommendation-grid span{display:block}.recommendation-grid span{margin-top:3px;color:var(--muted);font-size:14px}
@media(max-width:840px){.location,.activities,.dining{padding-block:68px}.destination-grid{grid-template-columns:1fr 1fr;gap:10px}.destination-grid figure:first-child{grid-column:1/-1}.destination-grid figure{grid-template-columns:105px 1fr}.destination-grid img{height:82px;aspect-ratio:auto}.destination-grid figure:first-child img{aspect-ratio:auto}.map-row{grid-template-columns:1fr;gap:28px;margin-top:32px}.map-row>picture{max-width:470px;margin:auto}.map-row ul{margin-top:14px}.activity-grid{grid-template-columns:1fr 1fr}.dining-intro{grid-template-columns:1fr;gap:12px}.recommendation-grid{grid-template-columns:1fr 1fr}.recommendation-card{padding:30px}}
@media(max-width:640px){.activity-grid{display:grid;grid-template-columns:1fr 1fr;overflow:visible;max-width:1100px;padding-bottom:0;scroll-snap-type:none}.activity-grid figure{max-width:none;flex:none}.activity-grid img{aspect-ratio:4/3}.activity-grid figcaption{font-size:20px}.destination-grid{display:grid;grid-template-columns:1fr;gap:8px}.destination-grid figure:first-child{grid-column:auto}.destination-grid figure{grid-template-columns:96px 1fr}.destination-grid img,.destination-grid figure:first-child img{height:76px;aspect-ratio:auto}.destination-grid figcaption{font-size:19px}.map-row ul{grid-template-columns:1fr}.recommendation-grid{grid-template-columns:1fr}.recommendation-card{padding:26px 22px}.recommendation-card h3{font-size:29px}.activity-more{font-size:13px}.activities .section-heading{margin-bottom:26px}}
.destination-grid{max-width:1200px;gap:22px}.destination-grid figure{display:block;background:transparent;border:0}.destination-grid img{width:100%;height:230px;object-fit:cover}.destination-grid figcaption{padding:11px 0 0;font-size:24px}.map-row{max-width:1200px;grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);gap:64px;margin-top:58px}.map-row>picture{padding:14px}.map-row h3{font-size:46px}
.dining-intro{max-width:1200px;grid-template-columns:.8fr 1.2fr;gap:70px;margin-bottom:46px}.dining-card{max-width:1200px;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);align-items:stretch}.dining-card>img{width:100%;height:100%;min-height:500px;max-height:none;object-fit:cover}.dining-card>div{padding:40px 48px}.dining-card h3{margin-bottom:24px;font-size:34px}.dining-card p{margin-bottom:18px}
@media(max-width:840px){.destination-grid{grid-template-columns:repeat(3,1fr);gap:14px}.destination-grid figure:first-child{grid-column:auto}.destination-grid figure{display:block}.destination-grid img,.destination-grid figure:first-child img{width:100%;height:auto;aspect-ratio:4/3}.destination-grid figcaption{padding:8px 0 0;font-size:21px}.map-row{grid-template-columns:1fr;gap:34px;margin-top:46px}.dining-card{grid-template-columns:1fr}.dining-card>img{height:330px;min-height:0}.dining-card>div{padding:36px 34px}}
@media(max-width:640px){.destination-grid{grid-template-columns:1fr 1fr;gap:14px}.destination-grid figure:first-child{grid-column:1/-1}.destination-grid figure{display:block}.destination-grid img,.destination-grid figure:first-child img{width:100%;height:auto;aspect-ratio:4/3}.destination-grid figure:first-child img{aspect-ratio:16/9}.destination-grid figcaption{padding:7px 0 0;font-size:20px}.dining-card>img{height:280px}.dining-card>div{padding:30px 24px}.dining-card p{margin-bottom:17px}}
.reviews{padding-block:96px}.reviews-layout{grid-template-columns:minmax(220px,.48fr) minmax(0,1.52fr)}.review-score{padding:46px 48px 46px 0}.review-score>strong{font-size:76px}.review-track{display:grid;grid-template-columns:1fr 1fr .82fr;gap:16px;min-width:0;padding:36px 0 36px 48px}.review-card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:270px;padding:30px;background:#fbf8f2;border:1px solid var(--line)}.review-mark{align-self:flex-start;margin-bottom:26px;padding:5px 10px;background:var(--green);color:#fff;font-size:13px;font-weight:600}.review-card blockquote{margin:0;padding:0}.review-card blockquote>p,.review-verdict{margin:0;font:400 28px/1.28 var(--serif)}.review-card footer{display:flex;flex-direction:column;margin-top:auto;padding-top:28px}.review-card footer span{margin-top:2px;color:var(--muted);font-size:12px}.review-more-card{background:var(--green);color:#fff;border-color:var(--green)}.review-more-card>strong{font:400 46px/1 var(--serif);color:var(--honey)}.review-more-card h3{margin:18px 0 10px;font:400 27px/1.15 var(--serif)}.review-more-card p{margin:0 0 24px;color:rgba(255,255,255,.78);font-size:13px}.review-more-card a{margin-top:auto;color:#fff;font-size:13px;font-weight:600;text-underline-offset:5px}
@media(max-width:1050px){.reviews-layout{grid-template-columns:230px minmax(0,1fr)}.review-track{padding-left:30px;gap:12px}.review-card{min-height:250px;padding:24px}.review-card blockquote>p,.review-verdict{font-size:24px}}
@media(max-width:840px){.reviews-layout{grid-template-columns:1fr}.review-score{padding:34px 0;border-right:0;border-bottom:1px solid var(--line)}.review-track{display:flex;overflow-x:auto;gap:14px;padding:28px 0 10px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--gold) transparent}.review-card{flex:0 0 min(78vw,350px);min-height:245px;scroll-snap-align:start}.review-card blockquote>p,.review-verdict{font-size:26px}}
.location{padding-block:110px 120px}.location .section-heading{max-width:900px;margin:0 auto 70px;text-align:center}.destination-grid{max-width:1280px;gap:26px;margin-bottom:96px}.destination-grid figure{display:block;background:transparent;border:0}.destination-grid img{width:100%;height:280px;object-fit:cover}.destination-grid figcaption{padding:13px 0 0;font-size:26px}.location-guide{max-width:1280px;grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);gap:72px;margin-top:0;padding:44px;background:var(--cream-2);border:1px solid var(--line)}.location-guide>picture{padding:14px;background:#fff}.location-guide h3{margin-bottom:18px;font-size:50px}.location-guide ul{margin-top:24px}.location-guide li{padding-block:13px}
.activities{padding-block:112px;background:#eee8de;border-top:1px solid var(--line)}.activities .section-heading{max-width:780px;margin:0 auto 58px;text-align:center}.activities .section-heading p{max-width:680px;margin-inline:auto}.activity-grid{max-width:1280px;gap:24px}.activity-grid figure{position:relative;display:flex;flex-direction:column;background:var(--cream);border:1px solid var(--line);overflow:hidden}.activity-grid figure:after{display:none}.activity-grid img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;opacity:1}.activity-grid figcaption{position:static;display:flex;align-items:center;min-height:94px;padding:20px 22px 23px;color:var(--ink);font-size:27px;line-height:1.15}
@media(max-width:840px){.location{padding-block:84px 92px}.location .section-heading{margin-bottom:52px}.destination-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:70px}.destination-grid figure:first-child{grid-column:auto}.destination-grid img,.destination-grid figure:first-child img{height:auto;aspect-ratio:4/3}.destination-grid figcaption{font-size:22px}.location-guide{grid-template-columns:1fr;gap:34px;padding:30px}.location-guide>picture{max-width:560px;margin-inline:auto}.location-guide h3{font-size:44px}.activities{padding-block:86px}.activities .section-heading{margin-bottom:46px}.activity-grid{grid-template-columns:1fr 1fr;gap:16px}.activity-grid figcaption{min-height:84px;font-size:24px}}
@media(max-width:640px){.location{padding-block:70px 80px}.location .section-heading{margin-bottom:42px}.destination-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:56px}.destination-grid figure:first-child{grid-column:1/-1}.destination-grid img,.destination-grid figure:first-child img{height:auto;aspect-ratio:4/3}.destination-grid figure:first-child img{aspect-ratio:16/9}.destination-grid figcaption{font-size:20px}.location-guide{gap:27px;padding:21px 18px}.location-guide>picture{padding:9px}.location-guide h3{font-size:38px}.location-guide ul{grid-template-columns:1fr}.activities{padding-block:74px}.activities .section-heading{margin-bottom:38px}.activity-grid{grid-template-columns:1fr 1fr;gap:10px}.activity-grid figcaption{min-height:76px;padding:14px 13px 16px;font-size:20px}}
@media(min-width:981px){.masthead-inner,.brand img{transition:min-height .24s ease,width .24s ease}.masthead.is-compact .masthead-inner{min-height:88px}.masthead.is-compact .brand img{width:225px}}
@media(max-width:980px){.masthead-inner{min-height:78px}.brand img{width:185px}.nav-button{display:block}.nav{display:none;position:absolute;z-index:30;left:0;right:0;top:78px;padding:22px 20px;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.nav.open{display:flex}.controls select{padding-left:11px}}
.section{scroll-margin-top:105px}.business{padding-block:78px;background:var(--cream)}.business-card{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);gap:80px;align-items:center;padding:52px 58px;background:#fbf8f2;border:1px solid var(--line);border-left:4px solid var(--gold)}.business h2{margin-bottom:22px;font-size:clamp(40px,3.5vw,54px)}.business-copy>p:last-child{max-width:690px;margin-bottom:0;color:var(--muted)}.business-points{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;margin:0;padding:0;border-top:1px solid var(--line);list-style:none}.business-points li{position:relative;padding:15px 5px 15px 22px;border-bottom:1px solid var(--line);font-size:14px;line-height:1.45}.business-points li:before{content:"";position:absolute;left:1px;top:25px;width:10px;height:1px;background:var(--gold)}.business-details .button{margin-top:25px}
@media(max-width:1050px){.business-card{grid-template-columns:1fr;gap:34px}.business-copy>p:last-child{max-width:none}}
@media(max-width:640px){.section{scroll-margin-top:92px}.business{padding-block:58px}.business-card{gap:27px;padding:31px 24px}.business h2{font-size:38px}.business-points{grid-template-columns:1fr}.business-details .button{width:100%;margin-top:22px}}
.location-map-column{min-width:0}.location-map-column>picture{display:block;padding:14px;background:#fff;border:1px solid var(--line)}.location-map-column picture img{width:100%;aspect-ratio:1.25/1;object-fit:cover}.address-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:14px;padding:20px 22px;background:var(--green);color:#fff}.address-panel div{display:grid;gap:3px}.address-panel span{color:var(--honey);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.address-panel strong{font:400 21px/1.25 var(--serif)}.address-panel small{margin-top:3px;color:rgba(255,255,255,.75);font-size:11px}.address-panel a{flex:none;color:#fff;font-size:13px;font-weight:600;text-underline-offset:5px}
@media(max-width:840px){.location-map-column{max-width:560px;margin-inline:auto}.location-map-column>picture{padding:10px}}
@media(max-width:520px){.address-panel{align-items:flex-start;flex-direction:column;gap:13px;padding:18px}.address-panel strong{font-size:20px}}
.contact-date-hint{margin:-3px 0 0;color:rgba(255,255,255,.78);font-size:13px;line-height:1.55}.contact-availability{margin:0 0 5px;border:1px solid rgba(255,255,255,.3);background:#f7f2e9;color:var(--ink)}.contact-availability summary{position:relative;padding:15px 48px 15px 17px;color:var(--green);font-size:14px;font-weight:600;cursor:pointer;list-style:none}.contact-availability summary::-webkit-details-marker{display:none}.contact-availability summary:after{content:"+";position:absolute;right:18px;top:50%;translate:0 -50%;font:400 24px/1 var(--serif)}.contact-availability[open] summary{border-bottom:1px solid var(--line)}.contact-availability[open] summary:after{content:"−"}.contact-availability-panel{padding:18px}.contact-calendar-toolbar{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;margin-bottom:15px}.contact-calendar-toolbar p{margin:0 10px;text-align:center;color:var(--muted);font-size:12px}.contact-calendar-toolbar button{width:36px;height:36px;border:1px solid var(--line);background:transparent;color:var(--green);font-size:17px;cursor:pointer}.contact-calendar-toolbar button:hover,.contact-calendar-toolbar button:focus{background:var(--green);color:#fff}.contact-calendar-months{max-width:380px;margin-inline:auto}.contact-calendar-months .calendar-month h3{font-size:24px}.contact-availability .calendar-legend{justify-content:center;gap:14px;margin-top:16px;padding-top:14px}.contact-availability .calendar-response{min-height:1.4em;margin-bottom:0}.contact-availability button:disabled{opacity:.38;cursor:default}
@media(max-width:520px){.contact-availability-panel{padding:15px 12px}.contact-calendar-toolbar{grid-template-columns:34px 1fr 34px}.contact-calendar-toolbar button{width:34px;height:34px}.contact-calendar-toolbar p{font-size:11px}.contact-availability .calendar-legend{gap:10px}.contact-availability .calendar-legend b{font-size:10px}}
.booking-planning .booking-layout{grid-template-columns:minmax(0,760px);justify-content:center}.booking-planning .price-card{display:flex;align-items:center;padding:48px 56px;text-align:center}.booking-planning .price-card>p:first-child,.booking-planning .price-card>strong,.booking-planning .price-card>p:not(:first-child),.booking-planning .price-card .button{align-self:center;grid-column:auto;grid-row:auto}.booking-planning .price-card .button{margin-top:20px}.calendar-day.button{background:transparent}.calendar-day.button.chosen{background:var(--green);color:#fff}.calendar-day.button.in-range{background:#b7c2bc;color:#fff}
.date-range-control{position:relative;z-index:12}.date-range-field{position:relative;display:grid;width:100%;min-height:78px;padding:12px 54px 12px 17px;border:1px solid rgba(255,255,255,.65);background:#fff;color:var(--ink);text-align:left;cursor:pointer}.date-range-field>span{margin-bottom:3px;color:var(--muted);font-size:13px}.date-range-field>strong{overflow:hidden;font:400 23px/1.25 var(--serif);text-overflow:ellipsis;white-space:nowrap}.date-range-field>i{position:absolute;right:19px;top:50%;translate:0 -50%;font:400 25px/1 var(--serif);transition:rotate .18s ease}.date-range-control.open .date-range-field{outline:2px solid var(--gold);outline-offset:-2px}.date-range-control.open .date-range-field>i{rotate:180deg}.date-range-picker{position:absolute;z-index:60;top:calc(100% + 8px);right:0;width:min(780px,calc(100vw - 40px));max-height:calc(100vh - 120px);overflow:auto;padding:24px 26px 18px;border:1px solid var(--line);background:#fbf8f2;color:var(--ink);box-shadow:0 24px 55px rgba(15,28,22,.24)}.date-range-picker[hidden]{display:none}.date-range-picker .contact-calendar-toolbar{margin-bottom:20px}.date-range-picker .contact-calendar-months{display:grid;grid-template-columns:1fr 1fr;gap:34px;max-width:none}.date-range-picker .calendar-month h3{font-size:27px}.date-range-picker-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.date-range-picker-footer .calendar-legend{margin:0;padding:0;border:0}.date-range-clear{border:0;background:transparent;color:var(--green);font:600 12px var(--sans);text-decoration:underline;text-underline-offset:4px;cursor:pointer}.date-range-picker .calendar-response{margin-bottom:0}.date-range-picker button:disabled{opacity:.38;cursor:default}
.calendar-days{grid-auto-rows:40px}.calendar-day{width:100%;height:40px;min-width:0;aspect-ratio:auto}.calendar-day.button:hover:not(.chosen):not(.in-range),.calendar-day.button:focus:not(.chosen):not(.in-range){border-color:var(--gold);background:#f0ebe2;color:var(--ink)}.date-range-picker .calendar-days{grid-auto-rows:42px}.date-range-picker .calendar-day{height:42px}.date-range-field>i{width:9px;height:9px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;font-size:0;rotate:45deg}.date-range-control.open .date-range-field>i{rotate:225deg}
@media(max-width:640px){.date-range-field{min-height:72px}.date-range-field>strong{font-size:20px}.date-range-picker{position:fixed;top:88px;right:14px;left:14px;width:auto;max-height:calc(100vh - 104px);padding:20px 15px 16px}.date-range-picker .contact-calendar-months{grid-template-columns:1fr}.date-range-picker .contact-calendar-months .calendar-month:nth-child(2){display:none}.date-range-picker-footer{align-items:flex-start;flex-direction:column}.date-range-picker-footer .calendar-legend{gap:10px}}
/* Primary welcome action: visible without competing with the calm editorial layout. */
.welcome-cta{min-width:230px;margin-top:28px;padding:14px 28px;box-shadow:0 9px 24px rgba(49,76,64,.16)}
.welcome-cta::after{content:"→";margin-left:11px;font-size:18px;line-height:1}
.faq-list details a{color:var(--green);text-underline-offset:4px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.masthead-inner,.brand img{transition:none}}
