:root{--paper:#faf8f3;--ink:#263d33;--muted:#6d746c;--line:#dddcd1;--accent:#ad7557;--serif:Georgia,'Times New Roman',serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.65;-webkit-font-smoothing:antialiased}body.gallery-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}img{display:block;max-width:100%;height:auto}h1,h2,p{margin:0}h1{font-family:var(--serif);font-weight:400;line-height:1.12;font-size:clamp(35px,3.6vw,54px);letter-spacing:-1.8px}h1 em{font-weight:400;color:#647866}h2{font-size:18px;font-weight:500;line-height:1.4}.wrap{width:calc(100% - 96px);max-width:1320px;margin-inline:auto}.eyebrow{font-size:10px;letter-spacing:1.9px;margin-bottom:13px}.skip-link{position:fixed;top:10px;left:10px;padding:12px;background:var(--ink);color:#fff;transform:translateY(-160%);z-index:10}.skip-link:focus{transform:translateY(0)}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{display:inline-flex;flex-direction:column;line-height:1}.wordmark>span{font-family:var(--serif);font-size:35px;letter-spacing:-1.6px}.wordmark-dot{color:var(--accent)}.wordmark small{font-size:7px;letter-spacing:2.5px;margin-top:9px;padding-left:2px}.header-actions{display:flex;align-items:center;gap:35px}.header-phone{font-size:12px}.language-links{display:flex;gap:14px;font-size:10px}.language-links a{color:var(--muted);padding:5px 0}.language-links a[aria-current]{border-bottom:1px solid var(--ink);color:var(--ink)}.first-fold{display:grid;grid-template-columns:1.1fr 1fr;grid-template-areas:'intro booking' 'photo booking' 'facts booking';gap:23px 55px;align-items:start;padding-block:32px 46px}.intro-copy{grid-area:intro}.intro-note{font-size:13px;color:var(--muted);margin-top:17px;max-width:480px}.guest-visual{grid-area:photo;position:relative;min-width:0}.guest-visual>img{width:100%;height:305px;object-fit:cover;border-radius:3px}.photo-button{display:flex;align-items:center;gap:9px;position:absolute;right:14px;bottom:14px;background:var(--paper);border:0;padding:11px 14px;border-radius:3px;font-size:11px}.photo-button svg{width:16px;height:16px}.photo-button>span{color:var(--muted);padding-left:5px}.amenity-list{grid-area:facts;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:13px 20px}.amenity-list li{display:flex;gap:10px;align-items:center;font-size:11px;color:var(--muted)}.amenity-list svg{width:19px;height:19px;color:#6c806d}.booking-panel{grid-area:booking;position:sticky;top:24px;min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:5px;overflow:hidden}.booking-panel>h2{padding:20px 28px 0;font-size:17px}.booking-panel iframe{display:block;width:100%;border:0}.gallery-section{padding-block:30px 44px;border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.text-link{display:inline-flex;align-items:center;gap:13px;background:none;padding:5px 0;border:0;border-bottom:1px solid var(--line);font-size:11px}.text-link:hover{border-color:var(--ink)}.text-link span{font-size:17px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-grid button{padding:0;border:0;background:none;text-align:left}.gallery-grid img{width:100%;height:210px;object-fit:cover;border-radius:3px}.gallery-grid button>span{display:block;font-size:11px;color:var(--muted);margin-top:9px}.site-footer{border-top:1px solid var(--line);padding-block:30px 23px}.footer-details{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:25px}.footer-details h2{font-size:12px;margin-bottom:12px}.footer-details address{font-style:normal;font-size:12px;color:var(--muted);margin-bottom:8px}.contact-links{display:grid;justify-items:start;gap:6px;font-size:12px}.contact-links a:hover{text-decoration:underline}.arrival-times{margin:0;display:flex;gap:28px;font-size:11px}.arrival-times dt{margin-bottom:10px}.arrival-times dd{margin:0;color:var(--muted)}.footer-bottom{display:flex;gap:30px;justify-content:space-between;margin-top:30px;padding-top:17px;border-top:1px solid var(--line);color:var(--muted);font-size:9px}.privacy-page{max-width:740px;padding-block:70px;min-height:70vh}.privacy-page p{margin-block:25px}.privacy-page .text-link{margin-right:25px}.error-page{text-align:center;padding:100px 20px}
dialog{padding:0;border:0;max-width:1200px;width:calc(100% - 48px);max-height:94vh;background:#17251e;color:var(--paper);border-radius:5px}dialog::backdrop{background:#07130fe8;backdrop-filter:blur(6px)}.lightbox-header{display:flex;align-items:center;justify-content:space-between;padding:17px 23px;gap:20px}.lightbox-header p{font-size:13px}.lightbox-header p span{display:inline-block;margin-left:20px;font-size:11px;color:#fff9}.gallery-close{background:none;color:var(--paper);border:0;font-size:29px;width:42px;height:42px;padding:0;line-height:1}.lightbox-stage{height:min(65vh,670px);position:relative;display:flex;align-items:center;justify-content:center;padding-inline:70px}.lightbox-stage img{height:100%;width:100%;object-fit:contain}.gallery-prev,.gallery-next{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:1px solid #ffffff55;background:#ffffff0d;color:white;border-radius:50%;font-size:20px}.gallery-prev{left:15px}.gallery-next{right:15px}.gallery-thumbnails{padding:18px 23px 23px;display:flex;gap:9px;overflow-x:auto;scrollbar-color:#6d746c #17251e}.gallery-thumbnails button{width:65px;min-width:65px;height:50px;border:2px solid transparent;padding:0;opacity:.55;background:none;border-radius:2px;overflow:hidden}.gallery-thumbnails button[aria-current]{border-color:var(--paper);opacity:1}.gallery-thumbnails img{width:100%;height:100%;object-fit:cover}
@media(max-width:1100px){.wrap{width:calc(100% - 60px)}.first-fold{gap:22px 30px}.guest-visual>img{height:280px}.booking-panel>h2{padding-inline:25px}.gallery-grid img{height:185px}.arrival-times{gap:20px}.footer-details{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.site-header{height:73px}.wordmark>span{font-size:30px}.header-actions{gap:20px}.header-phone{font-size:11px}.first-fold{grid-template-columns:1fr;grid-template-areas:'intro' 'booking' 'photo' 'facts';gap:21px;padding-block:22px 31px}.eyebrow{font-size:9px;margin-bottom:10px}h1{font-size:36px;letter-spacing:-1.2px}h1 br{display:none}h1 em{white-space:nowrap}.intro-note{font-size:12px;margin-top:12px}.booking-panel{position:static;width:100%}.booking-panel>h2{padding:16px 24px 0;font-size:15px}.guest-visual>img{height:300px}.amenity-list{gap:13px 17px}.amenity-list li{font-size:11px}.gallery-grid{gap:12px;grid-template-columns:1fr 1fr}.gallery-grid button:last-child{display:none}.gallery-grid img{height:180px}.gallery-section{padding-block:27px 31px}.footer-details{grid-template-columns:1fr 1fr;gap:26px 18px}.arrival-times{grid-column:1/-1;gap:45px}.footer-bottom{font-size:8px;gap:12px}.photo-button{font-size:10px}.privacy-page{padding-block:45px}.privacy-page h1{font-size:34px}dialog{width:calc(100% - 16px);max-height:95vh}.lightbox-header{padding:10px 12px}.lightbox-header p{font-size:11px}.lightbox-header p span{display:block;margin-left:0;margin-top:4px;font-size:10px}.lightbox-stage{height:58vh;padding-inline:0}.gallery-prev,.gallery-next{background:#17251ec9;z-index:1;top:auto;bottom:8px;transform:none;width:37px;height:37px}.gallery-prev{left:12px}.gallery-next{right:12px}.gallery-thumbnails{padding:12px;gap:7px}.gallery-thumbnails button{min-width:53px;width:53px;height:42px}}
@media(max-width:420px){.header-phone{display:none}.header-actions{gap:15px}.language-links{gap:11px}h1{font-size:32px}.gallery-grid img{height:145px}.booking-panel{width:calc(100% + 12px);margin-left:-6px}.intro-note{max-width:330px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
