@charset "UTF-8";
:root{--ivory:#f8f5f0;--paper:#fffefa;--green:#284f41;--green-dark:#18392f;--ink:#202923;--muted:#626860;--sand:#d9c9ad;--line:#dcded6;--gold:#917044;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;--container:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #b67830;outline-offset:5px}button:disabled{cursor:wait}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(2.8rem,5.6vw,5.25rem);margin-bottom:28px}h2{font-size:clamp(2.2rem,3.7vw,3.5rem);margin-bottom:25px}h3{font-size:1.9rem;line-height:1.2}p{margin-bottom:22px}ul{padding-left:24px}::selection{background:var(--sand);color:var(--ink)}[hidden]{display:none!important}.icon{width:22px;height:22px;flex-shrink:0;vertical-align:middle}.container{width:min(var(--container),calc(100% - 112px));margin-inline:auto}.section{padding-block:100px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;font-weight:600;line-height:1.65;margin-bottom:20px;color:var(--green)}.small{font-size:.875rem;color:var(--muted)}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:15px;z-index:100;background:#fff;padding:12px 20px}.skip-link:focus{top:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--green);color:#fff;text-decoration:none;min-height:54px;padding:14px 23px;border:1px solid var(--green);font-size:.875rem;font-weight:600;line-height:1.5;transition:background .2s}.button:hover{background:var(--green-dark)}.button-light{background:var(--ivory);color:var(--green);border-color:var(--ivory)}.button-light:hover{background:#e4dbc9}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.text-link{display:inline-flex;align-items:center;gap:13px;font-size:.875rem;font-weight:600;text-decoration:none;padding-block:9px;min-height:44px;border-bottom:1px solid currentColor;line-height:1.45}.text-link .icon{width:19px}.text-link:hover .icon{transform:translateX(3px)}.quiet-link{font-size:.875rem;line-height:1.5;padding-block:12px}.site-header{background:var(--paper);position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(32,41,35,.07)}.header-inner{width:min(1340px,calc(100% - 72px));margin:auto;display:flex;align-items:center;gap:30px;min-height:104px}.brand{display:flex;align-items:center;gap:16px;text-decoration:none;margin-right:auto;flex-shrink:0}.brand-logo{width:60px;height:84px;object-fit:contain;mix-blend-mode:multiply}.brand-text{font-family:var(--serif);font-size:1.7rem;line-height:1.05}.brand-text small{font-family:var(--sans);display:block;font-size:.61rem;letter-spacing:.13em;line-height:1.6;margin-top:10px}.nav-links{list-style:none;display:flex;gap:30px;padding:0;margin:0}.nav-links a{font-size:.875rem;text-decoration:none;padding:14px 0;display:block}.nav-links .current-menu-item a,.nav-links a:hover{text-decoration:underline}.header-booking{margin-left:15px}.header-booking .button{min-height:49px;padding:12px 19px;gap:15px}.menu-toggle{display:none;border:0;background:none;min-height:44px;padding:10px;gap:8px}.hero{display:grid;grid-template-columns:44% 56%;min-height:620px;background:var(--ivory)}.hero-copy{padding:80px 45px 60px max(56px,calc((100vw - 1200px)/2));display:flex;flex-direction:column;justify-content:center}.hero .eyebrow{font-size:.69rem;letter-spacing:.13em;margin-bottom:27px}.hero h1{font-size:clamp(3.3rem,4.7vw,4.8rem);max-width:560px;line-height:1.07;letter-spacing:-.047em;color:var(--green-dark)}.hero-description{max-width:425px;font-size:1rem;line-height:1.85;color:#51584f;margin-bottom:30px}.hero .button-row{gap:18px}.hero .button{gap:18px}.hero .text-link{font-size:.82rem}.hero-note{font-size:.75rem;color:var(--muted);margin:38px 0 0;display:flex;gap:12px;align-items:center;line-height:1.5}.hero-note span{width:23px;height:1px;background:var(--gold)}.hero-photo{position:relative;min-height:620px}.hero-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:48% 50%}.hero-photo-label{position:absolute;bottom:28px;right:28px;left:28px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 25px;background:rgba(255,254,250,.94);text-decoration:none;color:var(--ink);line-height:1.4}.hero-photo-label>span:first-child{font-family:var(--serif);font-size:1.4rem}.hero-photo-label>span:last-child{font-size:.75rem;display:flex;gap:15px;align-items:center}.confidence-strip{display:flex;align-items:center;gap:38px;padding-block:31px;border-bottom:1px solid var(--line)}.confidence-strip>p{font-family:var(--serif);font-size:1.25rem;line-height:1.4;margin:0;padding-right:38px;border-right:1px solid var(--line);min-width:240px}.confidence-strip strong{font-weight:400}.ratings{display:flex;gap:45px}.rating{min-width:180px}.rating-source{display:flex;align-items:center;gap:12px;font-size:.875rem;font-weight:600;margin-bottom:7px}.stars{letter-spacing:.08em;font-size:.77rem;color:var(--gold)}.rating-detail{display:flex;align-items:center;gap:16px;font-size:.75rem;line-height:1.5}.rating-number{font-family:var(--serif);font-size:2.15rem;letter-spacing:-.045em;white-space:nowrap}.rating-number small{font-family:var(--sans);font-size:.8rem;color:var(--muted);letter-spacing:0;margin-left:4px}.rating-link{min-height:26px;display:flex;align-items:center;gap:5px;text-decoration:none;font-size:.72rem}.rating-link .icon{width:14px;height:14px}.confidence-note{font-size:.69rem;line-height:1.6;color:var(--muted);margin-left:auto}.rating-note{font-size:.75rem;color:var(--muted);margin-top:20px;margin-bottom:0}.intro-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.intro-photo{position:relative;padding:0 0 26px 0}.intro-photo>img{width:100%;height:540px;object-fit:cover;object-position:47% center}.image-caption{display:block;text-align:right;font-size:.75rem;color:var(--muted);margin-top:14px}.intro-copy>p:not(.eyebrow){color:var(--muted)}.intro-copy h2{max-width:450px}.intro-facts{display:flex;gap:48px;border-top:1px solid var(--line);padding-top:26px;margin-top:35px}.intro-facts>div{display:flex;flex-direction:column;gap:6px}.intro-facts strong{font-family:var(--serif);font-weight:400;font-size:2.8rem;line-height:1;letter-spacing:-.05em;color:var(--green)}.intro-facts span{font-size:.75rem;color:var(--muted)}.rooms-section{background:#f1f1eb}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:40px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:365px;margin-bottom:3px;color:var(--muted);font-size:.94rem}.room-cards{display:grid;grid-template-columns:1fr 1fr;gap:36px}.room-card-photo{display:block;position:relative;overflow:hidden}.room-card-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .35s}.room-card-photo:hover img{transform:scale(1.025)}.photo-label{position:absolute;left:18px;bottom:18px;background:var(--paper);padding:8px 13px;font-size:.75rem}.room-card-body{padding:27px 0 0}.room-card-top{display:flex;gap:15px;align-items:flex-start;justify-content:space-between}.room-card h3{font-size:1.9rem;margin-bottom:15px;max-width:390px}.room-card h3 a{text-decoration:none}.room-quantity{font-size:.75rem;white-space:nowrap;margin-top:8px;color:var(--muted)}.room-card p{color:var(--muted);font-size:.9375rem;margin-bottom:17px;max-width:480px}.inline-facilities{display:flex;flex-wrap:wrap;gap:7px 20px;list-style:none;font-size:.75rem;color:#51584f;padding:0;margin:0 0 23px}.inline-facilities li+li:before{content:'·';margin-right:12px;color:var(--gold)}.room-card-actions{border-top:1px solid #d4d8ce;padding-top:16px;display:flex;gap:20px;justify-content:space-between;align-items:center}.room-card-actions .text-link{border:0}.group-enquiry{display:flex;justify-content:space-between;align-items:center;gap:45px;border-top:1px solid #d4d8ce;padding-top:30px;margin-top:42px}.group-enquiry h3{font-family:var(--sans);font-size:1rem;font-weight:600;letter-spacing:0;margin-bottom:8px}.group-enquiry p{font-size:.875rem;color:var(--muted);max-width:670px;margin:0}.group-enquiry>a{flex-shrink:0}.comfort-section{display:grid;grid-template-columns:1.05fr 1fr;gap:100px;align-items:center}.comfort-copy>p:not(.eyebrow){color:var(--muted)}.amenities{display:grid;gap:28px;margin-top:35px}.amenity{display:flex;gap:20px}.amenity>.icon{width:25px;height:25px;color:var(--green);margin-top:3px}.amenity h3{font-family:var(--sans);font-size:.94rem;letter-spacing:0;line-height:1.4;font-weight:600;margin-bottom:5px}.amenity p{font-size:.875rem;color:var(--muted);margin-bottom:0;max-width:340px}.comfort-photos{position:relative;padding-bottom:100px}.comfort-main{width:88%;margin-left:auto;aspect-ratio:1/1.2;object-fit:cover}.comfort-detail{position:absolute;width:52%;height:200px;object-fit:cover;bottom:25px;left:0;border:8px solid var(--paper)}.detail-caption{position:absolute;right:0;bottom:37px;font-size:.73rem;max-width:125px;color:var(--muted)}.coast-section{display:grid;grid-template-columns:56% 44%;background:var(--green-dark);color:#fffefa}.coast-photo{min-height:580px;position:relative}.coast-photo>img{position:absolute;width:100%;height:100%;object-fit:cover}.coast-caption{position:absolute;bottom:20px;left:24px;right:24px;font-size:.7rem;color:#fff;background:rgba(0,0,0,.55);padding:5px 10px;width:fit-content}.coast-copy{padding:85px max(56px,calc((100vw - 1200px)/2)) 85px 65px;align-self:center}.coast-copy .eyebrow{color:#d9c9ad}.coast-copy>p:not(.eyebrow){color:#d9e0d7}.coast-copy h2{font-size:clamp(2.6rem,3.8vw,3.7rem)}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.photo-grid figure{margin:0}.gallery-link{display:block;position:relative;overflow:hidden}.gallery-link img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .3s}.gallery-link:hover img{transform:scale(1.025)}.photo-expand{position:absolute;bottom:12px;right:12px;width:36px;height:36px;background:var(--paper);color:var(--green);display:grid;place-items:center;opacity:0;transition:opacity .2s}.gallery-link:hover .photo-expand,.gallery-link:focus-visible .photo-expand{opacity:1}.photo-grid figcaption{font-size:.75rem;color:var(--muted);line-height:1.5;padding:12px 0 8px}.gallery-preview .photo-grid{gap:20px}.gallery-preview .photo-grid figure:nth-child(2){padding-top:32px}.gallery-preview .photo-grid figure:nth-child(3){padding-top:64px}.gallery-preview .gallery-link img{aspect-ratio:1/1.07}.gallery-filters{display:flex;gap:10px;flex-wrap:wrap;margin:35px 0}.gallery-filters button{background:none;border:1px solid #c5cdc3;min-height:44px;padding:9px 17px;font-size:.875rem;line-height:1.5;color:var(--green)}.gallery-filters button[aria-pressed=true]{color:#fff;background:var(--green);border-color:var(--green)}.feedback-section{background:var(--ivory);padding:75px 0}.feedback-inner{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.feedback-inner h2{font-size:2.7rem}.feedback-inner p{color:var(--muted);margin-bottom:0}.feedback-inner .eyebrow{margin-bottom:20px;color:var(--green)}.feedback-inner .ratings{gap:40px}.feedback-inner .rating-number{font-size:3rem}.feedback-inner .rating-source{font-size:1rem}.feedback-inner .rating-detail{align-items:flex-end}.feedback-inner .rating-note{font-size:.75rem;margin-top:25px}.location-teaser{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.location-teaser>div>p:not(.eyebrow){max-width:440px;color:var(--muted)}.address-card{background:#edf0e9;padding:48px;text-align:center}.address-card>.icon{width:34px;height:34px;margin:0 auto 23px;display:block;color:var(--green)}.address-card .eyebrow{margin-bottom:10px}.address-card p{margin-inline:auto}.faq-section{border-top:1px solid var(--line);display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.faq-section>div:first-child p:not(.eyebrow){color:var(--muted)}.faq-section h2{font-size:2.8rem;max-width:390px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{font-size:.9375rem;display:flex;justify-content:space-between;align-items:center;list-style:none;gap:15px;cursor:pointer;font-weight:600;line-height:1.6;padding:22px 0}.faq-list summary::-webkit-details-marker{display:none}.faq-list details[open] summary .icon{transform:rotate(45deg)}.faq-list details>div{font-size:.94rem;color:var(--muted);padding:0 28px 20px 0}.faq-list details p:last-child{margin-bottom:0}.final-cta{background:var(--green);color:var(--paper);text-align:center;padding:83px 0 90px}.final-cta .eyebrow{color:#d9c9ad}.final-cta h2{max-width:730px;margin:0 auto 24px;font-size:clamp(2.5rem,4.2vw,4.2rem)}.final-cta p:not(.eyebrow){max-width:580px;margin:0 auto 28px;color:#dce4da}.final-cta .button-row{justify-content:center}.site-footer{padding:65px 0 25px;background:var(--ivory)}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1.15fr;gap:80px}.footer-brand{font-family:var(--serif);font-size:2.2rem;letter-spacing:-.05em;text-decoration:none}.footer-grid>div:first-child p{max-width:310px;margin-top:18px}.footer-grid h2{font-family:var(--sans);font-size:.75rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;line-height:1.5;margin:5px 0 18px}.footer-grid p,.footer-grid li,.footer-grid a:not(.footer-brand){font-size:.875rem;color:var(--muted);line-height:1.8}.footer-grid p{margin-bottom:12px}.footer-grid ul{list-style:none;padding:0;margin:0}.footer-grid li{margin-bottom:8px}.footer-grid li a{text-decoration:none}.footer-grid a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding-top:24px;margin-top:42px;font-size:.75rem;color:var(--muted)}.footer-bottom div{display:flex;gap:25px}.footer-bottom a{text-decoration:none}.mobile-booking{display:none}.whatsapp-float{position:fixed;bottom:22px;right:22px;display:flex;gap:10px;align-items:center;background:#176d42;color:#fff;border:1px solid #fff;box-shadow:0 3px 14px #0002;border-radius:30px;padding:12px 20px;text-decoration:none;z-index:25;font-size:.875rem}.page-heading{padding:65px 0 20px}.page-heading h1{font-size:clamp(2.8rem,4.5vw,4.5rem);max-width:850px}.page-content{padding-bottom:90px}.page-content>p,.page-content>h2,.page-content>h3,.page-content>.wp-block-list{max-width:800px}.page-content>p{color:var(--muted);font-size:1.0625rem}.page-content>h2{margin-top:50px}.page-content .final-cta{margin-top:50px}.page-content .final-cta .container{width:calc(100% - 60px)}.page-content .faq-list{max-width:850px;margin-top:40px}.story-photo{max-width:860px;margin:40px 0}.story-photo img{width:100%;max-height:560px;object-fit:cover}.story-photo figcaption{font-size:.8rem;margin-top:12px;color:var(--muted)}.rooms-page-intro{max-width:700px;margin-bottom:35px}.room-detail{padding:40px 0 80px}.back-link{font-size:.875rem;display:inline-block;margin-bottom:24px}.room-heading{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-bottom:30px}.room-heading h1{font-size:clamp(2.6rem,4.4vw,4.3rem);max-width:780px;margin-bottom:0}.room-heading .button{flex-shrink:0}.room-heading .eyebrow{margin-bottom:15px}.room-cover img{width:100%;height:600px;object-fit:cover}.room-info{display:grid;grid-template-columns:1.3fr 1fr;gap:85px;margin:55px 0 75px}.room-info .prose{font-size:1.0625rem;color:var(--muted)}.room-info aside{padding:28px 35px;background:var(--ivory)}.room-info aside h2{font-size:1.8rem;margin-bottom:20px}.room-facilities{list-style:none;padding:0;margin:0}.room-facilities li{font-size:.9rem;padding:9px 0;border-bottom:1px solid var(--line)}.room-facilities li:last-child{border:0}.section-title{font-size:2.5rem;margin-bottom:35px}.location-panel{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:45px;background:var(--ivory);margin:40px 0}.location-panel h2{font-size:2.5rem}.contact-details>div{margin-bottom:26px}.contact-details>div:last-child{margin-bottom:0}.contact-details .eyebrow{margin-bottom:7px}.contact-details p{margin-bottom:10px}.contact-layout{display:grid;grid-template-columns:.85fr 1.3fr;gap:90px;margin-top:45px}.contact-layout>div:empty{display:none}.contact-layout:has(>div:last-child:empty){grid-template-columns:1fr}.contact-layout:has(>div:last-child:empty)>div:first-child{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact-booking{margin-top:40px;padding-top:30px;border-top:1px solid var(--line)}.contact-booking h2{font-size:2rem}.contact-layout:has(>div:last-child:empty) .contact-booking{padding:35px;background:var(--ivory);margin-top:0;border:0;align-self:start}.booking-panel{background:var(--ivory);padding:45px;margin:40px 0;max-width:850px}.booking-panel h2{font-size:2.5rem}.booking-panel p:not(.eyebrow){font-size:.875rem;color:var(--muted);margin:20px 0 10px}.enquiry-form label{display:block;font-size:.875rem;font-weight:600}.enquiry-form input:not([type=checkbox]),.enquiry-form textarea{width:100%;padding:12px;background:#fff;border:1px solid #b6c1b2;border-radius:0;min-height:48px;font-weight:400;margin:7px 0 20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.enquiry-form .consent{display:flex;align-items:flex-start;gap:10px;font-weight:400;margin:20px 0}.consent input{width:19px;height:19px;margin:4px 0 0;flex-shrink:0;accent-color:var(--green)}.enquiry-form>.small:last-child{margin:15px 0}.sv-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-feedback{background:#edf0e9;border-left:4px solid var(--green);padding:20px;margin-bottom:25px;scroll-margin-top:130px}.form-feedback[role=alert]{border-color:#9c492d;background:#fff3e9}.lightbox{border:0;padding:50px 64px 28px;color:#fff;background:#11251f;width:min(1200px,96vw);max-width:96vw;max-height:94vh}.lightbox::backdrop{background:rgba(0,0,0,.87)}.lightbox figure{margin:0}.lightbox figure img{margin:auto;width:auto;max-width:100%;height:72vh;object-fit:contain}.lightbox figcaption{padding:16px 0 0;text-align:center;font-size:.875rem;line-height:1.5}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;border:0;color:#fff;background:transparent;min-width:44px;min-height:44px}.lightbox-close{top:6px;right:8px}.lightbox-prev,.lightbox-next{top:45%;font-family:var(--serif);font-size:3rem;line-height:1}.lightbox-prev{left:8px}.lightbox-next{right:8px}.wp-block-image img{height:auto}.alignwide{max-width:var(--container)}.alignfull{width:100%}.admin-bar .site-header{top:32px}
@media(min-width:1600px){.hero{min-height:700px}.hero-photo{min-height:700px}.hero-copy{padding-right:70px}.hero-photo>img{object-position:center}}
@media(max-width:1150px){.container{width:calc(100% - 72px)}.header-inner{width:calc(100% - 48px);gap:20px}.brand-text{font-size:1.4rem}.brand-text small{font-size:.55rem}.nav-links{gap:22px}.header-booking{margin-left:0}.hero{grid-template-columns:46% 54%}.hero-copy{padding:60px 30px 50px 36px}.hero h1{font-size:4rem}.hero .button-row{flex-direction:column;align-items:flex-start;gap:9px}.hero-photo-label{padding:15px}.hero-photo-label>span:first-child{display:none}.confidence-strip{gap:24px}.confidence-strip>p{min-width:180px;padding-right:20px;font-size:1.1rem}.confidence-note{display:none}.ratings{gap:35px}.intro-section,.comfort-section,.location-teaser{gap:55px}.intro-photo>img{height:510px}.section{padding-block:80px}.coast-copy{padding:65px 36px 65px 40px}.coast-photo{min-height:550px}.feedback-inner{gap:40px}.feedback-inner .ratings{gap:25px}.rating{min-width:150px}.feedback-inner .rating-detail{display:block}.faq-section{gap:55px}.footer-grid{gap:45px}.room-card h3{font-size:1.7rem}.room-info{gap:50px}.contact-layout{gap:45px}.room-cover img{height:500px}}
@media(max-width:900px){.header-inner{gap:14px}.brand-text{display:none}.brand-logo{width:51px;height:74px}.header-inner{min-height:90px}.nav-links{gap:24px}.hero{grid-template-columns:47% 53%;min-height:580px}.hero-photo{min-height:580px}.hero h1{font-size:3.2rem}.hero-copy{padding:45px 26px 40px 36px}.hero-description{font-size:.94rem}.hero .eyebrow{font-size:.62rem}.hero-note{font-size:.69rem;margin-top:22px}.intro-section{gap:36px}.intro-copy h2{font-size:2.5rem}.intro-photo>img{height:490px}.intro-facts{gap:22px}.intro-facts span{font-size:.7rem}.room-cards{gap:26px}.room-card-actions{align-items:flex-start;gap:10px;flex-direction:column}.room-quantity{display:none}.group-enquiry{gap:25px}.group-enquiry>a{flex-shrink:1;min-width:170px}.comfort-section{gap:40px}.comfort-detail{height:140px}.detail-caption{bottom:12px;max-width:150px;font-size:.7rem}.coast-section{grid-template-columns:1fr 1fr}.coast-copy{padding:50px 36px}.coast-copy h2{font-size:2.7rem}.feedback-inner{grid-template-columns:1fr;gap:35px}.feedback-inner .ratings{gap:70px}.feedback-inner .rating-detail{display:flex}.feedback-inner h2{max-width:520px}.feedback-inner>div:first-child>p:not(.eyebrow){max-width:550px}.location-teaser{gap:40px}.address-card{padding:35px 25px}.faq-section{grid-template-columns:1fr;gap:25px}.faq-section h2{max-width:700px}.footer-grid{grid-template-columns:1.2fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:first-child p{max-width:500px}.room-heading{align-items:flex-start;flex-direction:column;gap:15px}.contact-layout{grid-template-columns:1fr}.contact-layout>div:first-child{display:grid;grid-template-columns:1fr 1fr;gap:30px}.contact-booking{margin:0;align-self:start}.location-panel{padding:30px;gap:35px}}
@media(max-width:700px){html{scroll-padding-top:85px}.container{width:calc(100% - 40px)}.section{padding-block:60px}body{font-size:16px;padding-bottom:calc(82px + env(safe-area-inset-bottom))}.site-header{position:sticky}.header-inner{min-height:80px;width:calc(100% - 32px);gap:12px}.brand{gap:10px}.brand-logo{width:45px;height:66px}.brand-text{display:block;font-size:1.25rem}.brand-text small{font-size:.5rem;letter-spacing:.09em;margin-top:7px}.header-booking{display:none}.js .menu-toggle{display:flex;align-items:center;font-size:.8rem}.menu-toggle .icon{width:21px}.js .primary-nav{position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:12px 25px 25px;border-bottom:1px solid var(--line);box-shadow:0 10px 20px #0001;display:none}.js .primary-nav.is-open{display:block}.nav-links{flex-direction:column;gap:0}.nav-links a{padding:14px 0;font-size:1rem;border-bottom:1px solid var(--line)}.no-js .header-inner{flex-wrap:wrap;padding-bottom:10px}.no-js .primary-nav{width:100%}.no-js .nav-links{flex-direction:row;justify-content:space-between;gap:8px}.no-js .nav-links a{font-size:.8rem;padding:8px 0}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:45px 24px 36px}.hero .eyebrow{font-size:.62rem;letter-spacing:.12em;margin-bottom:22px}.hero h1{font-size:clamp(2.8rem,10vw,3.2rem);line-height:1.04;margin-bottom:25px;max-width:500px}.hero-description{font-size:.94rem;line-height:1.8;margin-bottom:25px;max-width:520px}.hero .button-row{flex-direction:row;gap:12px 22px;align-items:center}.hero .button{font-size:.85rem;min-height:52px;gap:17px;padding:13px 18px}.hero .text-link{font-size:.81rem}.hero-note{margin-top:26px;font-size:.68rem}.hero-photo{min-height:0;height:410px}.hero-photo>img{object-position:center 49%}.hero-photo-label{bottom:18px;left:18px;right:18px;padding:15px 17px}.hero-photo-label>span:first-child{display:block;font-size:1.1rem}.hero-photo-label>span:last-child{font-size:.65rem;gap:7px}.hero-photo-label .icon{width:17px}.confidence-strip{padding-block:25px;gap:18px;flex-wrap:wrap}.confidence-strip>p{font-size:1rem;min-width:0;width:100%;border:0;padding:0}.confidence-strip>p br{display:none}.confidence-strip>p strong{margin-left:5px}.ratings{width:100%;gap:22px;justify-content:space-between}.rating{min-width:0}.rating-number{font-size:2rem}.rating-detail{gap:10px;font-size:.7rem}.rating-source{font-size:.82rem;gap:10px}.stars{font-size:.65rem}.rating-link{font-size:.64rem}.intro-section{grid-template-columns:1fr;gap:32px}.intro-photo{padding:0}.intro-photo>img{height:410px;object-position:center 53%}.intro-copy h2{font-size:2.6rem;max-width:500px}.intro-copy p{font-size:.94rem}.image-caption{font-size:.69rem;margin-top:10px}.intro-facts{gap:45px}.intro-facts strong{font-size:2.5rem}.intro-facts span{font-size:.72rem}.eyebrow{font-size:.7rem}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:2.6rem;margin-bottom:20px}.section-heading>p{max-width:100%;font-size:.94rem}.section-heading>.text-link{margin-top:5px}.room-cards{grid-template-columns:1fr;gap:45px}.room-card h3{font-size:1.85rem}.room-card-top{align-items:flex-start}.room-quantity{display:block}.room-card-body{padding-top:23px}.room-card-actions{flex-direction:row;align-items:center;gap:15px}.room-card-actions .text-link,.quiet-link{font-size:.8rem}.inline-facilities{gap:7px 12px;font-size:.71rem}.inline-facilities li+li:before{margin-right:6px}.group-enquiry{display:block;margin-top:35px;padding-top:26px}.group-enquiry>a{margin-top:16px}.comfort-section{grid-template-columns:1fr;gap:38px}.comfort-copy h2{font-size:2.6rem}.comfort-photos{max-width:500px;margin:auto;width:100%;padding-bottom:85px}.comfort-main{width:88%;height:420px;aspect-ratio:auto}.comfort-detail{width:53%;height:170px;bottom:18px}.detail-caption{right:2px;bottom:26px;max-width:100px}.coast-section{grid-template-columns:1fr}.coast-photo{min-height:0;height:380px}.coast-copy{padding:45px 25px 55px}.coast-copy h2{font-size:2.9rem;max-width:440px}.coast-copy p{font-size:.94rem}.coast-caption{font-size:.65rem;bottom:14px;left:14px;right:14px}.photo-grid{grid-template-columns:1fr 1fr;gap:20px 14px}.photo-grid figcaption{font-size:.71rem}.gallery-preview .photo-grid{grid-template-columns:1fr 1fr;gap:15px}.gallery-preview .photo-grid figure:nth-child(2){padding-top:25px}.gallery-preview .photo-grid figure:nth-child(3){padding-top:0;grid-column:1/-1}.gallery-preview .photo-grid figure:nth-child(3) img{aspect-ratio:16/9}.photo-expand{opacity:1;width:30px;height:30px;bottom:8px;right:8px}.photo-expand .icon{width:18px}.gallery-filters{gap:8px;margin:25px 0}.gallery-filters button{font-size:.8rem;padding:8px 13px}.feedback-section{padding:50px 0}.feedback-inner h2{font-size:2.6rem}.feedback-inner .ratings{gap:20px;justify-content:space-between}.feedback-inner .rating-number{font-size:2.4rem}.feedback-inner .rating-source{font-size:.875rem}.feedback-inner .rating-detail{gap:10px}.feedback-inner .rating-note{font-size:.7rem}.location-teaser{grid-template-columns:1fr;gap:30px}.location-teaser h2{font-size:2.6rem}.address-card{padding:35px}.faq-section h2{font-size:2.6rem}.faq-section>div:first-child p:not(.eyebrow){font-size:.9rem}.faq-list summary{font-size:.9rem;padding:20px 0}.faq-list details>div{font-size:.9rem}.final-cta{padding:60px 0}.final-cta h2{font-size:2.8rem}.final-cta p:not(.eyebrow){font-size:.94rem}.final-cta .button-row{gap:20px}.site-footer{padding:45px 0 25px}.footer-grid{gap:30px}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid>div:first-child{margin-bottom:0}.footer-grid>div:first-child p{font-size:.875rem}.footer-brand{font-size:2rem}.footer-bottom{font-size:.69rem;align-items:flex-start;gap:15px;margin-top:30px}.footer-bottom div{flex-wrap:wrap;gap:12px}.mobile-booking{position:fixed;z-index:40;bottom:0;left:0;right:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:12px;justify-content:space-between;background:var(--paper);border-top:1px solid #d4d9ce;box-shadow:0 -3px 18px #0001}.mobile-booking>span{font-family:var(--serif);font-size:1.08rem;line-height:1.2;min-width:0}.mobile-booking small{font-family:var(--sans);display:block;font-size:.61rem;color:var(--muted);margin-top:5px;letter-spacing:.015em}.mobile-booking .button{padding:12px 14px;min-height:46px;gap:10px;font-size:.8rem}.mobile-booking .button .icon{width:17px}.mobile-wa{display:grid;place-items:center;min-height:44px;min-width:40px;color:#176d42;margin-left:auto}.mobile-wa .icon{width:25px;height:25px}.whatsapp-float{display:none}.page-heading{padding:40px 0 10px}.page-heading h1{font-size:3rem}.page-content{padding-bottom:60px}.page-content>p{font-size:1rem}.page-content>h2{font-size:2.3rem}.room-detail{padding-top:25px;padding-bottom:50px}.room-heading h1{font-size:2.8rem}.room-cover img{height:340px}.room-info{grid-template-columns:1fr;gap:25px;margin:32px 0 50px}.room-info .prose{font-size:1rem}.room-info aside{padding:25px}.section-title{font-size:2.3rem}.contact-layout,.contact-layout>div:first-child,.contact-layout:has(>div:last-child:empty)>div:first-child{grid-template-columns:1fr;gap:35px}.contact-layout:has(>div:last-child:empty) .contact-booking{padding:25px}.contact-details a{overflow-wrap:anywhere}.form-grid{grid-template-columns:1fr}.contact-layout h2{font-size:2.3rem}.location-panel{grid-template-columns:1fr;gap:20px;padding:25px;margin:30px 0}.location-panel h2{font-size:2.4rem}.booking-panel{padding:28px 23px}.booking-panel h2{font-size:2.4rem}.story-photo img{max-height:420px}.lightbox{width:96vw;max-height:90vh;padding:48px 34px 20px}.lightbox figure img{height:65vh}.lightbox figcaption{font-size:.75rem}.lightbox-prev,.lightbox-next{font-size:2.2rem;min-width:30px}.lightbox-prev{left:0}.lightbox-next{right:0}.admin-bar .site-header{top:46px}}
@media(max-width:380px){.brand-text{font-size:1.1rem}.brand-text small{font-size:.46rem}.hero h1{font-size:2.8rem}.hero-photo-label>span:first-child{display:none}.hero .button-row{gap:12px}.hero .text-link{font-size:.77rem}.hero .button{font-size:.8rem;gap:12px}.room-card-actions{flex-direction:column;align-items:flex-start;gap:0}.mobile-booking>span{font-size:1rem}.mobile-booking .button{font-size:.73rem;gap:6px;padding:12px}.rating-detail{gap:7px}.stars{font-size:.6rem}.feedback-inner .rating-detail{display:block}.mobile-booking:has(.mobile-wa)>span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Owner-approved contact links and footer — v1.1.0. */
.footer-social{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px;max-width:390px}
.footer-grid .footer-social a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 13px;border:1px solid #b9c7bb;color:var(--green);font-size:.8125rem;line-height:1.45;text-decoration:none;background:transparent}
.footer-grid .footer-social a:hover{background:#e8ede5;border-color:var(--green)}
.footer-social .icon{width:19px;height:19px}
.footer-extra-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:16px}
.footer-extra-links:empty{display:none}
.footer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:24px;font-size:.8125rem;line-height:1.6}
.footer-copyright{justify-self:start}
.footer-credit{justify-self:center;text-align:center}
.footer-credit a{font-weight:600;color:var(--green)}
.footer-touch{justify-self:end;display:inline-flex;gap:10px;align-items:center;min-height:44px;color:var(--green);font-weight:600}
.footer-touch .icon{width:18px;height:18px}
.whatsapp-float{display:flex;align-items:center;justify-content:center;width:58px;height:58px;padding:0;right:24px;bottom:24px;border:2px solid #fff;border-radius:50%;background:#128c4a;color:#fff;box-shadow:0 4px 18px #17392c35;z-index:45}
.whatsapp-float:hover{background:#0c713a}
.whatsapp-float>.icon{width:31px;height:31px}
@media(max-width:900px){.footer-bottom{grid-template-columns:1fr;justify-items:center;gap:7px}.footer-copyright,.footer-credit,.footer-touch{justify-self:center}}
@media(max-width:700px){.whatsapp-float{display:flex;right:18px;bottom:calc(18px + env(safe-area-inset-bottom));width:56px;height:56px}.whatsapp-float--with-booking{bottom:calc(var(--sv-bookingbar-height,82px) + 16px)}.footer-bottom{font-size:.8125rem;gap:8px}.footer-social{max-width:100%}.site-footer{padding-bottom:36px}}
