@font-face{font-family:Marcellus;src:url('assets/fonts/Marcellus-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--ivory:#F5F0E7;--navy:#1B2850;--muted:#53596A;--line:#C9C5BC;--white:#FFFDFA;--soft:#ECE7DD;--error:#9A302A;--display:Marcellus,Georgia,serif;--body:'Segoe UI',Arial,sans-serif;--gutter:clamp(24px,4.2vw,72px);--content:1320px;color-scheme:light;scroll-behavior:smooth;scroll-padding-top:128px}
*{box-sizing:border-box}body{margin:0;background:var(--ivory);color:var(--navy);font:17px/1.65 var(--body);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}::selection{background:var(--navy);color:var(--ivory)}html{scrollbar-color:#707993 var(--ivory)}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{color:inherit}button:not(:disabled),summary{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #5574B2;outline-offset:5px}input,textarea{caret-color:var(--navy)}img{max-width:100%;height:auto;display:block}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}figure,p,h1,h2,h3,dl,dd{margin:0}h1,h2{font-family:var(--display);font-weight:400;letter-spacing:-.035em;line-height:1.12;text-wrap:balance}h1{font-size:clamp(44px,4.7vw,70px)}h2{font-size:clamp(38px,3.7vw,54px)}h3{font-size:20px;line-height:1.4;font-weight:600}p{color:var(--muted);text-wrap:pretty}p+p{margin-top:20px}.container{width:min(calc(100% - var(--gutter)*2),var(--content));margin-inline:auto}.section-space{padding-block:100px}section[id]{scroll-margin-top:120px}.skip-link{position:fixed;top:12px;left:20px;padding:10px 20px;background:var(--navy);color:var(--ivory);z-index:100;transform:translateY(-160%)}.skip-link:focus{transform:none}
.site-header{position:sticky;top:0;z-index:20;background:var(--ivory);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:112px;gap:24px}.brand{width:174px;flex-shrink:0;display:block}.brand img{width:174px;height:110px}nav{display:flex;align-items:center;gap:34px}nav a{text-decoration:none;font-size:14px;min-height:44px;display:inline-flex;align-items:center;gap:22px}nav a:not(.nav-cta):hover{text-decoration:underline}.nav-cta{border:1px solid var(--navy);padding:13px 24px;margin-left:10px;background:var(--navy);color:var(--ivory);font-weight:600;min-height:52px;transition:background-color .18s,border-color .18s}.nav-cta:hover{background:#33446F;border-color:#33446F}.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(32px,4vw,64px);padding-block:52px 48px}.hero-copy h1 span{display:block}.hero-copy h1 span:first-child{font-size:.56em;line-height:1.3;letter-spacing:-.02em;margin-bottom:16px}.hero-copy>p{margin-top:24px;max-width:43ch;font-size:17px;line-height:1.7}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:28px}.hero-actions>.button{padding:17px 26px;min-height:60px;font-size:15px;gap:24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid var(--navy);padding:16px 22px;min-height:56px;text-decoration:none;background:var(--navy);color:var(--ivory);font-size:14px;font-weight:600;transition:background-color .18s,border-color .18s}.button:hover{background:#33446F;border-color:#33446F}.text-link{display:inline-flex;align-items:center;gap:14px;min-height:44px;font-size:14px;font-weight:600;text-decoration:underline}.text-link svg{width:18px;height:18px;transition:transform .18s ease-out}.text-link:hover svg{transform:translateX(3px)}.hero-actions>.text-link{font-weight:400;font-size:14px;padding:8px 4px}.photo-link{display:block;overflow:hidden}.photo-link img{width:100%;object-fit:cover;object-position:var(--photo-position,50% 50%);transition:opacity .18s ease-out}.photo-link:hover img{opacity:.92}.hero-figure .photo-link img{aspect-ratio:1.65}.hero-figure figcaption{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:14px;font-size:12px}.caption-link{display:inline-flex;align-items:center;gap:7px;min-height:44px;white-space:nowrap}.caption-link svg{width:16px;height:16px}figcaption{color:var(--muted);font-size:13px;line-height:1.55;margin-top:14px}
.facts{border-block:1px solid var(--line);padding-block:32px}.facts dl{display:grid;grid-template-columns:repeat(3,1fr) 1.5fr;align-items:center}.facts dl>div{display:flex;flex-direction:column-reverse;align-items:center;gap:5px;padding:4px 20px;border-right:1px solid var(--line)}.facts dl>div:last-child{border-right:0}.facts dd{font:40px/1.15 var(--display);letter-spacing:-.025em}.facts dt{color:var(--muted);font-size:13px}.facts .pool-fact dd{font-size:30px}
.outside{display:grid;grid-template-columns:1.14fr .86fr;align-items:center;gap:clamp(50px,8vw,132px)}.outside .photo-link img{aspect-ratio:1.28}.section-copy h2{margin-bottom:27px}.section-copy p{max-width:44ch}.section-copy>.text-link{margin-top:24px}.gallery-section{background:var(--white)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:40px}.section-heading h2{margin-bottom:22px}.section-heading p{max-width:57ch}.section-heading>.text-link{white-space:nowrap;flex:none}.gallery-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:30px 24px}.gallery-tile{grid-column:span 2}.gallery-tile:first-child{grid-column:span 4}.gallery-tile:nth-child(2){grid-column:span 2}.gallery-tile img{aspect-ratio:1.5}.gallery-tile:first-child img{aspect-ratio:2}.gallery-tile:nth-child(2) img{aspect-ratio:.97}.gallery-tile figcaption{margin-top:12px;color:var(--navy);display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:15px}.gallery-tile figcaption svg{width:17px;height:17px}.gallery-tile a{text-decoration:none}.gallery-tile a:hover figcaption{text-decoration:underline;text-underline-offset:4px}.photo-note{margin-top:28px;font-size:13px;max-width:85ch;line-height:1.65}
.comfort{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,8vw,130px)}.comfort-intro{margin-top:27px;max-width:39ch}.amenities article{display:flex;gap:23px;padding-block:27px;border-bottom:1px solid var(--line)}.amenities article:first-child{padding-top:0}.amenities article:last-child{border-bottom:0;padding-bottom:0}.amenities article>svg{width:30px;height:30px;margin-top:4px}.amenities p{font-size:15px;margin-top:10px;max-width:48ch}.location-band{background:var(--navy);color:var(--ivory)}.location-inner{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:80px;padding-block:80px}.location-band p,.location-band figcaption{color:#DFE2EB}.location-band h3{font-weight:400;font-size:22px;margin-bottom:18px}.location-band .photo-link img{aspect-ratio:1.6}.location-trail{font-size:12px;margin-top:32px}.location-band a:focus-visible{outline-color:var(--ivory)}
.practical{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.faq{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{padding:24px 16px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:17px;list-style:none}summary::-webkit-details-marker{display:none}summary>svg{width:18px;height:18px;transition:transform .18s}details[open] summary>svg{transform:rotate(45deg)}details p{font-size:15px;max-width:65ch;padding:0 24px 28px 16px}.enquiry{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;border-top:1px solid var(--line);padding-top:80px}.contact-copy>p{margin-top:26px;max-width:34ch}form{padding:40px;background:var(--white)}form>h3{font-family:var(--display);font-weight:400;font-size:28px}form>p{font-size:14px;margin-top:10px}#preview-note{margin-bottom:28px;max-width:55ch}.date-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{margin-bottom:22px;min-width:0}.field label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}input,select,textarea{width:100%;max-width:100%;min-width:0;border:1px solid #9295A0;border-radius:0;background:var(--white);color:var(--navy);min-height:52px;padding:12px 14px;font-size:16px}textarea{resize:vertical;min-height:116px;line-height:1.5}input[type=date]{min-height:52px}input::placeholder,textarea::placeholder{color:#626777;opacity:1}.demo-button{width:100%;padding:16px 20px;line-height:1.5;background:#E4E3DF;border-color:#CBCBC5;color:#626574;cursor:not-allowed;white-space:normal}.demo-button:hover{background:#E4E3DF;border-color:#CBCBC5}.form-note{font-size:13px;margin-top:14px}.field-error{color:var(--error);font-size:14px;margin:-10px 0 20px}.field-error[hidden]{display:none}[aria-invalid=true]{border-color:var(--error)}
.site-footer{border-top:1px solid var(--line);padding-block:24px 38px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-footer img{width:154px;height:97px;margin-left:-16px}.site-footer p{font-size:12px}.footer-end{text-align:right}.footer-end p{margin-top:28px}
.lightbox{position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;border:0;background:#14203C;color:var(--ivory);padding:20px 32px}.lightbox[open]{display:flex;flex-direction:column}.lightbox::backdrop{background:#14203C}.lightbox-top{display:flex;justify-content:space-between;align-items:center;gap:20px;flex:none;max-width:1500px;width:100%;margin-inline:auto}.lightbox-top h2{font:20px/1.4 var(--display);letter-spacing:0}.icon-button{display:grid;place-items:center;width:48px;height:48px;flex:none;border:1px solid #778097;background:transparent;color:var(--ivory);transition:background-color .18s}.icon-button:hover{background:#33446F}.icon-button:focus-visible{outline-color:var(--ivory)}.lightbox-image{display:flex;align-items:center;justify-content:center;flex:1;min-height:0;width:100%;margin-block:18px;position:relative}.lightbox-image>img{max-height:100%;width:100%;height:100%;object-fit:contain}.lightbox-image>p{color:var(--ivory);max-width:40ch}.lightbox-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;width:min(100%,1000px);margin-inline:auto;flex:none}.lightbox-bottom>div{text-align:center;min-width:0;flex:1}.lightbox p{color:var(--ivory)}#photo-caption{font-size:18px;text-wrap:balance}#photo-detail{font-size:14px;color:var(--ivory);line-height:1.5;margin-top:8px;text-wrap:balance}#photo-counter{font-size:13px;font-variant-numeric:tabular-nums;margin-top:6px}#gallery-help{text-align:center;font-size:13px;color:var(--ivory);line-height:1.5;max-width:58ch;margin:20px auto 0}.noscript-note{padding-block:20px;font-size:14px}
@media(min-width:1550px){.hero{padding-block:74px}.hero-figure .photo-link img{aspect-ratio:1.65}}
@media(max-width:1050px){nav{gap:20px}.nav-cta{margin-left:0}.hero{gap:32px}.hero-actions{gap:14px}.hero-actions>.button{padding-inline:24px}.hero-figure figcaption{display:block}.hero-figure figcaption>.caption-link{margin-top:3px}.hero-figure .photo-link img{aspect-ratio:1.3}.outside,.comfort,.location-inner,.practical,.enquiry{gap:44px}.section-space{padding-block:76px}.facts .pool-fact dd{font-size:26px}.gallery-tile:first-child img{aspect-ratio:1.8}.gallery-tile:nth-child(2) img{aspect-ratio:.865}.gallery-tile figcaption{font-size:13px}form{padding:28px}}
@media(max-width:760px){:root{--gutter:24px;scroll-padding-top:100px}body{font-size:16px}.header-inner{min-height:84px;position:relative;flex-wrap:wrap;gap:0}.brand,.brand img{width:134px}.brand img{height:84px}.has-js .menu-toggle{display:flex;align-items:center;gap:12px;min-width:80px;min-height:44px;justify-content:flex-end;background:transparent;border:0;font-size:14px;padding:0}.has-js nav{display:none}.has-js nav.is-open{display:flex}nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding:0 0 22px}nav a{min-height:48px;padding:8px 0}.nav-cta{justify-content:space-between;padding:12px 16px;margin-top:12px}.hero{grid-template-columns:1fr;gap:28px;padding-block:32px}.hero h1{font-size:clamp(43px,8.5vw,62px);line-height:1.12;letter-spacing:-.035em}.hero-copy h1 span:first-child{font-size:.6em;margin-bottom:12px}.hero-copy>p{font-size:16px;margin-top:24px;max-width:48ch}.hero-actions{margin-top:24px;gap:6px;flex-direction:column;align-items:stretch}.hero-actions>.button{width:100%;padding-inline:24px}.hero-actions>.text-link{align-self:center;justify-content:center;padding:8px 12px}.hero-figure .photo-link img{aspect-ratio:1.65}.hero-figure figcaption{font-size:12px;display:flex;gap:12px;align-items:start}.hero-figure figcaption>span{max-width:25ch}.hero-figure figcaption>.caption-link{margin-top:-10px}.caption-link svg{display:none}.facts{padding-block:24px}.facts dl>div{padding-inline:12px}.facts dl{grid-template-columns:1fr 1fr;gap:20px 0}.facts dl>div:nth-child(2){border-right:0}.facts dl>div:nth-child(3),.facts dl>div:nth-child(4){border-top:1px solid var(--line);padding-top:20px}.facts dd{font-size:36px}.facts .pool-fact dd{font-size:26px}.facts dt{font-size:12px}.section-space{padding-block:58px}h2{font-size:41px;line-height:1.14}.outside,.comfort,.location-inner,.practical,.enquiry{grid-template-columns:1fr;gap:32px}.outside .section-copy{grid-row:1}.outside .photo-link img{aspect-ratio:1.22}.section-copy h2{margin-bottom:22px}.section-copy>.text-link{margin-top:18px}.section-heading{display:block;margin-bottom:26px}.section-heading>.text-link{margin-top:17px}.section-heading p{font-size:16px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.gallery-tile{grid-column:span 1}.gallery-tile:first-child{grid-column:span 2}.gallery-tile:nth-child(2){grid-column:span 1}.gallery-tile img,.gallery-tile:nth-child(2) img{aspect-ratio:4/3}.gallery-tile:first-child img{aspect-ratio:1.65}.gallery-tile figcaption{align-items:start;font-size:14px;line-height:1.5;gap:6px}.gallery-tile figcaption svg{width:14px;min-width:14px;margin-top:2px}.photo-note{font-size:14px;margin-top:24px}.comfort-intro{max-width:48ch;margin-top:22px}.amenities article{padding-block:24px}.amenities h3{font-size:19px}.amenities p{font-size:15px}.location-inner{padding-block:58px}.location-band .photo-link img{aspect-ratio:1.55}.location-trail{font-size:12px;margin-top:25px}.practical{gap:26px}summary{font-size:16px;padding-block:21px}details p{font-size:15px;padding-inline:16px}.enquiry{gap:28px}.contact-copy>p{max-width:42ch;margin-top:22px}form{padding:28px 24px;margin-inline:0}.date-row{gap:12px}input[type=date]{font-size:16px;padding-inline:14px}.demo-button{font-size:14px}.site-footer{padding-block:22px 30px;align-items:flex-start;gap:16px}.site-footer p{font-size:11px;max-width:28ch}.site-footer img{width:125px;height:79px;margin-left:-12px}.footer-end{padding-top:14px}.footer-end p{max-width:16ch;margin-top:27px}.footer-end .text-link{font-size:12px}.lightbox{padding:24px}.lightbox-top h2{font-size:18px;max-width:23ch}.lightbox-image{margin-block:14px}.lightbox-bottom{gap:16px;align-items:center}.icon-button{width:48px;height:48px}#photo-caption{font-size:17px}#photo-detail{font-size:14px}#gallery-help{font-size:13px;margin-block:20px 0}.lightbox-image img{object-fit:contain}section[id]{scroll-margin-top:102px}}
@media(max-width:480px){.date-row{grid-template-columns:1fr;gap:0}}
@media(max-width:360px){:root{--gutter:20px}.hero h1{font-size:39px}h2{font-size:36px}.hero-actions{gap:6px}.hero-figure figcaption{display:block}.hero-figure figcaption>.caption-link{margin-top:4px}.date-row{grid-template-columns:1fr;gap:0}.gallery-grid{gap:22px 12px}.gallery-tile figcaption svg{display:none}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.offers{background:var(--white)}.offers-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.offers-head p{margin-top:27px;max-width:39ch}.offer-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}.offer-list li{display:flex;align-items:flex-start;gap:18px;padding-block:16px;border-bottom:1px solid var(--line)}.offer-list svg{width:26px;height:26px;margin-top:1px}.offer-list span{display:block;font-size:16px;line-height:1.45}.offer-list small{display:block;color:var(--muted);font-size:14px;line-height:1.5;margin-top:3px}.offer-all{margin-top:28px;border-top:1px solid var(--line)}.offer-all summary{font-weight:600;font-size:15px}.offer-groups{padding-bottom:28px}.offer-group h3{font:400 24px/1.3 var(--display);letter-spacing:-.01em;margin:28px 0 2px}.nights-info{font-size:14px;color:var(--navy);margin:-10px 0 20px}.nights-info:empty{display:none}.send-button{width:100%;justify-content:space-between}.form-note a{color:var(--navy);overflow-wrap:anywhere}
@media(max-width:1050px){.offers-inner{gap:44px}.offer-list{column-gap:28px}}
@media(max-width:760px){.gallery-tile:last-child:nth-child(even){grid-column:span 2}.gallery-tile:last-child:nth-child(even) img{aspect-ratio:1.65}.offers-inner{grid-template-columns:1fr;gap:28px}.offers-head p{margin-top:22px;max-width:48ch}.offer-list{grid-template-columns:1fr}.offer-list li{padding-block:14px}.offer-group h3{font-size:22px}}
.lightbox{overscroll-behavior:contain;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom));padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}.lightbox-image>img[hidden]{display:none}
