:root{--ink:#20362f;--muted:#71776e;--paper:#f7f5f0;--line:#dedfd5;--accent:#274b3c;--gold:#9c7852}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 Manrope,Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}a{color:inherit}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h2{font:500 clamp(34px,4vw,56px)/1.1 'Cormorant Garamond',Georgia,serif;letter-spacing:-1px}h3{line-height:1.3}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #b78c53;outline-offset:4px}.container,.about-bg{max-width:1240px;margin:auto;padding:0 40px}.main-header{height:90px;display:flex;align-items:center;padding:0 40px;gap:40px;background:var(--paper);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.header-flex-row{display:contents}.header-brand{order:0;margin-right:auto}.logo-img{width:145px;height:60px;object-fit:contain}.mobile-controls{order:2}.main-nav{order:1}.main-nav ul{display:flex;list-style:none;padding:0;margin:0;gap:26px}.main-nav a{text-decoration:none;font-size:12px;font-weight:600}.main-nav a:hover{color:var(--gold)}.lang-switcher{display:flex;gap:3px}.lang-btn{border:0;padding:7px 8px;background:transparent;font-size:11px;color:var(--muted);border-radius:3px}.lang-btn.active{background:var(--ink);color:white}.header-gap,.header-top-line,.header-bottom-line,.mobile-menu-toggle,.mobile-nav-overlay,.section-gap,.section-full-line,.services-top-line{display:none}.hero{position:relative;min-height:660px;margin:18px 24px 0;background:linear-gradient(90deg,rgba(17,31,25,.88),rgba(17,31,25,.16)),url('../assets/hero-room.webp') center/cover no-repeat;color:white;display:flex;align-items:center}.hero-content{width:100%;max-width:1240px;margin:auto;padding:65px 40px 38px}.hero-welcome-box{max-width:690px}.hero-welcome-line{display:block;font:500 11px/1.5 Manrope,Arial,sans-serif;letter-spacing:3px;text-transform:uppercase;margin-bottom:20px}.hero-brand-line{display:block;font:500 clamp(48px,6vw,86px)/.99 'Cormorant Garamond',Georgia,serif;letter-spacing:-2px;max-width:620px}.hero-welcome-box p{max-width:450px;font-size:14px;font-weight:500;color:#edf0e7;margin-top:25px;line-height:1.8}.booking-row{display:grid;grid-template-columns:1fr 1fr 1.5fr auto;gap:0;background:var(--paper);color:var(--ink);margin-top:55px;padding:20px;align-items:end;box-shadow:0 16px 30px #0002}.booking-row label{font-size:10px;text-transform:uppercase;letter-spacing:1px;padding:0 18px;border-right:1px solid var(--line)}.booking-row label br{display:none}.booking-row input,.booking-row select{display:block;width:100%;min-width:0;border:0;background:transparent;color:var(--ink);font-size:13px;text-transform:none;letter-spacing:0;height:37px;outline-offset:0}.booking-row button{border:0;background:var(--accent);color:white;padding:17px 24px;margin-left:20px;font-size:12px;font-weight:700}.booking-row button:hover{background:#365f4c}.intro-strip{display:flex;justify-content:space-between;gap:20px;max-width:1160px;margin:0 auto;padding:28px 0;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.04em;color:var(--muted)}.intro-strip b{color:var(--ink);margin-right:8px;font-weight:600}.about{padding:95px 0}.about-header{margin-bottom:38px}.about-badge,.services-eyebrow{display:block;font-size:10px;text-transform:uppercase;letter-spacing:3px;color:var(--gold);margin-bottom:15px}.about-title{margin:0}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.about-media img{width:100%;height:460px;object-fit:cover}.about-text{font-size:13px;color:var(--muted)}.about-text .about-lead{font-size:17px;color:var(--ink);line-height:1.7}.about-text ul{padding-left:18px}.about-text p:last-child{margin:0}.rooms{padding:80px 0;background:#eceee6}.rooms h2{margin-bottom:16px}.rooms-notice{color:var(--muted);font-size:12px;max-width:650px;margin-bottom:35px}.room-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 25px}.room-card{background:var(--paper);overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s;border:1px solid #d9ddd1;position:relative;padding-bottom:20px}.room-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #23372b12}.room-preview{width:100%;height:235px;object-fit:cover}.room-card h3{font:500 26px/1.12 'Cormorant Garamond',Georgia,serif;margin:22px 22px 14px}.room-card .room-info-row{margin:0 22px;display:flex;flex-direction:column;gap:7px;font-size:13px}.room-card .room-guests{font-size:11px;color:var(--muted);margin:7px 22px 0;text-align:left}.room-card:after{content:'↗';position:absolute;right:20px;bottom:20px;color:var(--gold)}.services{padding:90px 0}.services-lead{font-size:13px;color:var(--muted)}.services-bento{display:grid;grid-template-columns:1fr 1.2fr;gap:35px;margin-top:35px}.service-feature{background:linear-gradient(0deg,#182b22,transparent),url('../assets/restaurant-cover.webp') center/cover;min-height:480px;display:flex;align-items:end;padding:35px;color:white;cursor:pointer}.service-feature__badge{font-size:10px;text-transform:uppercase;letter-spacing:2px}.service-restaurant-title{font:500 46px Georgia,serif;margin:15px 0}.service-restaurant-text{font-size:13px}.service-feature__footer{font-size:11px;display:flex;gap:25px}.services-amenities{display:grid;grid-template-columns:1fr 1fr;gap:22px}.amenity-card{border-bottom:1px solid var(--line);padding:10px 0 20px}.amenity-card__icon{width:30px;height:30px;color:var(--gold);margin-bottom:15px}.amenity-card h3{font-size:14px;margin-bottom:8px;font-weight:600}.amenity-card p{font-size:12px;color:var(--muted);margin-bottom:8px}.amenity-badge{font-size:10px;color:var(--accent)}.contacts{background:#20362f;color:#f1f1e8;padding:65px 40px 20px}.contacts-row{display:grid;grid-template-columns:1fr 1fr;gap:55px;max-width:1160px;margin:auto}.contacts-map iframe{border:0;width:100%;height:360px;filter:saturate(.65)}.contacts-row-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contacts-label{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#afbeae;margin-bottom:10px}.contacts-value{font-size:13px!important}.contacts-value a{text-decoration:none;display:block}.contacts-socials{display:flex;gap:12px}.contacts-icon img{width:28px;height:28px;object-fit:contain}.contacts-copyright{border-top:1px solid #ffffff25;margin-top:35px;padding-top:20px;font-size:10px;color:#b8c5bb}.room-modal{position:fixed;inset:0;z-index:100;background:#17251ed9;align-items:center;justify-content:center;padding:24px}.room-modal-content{background:var(--paper);max-width:1080px;width:100%;max-height:90vh;overflow:auto;position:relative;padding:35px}.split-modal{display:grid;grid-template-columns:1.3fr 1fr;gap:30px}.room-modal-close{position:absolute;right:8px;top:4px;border:0;background:var(--paper);color:var(--ink);font-size:28px;z-index:2;width:36px}.modal-gallery-main{position:relative;background:#e9eade}.modal-gallery-main>img{width:100%;height:360px;object-fit:cover}.gallery-arrow{position:absolute;top:45%;left:8px;border:0;background:#fffD;width:34px;height:38px;display:grid;place-items:center}.gallery-arrow:last-child{left:auto;right:8px}.modal-gallery-thumbs{display:flex;gap:8px;overflow:auto;margin-top:12px}.modal-gallery-thumbs img{width:68px;height:52px;object-fit:cover;cursor:pointer;opacity:.6;flex-shrink:0}.modal-gallery-thumbs img.active{opacity:1;outline:2px solid var(--gold);outline-offset:-2px}.modal-info-block{padding:20px 0;font-size:13px}.modal-info-block h2{font-size:36px}.modal-info-block ul{padding-left:18px;color:var(--muted)}.modal-info-block .room-info-row{font-size:13px}.menu-open{overflow:hidden}
@media(max-width:1000px){.main-header{padding:0 24px;gap:20px}.main-nav ul{gap:16px}.intro-strip{margin:0 40px}.about-layout{gap:30px}.room-list{grid-template-columns:repeat(2,minmax(0,1fr))}.services-bento{grid-template-columns:1fr}.service-feature{min-height:350px}.contacts-row{gap:25px}.contacts-row-2{grid-template-columns:1fr}.hero{min-height:620px}.booking-row{grid-template-columns:1fr 1fr}.booking-row label{padding:8px 12px}.booking-row button{margin:10px 12px}.split-modal{grid-template-columns:1fr}.modal-gallery-main>img{height:300px}}
@media(max-width:700px){.main-header{height:74px;padding:0 18px}.logo-img{width:117px;height:50px}.mobile-controls{display:flex;align-items:center;gap:12px}.mobile-menu-toggle{display:flex;flex-direction:column;gap:5px;border:0;background:transparent;padding:8px}.mobile-menu-toggle span{display:block;height:2px;width:22px;background:var(--ink)}.main-nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);padding:25px;border-bottom:1px solid var(--line)}.main-nav.active{display:block}.main-nav ul{flex-direction:column;gap:20px}.main-nav a{font-size:16px}.hero{margin:8px;min-height:0;background-position:60% center}.hero-content{padding:45px 18px 20px}.hero-brand-line{font-size:58px;max-width:330px}.hero-welcome-line{font-size:9px;letter-spacing:2px}.hero-welcome-box p{font-size:12px;max-width:290px}.booking-row{padding:10px;margin-top:35px}.booking-row label{padding:8px 7px;font-size:9px}.booking-row label:nth-child(3){grid-column:1/-1;border:0;border-top:1px solid var(--line)}.booking-row button{grid-column:1/-1;margin:8px 0 0;padding:14px}.booking-row input,.booking-row select{font-size:12px}.intro-strip{margin:0 24px;flex-wrap:wrap;gap:10px;font-size:10px;padding:20px 0}.container,.about-bg{padding:0 24px}.about,.rooms,.services{padding:55px 0}.about-layout{grid-template-columns:1fr;gap:25px}.about-media img{height:290px}.about-text .about-lead{font-size:16px}.about-header{margin-bottom:25px}.room-list{grid-template-columns:1fr;gap:22px}.room-preview{height:230px}.room-card h3{font-size:28px}.services-amenities{gap:20px}.service-feature{padding:25px;min-height:350px}.service-feature__footer{flex-wrap:wrap;gap:8px}.contacts{padding:40px 24px 20px}.contacts-row{grid-template-columns:1fr}.contacts-map iframe{height:270px}.contacts-row-2{grid-template-columns:1fr 1fr}.room-modal{padding:12px}.room-modal-content{padding:30px 15px 20px}.modal-gallery-main>img{height:240px}.modal-info-block{padding:0}.modal-info-block h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.modal-gallery-block,.modal-info-block{min-width:0}.modal-gallery-thumbs{max-width:100%;overflow-x:auto}.room-modal-content{overflow-x:hidden}.modal-info-block{overflow-wrap:anywhere}

