[hidden]{display:none!important}
.skip-link{position:fixed;left:20px;top:-80px;padding:12px 20px;background:var(--ink);color:#fff;z-index:99}.skip-link:focus{top:15px}
.desktop-nav{margin-left:0;gap:24px}.header-inner{gap:22px}.desktop-nav a{white-space:nowrap}.hero-image{animation:none}
.search-field input{border:0;background:transparent;width:100%;padding:7px 0;color:var(--ink);font-weight:600;font-size:12px;outline-offset:3px}.search-field input::placeholder{color:var(--muted);font-weight:400}
.image-button{display:block;width:100%;height:100%}.image-placeholder{height:100%;background:#e8e9df;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#6b7b77}.image-placeholder svg{width:38px;height:38px}.image-placeholder span{font:italic 19px var(--serif)}
.stay-card{min-width:0}.stay-title h3{overflow-wrap:anywhere}.stay-location{text-transform:uppercase}.stay-title h3 a:hover{color:var(--coral)}.stay-bottom{gap:10px}.stay-bottom>span:last-child{text-align:right}.stay-info>p{overflow-wrap:anywhere}
.page-intro{padding-top:75px;padding-bottom:45px}.page-intro .eyebrow{margin-bottom:24px}.page-intro h1,.contact-page h1,.success-page h1,.privacy-page h1{font:400 clamp(40px,4.2vw,62px)/1.15 var(--serif);letter-spacing:-2px;margin:0 0 24px}.page-intro h1 em,.contact-page h1 em,.success-page h1 em,.privacy-page h1 em{color:var(--coral)}.page-intro>p{max-width:630px;color:var(--muted);font-size:14px;line-height:1.9;margin:0}
.listing-section{padding-bottom:90px}.listing-filters{display:grid;grid-template-columns:1.5fr 1.1fr .85fr 1.05fr auto;gap:16px;padding:24px;background:#edece4;border:1px solid #e0e1d7;align-items:end}.listing-filters label,.hotel-search-form label{display:flex;flex-direction:column;gap:8px;min-width:0}.listing-filters label>span,.hotel-search-form label>span{font-size:10px;letter-spacing:.04em;font-weight:700}.listing-filters input,.listing-filters select,.hotel-search-form input,.hotel-search-form select{width:100%;height:46px;padding:10px 12px;background:var(--cream);border:1px solid #cfd5cc;border-radius:2px;color:var(--ink);font-size:12px;min-width:0}.listing-filters .button{min-height:46px;padding:11px 16px;font-size:11px;gap:10px}.listing-filters .button svg{width:17px;height:17px}.excursion-filters{grid-template-columns:1.8fr 1fr auto}.listing-toolbar{display:flex;align-items:center;justify-content:space-between;margin:26px 0 30px;gap:20px;font-size:11px}.listing-toolbar>div{display:flex;align-items:center;gap:24px}.listing-toolbar p{color:var(--muted);margin:0}.clear-filters{border-bottom:1px solid var(--line);font-size:11px}.saved-toggle{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:11px}.saved-toggle svg{width:17px;height:17px}.saved-toggle[aria-pressed=true]{color:var(--coral)}.saved-toggle[aria-pressed=true] svg{fill:#cd705720}
.site-pagination{display:flex;align-items:center;justify-content:center;gap:36px;border-top:1px solid var(--line);margin-top:50px;padding-top:25px;font-size:12px}.site-pagination a{padding:6px}.pagination-disabled{color:#98a19c}
.editorial-empty{padding:65px 30px;text-align:center;border-block:1px solid var(--line)}.editorial-empty h3{font:400 30px/1.3 var(--serif);margin:0 0 18px}.editorial-empty p{max-width:560px;margin:0 auto 25px;color:var(--muted);font-size:13px;line-height:1.9}.editorial-empty>svg{width:40px;height:40px;margin:0 auto 22px;color:var(--coral)}.editorial-empty-inline{display:flex;align-items:center;justify-content:space-between;text-align:left;gap:50px;padding:38px 0}.editorial-empty-inline p{margin:0;max-width:610px}.editorial-empty-inline .text-link{flex-shrink:0}
.hotel-teaser{padding:62px 0;background:#e8eae1}.hotel-teaser-inner{display:flex;justify-content:space-between;align-items:center;gap:60px}.hotel-teaser h2{font:400 41px/1.2 var(--serif);margin:0 0 23px}.hotel-teaser p{max-width:490px;font-size:13px;line-height:1.9;margin:0;color:#6d7b76}.hotel-teaser .button{flex-shrink:0;background:var(--ink);color:#fff}
.breadcrumbs{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding-top:28px;font-size:10px;color:var(--muted)}.breadcrumbs a:hover{color:var(--coral)}.property-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:42px 0 30px}.property-heading .eyebrow{margin-bottom:15px}.property-heading h1{font:400 clamp(35px,4vw,57px)/1.2 var(--serif);letter-spacing:-1.5px;margin:0 0 16px;overflow-wrap:anywhere}.property-heading p{font-size:13px;color:var(--muted);max-width:720px;margin:0}.save-property{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:13px 20px;border-radius:2px;font-size:11px;flex-shrink:0}.save-property[aria-pressed=true]{color:var(--coral);border-color:var(--coral)}.save-property[aria-pressed=true] svg{fill:#cd705720}.property-gallery-main{height:520px;background:#e4e6dc}.property-gallery-main img{height:100%;object-fit:cover}.gallery-thumbnails{display:flex;gap:12px;margin-top:12px;overflow-x:auto;padding:3px}.gallery-thumbnails button{width:116px;height:80px;flex-shrink:0;padding:0;border:2px solid transparent}.gallery-thumbnails img{height:100%}.gallery-thumbnails button[aria-pressed=true]{border-color:var(--coral)}
.property-content{display:grid;grid-template-columns:1fr 420px;gap:75px;padding:50px 0 85px;align-items:start}.property-facts{display:flex;flex-wrap:wrap;gap:14px 28px;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:32px;font-size:12px}.property-facts>span{display:flex;gap:8px;align-items:center}.property-facts svg{width:18px;height:18px;color:var(--coral)}.property-description h2{font:400 30px/1.3 var(--serif);margin:0 0 22px}.property-description h3{font:400 24px/1.3 var(--serif);margin:38px 0 22px}.prose{font-size:14px;line-height:1.95;color:#667570;overflow-wrap:anywhere}.prose a{text-decoration:underline;text-underline-offset:3px}.prose p{margin:0 0 20px}.amenity-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;list-style:none;padding:0;margin:0}.amenity-list li{font-size:12px;display:flex;gap:10px;align-items:flex-start}.amenity-list svg{width:17px;height:17px;color:var(--coral)}.enquiry-aside{padding:30px;background:#eeeee5;border:1px solid #dfe2d6}.enquiry-aside h2{font:400 32px/1.2 var(--serif);margin:0}.enquiry-aside .eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:20px}.aside-intro{font-size:12px;color:var(--muted);margin:16px 0 25px}.property-price{margin:0 0 20px}.property-price small{display:block;font-size:10px;color:var(--muted)}.property-price strong{font:400 39px/1.5 var(--serif)}.property-price strong span{font-size:18px}
.enquiry-form label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:600;margin-bottom:17px}.enquiry-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.enquiry-form input,.enquiry-form textarea{width:100%;border:1px solid #cbd2c7;border-radius:2px;background:#fbfaf5;color:var(--ink);font-size:13px;padding:10px 12px;min-height:43px}.enquiry-form input[aria-invalid=true],.enquiry-form textarea[aria-invalid=true]{border-color:#a93f31}.enquiry-form textarea{resize:vertical}.enquiry-form input[type=date]{font-size:12px;min-width:0}.enquiry-form .button{width:100%;margin-top:8px;min-height:51px}.enquiry-form .consent{display:flex;flex-direction:row;gap:10px;align-items:flex-start;line-height:1.7;font-size:10px;font-weight:400}.enquiry-form .consent input{width:16px;height:16px;min-height:16px;margin:3px 0 0;flex-shrink:0;accent-color:var(--ink)}.consent a{text-decoration:underline;text-underline-offset:2px}.form-note{font-size:10px;line-height:1.8;color:var(--muted);margin:18px 0 0}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.form-errors{background:#fff0eb;border-left:3px solid #a93f31;padding:16px;color:#7d3129;font-size:12px;line-height:1.7;margin-bottom:22px}.form-errors ul{margin-bottom:0;padding-left:18px}.itinerary{padding:0;list-style:none;margin:0}.itinerary li{display:grid;grid-template-columns:58px 1fr;gap:20px;border-top:1px solid var(--line);padding:22px 0}.itinerary-day{font-size:9px;letter-spacing:1px;color:var(--coral);font-weight:800;padding-top:5px}.itinerary h4{font:400 20px var(--serif);margin:0 0 12px}.itinerary p{font-size:13px;margin:0}
.contact-page{display:grid;grid-template-columns:1fr 1.04fr;gap:100px;padding:80px 0 90px}.contact-page-copy>p{color:var(--muted);max-width:420px;font-size:13px;line-height:1.9}.contact-details{display:grid;gap:28px;margin-top:42px}.contact-details>div>span{display:block;font-size:8px;letter-spacing:1.8px;font-weight:800;color:var(--coral);margin-bottom:10px}.contact-details a:not(.text-link){display:block;font-size:17px;line-height:1.8}.contact-details p{font-size:14px;line-height:1.8;margin:0 0 15px}.contact-form-panel{background:#eeeee5;border:1px solid #dfe2d6;padding:36px 40px}.contact-form-panel h2{font:400 29px/1.3 var(--serif);margin:0 0 30px}.contact-form-panel .eyebrow{margin-bottom:15px}.contact-form-panel .form-note{max-width:390px}
.success-page{text-align:center;padding-top:75px;padding-bottom:90px;max-width:850px}.success-page .success-icon{margin:0 auto 25px}.success-page>p{max-width:590px;margin:0 auto 25px;font-size:14px;line-height:1.9;color:var(--muted)}.success-page .success-note{font-size:12px;max-width:530px}.success-actions{display:flex;justify-content:center;align-items:center;gap:32px;margin-top:35px}.reference{font-size:11px!important;color:var(--ink)!important}.privacy-page{max-width:850px;padding-top:65px;padding-bottom:85px}.privacy-page .prose{margin-top:45px}.privacy-page h2{font:400 27px var(--serif);margin-top:35px;color:var(--ink)}
.hotel-intro>p{max-width:730px}.hotel-search-section{padding-bottom:85px}.hotel-service-notice{display:flex;gap:13px;border-top:1px solid var(--line);padding:20px 0;font-size:12px}.status-dot{height:7px;width:7px;border-radius:50%;background:var(--coral);flex-shrink:0;margin-top:7px}.hotel-service-notice p{margin:4px 0 0;color:var(--muted);font-size:11px}.hotel-service-notice[data-ready=true] .status-dot{background:#477962}.hotel-search-form{background:#eeeee5;border:1px solid #dfe2d6;padding:28px}.hotel-search-main{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:18px}.hotel-search-guests{display:grid;grid-template-columns:.7fr .7fr 1fr 1.5fr;gap:18px;margin-top:20px}.hotel-search-guests:has(#hotel-state-field:not([hidden])){grid-template-columns:.65fr .65fr 1fr 1.2fr 1.2fr}.hotel-search-actions{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:25px;padding-top:22px;border-top:1px solid #d6dbcf}.hotel-search-actions>p{font-size:11px;color:var(--muted);max-width:460px;margin:0}.hotel-search-actions .button{flex-shrink:0}.button:disabled{cursor:not-allowed;background:#788c86;color:#f1f2eb}.hotel-children-ages{display:flex;flex-wrap:wrap;gap:15px;margin-top:18px}.hotel-children-ages:empty{display:none}.hotel-children-ages label{width:135px}.hotel-notice{padding:20px 24px;background:#f0e9dc;border-left:3px solid var(--coral);font-size:13px;margin-top:22px;line-height:1.8}.hotel-results-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:55px 0 25px}.hotel-results-heading h2{font:400 38px/1.2 var(--serif);margin:0 0 15px}.hotel-results-heading .eyebrow{margin-bottom:16px}.hotel-results-heading p{font-size:12px;color:var(--muted);margin:0}.booking-source{font-size:10px;color:var(--muted)}.hotel-results-grid{display:grid;gap:20px}.hotel-result{display:grid;grid-template-columns:235px 1fr 225px;background:#fffdf8;border:1px solid var(--line);min-height:210px}.hotel-result-image{height:100%;min-height:210px;background:#e7e9df}.hotel-result-image img{height:100%;object-fit:cover}.hotel-result-copy{padding:25px}.hotel-result-copy h3{font:400 25px/1.3 var(--serif);margin:0 0 12px}.hotel-result-address{font-size:11px;color:var(--muted);margin:0 0 20px}.hotel-rating{display:inline-flex;gap:8px;align-items:center;font-size:11px}.hotel-rating strong{background:var(--ink);color:white;padding:4px 7px;border-radius:2px;font-weight:600}.hotel-result-price{padding:25px 22px;border-left:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}.hotel-result-price>small{font-size:10px;color:var(--muted)}.hotel-result-price>strong{font:400 28px/1.5 var(--serif)}.hotel-result-price>p{font-size:9px;color:var(--muted);margin:5px 0 14px;line-height:1.7}.hotel-result-price .button{font-size:10px;gap:8px;padding:12px 10px;min-height:44px}.hotel-result-price .total-price{font-size:11px;color:var(--ink)}.hotel-help{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:38px;margin-top:45px;border-top:1px solid var(--line)}.hotel-help h3{font:400 24px var(--serif);margin:0 0 10px}.hotel-help p{font-size:12px;color:var(--muted);margin:0}.hotel-help .text-link{flex-shrink:0}
@media(max-width:1150px){.desktop-nav{gap:16px;font-size:11px}.header-actions .button-small{font-size:10px;padding:12px;gap:10px}.listing-filters{grid-template-columns:1fr 1fr 1fr;gap:16px}.listing-filters>label:first-child{grid-column:span 2}.listing-filters .button{min-height:46px}.excursion-filters{grid-template-columns:1.5fr 1fr auto}.excursion-filters>label:first-child{grid-column:auto}.property-content{grid-template-columns:1fr 360px;gap:35px}.enquiry-aside{padding:24px}.contact-page{gap:50px}.hotel-result{grid-template-columns:205px 1fr 210px}.hotel-result-copy{padding:22px}.hotel-result-price{padding:22px 17px}}
@media(max-width:1000px){.desktop-nav{display:none}.menu-toggle{display:block}.mobile-nav{display:block!important}.mobile-nav[hidden]{display:none!important}.property-content{grid-template-columns:1fr 340px;gap:30px}.property-facts{font-size:11px;gap:14px}.amenity-list{grid-template-columns:1fr}.contact-page{gap:35px}.contact-form-panel{padding:28px}.hotel-search-main{grid-template-columns:1.2fr 1fr 1fr}.hotel-search-guests:has(#hotel-state-field:not([hidden])){grid-template-columns:repeat(3,1fr)}.hotel-result{grid-template-columns:190px 1fr}.hotel-result-price{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.hotel-result-price .button{grid-column:2;grid-row:1/4;align-self:center}.hotel-result-price>strong{grid-column:1}.hotel-result-price>p{grid-column:1;margin-bottom:0}.hotel-result-copy h3{font-size:23px}}
@media(max-width:760px){.property-content{grid-template-columns:1fr;gap:38px}.enquiry-aside{max-width:none}.property-gallery-main{height:400px}.contact-page{grid-template-columns:1fr;gap:45px}.contact-details{grid-template-columns:1fr 1fr;gap:25px}.hotel-teaser-inner{gap:30px}.hotel-teaser h2{font-size:34px}.hotel-teaser .button{font-size:10px;gap:15px}.hotel-search-main{grid-template-columns:1fr 1fr}.hotel-search-main>label:first-child{grid-column:1/-1}.hotel-search-guests{grid-template-columns:1fr 1fr}.hotel-search-guests:has(#hotel-state-field:not([hidden])){grid-template-columns:1fr 1fr}.hotel-search-actions{align-items:flex-start;flex-direction:column;gap:20px}.hotel-search-actions .button{width:100%}.hotel-help{align-items:flex-start;flex-direction:column;gap:20px}.editorial-empty-inline{display:block}.editorial-empty-inline .text-link{margin-top:24px}}
@media(max-width:640px){.header-inner{height:86px}.header-actions .button-small{display:none}.hero{height:570px}.search-field input{font-size:12px}.search-wrap .trip-search{gap:0}.page-intro{padding-top:44px;padding-bottom:30px}.page-intro h1,.contact-page h1,.success-page h1,.privacy-page h1{font-size:37px;letter-spacing:-1.3px}.page-intro>p{font-size:12px}.page-intro .eyebrow{margin-bottom:20px}.listing-section{padding-bottom:55px}.listing-filters{padding:18px;grid-template-columns:1fr 1fr;gap:15px 12px}.listing-filters>label:first-child{grid-column:1/-1}.listing-filters .button{grid-column:1/-1}.listing-filters input,.listing-filters select{font-size:12px;min-height:44px}.listing-filters label>span{font-size:9px}.excursion-filters>label{grid-column:1/-1}.listing-toolbar{align-items:flex-start;font-size:10px;margin:22px 0 24px;gap:12px}.listing-toolbar>div{flex-direction:column;align-items:flex-end;gap:12px}.saved-toggle{font-size:9px;gap:6px}.clear-filters{font-size:9px}.site-pagination{font-size:10px;gap:24px;margin-top:30px}.editorial-empty{padding:45px 0}.editorial-empty h3{font-size:26px}.editorial-empty p{font-size:12px}.hotel-teaser{padding:42px 0}.hotel-teaser-inner{display:block}.hotel-teaser h2{font-size:32px}.hotel-teaser p{font-size:12px}.hotel-teaser .button{margin-top:24px}.breadcrumbs{font-size:9px;gap:8px;padding-top:22px}.property-heading{padding:30px 0 24px;align-items:flex-start;flex-direction:column;gap:20px}.property-heading h1{font-size:34px;letter-spacing:-1px}.property-heading p{font-size:12px}.property-heading .eyebrow{font-size:8px}.save-property{font-size:10px;padding:10px 14px;gap:8px}.save-property svg{width:18px;height:18px}.property-gallery-main{height:300px}.gallery-thumbnails{gap:8px;margin-top:8px}.gallery-thumbnails button{width:90px;height:64px}.property-content{padding:28px 0 55px}.property-description h2{font-size:27px}.property-description h3{font-size:23px}.prose{font-size:13px}.enquiry-aside{padding:23px 20px}.enquiry-aside .form-row{gap:12px}.enquiry-form input,.enquiry-form textarea{font-size:14px;padding:11px 10px}.enquiry-form label{font-size:11px}.enquiry-form input[type=date]{font-size:12px}.enquiry-form .consent{font-size:10px}.enquiry-form .form-row{grid-template-columns:1fr 1fr}.enquiry-form .form-row:first-of-type{grid-template-columns:1fr}.contact-page{padding-top:45px;padding-bottom:55px}.contact-details{grid-template-columns:1fr;gap:24px;margin-top:30px}.contact-details a:not(.text-link){font-size:16px}.contact-form-panel{padding:25px 20px}.contact-form-panel h2{font-size:27px}.success-page{padding-top:50px;padding-bottom:60px}.success-page>p{font-size:12px}.success-actions{flex-direction:column;gap:24px}.success-page .eyebrow{font-size:7px;letter-spacing:1.3px}.privacy-page{padding-top:45px;padding-bottom:55px}.privacy-page h2{font-size:24px}.hotel-search-section{padding-bottom:50px}.hotel-search-form{padding:19px 17px}.hotel-search-main,.hotel-search-guests{gap:15px 12px}.hotel-search-form label>span{font-size:9px}.hotel-search-form input,.hotel-search-form select{font-size:12px;padding:10px 8px}.hotel-service-notice{font-size:11px}.hotel-service-notice p{font-size:10px}.hotel-search-actions .button{font-size:11px;min-height:50px}.hotel-search-actions>p{font-size:10px}.hotel-notice{font-size:12px;padding:17px}.hotel-results-heading{align-items:flex-start;flex-direction:column;gap:10px;margin-top:35px}.hotel-results-heading h2{font-size:31px}.hotel-results-heading p{font-size:11px}.hotel-result{grid-template-columns:1fr}.hotel-result-image{height:220px;min-height:0}.hotel-result-copy{padding:20px}.hotel-result-copy h3{font-size:25px}.hotel-result-address{font-size:11px;margin-bottom:15px}.hotel-result-price{padding:20px;gap:5px 15px}.hotel-result-price .button{font-size:9px}.hotel-help h3{font-size:23px}.hotel-help p{font-size:11px}.itinerary li{grid-template-columns:49px 1fr;gap:15px}.footer-main .footer-email{overflow-wrap:anywhere;white-space:normal!important}}
@media(prefers-reduced-motion:reduce){.hero-image{animation:none}.image-button img{transition:none}}
/* Travel options retain the editorial spacing and quiet borders of the site. */
.listing-options{margin-top:48px;padding-top:34px;border-top:1px solid var(--line);scroll-margin-top:110px}.listing-options>.eyebrow{margin-bottom:15px}.section-note{color:var(--muted);font-size:12px;line-height:1.8}.room-option{padding:27px 0;border-bottom:1px solid var(--line)}.room-option>header{display:flex;justify-content:space-between;align-items:baseline;gap:15px}.room-option>header h3{margin:0;font:400 25px/1.3 var(--serif)}.room-option>header>span{font-size:10px;color:var(--muted);white-space:nowrap}.room-option>.prose{font-size:12px;margin:12px 0}.rate-row{display:grid;grid-template-columns:1fr auto;gap:15px 24px;padding:20px 0;border-bottom:1px dashed var(--line)}.rate-row:last-child{border-bottom:0;padding-bottom:0}.rate-row>div:first-child{min-width:0}.rate-period{font-size:12px;font-weight:600}.rate-row small,.rate-price small{display:block;font-size:10px;line-height:1.7;color:var(--muted);margin-top:6px}.rate-price{text-align:right}.rate-price strong{font:400 27px/1.3 var(--serif);white-space:nowrap}.rate-price strong span{font:500 10px var(--sans);letter-spacing:.04em}.rate-row>.text-link{grid-column:1/-1;font-size:10px;justify-self:start;padding-bottom:3px}.departure-option{display:grid;grid-template-columns:1fr auto;gap:18px;padding:25px 0;border-bottom:1px solid var(--line)}.departure-option h3{font:400 21px/1.4 var(--serif);margin:0 0 12px}.departure-option p{font-size:11px;margin:6px 0;color:var(--muted)}.availability-label{display:inline-block;font-size:10px;padding:6px 9px;margin-top:12px;background:#e8ede5;color:#3f6255}.availability-label.is-full{color:#95604b;background:#f2e8df}.departure-option .text-link{display:block;margin-top:18px;font-size:10px}.enquiry-form select{width:100%;min-height:44px;min-width:0;border:1px solid #cfd5cc;border-radius:2px;padding:11px 9px;font:inherit;font-size:11px;background:#fffdf8;color:var(--ink)}.enquiry-form input:read-only{background:#eeeee5;color:var(--muted)}.enquiry-form select:focus{outline:2px solid var(--coral);outline-offset:2px}
.promotion-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:35px}.promotion-filter{display:inline-flex;border:1px solid var(--line);padding:11px 17px;font-size:11px;border-radius:2px}.promotion-filter.active,.promotion-filter:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}.promotion-hero{margin-bottom:40px}.promotion-hero img{width:100%;height:420px;object-fit:cover}.promotion-description{max-width:800px;margin:35px 0 55px}.promotion-deadline{display:flex;align-items:center;gap:9px;font-size:11px;margin-top:22px;color:var(--muted)}.promotion-deadline svg{width:16px;height:16px}.promotion-collection{margin-top:55px}.promotion-card .stay-bottom{flex-wrap:wrap}.home-promotions{padding-bottom:0}
.newsletter-section{background:#efeee6;border-bottom:1px solid var(--line);padding:64px 0}.newsletter-inner{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:65px}.newsletter-copy .eyebrow{margin-bottom:18px}.newsletter-copy h2{font:400 36px/1.2 var(--serif);letter-spacing:-.8px;margin:0 0 16px}.newsletter-copy h2 em{color:var(--coral)}.newsletter-copy p{font-size:12px;line-height:1.8;max-width:410px;color:var(--muted);margin:0}.newsletter-form{min-width:0;padding-top:5px}.newsletter-email-row{display:flex;gap:10px;align-items:flex-end}.newsletter-email-row label{flex:1;min-width:0;font-size:11px;font-weight:600;display:flex;flex-direction:column;gap:9px}.newsletter-email-row input{width:100%;height:48px;background:#fffdf8;border:1px solid #cfd5cc;border-radius:2px;padding:12px;font:inherit;font-size:13px;min-width:0;color:var(--ink)}.newsletter-email-row .button{height:48px;min-height:48px;padding:12px 20px;font-size:11px;white-space:nowrap}.newsletter-consent{display:flex;align-items:flex-start;gap:10px;font-size:10px;line-height:1.8;color:var(--muted);margin-top:15px;max-width:540px}.newsletter-consent input{width:15px;height:15px;flex-shrink:0;accent-color:var(--ink);margin-top:2px}.newsletter-consent a{text-decoration:underline;text-underline-offset:3px}.newsletter-form>p{font-size:10px;line-height:1.8;color:var(--muted)}.newsletter-status,.newsletter-error{font-size:12px;padding:12px 15px;margin-bottom:18px;border-left:2px solid #718773;background:#e2e9dc;line-height:1.7}.newsletter-error{border-color:var(--coral);background:#f4e5df;color:#8b4936}.newsletter-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.contact-widget{position:fixed;bottom:22px;right:24px;z-index:45;font-size:12px}.contact-widget summary{display:flex;align-items:center;gap:10px;padding:14px 19px;background:var(--ink);color:var(--cream);border:1px solid #53716c;box-shadow:0 5px 20px #183e4518;border-radius:3px;cursor:pointer;list-style:none}.contact-widget summary::-webkit-details-marker{display:none}.contact-widget summary svg{width:17px;height:17px}.contact-widget-panel{position:absolute;bottom:63px;right:0;width:292px;max-width:calc(100vw - 32px);padding:23px;background:#fffdf8;border:1px solid var(--line);box-shadow:0 12px 35px #183e4520;border-radius:3px}.contact-widget-panel>strong{display:block;font:400 22px/1.35 var(--serif);margin-bottom:17px}.messenger-link{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.messenger-link:hover{color:var(--coral)}.contact-widget-panel>small{display:block;font-size:10px;color:var(--muted);line-height:1.8;margin-top:15px}.contact-widget-panel>small a{white-space:nowrap;text-decoration:underline}.copy-offer-message{padding:12px 0 0;font-size:10px;text-decoration:underline;text-underline-offset:4px;text-align:left;color:var(--ink)}.messenger-copy-status{display:block;margin-top:8px;font-size:10px;line-height:1.6;overflow-wrap:anywhere}.contact-widget:open summary{background:#2f5358}
@media(max-width:1000px){.newsletter-inner{gap:35px}.room-option>header{display:block}.room-option>header>span{display:block;margin-top:8px}.rate-row{grid-template-columns:1fr}.rate-price{text-align:left}.departure-option{grid-template-columns:1fr}.departure-option .text-link{margin-top:12px}.newsletter-email-row{flex-wrap:wrap}.newsletter-email-row label{flex-basis:100%}}
@media(max-width:760px){.newsletter-inner{grid-template-columns:1fr;gap:28px}.newsletter-email-row{flex-wrap:nowrap}.newsletter-email-row label{flex-basis:auto}.rate-row,.departure-option{grid-template-columns:1fr auto}.rate-price{text-align:right}.room-option>header{display:flex}.promotion-hero img{height:310px}.newsletter-section{padding:45px 0}.contact-widget{bottom:16px;right:16px}.contact-widget summary{padding:12px 15px}.contact-widget-panel{bottom:57px}}
@media(max-width:480px){.rate-row,.departure-option{grid-template-columns:1fr}.rate-price{text-align:left}.room-option>header{display:block}.newsletter-copy h2{font-size:30px}.newsletter-email-row .button{padding:12px 13px;font-size:10px}.promotion-filter{font-size:10px;padding:10px 12px}.promotion-hero img{height:230px}.contact-widget summary span{font-size:11px}.contact-widget summary{padding:11px 13px}.footer-bottom{padding-bottom:80px}.enquiry-form select{font-size:12px}}

.newsletter-form>label:first-of-type{display:block;font-size:11px;font-weight:600;margin-bottom:9px}.newsletter-email-row>input{flex:1;min-width:0}.newsletter-form>small{display:block;color:var(--muted);font-size:10px;line-height:1.8;margin-top:10px}.newsletter-copy>.eyebrow{display:block}.newsletter-form .newsletter-status{color:#3f6255}.newsletter-form .newsletter-error{color:#8b4936}
