:root{--green:#174d3c;--green-deep:#10382c;--gold:#f5d64b;--paper:#f8f6f0;--cream:#ebe7db;--ink:#213d32;--muted:#59675e;--line:#dcded3;--heading:"Cormorant Garamond",Georgia,serif;--body:"DM Sans",Arial,sans-serif;--wrap:1264px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}body.menu-open,body.lightbox-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}svg{display:block;flex:none}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-family:var(--heading);font-weight:500;line-height:1.06;letter-spacing:-.025em}h1{font-size:clamp(3rem,5.7vw,5.5rem)}h2{font-size:clamp(2.5rem,4.1vw,3.65rem)}h3{font-size:2rem}p{color:var(--muted)}p+p{margin-top:1.15em}ul{margin:0;padding:0;list-style:none}address{font-style:normal}::selection{background:var(--gold);color:var(--green-deep)}:focus-visible{outline:3px solid #a57d10;outline-offset:5px}main:focus{outline:none}.wrap{width:min(var(--wrap),calc(100% - 112px));margin-inline:auto}.section{padding-block:105px}.section--topless{padding-top:0}.icon{width:22px;height:22px}.eyebrow{font-weight:600;font-size:12px;letter-spacing:.17em;text-transform:uppercase;color:var(--green);line-height:1.6;margin-bottom:20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:17px 25px;min-height:54px;border:1px solid var(--green);border-radius:2px;color:white;background:var(--green);font-size:14px;font-weight:600;line-height:1.3;transition:background .2s,transform .2s}.btn:hover{background:var(--green-deep);transform:translateY(-1px)}.btn .icon{width:18px;height:18px}.btn--gold{background:var(--gold);color:var(--green-deep);border-color:var(--gold)}.btn--gold:hover{background:#ffe26f;border-color:#ffe26f}.btn--outline-light{background:transparent;color:white;border-color:#83a091}.btn--outline-light:hover{background:#ffffff12}.text-link{display:inline-flex;align-items:center;gap:18px;color:var(--green);font-size:14px;font-weight:600;line-height:1.5;padding:10px 0;border-bottom:1px solid #8a9f91}.text-link .icon{width:19px;height:19px;transition:transform .2s}.text-link:hover .icon{transform:translateX(4px)}.button-row{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.prose p{max-width:70ch}.prose p+p{margin-top:20px}.prose h2{margin-top:40px;margin-bottom:18px;font-size:2.4rem}.prose h3{margin-top:30px;margin-bottom:16px}.prose a{text-decoration:underline;text-underline-offset:4px}.prose ul{padding-left:24px;list-style:disc;margin:20px 0}.skip-link{position:fixed;left:20px;top:-100px;z-index:999999;background:var(--gold);padding:12px 22px}.skip-link:focus{top:16px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
.topbar{background:var(--green);color:white;font-size:12px;letter-spacing:.015em}.topbar .wrap{height:34px;display:flex;align-items:center;justify-content:space-between}.topbar span,.topbar a{display:flex;align-items:center;gap:8px}.topbar .icon{width:13px;height:13px}.site-header{position:relative;z-index:30;background:var(--cream)}.header-main{height:112px;display:flex;align-items:center;justify-content:space-between;gap:35px}.brand{display:block;flex:none}.brand-image{display:block;width:210px;height:104px;position:relative;overflow:hidden}.brand--supplied img{position:absolute;width:210px;height:210px;max-width:none;top:-60px;left:0}.brand--custom .brand-image{display:flex;align-items:center;justify-content:center}.brand--custom img{max-height:90px;width:auto;object-fit:contain}.primary-nav{display:flex;align-items:center;gap:32px}.nav-list{display:flex;align-items:center;gap:29px;font-size:14px}.nav-list a{display:block;padding:12px 0;position:relative}.nav-list a::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1px;background:var(--green);transform:scaleX(0);transform-origin:left;transition:transform .2s}.nav-list a:hover::after,.nav-list .current-menu-item a::after{transform:scaleX(1)}.header-book{padding:16px 21px;gap:30px}.menu-toggle{display:none}
.hero-shell{padding:0 24px}.hero{min-height:650px;position:relative;isolation:isolate;display:flex;align-items:center;overflow:hidden;background:var(--green-deep)}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% 57%;z-index:-3}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,39,29,.8),rgba(12,40,30,.47) 47%,rgba(4,29,20,.03) 82%);z-index:-2}.hero-content{width:min(850px,70%);padding:62px 0 72px 6.4%;color:white}.hero .eyebrow{color:white;font-size:12px;letter-spacing:.25em;margin-bottom:25px}.hero h1{font-size:clamp(3.7rem,5.7vw,5.65rem);letter-spacing:-.03em;line-height:.98;max-width:800px;text-wrap:balance}.hero h1 em{font-weight:500;display:block;color:#f6e49b;margin-top:10px}.hero-copy{color:#f2f1e8;max-width:470px;line-height:1.75;margin:30px 0}.hero-text-link{display:inline-flex;align-items:center;gap:15px;font-size:14px;font-weight:600;color:white;padding:12px 0}.hero-text-link .icon{width:18px}.hero-caption{position:absolute;right:28px;bottom:30px;color:white;writing-mode:vertical-rl;letter-spacing:.18em;font-size:11px;line-height:1.7}.hero-caption span{font-size:8px;margin-top:12px}.trust-strip{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:116px;border-bottom:1px solid var(--line)}.trust-strip>span{display:flex;gap:12px;align-items:center;font-size:14px}.trust-strip .icon{width:25px;height:25px;color:var(--green)}.trust-rating{display:flex;gap:16px;align-items:center}.trust-rating strong{font-family:var(--heading);font-size:44px;font-weight:500;line-height:1}.trust-rating strong>span{font-size:20px}.trust-rating>span{display:flex;flex-direction:column;font-size:12px}.stars{display:inline-block;background:linear-gradient(90deg,#94720b var(--rating-fill,88%),#bfc4b9 var(--rating-fill,88%));background-clip:text;-webkit-background-clip:text;color:transparent;letter-spacing:.14em;font-size:15px}.trust-rating .stars{font-size:12px;line-height:1.8}
.intro-split{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.intro-photo{position:relative}.intro-photo>img{width:100%;height:590px;object-fit:cover}.photo-note{position:absolute;right:-24px;bottom:42px;background:var(--cream);padding:24px 31px;font-family:var(--heading);font-size:31px;line-height:1.07;color:var(--green)}.photo-note em{font-weight:500}.intro-content{position:relative;padding-block:20px}.intro-content h2{font-size:clamp(2.6rem,4.5vw,4.2rem);margin-bottom:28px;text-wrap:balance}.intro-content .text-link{margin-top:29px}.section-mark{display:block;font-family:var(--heading);font-style:italic;color:#76836b;font-size:80px;line-height:1.2;text-align:right;margin-top:24px}.rooms-section{background:#eef0e7}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:45px}.section-heading h2{max-width:790px}.section-heading p:not(.eyebrow){margin-top:18px}.section-heading>.text-link{flex:none}.room-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:58px 38px}.room-image{display:block;aspect-ratio:1.48;position:relative;overflow:hidden;background:var(--cream)}.room-image>img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.room-image:hover>img{transform:scale(1.035)}.image-corner{display:grid;place-items:center;position:absolute;bottom:18px;right:18px;width:43px;height:43px;background:var(--paper);border-radius:50%;transition:background .2s}.room-image:hover .image-corner{background:var(--gold)}.room-card-body{padding-top:21px}.room-facts{display:flex;flex-wrap:wrap;align-items:center;gap:12px 25px;font-size:13px;color:#586d60}.room-facts>span{display:flex;align-items:center;gap:8px}.room-facts .icon{width:20px;height:20px}.room-card h3{font-size:35px;margin:13px 0}.room-card p{max-width:540px;line-height:1.7}.room-card .text-link{margin-top:14px}.why-section>h2{max-width:740px}.why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px;margin-top:52px}.why-icon{display:inline-flex;width:52px;height:52px;align-items:center;justify-content:center;background:#e8ecdf;border-radius:50%;margin-bottom:23px}.why-icon .icon{width:25px;height:25px}.why-grid h3{font-size:28px;margin-bottom:14px}
.facilities-feature{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:white}.facility-photo>img{width:100%;height:100%;min-height:705px;object-fit:cover;object-position:50% 60%}.facility-content{padding:65px max(40px,calc((100vw - 1264px)/2)) 60px 65px}.facility-content .eyebrow{color:#f5dd73}.facility-content h2{max-width:570px;margin-bottom:27px}.facility-content>p:not(.eyebrow){color:#d9e4d8;max-width:550px}.facility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 60px}.facility-item{display:flex;gap:20px;align-items:flex-start}.facility-item>.icon{width:29px;height:29px;margin-top:2px}.facility-item h3{font-family:var(--body);font-size:17px;font-weight:600;letter-spacing:0;line-height:1.5;margin-bottom:8px}.facility-grid--short{gap:26px 32px}.facility-grid--short .facility-item{gap:14px;align-items:center}.facility-grid--short .facility-item>.icon{width:23px;height:23px;margin:0}.facility-grid--short h3{font-size:14px;font-weight:400;margin:0}.facility-content .facility-grid{margin:34px 0}.text-link--light{color:white;border-color:#86a48f}.stay-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}.stay-card>div{aspect-ratio:1.3;overflow:hidden}.stay-card img{height:100%;width:100%;object-fit:cover}.stay-card h3{font-size:32px;margin:24px 0 17px}.stay-card .text-link{margin-top:19px}.gallery-preview{padding-top:0}.gallery-mosaic{display:grid;grid-template-columns:1.06fr 1fr 1fr;grid-template-rows:245px 245px;gap:17px}.gallery-mosaic>.photo-tile{aspect-ratio:auto}.gallery-mosaic>a:first-child{grid-row:span 2}.gallery-mosaic>a:nth-child(2){grid-column:span 2}.photo-expand{position:absolute;right:17px;bottom:17px;width:37px;height:37px;display:grid;place-items:center;border-radius:50%;background:#f8f6f0ed;color:var(--green)}.photo-expand .icon{width:18px;height:18px}.review-section{display:grid;grid-template-columns:.65fr 1.35fr;gap:100px;align-items:center;padding:10px 45px 105px}.review-score{display:flex;flex-direction:column;align-items:center;border-right:1px solid var(--line);padding-right:75px}.review-score strong{font-family:var(--heading);font-size:130px;font-weight:500;line-height:1.1;margin-top:8px}.review-score strong span{font-size:35px}.review-score>span:last-child{font-size:14px}.review-section h2{margin-bottom:21px}.review-section p:not(.eyebrow){max-width:540px}.review-section .text-link{margin-top:18px}.review-profiles{display:flex;gap:18px;font-size:13px;margin-top:22px}.review-profiles a{text-decoration:underline;text-underline-offset:4px}.location-section{background:var(--cream);padding-block:85px}.location-split{display:grid;grid-template-columns:1.05fr 1fr;gap:90px;align-items:center}.location-split h2{max-width:560px;margin-bottom:26px}.location-split address{display:flex;align-items:flex-start;gap:15px;margin:30px 0}.location-split address span{max-width:300px}.location-photo img{width:100%;aspect-ratio:1.1;object-fit:cover}.location-split .button-row{gap:25px}.faq-section{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.faq-section>div>.text-link{margin-top:26px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:25px;cursor:pointer;font-weight:600;font-size:15px;padding:24px 0;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary .icon{width:18px;height:18px}.faq-list details[open] summary .icon{transform:rotate(45deg)}.faq-answer{padding:0 40px 24px 0}.final-cta{background:var(--green);color:white;text-align:center;padding:83px 0}.final-cta .eyebrow{color:#f5dd73}.final-cta h2{font-size:64px}.final-cta p:not(.eyebrow){color:#dce7da;margin:24px auto 31px}.final-cta .button-row{justify-content:center}
.site-footer{background:var(--green-deep);color:#e2e9df;padding-top:65px;font-size:14px}.footer-main{display:grid;grid-template-columns:1.05fr 1.18fr .8fr 1.17fr;gap:44px;padding-bottom:54px}.site-footer .brand{background:var(--cream);width:210px;margin-bottom:23px}.site-footer p{color:#b8cbbd;font-size:14px}.site-footer h2{font-family:var(--body);font-size:14px;font-weight:600;letter-spacing:0;margin:8px 0 22px}.site-footer li{margin-bottom:10px;font-size:14px}.site-footer a:hover{color:var(--gold)}.footer-phone{display:inline-block;margin-top:16px;font-size:16px}.profile-links{display:flex;gap:8px 14px;flex-wrap:wrap;font-size:12px;margin-top:22px}.copyright{min-height:85px;border-top:1px solid #ffffff22;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px;color:#b8cbbd;font-size:12px}.developer-credit{text-align:center}.footer-touch{display:flex;gap:15px;justify-content:flex-end;align-items:center;color:#eef2e7}.footer-touch .icon{width:17px;height:17px}.whatsapp-float{position:fixed;bottom:24px;right:24px;z-index:70;width:58px;height:58px;background:#25d366;border:3px solid white;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 25px #092e2933;transition:transform .2s}.whatsapp-float:hover{transform:translateY(-3px)}.whatsapp-float img{width:29px;height:29px;filter:brightness(0) invert(1)}.wa-tooltip{position:absolute;right:72px;white-space:nowrap;background:var(--green-deep);color:white;font-size:12px;padding:7px 12px;border-radius:3px;opacity:0;pointer-events:none;transition:opacity .2s}.whatsapp-float:hover .wa-tooltip,.whatsapp-float:focus-visible .wa-tooltip{opacity:1}.mobile-book{display:none}.lightbox-open .whatsapp-float,.lightbox-open .mobile-book,.menu-open .whatsapp-float,.menu-open .mobile-book{display:none}
.breadcrumbs{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-bottom:40px}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.page-intro{padding:40px 0 68px}.page-intro h1{max-width:1000px;font-size:clamp(3.5rem,5.5vw,5.3rem);text-wrap:balance}.page-lead{max-width:730px;margin-top:26px}.page-feature>img{width:100%;max-height:640px;object-fit:cover;aspect-ratio:1.85}.compact-banner{display:flex;align-items:center;justify-content:space-between;gap:45px;background:var(--cream);padding:45px 50px;margin-bottom:90px}.compact-banner h2{font-size:2.4rem}.compact-banner .eyebrow{margin-bottom:12px}.compact-banner .btn{flex:none}.gallery-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:34px}.gallery-filters button{font-size:14px;line-height:1.5;background:transparent;color:var(--green);border:1px solid #bfccc0;padding:10px 17px;border-radius:3px;min-height:44px}.gallery-filters button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.photo-tile{position:relative;display:block;aspect-ratio:1.25;overflow:hidden;background:var(--cream)}.photo-tile>img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.photo-tile:hover>img{transform:scale(1.035)}.room-intro{padding-top:40px;padding-bottom:38px}.room-intro .eyebrow{margin-bottom:18px}.room-intro h1{font-size:clamp(3rem,5.3vw,5rem);margin-bottom:26px}.room-hero{position:relative}.room-hero>img{width:100%;height:620px;object-fit:cover}.gallery-jump{position:absolute;right:25px;bottom:25px;display:flex;gap:12px;align-items:center;background:var(--paper);padding:12px 18px;font-size:13px;font-weight:600}.room-detail{display:grid;grid-template-columns:1.6fr 1fr;gap:90px;align-items:start}.room-detail h2{font-size:3.1rem;max-width:650px;margin-bottom:24px}.room-detail .detail-subheading{font-size:29px;margin:42px 0 25px}.room-detail .facility-grid{max-width:630px}.booking-card{background:var(--cream);padding:38px;position:sticky;top:30px;align-self:start}.booking-card h2{font-size:35px;line-height:1.06;margin-bottom:22px}.booking-card>p:not(.eyebrow){margin-bottom:24px}.booking-card .btn{display:flex;justify-content:space-between;width:100%}.booking-card .text-link{margin-top:17px}.booking-note{display:flex;align-items:center;gap:10px;margin-top:25px;padding-top:21px;border-top:1px solid #cbd0c3;font-size:14px}.booking-note .icon{width:16px;height:16px}.enquiry-feature{display:grid;grid-template-columns:1.5fr 1fr;gap:45px;align-items:start}.enquiry-feature>div>img{width:100%;min-height:470px;max-height:650px;object-fit:cover}.location-page-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:stretch}.location-page-photo>img{width:100%;height:100%;min-height:560px;object-fit:cover}.location-card{padding:52px 45px;background:var(--cream);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.location-symbol{margin-bottom:30px;display:grid;place-items:center;width:65px;height:65px;border:1px solid #a7b2a3;border-radius:50%}.location-symbol .icon{width:31px;height:31px}.location-card h2{font-size:43px;margin-bottom:25px}.location-card address{max-width:260px;margin-bottom:28px}.location-card .text-link{margin-top:22px}.location-help{max-width:830px;text-align:center}.location-help p{margin-top:25px}.location-help .text-link{margin-top:15px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:120px}.contact-details>h2{margin-bottom:35px}.contact-details>div{padding:30px 0 27px 55px;position:relative;border-bottom:1px solid var(--line)}.contact-details>div:last-child{border-bottom:0}.contact-icon{position:absolute;left:0;top:37px}.contact-details h3{font-family:var(--body);font-weight:600;letter-spacing:0;font-size:16px;margin-bottom:18px}.contact-details .text-link{padding:5px 0}.contact-details p>.text-link{margin-top:9px}.contact-details .btn{margin-top:17px}.enquiry-form-card{padding:42px;background:var(--cream)}.enquiry-form-card h2{font-size:43px;margin-bottom:20px}.enquiry-form-card>p:not(.eyebrow){margin-bottom:26px}.enquiry-form{display:grid;gap:18px}.form-field{min-width:0}.form-field label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.form-field input,.form-field select,.form-field textarea{display:block;width:100%;max-width:100%;border:1px solid #a9b4a3;padding:12px 13px;border-radius:2px;background:#fdfcf8;color:var(--ink);font-size:16px;line-height:1.4;min-height:48px}.form-field textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-note{font-size:12px;line-height:1.6}.enquiry-form button{justify-content:space-between}.enquiry-form button:disabled{opacity:.6}.content-page{max-width:900px;min-height:60vh}.content-page>h1{margin-bottom:35px}.not-found{min-height:60vh;text-align:center}.not-found p:not(.eyebrow){margin:25px auto 35px;max-width:600px}.not-found .button-row{justify-content:center}
.photo-dialog{padding:24px;border:0;background:transparent;color:white;max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;inset:0;margin:0;overflow:hidden}.photo-dialog[open]{display:grid;grid-template-columns:70px minmax(0,1fr) 70px;gap:20px;align-items:center}.photo-dialog::backdrop{background:rgba(6,22,17,.97)}.photo-dialog figure{display:flex;flex-direction:column;align-items:center;min-width:0}.photo-dialog figure>img{width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 150px);object-fit:contain}.photo-dialog figcaption{font-size:14px;line-height:1.5;margin-top:17px;text-align:center}.lightbox-count{font-size:12px;color:#b9cabc;margin-top:6px}.photo-dialog button{display:grid;place-items:center;width:46px;height:46px;border:1px solid #ffffff77;border-radius:50%;background:#ffffff12;color:white}.lightbox-close{position:absolute;top:20px;right:25px;z-index:2}.lightbox-prev,.lightbox-next{justify-self:center}.lightbox-prev .icon{transform:rotate(180deg)}
@media(min-width:1650px){.hero{min-height:740px}.hero-content{padding-left:max(6.4%,calc((100vw - 1320px)/2))}.hero h1{font-size:92px}}
@media(max-width:1200px){.wrap{width:calc(100% - 72px)}.primary-nav{gap:20px}.nav-list{gap:19px}.header-main{gap:20px}.brand-image{width:180px;height:87px}.brand--supplied img{width:180px;height:180px;top:-53px}.site-footer .brand{width:180px}.header-book{padding:14px 16px;gap:14px}.hero{min-height:600px}.hero-content{width:76%;padding-left:5%}.intro-split{gap:64px}.intro-photo>img{height:540px}.facility-content{padding:50px 38px}.facility-photo>img{min-height:700px}.footer-main{gap:25px}.faq-section{gap:65px}.contact-grid{gap:70px}.room-detail{gap:55px}.review-section{gap:65px}.trust-strip{gap:20px}.trust-strip>span{font-size:12px;gap:9px}}
@media(max-width:980px){.wrap{width:calc(100% - 48px)}.header-main{height:94px}.primary-nav{gap:16px}.nav-list{gap:14px;font-size:13px}.header-book{padding:13px 14px;gap:9px}.brand-image{width:160px;height:76px}.brand--supplied img{width:160px;height:160px;top:-46px}.hero-shell{padding:0 16px}.hero-content{width:82%}.hero h1{font-size:64px}.hero-caption{display:none}.trust-strip>span:last-child{display:none}.section{padding-block:78px}.section--topless{padding-top:0}.intro-split{gap:48px}.intro-photo>img{height:500px}.intro-content h2{font-size:48px}.photo-note{font-size:26px;right:-17px;padding:20px}.section-mark{font-size:60px}.room-card h3{font-size:30px}.section-heading{align-items:flex-start}.section-heading>.text-link{max-width:180px}.why-grid{gap:30px}.facility-content{padding:45px 28px}.facility-grid--short{gap:23px 18px}.facility-grid--short .facility-item{gap:9px}.facility-grid--short h3{font-size:13px}.stay-grid{gap:23px}.stay-card h3{font-size:27px}.gallery-mosaic{grid-template-rows:195px 195px}.review-score{padding-right:35px}.review-section{gap:55px;padding:20px 0 80px}.location-split{gap:45px}.location-split .button-row{align-items:flex-start;flex-direction:column;gap:10px}.faq-section{gap:50px}.footer-main{grid-template-columns:1fr 1fr;gap:42px 55px}.footer-main .brand{width:160px}.room-hero>img{height:510px}.room-detail{grid-template-columns:1.35fr 1fr;gap:35px}.booking-card{padding:28px}.room-detail h2{font-size:42px}.booking-card h2{font-size:31px}.enquiry-feature{grid-template-columns:1.2fr 1fr;gap:30px}.contact-grid{gap:40px}.enquiry-form-card{padding:30px}.location-card{padding:35px}.location-page-photo>img{min-height:500px}}
@media(max-width:800px){.topbar .wrap{height:30px;font-size:11px}.header-main{height:88px}.brand-image{width:170px;height:82px}.brand--supplied img{width:170px;height:170px;top:-50px}.brand--custom .brand-image{width:160px;height:68px}.has-js .menu-toggle{display:flex;align-items:center;gap:12px;background:transparent;border:0;color:var(--green);padding:12px 0 12px 12px;font-size:14px;font-weight:600}.menu-lines{width:24px;height:14px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;position:relative}.menu-lines::after{content:"";position:absolute;left:0;right:0;top:5px;border-top:1px solid currentColor}.menu-toggle[aria-expanded=true] .menu-lines{height:18px;border:0}.menu-toggle[aria-expanded=true] .menu-lines::before,.menu-toggle[aria-expanded=true] .menu-lines::after{content:"";position:absolute;top:8px;left:0;right:0;border-top:1px solid currentColor;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines::after{transform:rotate(-45deg)}.primary-nav{flex-direction:column;align-items:stretch;background:var(--cream);padding:20px 24px 30px;width:100%;gap:20px}.has-js .primary-nav{display:none;position:absolute;top:100%;left:0;box-shadow:0 20px 25px #123a2622;max-height:calc(100dvh - 118px);overflow:auto}.has-js .primary-nav.is-open{display:flex}.has-js .primary-nav[inert]{visibility:hidden}.nav-list{flex-direction:column;align-items:stretch;gap:0;font-size:16px}.nav-list a{padding:15px 0;border-bottom:1px solid #c9cfbf}.nav-list a::after{display:none}.header-book{min-height:52px;justify-content:space-between}html:not(.has-js) .header-main{height:auto;flex-wrap:wrap;padding-top:8px}.hero-content{width:88%}.hero h1{font-size:60px}.hero-copy{max-width:440px}.hero .button-row{gap:20px}.intro-split{gap:35px}.intro-photo>img{height:480px}.intro-content h2{font-size:43px}.section-mark{display:none}.why-grid{gap:24px}.why-grid h3{font-size:25px}.facilities-feature{grid-template-columns:1fr}.facility-photo>img{height:430px;min-height:0}.facility-content{padding:45px 35px}.facility-content>p:not(.eyebrow),.facility-content h2{max-width:600px}.facility-content .facility-grid{max-width:610px;gap:28px}.facility-grid--short h3{font-size:14px}.stay-grid{grid-template-columns:1fr;gap:42px}.stay-card{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;align-items:start}.stay-card>div{grid-row:span 3;height:100%;min-height:230px;aspect-ratio:auto}.stay-card h3{margin:10px 0 15px}.stay-card .text-link{justify-self:start;align-self:end}.gallery-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:260px 230px}.gallery-mosaic>a:first-child{grid-row:auto}.gallery-mosaic>a:nth-child(2){grid-column:auto}.review-section{grid-template-columns:.85fr 1.15fr;gap:30px}.review-score{padding-right:20px}.review-score strong{font-size:100px}.review-section h2{font-size:42px}.location-split{gap:32px}.location-split h2{font-size:43px}.location-photo img{aspect-ratio:.8}.faq-section{grid-template-columns:1fr;gap:30px}.faq-section h2{max-width:650px}.copyright{grid-template-columns:1fr 1fr;padding-block:25px}.developer-credit{grid-column:1/-1;grid-row:2;text-align:left}.footer-touch{grid-column:2;grid-row:1}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-detail{grid-template-columns:1fr;gap:35px}.booking-card{position:static}.room-detail>.booking-card{max-width:600px}.room-detail>.booking-card .btn{max-width:420px}.room-hero>img{height:440px}.enquiry-feature{grid-template-columns:1fr}.enquiry-feature>div>img{min-height:0;max-height:510px;aspect-ratio:1.35}.enquiry-feature>.booking-card{width:100%}.enquiry-feature>.booking-card .btn{max-width:350px}.location-page-grid{grid-template-columns:1fr}.location-page-photo>img{min-height:0;aspect-ratio:1.3}.location-card{padding:38px}.location-symbol{display:none}.contact-grid{grid-template-columns:1fr;gap:45px}.contact-grid .enquiry-form-card{max-width:660px}.photo-dialog[open]{grid-template-columns:46px minmax(0,1fr) 46px;gap:5px;padding:15px 5px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.section{padding-block:65px}.section--topless{padding-top:0}.topbar .wrap{width:calc(100% - 32px)}.topbar .wrap>span,.topbar a{font-size:10px;gap:5px}.topbar .icon{width:11px;height:11px}.header-main{height:84px}.brand-image{width:160px;height:77px}.brand--supplied img{width:160px;height:160px;top:-46px}.hero-shell{padding:0 10px}.hero{min-height:586px}.hero-photo{object-position:62% center}.hero-shade{background:linear-gradient(90deg,rgba(10,39,29,.8),rgba(12,40,30,.6) 60%,rgba(4,29,20,.25))}.hero-content{width:100%;padding:46px 25px 52px}.hero .eyebrow{font-size:11px;margin-bottom:24px}.hero h1{font-size:clamp(46px,12.5vw,67px);line-height:1.01;max-width:430px;text-wrap:initial}.hero h1 em{margin-top:6px}.hero-copy{line-height:1.7;margin:25px 0;max-width:340px}.hero .button-row{align-items:flex-start;gap:16px;flex-direction:column}.hero .btn{padding:16px 23px;min-height:52px}.hero-text-link{padding:5px 0}.trust-strip{display:grid;grid-template-columns:1.1fr 1fr;gap:20px 12px;padding:25px 0}.trust-rating{grid-row:span 2;gap:12px}.trust-rating strong{font-size:40px}.trust-rating>span{font-size:10px}.trust-strip>span{font-size:11px;line-height:1.4;gap:8px}.trust-strip .icon{width:20px;height:20px}.trust-rating .stars{font-size:10px}.intro-split{grid-template-columns:1fr;gap:48px}.intro-photo>img{height:440px}.photo-note{right:0;bottom:25px;font-size:27px;padding:20px 27px}.intro-content{padding:0}.intro-content h2{font-size:48px;margin-bottom:22px;max-width:390px}.eyebrow{font-size:11px;margin-bottom:17px}.section-heading{display:block;margin-bottom:32px}.section-heading h2{font-size:43px}.section-heading>.text-link{margin-top:18px;max-width:none}.room-grid{grid-template-columns:1fr;gap:40px}.room-card h3{font-size:32px;margin-top:14px}.room-image{aspect-ratio:1.3}.room-facts{font-size:12px;gap:14px}.room-facts .icon{width:18px;height:18px}.room-card-body{padding-top:19px}.why-section>h2{font-size:42px}.why-grid{grid-template-columns:1fr;gap:30px;margin-top:38px}.why-grid>div{position:relative;padding-left:72px}.why-icon{position:absolute;top:0;left:0;width:48px;height:48px;margin:0}.why-grid h3{font-size:27px;margin-bottom:12px}.facility-photo>img{height:365px}.facility-content{padding:48px 24px 53px}.facility-content h2{font-size:45px}.facility-content .facility-grid,.facility-grid--short{gap:24px 20px}.facility-grid--short h3{font-size:13px;line-height:1.5}.facility-grid--short .facility-item{gap:10px}.facility-grid--short .facility-item>.icon{width:21px;height:21px}.facility-grid:not(.facility-grid--short){grid-template-columns:1fr;gap:32px}.stay-card{display:block}.stay-card>div{height:auto;min-height:0;aspect-ratio:1.4}.stay-card h3{font-size:31px;margin:22px 0 14px}.gallery-preview{padding-top:10px}.gallery-mosaic{gap:10px;grid-template-rows:210px 170px}.photo-expand{width:32px;height:32px;right:10px;bottom:10px}.review-section{display:block;padding:20px 10px 65px;text-align:center}.review-score{border:0;padding:0 0 33px}.review-score strong{font-size:95px}.review-score .stars{font-size:16px}.review-section h2{font-size:42px;max-width:430px;margin-inline:auto}.review-section p:not(.eyebrow){max-width:430px;margin-inline:auto}.review-profiles{justify-content:center}.location-section{padding-block:60px}.location-split{grid-template-columns:1fr;gap:38px}.location-split h2{font-size:44px}.location-split address{font-size:14px;margin-block:25px}.location-photo{grid-row:1}.location-photo img{aspect-ratio:1.15}.location-split .button-row{gap:17px}.faq-section h2{font-size:43px}.faq-list summary{font-size:14px;padding:22px 0;gap:20px}.faq-answer{padding-right:20px}.final-cta{padding:64px 0}.final-cta h2{font-size:47px;max-width:420px;margin-inline:auto}.final-cta p:not(.eyebrow){max-width:380px;margin-inline:auto}.final-cta .button-row{gap:13px;flex-direction:column}.final-cta .btn{width:min(300px,100%);justify-content:space-between}.site-footer{padding-top:46px;padding-bottom:90px}.footer-main{grid-template-columns:1fr 1fr;gap:36px 25px;padding-bottom:35px}.footer-brand,.footer-main>div:last-child{grid-column:1/-1}.site-footer .brand{width:160px}.site-footer h2{margin-bottom:18px}.site-footer li{margin-bottom:11px}.site-footer p{max-width:330px}.copyright{display:flex;flex-direction:column;align-items:flex-start;gap:13px;padding-block:25px;font-size:12px;min-height:0}.developer-credit{text-align:left}.footer-touch{font-size:14px;justify-content:flex-start;margin-top:3px}.whatsapp-float{width:54px;height:54px;right:18px;bottom:calc(15px + env(safe-area-inset-bottom));border-width:2px}.whatsapp-float img{width:27px;height:27px}.wa-tooltip{display:none}.mobile-book{display:block;position:fixed;left:18px;right:86px;bottom:calc(15px + env(safe-area-inset-bottom));z-index:65}.mobile-book .btn{width:100%;height:54px;min-height:54px;justify-content:space-between;padding:14px 18px;box-shadow:0 6px 20px #06271d22;font-size:14px;border:2px solid var(--paper)}.page-intro{padding-top:28px;padding-bottom:43px}.breadcrumbs{font-size:11px;margin-bottom:30px;gap:8px}.page-intro h1{font-size:49px}.page-lead{margin-top:24px}.page-feature>img{aspect-ratio:1.2}.compact-banner{display:block;padding:28px;margin-bottom:60px}.compact-banner h2{font-size:34px}.compact-banner .btn{margin-top:25px}.gallery-filters{gap:8px;margin-bottom:28px}.gallery-filters button{padding:9px 12px}.photo-grid{gap:10px}.photo-tile{aspect-ratio:.93}.room-intro{padding-top:28px;padding-bottom:30px}.room-intro h1{font-size:47px;margin-bottom:24px}.room-intro .room-facts{gap:12px 20px}.room-hero>img{height:380px}.gallery-jump{right:13px;bottom:13px;gap:9px;font-size:12px;padding:10px 14px}.room-detail h2{font-size:42px;margin-bottom:22px}.room-detail .detail-subheading{font-size:28px}.booking-card{padding:28px}.booking-card h2{font-size:33px}.enquiry-feature>div>img{aspect-ratio:1.12}.location-page-grid{gap:25px}.location-card{padding:30px}.location-card h2{font-size:38px}.location-help>h2{font-size:39px}.contact-details>h2{font-size:42px}.contact-grid{gap:40px}.contact-details>div{padding-left:44px}.enquiry-form-card{padding:27px 22px}.enquiry-form-card h2{font-size:36px}.form-row{grid-template-columns:1fr;gap:18px}.content-page>h1{font-size:48px}.content-page .prose h2{font-size:32px}.photo-dialog[open]{grid-template-columns:1fr;padding:60px 14px 85px}.photo-dialog figure{grid-row:1;grid-column:1}.photo-dialog figure>img{max-height:calc(100dvh - 225px)}.photo-dialog figcaption{font-size:12px;max-width:300px}.lightbox-prev,.lightbox-next{position:absolute;bottom:25px}.lightbox-prev{left:calc(50% - 65px)}.lightbox-next{right:calc(50% - 65px)}.photo-dialog .lightbox-close{top:18px;right:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.whatsapp-float,.mobile-book,.photo-dialog{display:none}body{background:white}.wrap{width:100%}.section{padding:20px 0}}

/* Give the complete apartment its own wide card in the five-option collection. */
.room-grid--five>.room-card--apartment{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:36px;align-items:center;background:var(--cream)}
/* Stretch the desktop frame without a percentage height that can consume the mobile card. */
.room-grid--five>.room-card--apartment .room-image{align-self:stretch;height:auto;min-height:390px;aspect-ratio:auto}
.room-grid--five>.room-card--apartment .room-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.room-grid--five>.room-card--apartment .room-card-body{padding:32px 38px 32px 0}
.room-grid--five>.room-card--apartment h3{font-size:39px}
@media(max-width:800px){.room-grid--five>.room-card--apartment{gap:25px}.room-grid--five>.room-card--apartment h3{font-size:32px}.room-grid--five>.room-card--apartment .room-card-body{padding:25px 25px 25px 0}}
@media(max-width:700px){.room-grid--five>.room-card--apartment{display:block}.room-grid--five>.room-card--apartment .room-image{height:auto;min-height:0;aspect-ratio:1.3}.room-grid--five>.room-card--apartment .room-card-body{padding:25px}.room-grid--five>.room-card--apartment h3{font-size:34px}.room-grid--five>.room-card--apartment,.room-grid--five>.room-card--apartment .room-image,.room-grid--five>.room-card--apartment .room-image>img{width:100%;max-width:100%;min-width:0}}
@media(max-width:600px){.room-grid{grid-template-columns:minmax(0,1fr);min-width:0}.room-card{min-width:0}}