/* Complete photographs and readable room details */
.room-preview{object-fit:contain!important;background:#eeece6;width:100%;height:260px}
.modal-gallery-main>img{object-fit:contain!important;background:#eeece6;width:100%;height:440px}
.room-guests{display:flex;flex-direction:column;gap:5px;line-height:1.5}
.room-guests-basis{display:block;font-size:12px;color:var(--muted)}
.room-info-row--modal{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}
.gallery-arrow{width:44px;height:44px;border-radius:50%;border:1px solid #ffffffa6;background:#fffffff0;color:var(--ink);box-shadow:0 3px 14px #20362f20;display:grid;place-items:center;font-size:26px;line-height:1;transition:background .2s,transform .2s}
.gallery-arrow:hover{background:white;transform:translateY(-50%) scale(1.06)}
.room-visual-description{font-size:15px;line-height:1.8;margin:18px 0;color:var(--ink)}
.breakfast{margin-top:48px;padding:32px;background:#ece9df;border:1px solid var(--line)}
.breakfast-head{display:flex;justify-content:space-between;gap:20px;align-items:baseline}.breakfast h3{font:500 38px 'Cormorant Garamond',Georgia,serif;margin:0 0 15px}.breakfast-price{font-size:17px;font-weight:600}.breakfast-times{display:flex;gap:24px;flex-wrap:wrap;margin:15px 0}.breakfast details{border-top:1px solid #cdd0c4;margin-top:22px;padding-top:20px}.breakfast summary{cursor:pointer;font-weight:600;padding:5px 0}.breakfast-menu{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:24px}.breakfast h4{margin:18px 0 10px}.breakfast li{margin-bottom:6px}.breakfast ul{padding-left:20px}.breakfast-note{color:#586259;font-size:13px}
@media(max-width:700px){.room-preview{height:240px}.modal-gallery-main>img{height:270px}.gallery-arrow{width:36px;height:36px;font-size:22px}.breakfast{padding:22px}.breakfast-head{display:block}.breakfast-menu{grid-template-columns:1fr;gap:10px}}
.gallery-arrow{top:50%;transform:translateY(-50%)}


.services-amenities .amenity-card--wide{grid-column:auto}
.breakfast-open{display:block;margin-top:12px;border:1px solid #bdc6b8;border-radius:6px;background:transparent;color:var(--ink);padding:8px 14px;font-size:12px}.breakfast-open:hover{background:#e2e7dc}
#breakfast-dialog{border:0;padding:0;width:min(880px,calc(100% - 32px));max-height:85vh;background:var(--paper);color:var(--ink);border-radius:12px;box-shadow:0 24px 80px #14251f40}#breakfast-dialog::backdrop{background:#17251ebf}#breakfast-dialog .breakfast{margin:0;border:0;padding:36px} .breakfast-close{position:sticky;top:12px;float:right;margin:12px 12px -48px 0;z-index:2;width:32px;height:32px;border:0;border-radius:50%;background:var(--paper);color:var(--ink);font-size:24px}#breakfast-dialog .breakfast-head{padding-right:24px}body:has(#breakfast-dialog[open]){overflow:hidden}
@media(max-width:700px){#breakfast-dialog .breakfast{padding:28px 22px}.breakfast-price{font-size:15px}}
