@font-face{font-family:Wildeck;src:local('Georgia')}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#26382f;background:#faf9f6;font-family:Georgia,'Times New Roman',serif;font-size:18px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a,button{ -webkit-tap-highlight-color:transparent}img{display:block;width:100%;height:100%;object-fit:cover}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ad7549;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;line-height:1.1}h1{font-size:clamp(3rem,6.3vw,6.6rem);letter-spacing:-.045em}h2{font-size:clamp(2.5rem,4.2vw,4.3rem);letter-spacing:-.035em}h3{font-size:1.8rem}p{margin:1.3rem 0}.eyebrow,.button,nav,.preview,small,label,.tabs,.meta,.slide-controls,.foot-bottom,.tag{font-family:Arial,sans-serif}.eyebrow{display:block;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:24px}.preview{background:#e9e8de;color:#344238;display:flex;justify-content:space-between;padding:7px 4.5%;font-size:12px;letter-spacing:.12em}.preview a{text-decoration:underline;letter-spacing:0}header{height:106px;background:#263c33;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;gap:32px}header nav{display:flex;gap:28px;font-size:14px}header nav a:hover{text-decoration:underline;text-underline-offset:8px}.wordmark{display:flex;align-items:center;gap:14px;line-height:1;font-size:25px;letter-spacing:.08em;white-space:nowrap}.wordmark img{width:39px;height:53px;object-fit:contain}.wordmark .light{font-weight:400}.wordmark small{display:block;font-size:8px;letter-spacing:.2em;margin-top:10px}.header-actions{display:flex;align-items:center;gap:24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:#2f473a;color:white;padding:16px 24px;border:1px solid #2f473a;font-size:13px;letter-spacing:.06em;line-height:1.3;text-decoration:none;min-height:48px;transition:background .2s}.button:hover{background:#455d4c;color:#fff}.button.pale{background:#eeeede;color:#263c33;border-color:#eeeede}.button.outline{background:transparent;color:inherit;border-color:currentColor}.text-link{display:inline-block;font-family:Arial,sans-serif;font-size:14px;border-bottom:1px solid;padding-bottom:6px;margin-top:16px}.menu-toggle{border:0;background:none;color:white;font-size:27px;padding:8px}.hero{height:min(740px,78vw);min-height:560px;position:relative;isolation:isolate;color:white;background:#263c33}.hero-bg{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center 56%;transition:opacity .35s}.hero:after,.image-card:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,21,17,.58),rgba(8,21,17,.03));z-index:-1}.hero-inner{max-width:1400px;margin:auto;padding:95px 6% 80px}.hero h1{max-width:790px}.hero p{max-width:440px;font-size:21px;line-height:1.5;margin:24px 0 32px}.hero .eyebrow{color:#e6e8d9}.hero-bottom{position:absolute;bottom:32px;left:6%;right:6%;display:flex;justify-content:space-between;align-items:center}.slide-controls{display:flex;gap:12px;align-items:center;font-size:13px}.slide-controls button{width:42px;height:42px;border:1px solid #ffffff70;background:transparent;color:white;border-radius:50%}.slide-controls button[aria-current=true]{background:#fff;color:#243b31}.slide-caption{font-style:italic;font-size:17px}.wrap{max-width:1260px;margin:auto;padding:90px 45px}.sage{background:#d9dfd0}.intro{text-align:center}.intro h2{font-size:clamp(2.6rem,5vw,5rem)}.intro .two{margin-top:60px;text-align:left;gap:12%}.two{display:grid;grid-template-columns:1fr 1fr;gap:55px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}.gallery{display:grid;grid-template-columns:1.1fr .8fr 1.1fr;gap:18px;height:380px}.gallery img:nth-child(2){padding-top:44px;padding-bottom:0}.image-card{position:relative;isolation:isolate;min-height:450px;display:flex;align-items:end;color:#fff;padding:40px}.image-card>img{position:absolute;inset:0;z-index:-2}.image-card:after{background:linear-gradient(0deg,#142c23c9,transparent 85%)}.image-card h2{font-size:3.2rem}.image-card small{letter-spacing:.15em;font-size:12px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.feature-copy{padding:35px 0}.split-image{min-height:440px}.paper{background:white}.border-top{border-top:1px solid #c8cfc1}.quote{text-align:center;max-width:780px;margin:auto}.quote blockquote{font-size:30px;line-height:1.5;margin:15px 0 28px}.rating{font-family:Arial,sans-serif;font-size:14px;letter-spacing:.08em}.news-card{border-top:1px solid #9aa98f;padding:26px 0}.news-card p{font-size:17px}.tag{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#5d6f55}.subhero{position:relative;isolation:isolate;color:white;min-height:430px;display:flex;align-items:end;background:#283c33}.subhero img{position:absolute;inset:0;z-index:-2}.subhero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#14291bd9,transparent)}.subhero .wrap{width:100%;padding-top:80px;padding-bottom:55px}.subhero h1{font-size:clamp(3rem,6vw,5.7rem)}.breadcrumbs{font-family:Arial,sans-serif;font-size:13px;margin-bottom:22px}.room-card img{height:275px}.room-card .room-info{padding:25px 0 35px}.room-info p{font-size:17px}.meta{font-size:13px;color:#596653}.price{display:block;font-family:Arial,sans-serif;font-size:15px;margin:18px 0}.callout{padding:30px;background:#edf0e7;border-left:3px solid #7b8b68;margin:28px 0}.callout p{margin:10px 0}.downloads{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.form-shell{max-width:900px;margin:0 auto;background:white;border:1px solid #d9ddd3;padding:42px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:flex;flex-direction:column;gap:8px}label{font-size:14px;color:#38483d}input,textarea,select{border:1px solid #aeb8a7;background:#fff;padding:13px 14px;border-radius:0;width:100%;min-height:48px;color:#263c33;font-size:17px}textarea{min-height:115px;resize:vertical}.full{grid-column:1/-1}.check{display:flex;align-items:start;gap:12px;font-family:Arial,sans-serif;font-size:14px}.check input{width:18px;min-height:18px;margin-top:3px;flex-shrink:0}.form-actions{display:flex;justify-content:space-between;gap:20px;margin-top:30px}.steps{display:flex;gap:12px;margin-bottom:35px;font-family:Arial,sans-serif;font-size:13px}.step{border-bottom:2px solid #d9dfd0;padding:12px 0;flex:1}.step.active{border-color:#263c33;font-weight:bold}.form-note{font-family:Arial,sans-serif;font-size:14px;color:#5b6657;background:#eef0e8;padding:16px;margin:0 0 25px}.form-result{border:1px solid #9aaf8e;padding:28px;background:#f0f4e9;margin-top:20px}.summary{display:grid;grid-template-columns:1fr 2fr;gap:8px 20px;font-size:16px}.summary dt{font-family:Arial,sans-serif;color:#5b6657}.summary dd{margin:0;overflow-wrap:anywhere}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:30px 0}.tabs button{border:1px solid #aab79c;background:transparent;padding:12px 18px;font-size:14px}.tabs button.active{background:#263c33;color:white}.admin-item{padding:24px;border:1px solid #c8d0bf;margin:18px 0;background:white}.admin-item .form-grid{margin:20px 0}.admin-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.admin-head h3{font-size:24px}.danger{color:#87412f;background:transparent;border:1px solid #b88673;padding:9px 15px;font-family:Arial,sans-serif;font-size:13px}.noticebar{padding:14px 5%;background:#dce4cd;text-align:center;font-size:16px}.noticebar a{text-decoration:underline;margin-left:15px}footer{background:#263c33;color:#f0f0e5;padding:70px 5% 25px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:40px;font-size:16px}footer a{display:block;margin:7px 0}footer a:hover{text-decoration:underline}.foot-brand{font-size:35px;line-height:1.2}.foot-brand small{display:block;font-size:13px;margin-top:20px}.foot-bottom{grid-column:1/-1;border-top:1px solid #ffffff36;padding-top:25px;display:flex;flex-wrap:wrap;align-items:center;gap:22px;font-size:12px}.foot-bottom span{margin-right:auto}dialog{border:0;padding:55px;width:min(680px,92vw);max-height:90vh;background:#faf9f6;color:#263c33}dialog::backdrop{background:#14241cbb;backdrop-filter:blur(4px)}.close{position:absolute;right:20px;top:15px;border:0;background:none;font-size:25px;color:inherit}.menu-links{display:grid;grid-template-columns:1fr 1fr;gap:17px 28px;font-size:25px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#263c33;color:white;padding:16px 25px;z-index:100;font-family:Arial,sans-serif;font-size:15px;max-width:90vw}.skip{position:absolute;left:-9999px}.skip:focus{left:15px;top:15px;background:white;z-index:200;padding:15px}[hidden]{display:none!important}.pill{display:inline-block;font:12px Arial,sans-serif;border:1px solid #c3ccb9;padding:4px 10px}.room-table{width:100%;border-collapse:collapse;font-size:16px}.room-table th,.room-table td{text-align:left;padding:15px 10px;border-bottom:1px solid #d2d9cb}.room-table th{font:13px Arial,sans-serif}.table-scroll{overflow-x:auto}.admin-link{font:14px Arial,sans-serif}.hero .button{background:#faf9ee;color:#273e32;border-color:#faf9ee}.inline-actions{display:flex;gap:12px;flex-wrap:wrap}.empty{padding:40px;background:#edf0e7}.compact{padding-top:45px;padding-bottom:45px}
@media(min-width:1600px){.hero-inner{padding-left:45px}}@media(max-width:1050px){header nav{display:none}.three{grid-template-columns:1fr 1fr}.hero{min-height:600px}.wordmark{font-size:23px}.wrap{padding:65px 30px}.hero-inner{padding-top:80px}.two{gap:35px}footer{grid-template-columns:1fr 1fr}.form-shell{padding:30px}.image-card{padding:28px;min-height:380px}}@media(max-width:650px){body{font-size:17px}.preview{font-size:10px;padding:7px 16px}.preview a{font-size:11px}header{height:85px;padding:0 18px;gap:12px}.wordmark{font-size:18px;gap:8px}.wordmark img{width:27px;height:40px}.wordmark small{font-size:6px}.header-actions{gap:8px}.header-actions .button{font-size:11px;padding:10px 12px;min-height:40px}.menu-toggle{font-size:22px;padding:5px}.hero{min-height:610px;height:78vh;max-height:780px}.hero-inner{padding:78px 25px 95px}.hero h1{font-size:3.5rem}.hero p{font-size:19px}.hero-bg{background-position:62% center}.hero-bottom{left:25px;right:25px;bottom:25px}.slide-caption{display:none}.slide-controls{gap:9px}.wrap{padding:60px 24px}.two,.three,.feature-grid,.form-grid{grid-template-columns:1fr}.intro .two{margin-top:38px;gap:38px}.gallery{height:260px;grid-template-columns:1fr 1fr;gap:12px}.gallery img:nth-child(2){padding:25px 0 0}.gallery img:nth-child(3){display:none}.section-top{display:block}.section-top .text-link{margin-top:22px}.image-card{min-height:370px}.image-card h2{font-size:2.7rem}.quote blockquote{font-size:24px}.split-image{min-height:290px;max-height:370px}.subhero{min-height:340px}.subhero h1{font-size:3.4rem}.form-shell{padding:24px 18px}.steps{gap:10px;font-size:11px}.full{grid-column:auto}.form-actions .button{padding:14px 15px}.menu-links{grid-template-columns:1fr;font-size:24px;gap:10px}dialog{padding:45px 28px}.admin-head{align-items:start}.summary{grid-template-columns:1fr}.summary dd{margin-bottom:12px}footer{padding:50px 24px 25px;gap:35px;grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}.foot-bottom{gap:12px 20px}.foot-bottom span{width:100%}.tabs button{flex:1}.room-card img{height:260px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

/* Navigation and introductions: larger type, distinct photographic entrances. */
header nav,.menu-links{font-family:"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif;font-weight:500;letter-spacing:.015em}
header nav{font-size:18px;gap:25px}
.menu-links{font-size:28px;line-height:1.35}
.eyebrow{font-size:1rem;letter-spacing:.15em;line-height:1.5}
.hospitality-cards{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:55px;text-align:left}
.hospitality-card{position:relative;isolation:isolate;display:flex;align-items:end;min-height:470px;overflow:hidden;color:white;background:#263c33}
.hospitality-card>img{position:absolute;inset:0;z-index:-2;transition:transform .5s ease}
.hospitality-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(12,23,18,.06) 0%,rgba(12,23,18,.68) 40%,rgba(12,23,18,.95) 100%)}
.hospitality-content{padding:38px;width:100%}
.hospitality-content .eyebrow{margin-bottom:15px;font-size:1rem;color:#f0eee0}
.hospitality-content h3{font-size:clamp(2.4rem,3.5vw,3.4rem);letter-spacing:-.025em}
.hospitality-content p{font-size:18px;line-height:1.55;margin:20px 0 28px;max-width:430px}
.card-link{font-family:"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff80;padding-top:17px;font-size:16px;font-weight:500}
.hospitality-card:hover>img{transform:scale(1.035)}
@media(min-width:1051px) and (max-width:1190px){header{gap:20px;padding-left:3%;padding-right:3%}header nav{gap:18px}.header-actions{gap:12px}}
@media(max-width:800px){.hospitality-cards{grid-template-columns:1fr}.hospitality-card{min-height:430px}.hospitality-content{padding:32px}}
@media(max-width:650px){.menu-links{font-size:26px}.hospitality-cards{margin-top:35px;gap:22px}.hospitality-content{padding:28px}.hospitality-content p{font-size:17px}.hospitality-content h3{font-size:2.65rem}}
@media(prefers-reduced-motion:reduce){.hospitality-card>img{transition:none}.hospitality-card:hover>img{transform:none}}

/* Final review adjustments */
header{position:sticky;top:0;z-index:50;box-shadow:0 4px 18px rgba(16,34,25,.16)}
.button,.card-link,.text-link{font-family:"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif;font-weight:500}
.button{font-size:16px;letter-spacing:.015em;padding:17px 26px}
.text-link{font-size:16px}
.card-link{font-size:17px}
.feature-grid .image-card{height:470px;min-height:470px}
@media(max-width:650px){.button{font-size:15px;padding:15px 19px}.feature-grid .image-card{height:390px;min-height:390px}}

/* September review: serif actions, fixed booking access and balanced room cards. */
:root{--header-height:106px}
body{padding-top:var(--header-height)}
html{scroll-padding-top:calc(var(--header-height) + 24px)}
header{position:fixed;inset:0 0 auto;height:106px;transition:height .2s ease}
header.is-compact{height:86px}
.button,.card-link,.text-link,.eyebrow,.image-card small{font-family:Georgia,'Times New Roman',serif;font-weight:400}
.button,.text-link,.card-link{font-size:20px;letter-spacing:0;line-height:1.35}
.button{white-space:normal;text-align:center;max-width:100%}
.eyebrow,.hospitality-content .eyebrow,.image-card small{font-size:20px;letter-spacing:.055em;line-height:1.4}
.image-card small{display:block;margin-bottom:12px}
.header-actions .button{font-size:18px}
.venue-image{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:4/3;object-fit:cover}
.venue-title{margin:22px 0 12px;line-height:1.2}
.three>article,.two>*,.feature-grid>*{min-width:0}
.feature-grid .image-card{height:auto;min-height:470px}
.hero{height:auto;min-height:0}
.hero:after{display:none}
.carousel-stage{display:grid;isolation:isolate}
.carousel-slide{grid-area:1/1;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 1.1s ease,visibility 0s linear 1.1s;min-width:0}
.carousel-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;transition:opacity 1.1s ease;z-index:1}
.hero .carousel-slide{position:relative;isolation:isolate;min-height:650px;display:flex;align-items:center}
.hero .carousel-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,21,17,.65),rgba(8,21,17,.1));z-index:-1}
.hero .hero-bg{z-index:-2}
.hero-inner{width:100%;padding-top:85px;padding-bottom:110px}
.hero-bottom{z-index:3}
.quote .carousel-stage{margin-top:25px;align-items:center}
.quote .carousel-slide{padding:10px 0 25px}
.quote-bottom{display:flex;justify-content:center;margin-top:24px}
.quote .slide-controls button{color:#263c33;border-color:#8a9b82}
.quote .slide-controls button:hover{background:#d9dfd0}
.quote .rating{display:block;line-height:1.5}
@media(max-width:1200px) and (min-width:1051px){header{gap:16px}.header-actions .button{padding:14px 17px}header nav{gap:15px}}
@media(max-width:650px){:root{--header-height:85px}header,header.is-compact{height:85px}.header-actions .button{font-size:16px;padding:10px 12px}.button,.text-link,.card-link{font-size:19px}.eyebrow,.hospitality-content .eyebrow,.image-card small{font-size:18px}.hero .carousel-slide{min-height:610px}.hero-inner{padding:70px 25px 110px}.feature-grid .image-card{min-height:390px}.venue-image{aspect-ratio:4/3}.quote blockquote{font-size:25px}.hero h1{font-size:clamp(2.8rem,12vw,3.5rem)}}
@media(prefers-reduced-motion:reduce){header,.carousel-slide,.carousel-slide.is-active{transition:none}}
#home-news:empty{display:none}
.arrangement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:45px}
.arrangement-card{display:flex;flex-direction:column;background:#fff;border:1px solid #c8d0bf;padding:38px}
.arrangement-card h3{font-size:clamp(2rem,3vw,2.8rem)}
.arrangement-card ul{padding-left:21px;margin:10px 0 28px}
.arrangement-card li{margin:.35rem 0}
.arrangement-card .text-link{margin-top:auto;align-self:flex-start}
.arrangement-price{border-top:1px solid #c8d0bf;padding-top:22px;margin-top:auto;display:flex;align-items:baseline;gap:13px;flex-wrap:wrap}
.arrangement-price strong{font-size:2rem;font-weight:400}
.arrangement-price span{font-size:15px}
.arrangement-download{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:50px;padding:32px;background:#d9dfd0}
@media(max-width:800px){.arrangement-grid{grid-template-columns:1fr}.arrangement-download{align-items:flex-start;flex-direction:column}.arrangement-card{padding:30px 25px}}

/* Grouped navigation, image galleries and protected preview administration. */
header nav{align-items:stretch;height:100%}
header nav>a,.nav-top{display:flex;align-items:center}
.nav-group{position:relative;display:flex;align-items:center}
.nav-top::after{content:'⌄';font-size:.8em;margin-left:7px;transform:translateY(-2px)}
.subnav{position:absolute;top:calc(100% - 12px);left:-24px;width:235px;padding:12px 0;background:#faf9f6;color:#26382f;box-shadow:0 16px 32px rgba(10,26,18,.22);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:60}
.subnav a{display:block;padding:11px 24px;font-size:17px;line-height:1.35}
header nav .subnav a:hover{background:#e8ecdf;text-decoration:none}
.nav-group:hover .subnav,.nav-group:focus-within .subnav{opacity:1;visibility:visible;transform:translateY(0)}
.menu-links{grid-template-columns:1fr 1fr;align-items:start}
.menu-group{display:flex;flex-direction:column;gap:7px}
.menu-group strong{font-family:Georgia,'Times New Roman',serif;font-size:30px;font-weight:400;border-bottom:1px solid #aeb8a7;padding-bottom:10px;margin-bottom:5px}
.menu-group a{font-size:20px}
.menu-direct{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 28px;border-top:1px solid #ccd2c7;padding-top:22px;margin-top:8px}
.menu-direct a{font-size:22px}
.impression-switch{display:flex;gap:8px;font-family:"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif}
.impression-switch a{border:1px solid #aab79c;padding:11px 18px;font-size:15px}
.impression-switch a.active{background:#263c33;color:#fff}
.impressions-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:0;background:#263c33}
.impressions-grid figure{grid-column:span 6;margin:0;position:relative;overflow:hidden;background:#e6e9df}
.impressions-grid figure:nth-child(3n+1){grid-column:span 7}
.impressions-grid figure:nth-child(3n+2){grid-column:span 5}
.impressions-grid img{height:430px;transition:transform .45s ease}
.impressions-grid figure:hover img{transform:scale(1.025)}
.impressions-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:40px 24px 18px;color:#fff;background:linear-gradient(transparent,rgba(10,25,18,.8));font-size:20px}
.admin-login{max-width:900px}
.admin-login>.form-shell{margin-top:35px}
.login-error{color:#8a382d;font-family:"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif;font-size:15px;margin-bottom:0}
.button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:1050px){header nav{display:none}.impressions-grid img{height:360px}}
@media(max-width:650px){.menu-links{grid-template-columns:1fr;gap:26px}.menu-direct{grid-column:auto;flex-direction:column;gap:8px}.menu-group strong{font-size:27px}.menu-group a,.menu-direct a{font-size:20px}.impression-switch{margin-top:24px}.impressions-grid{grid-template-columns:1fr;gap:0}.impressions-grid figure,.impressions-grid figure:nth-child(3n+1),.impressions-grid figure:nth-child(3n+2){grid-column:auto}.impressions-grid img{height:300px}.impressions-grid figcaption{font-size:18px}.admin-login>.form-shell{margin-top:25px}}
@media(prefers-reduced-motion:reduce){.subnav,.impressions-grid img{transition:none}.impressions-grid figure:hover img{transform:none}}
.restaurant-spaces{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.space-card{background:#fff;border:1px solid #d5dbcf}
.space-card img{height:280px}
.space-card>div{padding:24px}
.space-card h3{font-size:2rem}
.space-card p{font-size:16px;line-height:1.55;margin:12px 0 0}
.center-action{text-align:center;margin-top:38px}
.bar-feature{display:grid;grid-template-columns:1.15fr .85fr;background:#263c33;color:#fff}
.bar-feature>div:last-child{padding:80px clamp(35px,6vw,100px);align-self:center}
.bar-feature>div:first-child{min-height:520px}
.bar-feature h2{font-size:clamp(3rem,5vw,5rem)}
.breakfast-section{background:#e7dfcf}
.breakfast-section .two{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(70px,8vw,135px)}
.breakfast-section h2{font-size:clamp(3.1rem,4.7vw,5.5rem);max-width:7.5em;overflow-wrap:break-word}
.breakfast-section .two>div{min-width:0}
.breakfast-time{font-size:22px}
.breakfast-time strong{font-size:34px;font-weight:400}
@media(max-width:1000px){.breakfast-section .two{grid-template-columns:1fr;gap:38px}.breakfast-section h2{max-width:10em}}
@media(max-width:900px){.restaurant-spaces{grid-template-columns:repeat(2,minmax(0,1fr))}.bar-feature{grid-template-columns:1fr}.bar-feature>div:first-child{min-height:400px}.bar-feature>div:last-child{padding:60px 30px}}
@media(max-width:650px){.restaurant-spaces{grid-template-columns:1fr}.space-card img{height:260px}.bar-feature>div:first-child{min-height:320px}.bar-feature>div:last-child{padding:50px 24px}}
.breakfast-section h2{font-size:clamp(2.9rem,4.15vw,5rem);max-width:none;white-space:nowrap;overflow-wrap:normal}
@media(max-width:650px){.breakfast-section h2{font-size:clamp(2.35rem,11vw,3.25rem)}}
.instagram-section{background:#f0ede5}
.instagram-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.instagram-grid a{position:relative;aspect-ratio:1;overflow:hidden;background:#263c33}
.instagram-grid img{transition:transform .45s ease}
.instagram-grid span{position:absolute;right:16px;bottom:14px;color:#fff;font-size:15px;opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease;text-shadow:0 1px 5px #000}
.instagram-grid a:hover img{transform:scale(1.04)}
.instagram-grid a:hover span,.instagram-grid a:focus-visible span{opacity:1;transform:translateY(0)}
@media(max-width:800px){.instagram-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(prefers-reduced-motion:reduce){.instagram-grid img,.instagram-grid span{transition:none}.instagram-grid a:hover img{transform:none}}
.price{font-family:Georgia,'Times New Roman',serif}
/* Gesammelte Bereichs- und Kartenanpassungen */
.impressions-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:22px;background:transparent}
.impressions-grid figure,.impressions-grid figure:nth-child(3n+1),.impressions-grid figure:nth-child(3n+2){grid-column:span 4;background:transparent}
.impressions-grid figure:nth-child(2n){margin-top:0}
.impressions-grid img{height:360px}
.venue-image{height:280px}
.celebration-venues article{background:#fff;border:1px solid #d5dbcf}
[data-route="hochzeiten"] header{background:#a75838}
[data-route="hotel"] header,[data-route="zimmer"] header,[data-route="arrangements"] header{background:#6d3540}
[data-route="kontakt"] header{background:#242f34}
@media(max-width:650px){.impressions-grid{grid-template-columns:1fr;gap:18px}.impressions-grid figure,.impressions-grid figure:nth-child(3n+1),.impressions-grid figure:nth-child(3n+2){grid-column:auto;margin-top:0}.impressions-grid img{height:300px}}
/* Hotel-Bereich: dunkles Weinrot als Inhaltsakzent */
[data-route="hotel"], [data-route="zimmer"], [data-route="arrangements"]{--hotel-red:#6d3540}
[data-route="hotel"] .button, [data-route="zimmer"] .button, [data-route="arrangements"] .button{background:var(--hotel-red);border-color:var(--hotel-red)}
[data-route="hotel"] .button.outline, [data-route="zimmer"] .button.outline, [data-route="arrangements"] .button.outline{background:transparent;color:var(--hotel-red);border-color:var(--hotel-red)}
[data-route="hotel"] .sage, [data-route="zimmer"] .sage, [data-route="arrangements"] .sage{background:#eadfe2}
/* Footer folgt der aktiven Rubrik */
[data-route="hotel"] footer,[data-route="zimmer"] footer,[data-route="arrangements"] footer{background:#6d3540}
[data-route="hochzeiten"] footer,[data-route="feier"] footer{background:#a75838}
[data-route="kontakt"] footer{background:#242f34}
/* Subnavigation: Hover-Farbe passend zur aktiven Rubrik */
[data-route="hotel"] .subnav a:hover,[data-route="zimmer"] .subnav a:hover,[data-route="arrangements"] .subnav a:hover{color:#6d3540;border-color:#6d3540}
[data-route="hochzeiten"] .subnav a:hover,[data-route="feier"] .subnav a:hover{color:#a75838;border-color:#a75838}
[data-route="kontakt"] .subnav a:hover{color:#242f34;border-color:#242f34}
[data-route="hotel"] .subnav a:hover,[data-route="zimmer"] .subnav a:hover,[data-route="arrangements"] .subnav a:hover{background:#eadfe2;color:#6d3540}
[data-route="tagungen"]{--hotel-red:#6d3540}
[data-route="tagungen"] header,[data-route="tagungen"] footer{background:#6d3540}
[data-route="tagungen"] .button{background:#6d3540;border-color:#6d3540}
[data-route="tagungen"] .button.outline{background:transparent;color:#6d3540;border-color:#6d3540}
[data-route="tagungen"] .sage{background:#eadfe2}
[data-route="tagungen"] .subnav a:hover{background:#eadfe2;color:#6d3540}
[data-route="start"] header{background:#242f34}
[data-route="hotel"] .header-actions .button,[data-route="zimmer"] .header-actions .button,[data-route="arrangements"] .header-actions .button,[data-route="tagungen"] .header-actions .button{background:#f1eadb;color:#6d3540;border-color:#f1eadb}
[data-route="restaurant"] .subnav a:hover{background:#2f473a;color:#fff;border-color:#2f473a}
/* Restaurant-Subnavigation bleibt auch von der Startseite aus dunkelgrün */
header nav .nav-group:nth-child(2) .subnav a:hover{background:#2f473a;color:#fff;border-color:#2f473a}
header nav .nav-group:nth-child(2) .subnav a:hover{background:#e8ecdf;color:#26382f;border-color:#e8ecdf}
.impressions-grid figure{height:360px}
@media(max-width:650px){.impressions-grid figure{height:300px}}
[data-route="start"] header nav .subnav{background:#dce1e2;color:#242f34}
[data-route="start"] header nav .subnav a:hover{background:#cbd3d5;color:#242f34;border-color:#cbd3d5}
.menu-toggle{font-size:32.4px}
.menu-links a{display:block;padding:8px 10px;margin-left:-10px;transition:background-color .2s ease,color .2s ease,transform .2s ease}
.menu-links a:hover,.menu-links a:focus-visible{background:#e8ecdf;color:#26382f;transform:translateX(4px);text-decoration:none}
.menu-links .menu-group:first-child a:hover,.menu-links .menu-group:first-child a:focus-visible{background:#eadfe2;color:#6d3540}
.menu-links .menu-direct a[href="#hochzeiten"]:hover,.menu-links .menu-direct a[href="#hochzeiten"]:focus-visible{background:#f1e0d8;color:#a75838}
.menu-links .menu-direct a[href="#kontakt"]:hover,.menu-links .menu-direct a[href="#kontakt"]:focus-visible{background:#dce1e2;color:#242f34}
@media(max-width:650px){.menu-toggle{font-size:26.4px}}
[data-route="start"] header nav .subnav{background:#fff;color:#242f34}
[data-route="start"] header nav .subnav a{color:#242f34;background:#fff}
[data-route="start"] header nav .subnav a:hover,[data-route="start"] header nav .subnav a:focus-visible{background:#e2e5e6;color:#242f34;border-color:#e2e5e6}
[data-route="start"] header nav .nav-group:nth-child(2) .subnav{background:#fff;color:#242f34}
[data-route="start"] header nav .nav-group:nth-child(2) .subnav a{background:#fff;color:#242f34}
[data-route="start"] header nav .nav-group:nth-child(2) .subnav a:hover,[data-route="start"] header nav .nav-group:nth-child(2) .subnav a:focus-visible{background:#e2e5e6;color:#242f34;border-color:#e2e5e6}
.header-actions .button{transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.header-actions .button:hover,.header-actions .button:focus-visible{background:#d9d9ca;color:#242f34;border-color:#d9d9ca;transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.16);text-decoration:none}
[data-route="hotel"] .header-actions .button:hover,[data-route="zimmer"] .header-actions .button:hover,[data-route="arrangements"] .header-actions .button:hover,[data-route="tagungen"] .header-actions .button:hover{background:#e3d6c0;color:#6d3540;border-color:#e3d6c0}
@media(prefers-reduced-motion:reduce){.header-actions .button:hover,.header-actions .button:focus-visible{transform:none}}

/* Eindeutige Untermenüs und Rubrikfarben */
body{--subnav-ink:#26382f;--subnav-hover:#e8ecdf}
[data-route="hotel"],[data-route="zimmer"],[data-route="arrangements"],[data-route="tagungen"]{--subnav-ink:#6d3540;--subnav-hover:#eadfe2}
[data-route="restaurant"],[data-route="feier"],[data-route="gutscheine"]{--subnav-ink:#26382f;--subnav-hover:#e8ecdf}
[data-route="hochzeiten"]{--subnav-ink:#a75838;--subnav-hover:#f1e0d8}
[data-route="start"],[data-route="kontakt"]{--subnav-ink:#242f34;--subnav-hover:#e2e5e6}
header nav .subnav,header nav .nav-group:nth-child(2) .subnav{background:#fff;color:var(--subnav-ink)}
header nav .subnav a,header nav .nav-group:nth-child(2) .subnav a{background:#fff;color:var(--subnav-ink);border:0}
header nav .subnav a:hover,header nav .subnav a:focus-visible,header nav .nav-group:nth-child(2) .subnav a:hover,header nav .nav-group:nth-child(2) .subnav a:focus-visible{background:var(--subnav-hover);color:var(--subnav-ink);border-color:var(--subnav-hover)}
.nav-group.is-open .subnav{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
header nav:hover .nav-group:not(:hover) .subnav{opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none}

/* Zimmergalerie als ruhiges Layout-Raster mit vergrößerbarer Ansicht */
.room-gallery{padding-top:20px}
.room-layout-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:clamp(250px,27vw,390px);gap:16px}
.room-layout-card{position:relative;display:block;width:100%;height:100%;padding:0;border:0;background:#18221e;color:#fff;cursor:zoom-in;overflow:hidden;text-align:left}
.room-layout-card-1,.room-layout-card-4{grid-column:span 2}
.room-layout-card img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease}
.room-layout-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(8,16,13,.72));pointer-events:none;transition:background .35s ease}
.room-layout-card:hover img,.room-layout-card:focus-visible img{transform:scale(1.035);filter:saturate(1.05)}
.room-layout-card:hover::after,.room-layout-card:focus-visible::after{background:linear-gradient(180deg,rgba(8,16,13,.05) 25%,rgba(8,16,13,.82))}
.room-layout-card:focus-visible{outline:3px solid #e3d6c0;outline-offset:3px}
.room-layout-zoom{position:absolute;right:clamp(16px,2vw,28px);bottom:clamp(16px,2vw,28px);z-index:1;width:42px;height:42px;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(17,30,24,.36);transition:background .25s ease,transform .25s ease}
.room-layout-zoom::before{content:"";position:absolute;left:12px;top:10px;width:12px;height:12px;border:2px solid #fff;border-radius:50%}.room-layout-zoom::after{content:"";position:absolute;left:24px;top:24px;width:9px;height:2px;background:#fff;transform:rotate(45deg);transform-origin:left center}
.room-layout-card:hover .room-layout-zoom,.room-layout-card:focus-visible .room-layout-zoom{background:rgba(17,30,24,.82);transform:scale(1.06)}
.room-gallery-data{display:none}
.image-lightbox{width:min(1180px,94vw);max-width:none;height:min(850px,92vh);padding:54px 70px 44px;border:0;background:#18221e;color:#fff;overflow:hidden}
.image-lightbox::backdrop{background:rgba(9,14,12,.88);backdrop-filter:blur(4px)}
.image-lightbox[open]{animation:gallery-reveal .28s ease both}
.image-lightbox figure{display:grid;grid-template-rows:minmax(0,1fr) auto;width:100%;height:100%;margin:0}
.image-lightbox figure img{width:100%;height:100%;min-height:0;object-fit:contain}
.image-lightbox figcaption{display:flex;justify-content:center;align-items:baseline;gap:12px;text-align:center;padding-top:14px;font-size:16px}
.image-lightbox figcaption strong{font-family:var(--serif);font-size:23px;font-weight:500}.image-lightbox figcaption span{opacity:.72}
.image-lightbox .close{position:absolute;top:14px;right:18px;color:#fff;background:transparent;border:0;font-size:27px;cursor:pointer}
.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:rgba(0,0,0,.25);color:#fff;font-size:24px;cursor:pointer}
.lightbox-arrow:hover,.lightbox-arrow:focus-visible{background:#fff;color:#18221e}
.lightbox-prev{left:14px}.lightbox-next{right:14px}
@keyframes gallery-reveal{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
@media(max-width:760px){.room-layout-grid{grid-template-columns:1fr;grid-auto-rows:270px;gap:10px}.room-layout-card-1,.room-layout-card-4{grid-column:auto}.image-lightbox{width:100vw;height:100vh;padding:55px 45px 35px}.image-lightbox figcaption{flex-direction:column;align-items:center;gap:2px}.lightbox-arrow{width:38px;height:38px}.lightbox-prev{left:4px}.lightbox-next{right:4px}}
@media(prefers-reduced-motion:reduce){.room-layout-card img,.room-layout-zoom{transition:none}.room-layout-card:hover img,.room-layout-card:focus-visible img{transform:none}.image-lightbox[open]{animation:none}}

/* Hochzeiten: Navigation und Inhalt als zusammenhängende Farbwelt */
[data-route="hochzeiten"],[data-route="hochzeitsanfrage"]{--wedding:#a75838;--wedding-light:#f1e0d8;--wedding-soft:#f7eee9;--subnav-ink:#a75838;--subnav-hover:#f1e0d8}
[data-route="hochzeiten"] header,[data-route="hochzeitsanfrage"] header,[data-route="hochzeiten"] footer,[data-route="hochzeitsanfrage"] footer{background:var(--wedding)}
[data-route="hochzeiten"] .button,[data-route="hochzeitsanfrage"] .button{background:var(--wedding);color:#fff;border-color:var(--wedding)}
[data-route="hochzeiten"] .button:hover,[data-route="hochzeiten"] .button:focus-visible,[data-route="hochzeitsanfrage"] .button:hover,[data-route="hochzeitsanfrage"] .button:focus-visible{background:#8f472f;border-color:#8f472f;color:#fff}
[data-route="hochzeiten"] .button.outline,[data-route="hochzeitsanfrage"] .button.outline{background:transparent;color:var(--wedding);border-color:var(--wedding)}
[data-route="hochzeiten"] .button.outline:hover,[data-route="hochzeiten"] .button.outline:focus-visible,[data-route="hochzeitsanfrage"] .button.outline:hover,[data-route="hochzeitsanfrage"] .button.outline:focus-visible{background:var(--wedding-light);color:#7f3d29;border-color:var(--wedding)}
[data-route="hochzeiten"] .sage,[data-route="hochzeitsanfrage"] .sage{background:var(--wedding-light)}
[data-route="hochzeiten"] main,[data-route="hochzeitsanfrage"] main{color:#49342c}
[data-route="hochzeiten"] .eyebrow,[data-route="hochzeiten"] .text-link,[data-route="hochzeitsanfrage"] .eyebrow,[data-route="hochzeitsanfrage"] .text-link{color:var(--wedding)}
[data-route="hochzeiten"] .subhero .eyebrow,[data-route="hochzeiten"] .subhero .breadcrumbs,[data-route="hochzeitsanfrage"] .subhero .eyebrow,[data-route="hochzeitsanfrage"] .subhero .breadcrumbs{color:#fff}
[data-route="hochzeiten"] .subhero:after,[data-route="hochzeitsanfrage"] .subhero:after{background:linear-gradient(0deg,rgba(105,45,28,.88),rgba(105,45,28,.08))}
[data-route="hochzeiten"] main>.wrap.compact .three article{border:1px solid #d5dbcf;background:#fff}
[data-route="hochzeiten"] main>.wrap.compact .venue-title{color:#26382f;padding:0 22px 22px}
[data-route="hochzeiten"] .meta,[data-route="hochzeitsanfrage"] .meta{color:#79584d}
[data-route="hochzeitsanfrage"] .form-shell{border-color:#d9b5a6}
[data-route="hochzeitsanfrage"] .form-note{background:var(--wedding-soft);color:#6e4b40}
[data-route="hochzeiten"] .header-actions .button,[data-route="hochzeitsanfrage"] .header-actions .button{background:#f7eee9;color:#7f3d29;border-color:#f7eee9}
[data-route="hochzeiten"] .header-actions .button:hover,[data-route="hochzeiten"] .header-actions .button:focus-visible,[data-route="hochzeitsanfrage"] .header-actions .button:hover,[data-route="hochzeitsanfrage"] .header-actions .button:focus-visible{background:#ead2c7;color:#713824;border-color:#ead2c7}
[data-route="hochzeiten"] button:focus-visible,[data-route="hochzeiten"] a:focus-visible,[data-route="hochzeitsanfrage"] button:focus-visible,[data-route="hochzeitsanfrage"] a:focus-visible,[data-route="hochzeitsanfrage"] input:focus-visible,[data-route="hochzeitsanfrage"] textarea:focus-visible,[data-route="hochzeitsanfrage"] select:focus-visible{outline-color:var(--wedding)}

/* Präsentationsfähige DIRS21-Lightbox; Widget-Anschluss über die aktuelle Kunden-ID. */
.booking-lightbox{width:min(1240px,96vw);max-width:none;height:min(900px,94vh);padding:0;background:#faf9f6;color:#26382f;overflow:hidden}
.booking-lightbox::backdrop{background:rgba(16,29,24,.82);backdrop-filter:blur(5px)}
.booking-lightbox .close{z-index:2;color:#fff;font-size:29px}
.booking-lightbox-bar{height:92px;padding:18px 74px 18px 32px;background:#263c33;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px}
.booking-lightbox-bar>div{display:flex;flex-direction:column;gap:2px}.booking-lightbox-bar .eyebrow{color:#e8ecdf;margin:0;font-size:11px}.booking-lightbox-bar strong{font-family:var(--serif);font-size:25px;font-weight:500}.booking-lightbox-bar a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.65);padding-bottom:3px}.booking-lightbox-bar a:hover,.booking-lightbox-bar a:focus-visible{border-color:#fff}
.booking-embed{position:relative;height:calc(100% - 92px);background:#f1efe9}.booking-embed iframe{position:relative;z-index:1;width:100%;height:100%;border:0;background:#fff}.booking-loading{position:absolute;inset:0;display:grid;place-items:center;color:#526157}.booking-loading[hidden]{display:none}
.booking-lightbox-head{padding:55px 60px 42px;background:#263c33;color:#fff}
.booking-lightbox-head .eyebrow{color:#e8ecdf;margin-bottom:16px}
.booking-lightbox-head h2{font-size:clamp(2.8rem,5vw,4.8rem)}
.booking-lightbox-head p{margin-bottom:0}
#booking-quickbook{padding:40px 60px}
.booking-fields{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:18px;margin-bottom:26px}
.booking-lightbox input,.booking-lightbox select{border-color:#9eaa98}
.booking-lightbox .button{width:100%;font-size:21px;background:#263c33;border-color:#263c33}
.booking-lightbox .button:hover,.booking-lightbox .button:focus-visible{background:#385346;border-color:#385346}
.booking-status{padding:0;margin:22px 0 0;font-size:16px;line-height:1.55}
.booking-status:not(:empty){padding:18px;background:#e8ecdf;border-left:3px solid #263c33}
.booking-trust{display:flex;justify-content:center;gap:18px 35px;flex-wrap:wrap;padding:20px 35px;background:#e8ecdf;font-size:15px}
@media(max-width:700px){.booking-lightbox{width:100vw;height:100vh}.booking-lightbox-bar{height:112px;padding:18px 55px 18px 18px;align-items:flex-start;flex-direction:column;gap:8px}.booking-lightbox-bar strong{font-size:21px}.booking-lightbox-bar a{font-size:13px}.booking-embed{height:calc(100% - 112px)}.booking-lightbox .close{top:8px;right:10px}}

/* Finale Inhalts- und Formularergänzungen */
.equal-buttons{align-items:stretch}.equal-buttons .button{flex:1 1 250px;min-width:250px;min-height:72px}
.downloads.equal-buttons .button{flex-basis:280px}
.downloads .button{min-width:280px;min-height:72px}.form-actions .button{min-height:58px}.inline-actions .button{min-height:58px}
.arrangement-card{padding:0;overflow:hidden}.arrangement-image{width:100%;height:280px;object-fit:cover}.arrangement-body{display:flex;flex:1;flex-direction:column;padding:34px 38px}.arrangement-body .eyebrow{margin-bottom:14px}
.wedding-parallax,.wedding-funnel-teaser{position:relative;isolation:isolate;color:#fff;background:#6f352f url('assets/bankettsaal.jpg') center/cover fixed no-repeat}.wedding-parallax::after,.wedding-funnel-teaser::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(79,30,20,.9),rgba(79,30,20,.28))}.wedding-parallax .wrap,.wedding-funnel-teaser .wrap{max-width:1260px}.wedding-parallax p,.wedding-funnel-teaser p{max-width:610px;font-size:21px}.wedding-funnel-teaser{background-image:url('assets/feier2.jpg')}
.wedding-funnel{max-width:1040px}.funnel-panel h2{font-size:clamp(2.2rem,4vw,3.7rem);margin-bottom:35px}.funnel-panel .form-grid{margin-top:26px}
.spam-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.security-note{padding:11px 14px;margin:0;font-size:12px}
.wellness-layout-grid{grid-auto-flow:dense}.wellness-layout-grid .room-layout-card{min-height:250px}
.form-result.error{border-color:#a75838;background:#f7eee9}.admin-login{max-width:900px}
[data-route="hochzeitsplaner"] header,[data-route="hochzeitsplaner"] footer{background:#a75838}[data-route="hochzeitsplaner"] .button{background:#a75838;border-color:#a75838}[data-route="hochzeitsplaner"] .button.outline{background:transparent;color:#a75838}
@media(max-width:760px){.equal-buttons .button,.downloads .button{min-width:0;flex-basis:100%;min-height:58px}.arrangement-image{height:230px}.arrangement-body{padding:27px 24px}.wedding-parallax,.wedding-funnel-teaser{background-attachment:scroll}.wellness-layout-grid{grid-auto-rows:245px}.steps{overflow-x:auto}.step{min-width:105px}}
