/*
Theme Name: Hotel Lipmann
Author: Hotel Lipmann
Description: Eigenes Theme für das Hotel Lipmann in Beilstein an der Mosel. Alle Texte, Preise, Bilder und Kontaktdaten ändern Sie unter Design > Customizer, ohne Code.
Version: 1.0
Text Domain: hotel-lipmann
Requires at least: 6.0
Requires PHP: 7.4
*/

@font-face{font-family:"Cormorant Garamond";font-weight:300;font-style:normal;font-display:swap;src:url("assets/fonts/cormorant-garamond-300.woff2") format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-weight:400;font-style:normal;font-display:swap;src:url("assets/fonts/cormorant-garamond-400.woff2") format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-weight:400;font-style:italic;font-display:swap;src:url("assets/fonts/cormorant-garamond-400italic.woff2") format("woff2")}
@font-face{font-family:"Montserrat";font-weight:400;font-style:normal;font-display:swap;src:url("assets/fonts/montserrat-400.woff2") format("woff2")}
@font-face{font-family:"Montserrat";font-weight:500;font-style:normal;font-display:swap;src:url("assets/fonts/montserrat-500.woff2") format("woff2")}
@font-face{font-family:"Montserrat";font-weight:600;font-style:normal;font-display:swap;src:url("assets/fonts/montserrat-600.woff2") format("woff2")}
:root{--bg:#f6f3ee;--surface:#ebe5dc;--ink:#4a4036;--head:#6f635a;--taupe:#7f7469;--taupe-d:#655b51;--gold:#d9c9a8;--line:#ddd5c8;
--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:"Montserrat",system-ui,-apple-system,"Segoe UI",sans-serif;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#231e18;--surface:#2e271f;--ink:#eee6d8;--head:#d9cdbb;--line:#43392d}}
:root[data-theme="dark"]{--bg:#231e18;--surface:#2e271f;--ink:#eee6d8;--head:#d9cdbb;--line:#43392d}
*,*::before,*::after{box-sizing:inherit}
html{scroll-behavior:smooth;scroll-padding-top:calc(150px + env(safe-area-inset-top,0px));height:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 .95rem/1.8 var(--sans);-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);background:var(--bg);z-index:50}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1;margin:0;color:var(--head)}
a{color:inherit}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.pill{display:inline-block;padding:.8rem 1.6rem;background:var(--taupe);color:#fff;text-decoration:none;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;border-radius:40px;transition:background .2s;border:0;cursor:pointer}
.pill:hover{background:var(--taupe-d)}.pill.line{background:transparent;border:1px solid #fff}.pill.line:hover{background:rgba(255,255,255,.18)}
header.top{position:sticky;top:0;z-index:40;background:var(--bg);padding-top:env(safe-area-inset-top,0px)}
header.top .in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:104px;padding:0 clamp(16px,3.5vw,56px)}
.l{display:flex;align-items:center;gap:26px}
.burger{background:none;border:0;cursor:pointer;padding:8px;color:var(--head)}
.tel{font-size:.82rem;letter-spacing:.14em;text-decoration:none;color:var(--head);font-weight:500}
.logo{text-align:center;text-decoration:none;color:var(--head);display:block}
.logo svg{display:block;margin:0 auto 4px}
.logo b{font:400 1.5rem var(--serif);letter-spacing:.16em;text-transform:uppercase}
.r{display:flex;justify-content:flex-end;gap:12px}
@media (max-width:820px){.tel{display:none}header.top .in{height:84px}.logo b{font-size:1.15rem}}
.hero{position:relative;min-height:86vh;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;background:linear-gradient(0deg,rgba(46,38,30,.7),rgba(46,38,30,.35) 55%,rgba(46,38,30,.45)),var(--im) center 40%/cover #7f7469}
.hero .in{padding:80px 24px;max-width:860px}
.hero h2{font-size:clamp(2.6rem,6.8vw,5.4rem);margin-bottom:18px;color:#fff;font-weight:300}
.hero p{font-size:1.05rem;margin:0 auto 34px;max-width:50ch}
.hero .row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
section{padding:110px 0}
.intro{text-align:center}.intro .wrap{max-width:780px}
.intro h1{font-size:clamp(2.2rem,4.6vw,3.6rem);margin-bottom:28px;font-weight:300}
.intro p{margin:0 0 1.2em}
.sign{font:italic 400 1.4rem var(--serif)!important;color:var(--head);margin-top:30px!important}
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,6vw,70px);max-width:1060px;margin:0 auto;padding:0 24px}
.tiles .col{display:flex;flex-direction:column;gap:clamp(24px,6vw,70px)}
.tiles .col.b{margin-top:clamp(40px,10vw,120px)}
.tile{position:relative;display:flex;align-items:flex-end;aspect-ratio:9/10;padding:clamp(20px,3vw,40px);color:#fff;text-decoration:none;background:linear-gradient(0deg,rgba(40,32,24,.6),rgba(40,32,24,0) 55%),var(--im) var(--pos,center)/cover;transition:filter .3s}
.tile:hover{filter:brightness(1.08)}
.tile h3{font-size:clamp(2rem,4vw,3.2rem);color:#fff;font-weight:400}
@media (max-width:640px){.tiles{grid-template-columns:1fr}.tiles .col.b{margin-top:0}}
.arr{text-align:center}
.arr h2{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:50px;font-weight:300}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,3vw,44px);max-width:1160px;margin:0 auto;padding:0 24px;text-align:left}
@media (max-width:820px){.cards{grid-template-columns:1fr}}
.card{position:relative;aspect-ratio:1/1.02;display:flex;flex-direction:column;justify-content:flex-end;padding:30px;color:#fff;text-decoration:none;background:linear-gradient(0deg,rgba(30,24,18,.75),rgba(30,24,18,.1) 65%),var(--im) var(--pos,center)/cover}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.chips span{background:rgba(255,255,255,.22);backdrop-filter:blur(6px);padding:3px 12px;border-radius:20px;font-size:.72rem;font-weight:600}
.card h3{font-size:clamp(2rem,3vw,2.6rem);color:#fff}
.card:hover h3{text-decoration:underline;text-underline-offset:6px}
.banner{background:linear-gradient(rgba(60,48,36,.62),rgba(60,48,36,.72)),var(--im) center 40%/cover #7f7469;color:#fff;text-align:center}
.banner h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:18px;color:#fff;font-weight:300}
.banner p{max-width:60ch;margin:0 auto 30px}
.faq .wrap{max-width:820px}
.faq h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:28px;text-align:center;font-weight:300}
.faq details{border-bottom:1px solid var(--line);padding:18px 0}
.faq summary{cursor:pointer;font-weight:600;font-size:.95rem}
.faq details p{margin:10px 0 0;opacity:.85}
footer{background:var(--taupe);color:#fff;text-align:center;padding:84px 24px 48px}
footer .adr{margin:0 0 10px;font-size:.95rem}
footer .big{font:400 clamp(1.7rem,3.4vw,2.4rem) var(--serif);line-height:1.3;margin:0}
footer .big a{text-decoration:none}
.circ{display:flex;justify-content:center;flex-wrap:wrap;gap:26px;margin:46px 0 40px}
.circ a{width:104px;text-decoration:none;font-weight:600;font-size:.82rem}
.circ i{display:flex;align-items:center;justify-content:center;width:84px;height:84px;margin:0 auto 12px;border-radius:50%;background:rgba(255,255,255,.2)}
.fine{font-size:.85rem;opacity:.85}.fine a{margin:0 12px}
.wa{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:30;background:#1f8f4e;color:#fff;text-decoration:none;font-weight:600;padding:.8rem 1.2rem;border-radius:40px;box-shadow:0 6px 20px rgba(0,0,0,.3);font-size:.85rem}
.gal{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,2vw,24px);max-width:1160px;margin:0 auto;padding:0 24px}.gal img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}@media (max-width:640px){.gal{grid-template-columns:1fr 1fr}}
.burger{display:none}
.nav{display:flex;justify-content:center;flex-wrap:wrap;gap:6px clamp(18px,3vw,40px);padding:0 24px 16px;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500}
.nav a{text-decoration:none;color:var(--head);padding:4px 0;border-bottom:1px solid transparent}.nav a:hover{border-bottom-color:var(--head)}
@media (min-width:821px){header.top .in{height:88px}}
@media (max-width:820px){.burger{display:block}.nav{display:none;flex-direction:column;align-items:center;padding:6px 24px 22px;border-top:1px solid var(--line)}.nav.open{display:flex}.nav a{padding:8px 0;font-size:.82rem}html{scroll-padding-top:calc(100px + env(safe-area-inset-top,0px))}}

body.admin-bar header.top{top:32px}
@media (max-width:782px){body.admin-bar header.top{top:46px}}
.entry{padding:70px 0 100px}.entry .wrap{max-width:820px}
.entry h1{font-size:clamp(2rem,4.5vw,3.2rem);margin-bottom:28px;font-weight:300}
.entry h2,.entry h3{margin:1.6em 0 .5em;font-weight:400}
.entry p,.entry li{margin:0 0 1em}
.entry a{color:var(--head)}
.fine a{text-decoration:underline;text-underline-offset:4px}
.nav ul,.fine ul{list-style:none;margin:0;padding:0}

.burger{display:block}
.nav{display:none;flex-direction:column;align-items:center;gap:6px;padding:6px 24px 22px;border-top:1px solid var(--line)}
.nav.open{display:flex}
.nav a{padding:8px 0;font-size:.82rem}
@media (min-width:821px){.nav{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:6px clamp(18px,3vw,40px);padding:12px 24px 16px}.nav a{padding:4px 0;font-size:.74rem}}

.arr .sub{max-width:62ch;margin:-26px auto 46px;padding:0 24px;color:var(--ink);opacity:.8}
.card{aspect-ratio:auto;padding:0;background:var(--surface);color:var(--ink);justify-content:flex-start;overflow:hidden;box-shadow:0 1px 0 var(--line);transition:transform .3s,box-shadow .3s}
.card:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(60,48,36,.2)}
.card .pic{position:relative;aspect-ratio:4/3;overflow:hidden}
.card .pic i{position:absolute;inset:0;display:block;background:var(--im) var(--pos,center)/cover;transition:transform .7s}
.card:hover .pic i{transform:scale(1.07)}
.card .price{position:absolute;left:16px;top:16px;background:#fff;color:#5a4f45;padding:7px 15px;border-radius:30px;font-size:.78rem;font-weight:600;letter-spacing:.04em;box-shadow:0 4px 14px rgba(0,0,0,.18)}
.card .body{padding:26px 26px 30px;display:flex;flex-direction:column;gap:12px;flex:1}
.card .chips{margin:0}
.card .chips span{background:var(--bg);color:var(--head);backdrop-filter:none;border:1px solid var(--line)}
.card h3{color:var(--head);font-size:clamp(1.8rem,2.6vw,2.3rem)}
.card:hover h3{text-decoration:none}
.card p{margin:0;font-size:.92rem;opacity:.85}
.card .more{margin-top:auto;padding-top:12px;font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--head)}
.card .more::after{content:" \2192";transition:margin .3s}
.card:hover .more::after{margin-left:6px}
.arr-cta{margin:46px 0 0}

.lang{display:flex;align-items:center;gap:8px;font-size:.76rem;letter-spacing:.14em;font-weight:600;color:var(--head);margin-right:10px}
.lang a,.lang button{background:none;border:0;border-bottom:1px solid transparent;color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;padding:6px 2px;opacity:.55;text-decoration:none}
.lang .on{opacity:1;border-bottom-color:currentColor}
.lang a:hover,.lang button:hover{opacity:1}

.lmbot-fab{position:fixed;right:18px;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:35;width:56px;height:56px;border-radius:50%;border:0;background:var(--taupe,#7f7469);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(0,0,0,.3);transition:transform .2s}
.lmbot-fab:hover{transform:scale(1.07)}
.lmbot-panel{position:fixed;right:18px;bottom:calc(144px + env(safe-area-inset-bottom,0px));z-index:36;width:360px;max-width:calc(100vw - 24px);max-height:min(560px,calc(100vh - 190px));display:flex;flex-direction:column;background:var(--bg,#f6f3ee);color:var(--ink,#4a4036);border:1px solid var(--line,#ddd5c8);box-shadow:0 18px 50px rgba(0,0,0,.28);border-radius:14px;overflow:hidden}
.lmbot-panel[hidden]{display:none}
.lmbot-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;background:var(--taupe,#7f7469);color:#fff}
.lmbot-head b{display:block;font:400 1.35rem var(--serif,Georgia,serif);line-height:1.1}
.lmbot-head small{font-size:.72rem;opacity:.9}
.lmbot-x{background:none;border:0;color:#fff;font-size:1.7rem;line-height:1;cursor:pointer;padding:0 4px}
.lmbot-msgs{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:9px;font-size:.88rem;line-height:1.55}
.lmbot-m{max-width:88%;padding:10px 13px;border-radius:12px}
.lmbot-m.bot{align-self:flex-start;background:var(--surface,#ebe5dc);border-bottom-left-radius:3px}
.lmbot-m.me{align-self:flex-end;background:var(--taupe,#7f7469);color:#fff;border-bottom-right-radius:3px}
.lmbot-m a{color:inherit;font-weight:600;text-underline-offset:3px}
.lmbot-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px 10px}
.lmbot-chips button{background:none;border:1px solid var(--taupe,#7f7469);color:var(--head,#6f635a);border-radius:20px;padding:5px 12px;font:500 .76rem var(--sans,system-ui,sans-serif);cursor:pointer}
.lmbot-chips button:hover{background:var(--taupe,#7f7469);color:#fff}
.lmbot-in{display:flex;gap:8px;padding:10px 12px;border-top:1px solid var(--line,#ddd5c8)}
.lmbot-in input{flex:1;min-width:0;border:1px solid var(--line,#ddd5c8);background:var(--surface,#ebe5dc);color:inherit;border-radius:20px;padding:9px 14px;font:inherit;font-size:.88rem}
.lmbot-send{border:0;background:var(--taupe,#7f7469);color:#fff;border-radius:20px;padding:0 16px;font:600 .76rem var(--sans,system-ui,sans-serif);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
@media (prefers-reduced-motion:reduce){.lmbot-fab{transition:none}}

:root{--logo:#7a1f35}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--logo:#e8aab8}}
.logo .mark{display:block;width:230px;height:84px;background:var(--logo);-webkit-mask:url("assets/logo-mask.png") center/contain no-repeat;mask:url("assets/logo-mask.png") center/contain no-repeat}
@media (max-width:820px){.logo .mark{width:160px;height:58px}}

.logo .mark{width:200px;height:88px;background:url("assets/logo.png") center/contain no-repeat;-webkit-mask:none;mask:none}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .logo .mark{background-image:url("assets/logo-dark.png")}}
@media (min-width:821px){header.top .in{height:104px}}
@media (max-width:820px){.logo .mark{width:128px;height:62px}}

.subhero{min-height:62vh;display:flex;align-items:flex-end;color:#fff;background:linear-gradient(0deg,rgba(46,38,30,.72),rgba(46,38,30,.12) 60%),var(--im) center 40%/cover #7f7469}
.subhero .in{max-width:1120px;width:100%;margin:0 auto;padding:70px 24px 56px}
.subhero h1{color:#fff;font-size:clamp(2.8rem,7vw,5.4rem);font-weight:300}
.subhero .eyebrow{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;margin:0 0 10px;font-weight:600;color:#fff}
.subhero .back{display:inline-block;color:#fff;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;margin-bottom:22px;opacity:.9}
.subhero .back:hover{text-decoration:underline;text-underline-offset:4px}
.subtext{padding:90px 0 70px}.subtext .wrap{max-width:820px}
.subtext h2{font-size:clamp(2rem,4vw,3rem);font-weight:300;margin-bottom:22px}.subtext p{margin:0 0 1.1em}
.hl{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.hl li{padding:12px 0;border-bottom:1px solid var(--line)}
@media (max-width:640px){.hl{grid-template-columns:1fr}}
.gal2{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,2vw,24px);max-width:1160px;margin:0 auto 20px;padding:0 24px}
.gal2 .gi,.gal2 img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.gal2 .gi{background:var(--im) center/cover}
@media (max-width:640px){.gal2{grid-template-columns:1fr 1fr}}
.subcta{margin-top:70px}.subcta .row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

.entry.has-hero{padding:0 0 90px}
.entry.has-hero article{padding-top:70px}
.entry .gal2{padding:0;margin:30px 0}
.subcta .pill{margin:0 4px}

.anfrage{padding:90px 0;background:var(--surface)}
.anfrage h2{text-align:center;font-size:clamp(2rem,4vw,3rem);font-weight:300;margin-bottom:16px}
.anfrage .lead{text-align:center;max-width:62ch;margin:0 auto 42px;opacity:.85}
.pill.ghost{background:transparent;color:var(--head);border:1px solid var(--taupe)}
.pill.ghost:hover{background:var(--taupe);color:#fff}
.arr-cta .pill{margin:6px 5px}

.houses{padding:100px 0;background:var(--surface)}
.houses h2{text-align:center;font-size:clamp(2rem,4vw,3rem);font-weight:300;margin-bottom:30px}
.htabs{display:flex;margin:0 auto 46px;border:1px solid var(--taupe);border-radius:40px;width:max-content;max-width:100%;overflow:hidden}
.htabs button{background:none;border:0;padding:.95rem 1.9rem;font:600 .78rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--head);cursor:pointer;transition:background .25s,color .25s}
.htabs button[aria-selected=true]{background:var(--taupe);color:#fff}
.htabs button:not([aria-selected=true]):hover{background:rgba(127,116,105,.14)}
.hpanel{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(24px,5vw,64px);align-items:center;animation:hfade .5s}
.hpanel[hidden]{display:none}
.hgal{display:grid;gap:12px}
.hmain{aspect-ratio:4/3;background:var(--im) center/cover}
.hthumbs{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hthumbs div{aspect-ratio:3/2;background:var(--im) center/cover}
.htxt h3{font-size:clamp(2rem,3.4vw,2.8rem);font-weight:300;margin-bottom:14px}.htxt p{margin:0 0 1em}
.htxt .hl{grid-template-columns:1fr;margin-top:18px}
.htxt .row{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
@keyframes hfade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (max-width:820px){.hpanel{grid-template-columns:1fr}.houses{padding:70px 0}.htabs{width:100%}.htabs button{flex:1;padding:.9rem .6rem;font-size:.68rem}}
@media (prefers-reduced-motion:reduce){.hpanel{animation:none}}

.gal2 img[src*="/z5.jpg"]{object-position:50% 65%}
.gal2 img[src*="/z6.jpg"]{object-position:50% 55%}
.gal2 img[src*="/z7.jpg"]{object-position:50% 72%}
.gal2 img[src*="/z8.jpg"]{object-position:50% 38%}

.menubar{background:var(--surface)}
.mb-grid{display:grid;grid-template-columns:1fr 1fr;min-height:460px}
.mb-img{background:var(--im) center/cover;min-height:300px}
.mb-txt{padding:64px clamp(24px,6vw,88px);display:flex;flex-direction:column;justify-content:center}
.mb-txt h2{font-size:clamp(2rem,3.6vw,3rem);font-weight:300;margin-bottom:16px}
.mb-txt p{margin:0 0 1.1em;max-width:46ch}
.mb-txt .row{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
@media (max-width:820px){.mb-grid{grid-template-columns:1fr}}
.menusec{padding:80px 0 20px;text-align:center}
.menusec h2{font-size:clamp(2rem,4vw,3rem);font-weight:300;margin-bottom:26px}
.menusec .wrap{max-width:900px}
.pdfview{width:100%;height:min(80vh,820px);border:1px solid var(--line);margin-bottom:22px;background:#fff}
.gal2 img[src*="/r4.jpg"]{object-position:50% 60%}

.reviews{padding:100px 0;text-align:center}
.reviews h2{font-size:clamp(2rem,4vw,3rem);font-weight:300;margin-bottom:26px}
.rv-sum{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;margin-bottom:46px}
.rv-score{font:300 3.6rem/1 var(--serif);color:var(--head)}
.rv-stars{color:#c9a24a;letter-spacing:.14em;font-size:1.25rem;white-space:nowrap}
.rv-meta{font-size:.85rem;opacity:.8;text-align:left}
.rv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.5vw,32px);max-width:1160px;margin:0 auto;padding:0 24px;text-align:left}
@media (max-width:900px){.rv-grid{grid-template-columns:1fr}}
.rv-card{background:var(--surface);padding:30px 28px;margin:0;display:flex;flex-direction:column;gap:14px}
.rv-card p{margin:0;font:400 1.2rem/1.55 var(--serif);color:var(--ink)}
.rv-card footer{background:none;color:inherit;padding:0;text-align:left;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin-top:auto}
.rv-card footer span{display:block;font-weight:400;letter-spacing:.04em;text-transform:none;opacity:.7;margin-top:2px}
.rv-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:38px}

.igsec{padding:90px 0 100px;text-align:center}
.igsec .ig-ico{display:inline-block;color:var(--head);margin-bottom:10px}
.igsec h2{font-size:clamp(2rem,4vw,3rem);font-weight:300;margin-bottom:6px}
.igsec .ig-handle{display:inline-block;margin-bottom:38px;color:var(--head);font-weight:600;letter-spacing:.08em;text-decoration:none}
.igsec .ig-handle:hover{text-decoration:underline;text-underline-offset:5px}
.ig-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;max-width:1240px;margin:0 auto;padding:0 24px}
@media (max-width:1000px){.ig-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:520px){.ig-grid{grid-template-columns:repeat(2,1fr)}}
.ig-tile{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;background:var(--surface)}
.ig-tile i{position:absolute;inset:0;background:var(--im) center/cover;transition:transform .5s}
.ig-tile::after{content:"";position:absolute;inset:0;background:rgba(60,48,36,.45) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='34' height='34' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='4' width='16' height='16' rx='4.5'/%3E%3Ccircle cx='12' cy='12' r='3.6'/%3E%3Ccircle cx='17' cy='7' r='.6'/%3E%3C/svg%3E") center no-repeat;opacity:0;transition:opacity .3s}
.ig-tile:hover i,.ig-tile:focus-visible i{transform:scale(1.07)}
.ig-tile:hover::after,.ig-tile:focus-visible::after{opacity:1}
.ig-btn{margin-top:38px}

.vt-wrap{max-width:1000px;margin:0 auto;padding:0 24px;overflow-x:auto}
.vt-table{width:100%;min-width:680px;border-collapse:collapse;text-align:center;font-size:.95rem}
.vt-table th,.vt-table td{padding:14px 12px;border-bottom:1px solid var(--line)}
.vt-table thead th{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--head);border-bottom:2px solid var(--taupe)}
.vt-table tbody th{font:400 1.35rem var(--serif);color:var(--head);text-align:left;border-right:1px solid var(--line)}
.vt-table .vt-pr{font-weight:600;color:var(--head)}
.vt-note{max-width:62ch;margin:24px auto 0;padding:0 24px;opacity:.8;font-size:.9rem}
.vt-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.5vw,32px);max-width:1160px;margin:0 auto;padding:0 24px;text-align:left}
@media (max-width:900px){.vt-cards{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.vt-cards{grid-template-columns:1fr}}
.vt-card{background:var(--surface);padding:30px 28px}
.vt-card h3{font-size:2rem;font-weight:400;margin-bottom:4px}
.vt-price{margin:0 0 14px;font-weight:600;color:var(--head)}
.vt-var{margin:12px 0 4px;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--head)}
.vt-or{margin:10px 0;font-style:italic;color:var(--head);font-family:var(--serif);font-size:1.15rem}
.vt-card ul{list-style:none;margin:0;padding:0}
.vt-card li{padding:8px 0;border-bottom:1px solid var(--line)}
.vt{padding-bottom:20px}

.vt-cards{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(16px,2.5vw,32px);max-width:1200px;margin:0 auto;padding:0 24px;text-align:left}
.vt-card{flex:1 1 270px;max-width:375px;background:var(--surface);padding:0;display:flex;flex-direction:column}
.vt-pic{position:relative;aspect-ratio:4/3;background:var(--im) center/cover;display:flex;align-items:flex-end;padding:20px 24px}
.vt-pic::before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(30,24,18,.72),rgba(30,24,18,0) 62%)}
.vt-pic h3{position:relative;margin:0;color:#fff;font-size:clamp(2rem,3vw,2.5rem);font-weight:400}
.vt-body{padding:24px 26px 30px;display:flex;flex-direction:column;flex:1}
.vt-body .vt-price{margin:0 0 10px;font-size:1.05rem}
.vt-body .pill{align-self:flex-start;margin-top:22px}
.vt-card ul+.vt-or{margin-top:12px}

.notice{background:var(--taupe);color:#fff;text-align:center;padding:9px 16px;font-size:.88rem;position:relative;z-index:45}
.notice a{color:#fff;font-weight:600;margin-left:10px;text-underline-offset:4px}
.hero-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-ov{position:absolute;inset:0;background:linear-gradient(0deg,rgba(46,38,30,.7),rgba(46,38,30,.3) 55%,rgba(46,38,30,.45))}
.hero{overflow:hidden}.hero .in{position:relative}
@media (prefers-reduced-motion:reduce){.hero-vid,.hero-ov{display:none}}
.events{padding:90px 0;background:var(--surface)}
.events h2,.press h2,.newsletter h2{text-align:center;font-size:clamp(2rem,4vw,3rem);font-weight:300;margin-bottom:34px}
.events .wrap{max-width:900px}
.ev-list{list-style:none;margin:0;padding:0}
.ev-list li{display:grid;grid-template-columns:200px 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}
.ev-date{font:400 1.5rem/1.2 var(--serif);color:var(--head)}
.ev-body h3{font-size:1.7rem;font-weight:400;margin-bottom:6px}
.ev-body p{margin:0 0 .8em}
.ev-body .more{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--head);text-underline-offset:5px}
@media (max-width:640px){.ev-list li{grid-template-columns:1fr;gap:6px}}
.press{padding:70px 0;text-align:center}
.pr-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:30px 56px;justify-content:center;align-items:center}
.pr-list a,.pr-list span{display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;color:var(--head)}
.pr-list img{max-height:70px;width:auto;filter:grayscale(1);opacity:.85}
.pr-list b{font:400 1.6rem var(--serif)}
.pr-list em{font-size:.8rem;opacity:.75}
.newsletter{padding:80px 0;background:var(--surface);text-align:center}
.newsletter .lead{max-width:56ch;margin:0 auto 28px;opacity:.85}
.newsletter .lmf{max-width:560px}
.rooms{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0}
.rooms figure{margin:0;background:var(--surface)}
.rooms img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.rooms figcaption{padding:16px 20px 22px;display:flex;flex-direction:column;gap:4px}
.rooms figcaption b{font:400 1.5rem var(--serif);color:var(--head)}
.rooms figcaption span{font-size:.92rem;opacity:.85}
@media (max-width:640px){.rooms{grid-template-columns:1fr}}

/* Zimmerkategorien */
.rm-nav{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:1120px;margin:10px auto 30px;padding:0 24px}
.rm-nav a{border:1px solid currentColor;border-radius:999px;padding:8px 18px;font-size:.82rem;letter-spacing:.08em;text-decoration:none;color:var(--head)}
.rm-nav a:hover{background:var(--head);color:#fff}
.rm-cat{padding:34px 0;scroll-margin-top:90px}
.rm-in{max-width:1160px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(24px,4vw,56px);align-items:center}
.rm-cat.rev .rm-pics{order:2}
.rm-pics img{width:100%;display:block;object-fit:cover}
.rm-main{aspect-ratio:4/3}
.rm-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.rm-thumbs img{aspect-ratio:4/3}
.rm-txt h2{font:300 clamp(2rem,4vw,2.9rem) var(--serif);color:var(--head);margin:4px 0 14px}
.rm-list{list-style:none;margin:18px 0;padding:0;display:grid;gap:8px}
.rm-list li{padding-left:22px;position:relative}
.rm-list li:before{content:"";position:absolute;left:0;top:.62em;width:10px;height:1px;background:var(--head)}
.rm-price{font:400 1.3rem var(--serif);color:var(--head)}
.rm-note{text-align:center;max-width:60ch;margin:30px auto 50px;opacity:.85;padding:0 24px}
@media (max-width:820px){.rm-in{grid-template-columns:1fr}.rm-cat.rev .rm-pics{order:0}}

.entry .faq{max-width:820px;margin:50px auto 30px}.entry .faq h2{text-align:center;font-weight:300;font-size:clamp(1.8rem,3.5vw,2.6rem);margin-bottom:20px}


:root{--wine:#5e1226;--wine-d:#430b1a;--accent:#5e1226;--taupe:#5e1226;--taupe-d:#430b1a}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--accent:#d49aa8}}
:root[data-theme="dark"]{--accent:#d49aa8}
.pill:hover{background:var(--wine-d)}
.pill.ghost{color:var(--accent);border-color:var(--wine)}.pill.ghost:hover{background:var(--wine);color:#fff}
.eyebrow{color:var(--accent)}.subhero .eyebrow,.hero .eyebrow{color:#fff}
.entry a,.nav a:hover,.faq summary:hover{color:var(--accent)}.nav a:hover{border-bottom-color:var(--accent)}
.faq summary::marker{color:var(--accent)}
.rm-price,.rm-nav a{color:var(--accent)}.rm-nav a{border-color:var(--wine)}.rm-nav a:hover{background:var(--wine);color:#fff}
.rm-list li:before{background:var(--wine)}
:focus-visible{outline-color:var(--wine)}

.news{background:linear-gradient(rgba(46,30,34,.66),rgba(46,30,34,.66)),var(--im) center/cover #5e1226;color:#fff;text-align:center;padding:clamp(80px,12vw,150px) 24px}
.news .in{max-width:780px;margin:0 auto}.news .eyebrow{font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;margin:0 0 14px;color:#fff}
.news h2{color:#fff;font-size:clamp(2.2rem,5vw,3.8rem);font-weight:300;margin-bottom:22px}.news p{margin:0 0 1.4em;font-size:1.05rem;line-height:1.9}

.entry mark{background:#f3e3a8;color:#4a4036;padding:0 3px;border-radius:2px}

/* Vorteile (Hotel Am Klosterberg) */
.ben{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:28px 0}
.ben div{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:22px 20px 20px 56px;position:relative;line-height:1.55}
.ben div::before{content:"\2713";position:absolute;left:18px;top:21px;width:26px;height:26px;border-radius:50%;background:var(--wine,#5e1226);color:#fff;font-size:.85rem;line-height:26px;text-align:center}
.ben b{display:block;font-weight:600;color:var(--head);margin-bottom:2px}
.ben span{font-size:.9rem}

/* Aktivitäten */
.acts{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px;margin:26px 0 34px}
.act{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:24px 22px 18px;display:flex;flex-direction:column}
.act h3{font-family:var(--serif);font-weight:500;font-size:1.3rem;line-height:1.25;color:var(--head);margin:0 0 6px}
.act .meta{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--wine,#5e1226);margin:0 0 10px;line-height:1.5}
.act p{margin:0 0 12px;font-size:.92rem}
.act p:last-child{margin:auto 0 0;padding-top:6px}

.secimg{display:block;width:100%;height:300px;object-fit:cover;background:var(--im) center/cover;border-radius:6px;margin:0 0 22px}
@media (max-width:600px){.secimg{height:200px}}

.prices{padding:10px 0 40px}
.pr-row{display:grid;grid-template-columns:140px 1fr auto auto;gap:22px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}
.pr-row img{width:140px;height:96px;object-fit:cover;border-radius:6px}
.pr-name h2{font-size:1.7rem}.pr-name p{margin:2px 0 0}.pr-name a{font-size:.85rem}
.pr-val{font:400 1.35rem var(--serif);color:var(--head);margin:0;text-align:right;min-width:11ch}.pr-val.soon{font-size:1.05rem;opacity:.75;font-style:italic}
.pr-btn{margin:0}
@media (max-width:760px){.pr-row{grid-template-columns:96px 1fr;gap:12px 16px}.pr-row img{width:96px;height:72px}.pr-val{grid-column:1/-1;text-align:left}.pr-btn{grid-column:1/-1}}

.sidenav{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:32;display:flex;align-items:stretch}
.sn-tab{writing-mode:vertical-rl;background:var(--wine,#5e1226);color:#fff;border:0;padding:20px 10px;font:600 .72rem var(--sans);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;border-radius:8px 0 0 8px}
.sn-tab:hover{background:var(--taupe-d)}
.sn-panel{display:none;flex-direction:column;gap:2px;width:min(240px,calc(100vw - 60px));background:var(--bg);border:1px solid var(--line);border-right:0;border-radius:8px 0 0 8px;padding:14px 18px;box-shadow:-6px 6px 24px rgba(0,0,0,.18)}
.sidenav.open .sn-panel{display:flex}
.sn-panel a{text-decoration:none;padding:5px 0;font-size:.88rem}.sn-panel a:hover{text-decoration:underline}
.sn-h{margin:10px 0 2px;font:400 1.15rem var(--serif);color:var(--head)}.sn-h:first-child{margin-top:0}.sn-h a{font-size:inherit}
@media print{.sidenav{display:none}}

.nav .has-sub{position:relative;display:inline-block}
.nav .has-sub>a::after{content:" \25BE";font-size:.8em}
.nav .sub{display:none}
@media (min-width:821px){.nav .sub{position:absolute;left:50%;transform:translateX(-50%);top:100%;min-width:190px;background:var(--bg);border:1px solid var(--line);box-shadow:0 10px 24px rgba(0,0,0,.14);padding:10px 18px;flex-direction:column;gap:4px;z-index:40;text-align:left}.nav .has-sub:hover .sub,.nav .has-sub:focus-within .sub{display:flex}.nav .sub a{white-space:nowrap}}
@media (max-width:820px){.nav .has-sub{display:flex;flex-direction:column;align-items:center}.nav .sub{display:flex;flex-direction:column;align-items:center}.nav .sub a{font-size:.72rem;opacity:.8;padding:4px 0}}

.vz{max-width:1000px;margin:0 auto;padding:60px 24px 20px;text-align:center}.vz h2{margin-bottom:8px}.vz-sub{opacity:.8;margin:0 0 26px}.vz-tabs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:28px}.vz-tabs button{font:600 .74rem var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:11px 20px;border:1px solid var(--taupe);background:transparent;color:var(--head);border-radius:999px;cursor:pointer}.vz-tabs button.on{background:var(--logo);border-color:var(--logo);color:#fff}.vz-panel{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:28px 20px}.vz-panel[hidden]{display:none}.vz-tiles{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.vz-tile{flex:1 1 200px;max-width:280px;background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--logo);border-radius:4px;padding:18px 14px;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--logo)}.vz-tile.w{border-top-color:#b8963e;color:#8a6d1f}.vz-tile.f{border-top-color:var(--taupe);color:var(--taupe-d)}.vz-tile b{font:400 2.3rem/1 var(--serif)}.vz-tile span{font-size:.85rem;color:var(--ink)}.vz-var{font:600 .7rem var(--sans);letter-spacing:.14em;text-transform:uppercase;opacity:.7;margin:0 0 10px}.vz-or{margin:14px 0 4px;font-style:italic;opacity:.7}.vz-incl{margin:22px 0 4px;font-size:.88rem;opacity:.85}.vz-pr{font:400 1.8rem var(--serif);color:var(--head);margin:6px 0 10px}.vz-cta{margin:0}.vz-week{margin-top:46px}.vz-wh{font-size:1.7rem;margin-bottom:16px}.vz-days{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.vz-d{border:1px solid var(--line);border-radius:4px;padding:12px 6px;background:var(--bg);font-size:.78rem;line-height:1.4;display:flex;flex-direction:column;gap:6px}.vz-d h3{font:600 .68rem var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--head)}.vz-d.w{background:#b8963e;border-color:#b8963e;color:#fff}.vz-d.w h3{color:#fff}.vz-d.r{background:var(--surface);opacity:.75;border-style:dashed}.vz-leg{margin:18px auto 0;max-width:60ch;font-size:.88rem;opacity:.85}@media (max-width:820px){.vz-days{grid-template-columns:1fr}.vz-d{flex-direction:row;align-items:center;justify-content:space-between;text-align:left;padding:12px 16px}.vz-d h3{min-width:100px}}

.vz-wv{display:block;font-style:normal;font-size:.72rem;opacity:.85;border-top:1px solid currentColor;padding-top:6px;margin-top:2px}.vz-d.r .vz-wv,.vz-d.w .vz-wv{opacity:.9}

.vz-tabs{display:inline-flex;flex-wrap:nowrap;gap:0;background:var(--surface);border-radius:999px;padding:5px;margin-bottom:26px;max-width:100%;overflow-x:auto}.vz-tabs button{border:0;border-radius:999px;padding:11px 18px;white-space:nowrap;color:var(--taupe-d);transition:background .25s,color .25s,box-shadow .25s}.vz-tabs button.on{background:var(--logo);color:#fff;box-shadow:0 6px 16px rgba(122,31,53,.35)}.vz-panel{display:grid;grid-template-columns:1.5fr 1fr;gap:0;padding:0;border:0;border-radius:22px;overflow:hidden;background:var(--surface);box-shadow:0 18px 50px rgba(60,40,30,.12);text-align:left}.vz-panel[hidden]{display:none}.vz-l{padding:28px 28px 22px}.vz-tiles{flex-direction:column;flex-wrap:nowrap;gap:12px;justify-content:flex-start}.vz-tile{flex:none;max-width:none;width:100%;display:grid;grid-template-columns:56px 1fr auto;grid-template-areas:"ic tx ct";align-items:center;gap:14px;padding:12px 18px 12px 12px;border:0;border-radius:16px;background:var(--bg);box-shadow:0 2px 10px rgba(60,40,30,.06)}.vz-tile svg{grid-area:ic;width:56px;height:56px;padding:13px;border-radius:50%;background:rgba(122,31,53,.1);box-sizing:border-box}.vz-tile.w svg{background:rgba(184,150,62,.18)}.vz-tile.f svg{background:rgba(127,116,105,.16)}.vz-tile span{grid-area:tx;font-size:.95rem}.vz-tile b{grid-area:ct;font-size:2rem}.vz-var{margin:0 0 12px}.vz-or{margin:16px 0 8px}.vz-r{background:linear-gradient(155deg,var(--logo),#4a1224);color:#fff;padding:32px 28px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:6px}.vz-r .vz-incl{order:3;margin:10px 0 18px;font-size:.84rem;opacity:.85}.vz-r .vz-pr{order:1;color:#fff;font-size:3rem;line-height:1.05;margin:0}.vz-r .vz-cta{order:4}.vz-r::before{content:"";order:0;width:34px;height:2px;background:#d9c9a8;margin-bottom:10px}.vz-r .pill{background:#fff;color:var(--logo);border-color:#fff}.vz-week{margin-top:54px}.vz-days{gap:6px}.vz-d{border:0;border-radius:14px;background:var(--surface);padding:14px 8px;position:relative}.vz-d::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--logo);align-self:flex-start}.vz-d.w{background:linear-gradient(160deg,#c9a64f,#a88529)}.vz-d.w::before{background:#fff}.vz-d.r{background:transparent;border:1px dashed var(--taupe);opacity:.8}.vz-d.r::before{background:var(--taupe)}.vz-wv{border-top:0;padding-top:0;opacity:.75}@media (max-width:820px){.vz-panel{grid-template-columns:1fr}.vz-r{align-items:center;text-align:center}.vz-r::before{align-self:center}.vz-d::before{display:none}}

@media (max-width:820px){.vz-d{flex-direction:column;align-items:flex-start;gap:3px;padding:12px 16px}.vz-d h3{min-width:0}.vz-tabs{display:flex}}

.vz-tile{grid-template-areas:"ic tx ct" "ic pp ct";row-gap:2px}.vz-tile svg{grid-row:1 / span 2}.vz-tile span{align-self:end}.vz-pips{grid-area:pp;display:flex;flex-wrap:wrap;gap:6px;align-self:start;padding-top:4px}.vz-pips u{width:12px;height:12px;border-radius:50%;background:currentColor;display:block}.vz-tile b{width:48px;height:48px;border-radius:50%;background:var(--logo);color:#fff;display:flex;align-items:center;justify-content:center;font:400 1.5rem/1 var(--serif);padding-bottom:3px}.vz-tile.w b{background:#b8963e}.vz-tile.f b{background:var(--taupe)}

.vz-r .vz-incl{order:1;font-size:1.05rem;opacity:.95;margin:12px 0 22px;max-width:30ch}.vz-r .vz-cta{display:flex;flex-wrap:wrap;gap:10px}.vz-r .pill.line{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.7)}

.vzp{max-width:1000px;margin:0 auto;padding:30px 24px 70px;text-align:center}.vzp h2{margin-bottom:8px}.vzp-sub{opacity:.8;margin:0 0 24px}.vzp-form{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;background:var(--surface);border-radius:18px;padding:18px 20px;margin-bottom:22px}.vzp-form label{display:flex;flex-direction:column;gap:4px;text-align:left;font:600 .68rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--head)}.vzp-form input,.vzp-form select{font:400 .95rem var(--sans);color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px;min-width:170px}.vzp-hint{opacity:.75;font-style:italic}.vzp-in{margin:0 0 12px}.vzp-mets{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:20px}.vzp-met{display:flex;align-items:center;gap:10px;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:.84rem}.vzp-met i{display:flex;gap:5px}.vzp-met u{width:12px;height:12px;border-radius:50%;border:2px solid var(--logo);display:block}.vzp-met u.on{background:var(--logo)}.vzp-met.w u{border-color:#b8963e}.vzp-met.w u.on{background:#b8963e}.vzp-met b{font-weight:600}.vzp-days{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;text-align:left}.vzp-day{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:8px;box-shadow:0 2px 10px rgba(60,40,30,.05)}.vzp-day.fr{border-color:#b8963e}.vzp-dh{display:flex;flex-direction:column;line-height:1.3;margin-bottom:2px}.vzp-dh b{font:400 1.35rem var(--serif);color:var(--head)}.vzp-dh span{font-size:.8rem;opacity:.7}.vzp-c{font:500 .82rem/1.3 var(--sans);text-align:left;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;transition:background .2s,color .2s}.vzp-c.on.m{background:var(--logo);border-color:var(--logo);color:#fff}.vzp-c.on.w{background:#b8963e;border-color:#b8963e;color:#fff}.vzp-c:disabled{opacity:.4;cursor:not-allowed;border-style:dashed}.vzp-note{margin:22px auto 16px;max-width:62ch;font-size:.86rem;opacity:.8}.vzp-act{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:0}

.vzp .pill.line{background:transparent;color:var(--logo);border:1px solid var(--logo)}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .vzp .pill.line{color:#e8aab8;border-color:#e8aab8}}

.vz-r .vz-incl strong{display:block;font:400 2.4rem/1.1 var(--serif);margin-bottom:6px}

.vzp-warn{background:rgba(184,150,62,.16);border:1px solid #b8963e;border-radius:12px;padding:12px 16px;margin:0 auto 16px;max-width:62ch;font-size:.9rem}

.vz-r{background-size:cover;background-position:center;justify-content:flex-end;min-height:340px;position:relative}.vz-r::before{width:46px;margin-bottom:14px}.vz-r .vz-incl{margin:0 0 22px;font-size:1.02rem;text-shadow:0 1px 8px rgba(0,0,0,.45)}.vz-r .vz-incl strong{font-size:2.8rem;text-shadow:0 2px 14px rgba(0,0,0,.5)}.vz-r .pill{box-shadow:0 6px 18px rgba(0,0,0,.25)}.vz-r .pill.line{background:rgba(255,255,255,.12);backdrop-filter:blur(6px)}.vz-r{background-image:linear-gradient(180deg,rgba(40,14,22,.15) 0%,rgba(40,14,22,.55) 45%,rgba(40,14,22,.9) 100%),url("assets/img/r0.jpg")}

.vzp-rest{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;padding:12px 10px;border-radius:12px;background:var(--logo);color:#fff}.vzp-rest b{font:700 1.05rem var(--sans);letter-spacing:.22em;text-transform:uppercase}.vzp-rest span{font-size:.74rem;opacity:.85}.vzp-day.mi{border-color:var(--logo);border-width:2px}

.vzp-c.on:disabled{opacity:1;border-style:solid;cursor:default}

.vz-r{background-image:linear-gradient(155deg,var(--logo),#4a1224)!important;justify-content:center;min-height:0}.vz-r .vz-incl{margin-bottom:22px}

.vz-d.w .vz-wv.rt{font-weight:600;opacity:1;border-top:1px solid rgba(255,255,255,.55);padding-top:6px;margin-top:2px;font-size:.74rem}

.mk{max-width:760px;margin:0 auto 26px;text-align:left}.mk h3{font:400 clamp(1.8rem,3.5vw,2.4rem) var(--serif);font-style:italic;color:var(--logo);margin:34px 0 14px;border-bottom:1px solid var(--line);padding-bottom:8px}.mk-i{display:grid;grid-template-columns:1fr auto;column-gap:18px;padding:12px 0;border-bottom:1px dotted var(--line)}.mk-i b{font:600 1rem var(--sans);color:var(--head)}.mk-i span{grid-column:1;font-size:.88rem;opacity:.8;font-style:italic}.mk-i em{grid-row:1 / span 2;grid-column:2;font:400 1.35rem var(--serif);font-style:normal;color:var(--logo);align-self:center}.mk-note{text-align:center;font-size:.8rem;opacity:.65;margin:10px 0 24px}

.bm{max-width:1000px;margin:0 auto;padding:10px 24px 50px;text-align:center}.bm h2{font:400 clamp(2rem,4vw,2.8rem) var(--serif);font-style:italic;color:var(--logo);margin:0 0 6px}.bm-sub{opacity:.75;margin:0 0 26px}.bm-g{display:grid;grid-template-columns:1fr 1fr;gap:22px;text-align:left}.bm-c{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px 26px 18px;box-shadow:0 6px 24px rgba(0,0,0,.05)}.bm-c h3{font:400 1.7rem var(--serif);font-style:italic;color:var(--logo);margin:0 0 12px;text-align:center}.bm-ap{display:grid;grid-template-columns:1fr auto;gap:0 12px;padding:10px 12px;margin:0 0 6px;background:rgba(0,0,0,.035);border-radius:8px;font-size:.92rem}.bm-ap b{grid-column:1}.bm-ap span{grid-column:1;font-size:.82rem;opacity:.75;font-style:italic}.bm-ap em{grid-row:1/span 2;grid-column:2;font-style:normal;align-self:center;color:var(--logo);white-space:nowrap}.bm-c h4{font:600 .78rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--logo);margin:18px 0 6px;padding-bottom:5px;border-bottom:1px solid var(--line)}.bm-c ul{list-style:none;margin:0;padding:0}.bm-c li{display:grid;grid-template-columns:1fr auto;column-gap:12px;padding:8px 0;border-bottom:1px dotted var(--line)}.bm-c li:last-child{border-bottom:0}.bm-c li b{font:600 .98rem var(--sans);color:var(--head)}.bm-c li span{grid-column:1;font-size:.84rem;opacity:.75;font-style:italic}.bm-c li em{grid-row:1/span 2;grid-column:2;font-style:normal;color:var(--logo);align-self:center;font-size:.9rem}.bm-n{font-size:.8rem;opacity:.6;margin:18px 0 0}@media(max-width:760px){.bm-g{grid-template-columns:1fr}}

header.top .util{display:flex;justify-content:space-between;align-items:center;padding:8px clamp(16px,3.5vw,56px) 0;min-height:32px}header.top .util .lang{margin:0}header.top .util .tel{font-size:.78rem}header.top .in{height:84px!important;padding-top:0}header.top .in .l,header.top .in .r{min-width:0}@media (max-width:820px){header.top .util{justify-content:flex-end;padding-top:6px;min-height:26px}header.top .in{height:68px!important}}

.wx{max-width:1000px;margin:0 auto;padding:26px 24px 6px}.wx[hidden]{display:none}.wx-in{display:flex;align-items:center;gap:26px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 24px;box-shadow:0 6px 24px rgba(0,0,0,.05)}.wx-now{display:flex;align-items:center;gap:14px;padding-right:26px;border-right:1px solid var(--line);min-width:0}.wx-now svg{width:54px;height:54px;color:var(--logo);flex:none}.wx-t{font:400 2.4rem/1 var(--serif);color:var(--head)}.wx-l{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--logo);font-weight:600;display:block;margin-bottom:4px}.wx-s{font-size:.82rem;opacity:.7;display:block;margin-top:4px}.wx-d{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;flex:1;text-align:center}.wx-d div{padding:4px 2px}.wx-d b{display:block;font:600 .74rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--head)}.wx-d svg{width:30px;height:30px;color:var(--logo);margin:4px auto}.wx-d span{display:block;font-size:.86rem}.wx-d i{font-style:normal;opacity:.55;margin-left:4px}.wx-d em{display:block;font-style:normal;font-size:.72rem;opacity:.6}@media(max-width:760px){.wx-in{flex-direction:column;align-items:stretch;gap:12px;padding:16px}.wx-now{border-right:0;border-bottom:1px solid var(--line);padding:0 0 12px}.wx-d{gap:2px}.wx-d span{font-size:.78rem}.wx-d i{display:none}}

.rm-list.ic{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:20px 0}.rm-list.ic li{padding:0;display:flex;align-items:center;gap:12px;font-size:.92rem;line-height:1.3}.rm-list.ic li:before{display:none}.rm-list.ic li svg{width:34px;height:34px;flex:none;padding:7px;border-radius:50%;background:rgba(0,0,0,.045);color:var(--logo,#6b1d2f)}@media(max-width:520px){.rm-list.ic{grid-template-columns:1fr}}

.faqp{padding:26px 24px 8px}.faqp h2{font-size:clamp(1.5rem,3vw,2.1rem);text-align:left;margin-bottom:10px;font-style:italic;color:var(--logo,#6b1d2f)}.faqp details{border-bottom:1px solid var(--line);padding:16px 0}.faqp .wrap{max-width:820px}.faqp+.faqp{padding-top:14px}

.gal2.one{grid-template-columns:1fr;max-width:760px}.gal2.one img{aspect-ratio:3/2;border-radius:12px}

.offers{padding:56px 24px 30px;text-align:center}.offers h2{font:300 clamp(2rem,4vw,3rem) var(--serif);margin:0 0 26px}.of-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:1160px;margin:0 auto;text-align:left}.of-c{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 6px 24px rgba(0,0,0,.05)}.of-i{aspect-ratio:16/10;background:var(--im) center/cover;position:relative}.of-b{position:absolute;left:14px;top:14px;background:var(--logo,#6b1d2f);color:#fff;font:600 .7rem var(--sans);letter-spacing:.14em;text-transform:uppercase;padding:6px 12px;border-radius:99px}.of-t{padding:20px 22px 24px;display:flex;flex-direction:column;gap:8px;flex:1}.of-t h3{font:400 1.5rem var(--serif);margin:0;color:var(--head)}.of-t p{margin:0;font-size:.92rem;opacity:.85}.of-t .of-u{font-size:.78rem;opacity:.6}.of-t .pill{align-self:flex-start;margin-top:auto}@media(max-width:860px){.of-g{grid-template-columns:1fr}}

.mb-txt .mb-hours{margin-top:-.2em}

.hl.hours{margin-bottom:8px}
.hl+h2{margin-top:56px}

/* Restaurant: mehr Farbe */
.pg-restaurant .hl li{position:relative;padding-left:24px}
.pg-restaurant .hl li::before{content:"";position:absolute;left:2px;top:1.35em;width:8px;height:8px;border-radius:50%;background:var(--logo)}
.pg-restaurant .hl li:nth-child(even)::before{background:#c9a24a}
.pg-restaurant .hours-card{background:var(--logo);color:#fff;border-radius:18px;padding:36px clamp(22px,4vw,44px);margin:52px 0 12px;box-shadow:0 14px 34px rgba(122,31,53,.18)}
.pg-restaurant .hours-card h2{color:#f0dfb5;margin:0 0 20px}
.pg-restaurant .hours-card ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 32px}
.pg-restaurant .hours-card li{position:relative;padding:12px 0 12px 28px;border-bottom:1px solid rgba(255,255,255,.22);color:#fff}
.pg-restaurant .hours-card li::before{content:"✓";position:absolute;left:0;top:12px;color:#f0dfb5;font-weight:700}
.pg-restaurant .hours-card strong{color:#f0dfb5}
.pg-restaurant .menusec{background:#f4e7e0;padding-bottom:64px;margin-top:40px}
.pg-restaurant .mk h3{border-bottom:2px solid #c9a24a}
.pg-restaurant .mk-i em{color:var(--logo);font-weight:600}
.pg-restaurant .mk-i b{color:#4a2b2b}
.pg-restaurant .arr{background:#e7ebdc;padding:70px 0 60px;margin-top:0}
@media (max-width:700px){.pg-restaurant .hours-card ul{grid-template-columns:1fr}}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pg-restaurant .menusec{background:#33262a}:root:not([data-theme="light"]) .pg-restaurant .arr{background:#2a3025}:root:not([data-theme="light"]) .pg-restaurant .mk-i b{color:#eee6d8}}

.pg-restaurant .hours-card li a{color:#f0dfb5;text-decoration:underline;text-underline-offset:3px}
.pg-restaurant .hours-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.pg-restaurant .hours-btns a{display:inline-block;padding:13px 26px;border-radius:999px;border:1px solid rgba(255,255,255,.65);color:#fff;text-decoration:none;font:600 .72rem var(--sans);letter-spacing:.16em;text-transform:uppercase}
.pg-restaurant .hours-btns a.hb-wa{background:#25a15a;border-color:#25a15a}

.mg{max-width:760px;margin:0 auto 14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.6);text-align:left}
.mg>summary{list-style:none;cursor:pointer;padding:18px 26px;font:400 clamp(1.5rem,3vw,1.9rem) var(--serif);color:var(--logo);display:flex;justify-content:space-between;align-items:center}
.mg>summary::-webkit-details-marker{display:none}
.mg>summary::after{content:"+";font:300 1.8rem var(--sans);line-height:1}
.mg[open]>summary::after{content:"–"}
.mg[open]>summary{border-bottom:1px solid var(--line)}
.mg .mk{max-width:none;margin:0 0 6px;padding:0 26px}
.mg .mk h3{margin-top:26px}
.mk h4{font:600 .74rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--taupe-d);margin:22px 0 2px}
.mg>.mk-n{padding:0 26px 18px}.mk-n{font-size:.86rem;opacity:.78;font-style:italic;margin:14px 0 0;text-align:left}
.mk-i sup{font-size:.62em}.mk-i em{font-size:1.2rem;white-space:nowrap}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .mg{background:rgba(255,255,255,.04)}}

.rm-thumbs.t3{grid-template-columns:repeat(3,1fr);gap:8px}
.rm-thumbs.t3 img{aspect-ratio:1/1;object-fit:cover}

.incl{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:6px 0 26px}
.incl-i{display:flex;gap:14px;align-items:flex-start;padding:20px 22px;border-radius:14px;background:#f4e7e0}
.incl-i svg{flex:none;width:44px;height:44px;padding:10px;border-radius:50%;background:#fff;color:var(--logo,#7a1f35)}
.incl-i b{display:block;font:500 1.15rem/1.3 var(--serif);margin-bottom:4px}
.incl-i span{display:block;font-size:.95rem;line-height:1.5;opacity:.85}
.incl-i.m2{background:#ece3ee}.incl-i.m2 svg{color:#6b2d6e}
.incl-i.m3{background:#f3ecd2}.incl-i.m3 svg{color:#9a7414}
.incl-i.m4{background:#e7ebdc}.incl-i.m4 svg{color:#4f6b2f}
@media (max-width:700px){.incl{grid-template-columns:1fr}}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .incl-i{background:#3a2a2c}:root:not([data-theme="light"]) .incl-i.m2{background:#38303a}:root:not([data-theme="light"]) .incl-i.m3{background:#39341f}:root:not([data-theme="light"]) .incl-i.m4{background:#2e3526}:root:not([data-theme="light"]) .incl-i svg{background:rgba(255,255,255,.1)}}

header.top .logo{transform:translateY(-14px)}
@media (max-width:820px){header.top .logo{transform:translateY(-8px)}}

header.top .uc{display:flex;align-items:center;gap:8px}
header.top .ui{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--wine);color:#fff;transition:background .2s}
header.top .ui:hover{background:var(--wine-d)}
header.top .ui svg{width:15px;height:15px}
header.top .uc .tel{margin-left:6px}
@media (max-width:820px){header.top .uc{margin-right:auto;gap:6px}header.top .ui{width:28px;height:28px}header.top .util{justify-content:flex-start}header.top .util .lang{margin-left:auto}}
.subhero h1{display:inline-block;font-size:clamp(2.4rem,6vw,4.2rem);line-height:1.05;padding:.12em .4em .18em;background:rgba(46,38,30,.42);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:10px}.subhero .eyebrow{display:table;font-size:1rem;letter-spacing:.2em;padding:.5em 1em;margin:0 0 14px;background:rgba(46,38,30,.42);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:999px}.subhero .back{font-size:.86rem;padding:.45em 1em;background:rgba(46,38,30,.42);border-radius:999px;opacity:1}@media (max-width:600px){.subhero h1{font-size:clamp(2rem,9vw,2.7rem)}.subhero .eyebrow{font-size:.85rem}}

#feiern{background:linear-gradient(rgba(40,30,24,.34),rgba(40,30,24,.58)),var(--im) center 55%/cover #5a3b30;padding-top:96px;padding-bottom:96px}#feiern h2{text-shadow:0 2px 14px rgba(0,0,0,.4)}header.top .tel{display:none}

.subcta-tisch{background:linear-gradient(rgba(40,30,24,.3),rgba(40,30,24,.55)),var(--im) center 60%/cover #4a3a30;padding-top:110px;padding-bottom:110px}.subcta-tisch h2{text-shadow:0 2px 14px rgba(0,0,0,.4)}

.pg-hotel-am-klosterberg .subhero{background-position:center 80%}

.press{max-width:820px;margin:54px auto;padding:34px 38px;background:#f4e7e0;border-radius:16px;border-left:5px solid var(--wine,#5e1226)}
.press .eyebrow{margin:0 0 6px}
.press h2{margin:0 0 12px}
.press-lead{font-weight:600;margin:0 0 18px}
.press blockquote{margin:0;padding:0;font:italic 300 1.12rem/1.75 var(--serif);border:0;color:inherit}
.press-src{margin:18px 0 0;font-size:.85rem;letter-spacing:.06em;opacity:.75}
@media (max-width:600px){.press{padding:24px 20px;margin:36px 16px}}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .press{background:#3a2a2c}}

/* Aktuelles + Angebote: neue Darstellung */
.news{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;padding:0;min-height:560px;background:var(--logo,#5e1226);text-align:left}
.news::before{content:"";background:var(--im) center/cover;min-height:380px}
.news .in{max-width:none;margin:0;padding:clamp(40px,6vw,96px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.news .eyebrow{color:#e8c98a}
.news .eyebrow::after{content:"";display:block;width:56px;height:1px;background:#e8c98a;margin-top:14px}
.news h2{font-size:clamp(2rem,3.6vw,3.1rem);line-height:1.12;margin-bottom:22px}
.news p{font-size:1rem}
.offers{padding:84px 24px 40px;background:var(--surface)}
.offers h2{margin-bottom:48px}
.of-g{gap:clamp(24px,3.5vw,56px)}
.of-c{background:none;border:0;border-radius:0;box-shadow:none;overflow:visible;text-align:center;align-items:center}
.of-i{width:100%;aspect-ratio:4/5;border-radius:999px 999px 14px 14px;overflow:hidden}
.of-b{left:50%;top:auto;bottom:16px;transform:translateX(-50%);background:rgba(255,255,255,.94);color:var(--logo,#6b1d2f);white-space:nowrap}
.of-t{padding:26px 6px 0;align-items:center;gap:10px}
.of-t h3{font-size:1.6rem;line-height:1.2}
.of-t p{max-width:34ch}
.of-t .pill{margin-top:auto;background:none;color:var(--logo,#6b1d2f);padding:6px 0 4px;border:0;border-bottom:1px solid currentColor;border-radius:0;box-shadow:none}
.of-t .pill::after{content:" →"}
.of-t .pill:hover{background:none;opacity:.7}
@media (max-width:820px){.news{grid-template-columns:1fr}.news::before{min-height:260px}.news .in{padding:44px 24px 52px}.offers{padding-top:60px}.of-i{aspect-ratio:4/3;border-radius:999px 999px 14px 14px / 60% 60% 14px 14px}}

/* Seitenleiste Fragen */
.sidefaq{top:calc(50% + 112px);transform:none;align-items:flex-start}
.sidefaq{position:fixed}.sidefaq .sn-panel{position:absolute;right:100%;bottom:0;width:min(240px,calc(100vw - 60px));max-height:calc(100vh - 220px);overflow:auto}
.sidefaq .sn-tab{padding:18px 10px}
@media (max-width:600px){.sidefaq{top:calc(50% + 100px)}}

.lmap{max-width:620px;margin:48px auto 8px}
.lmap h3{font:400 1.6rem var(--serif);margin:0 0 16px;color:#fff}
.lmap-svg{width:100%;height:auto;display:block;border-radius:18px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.lmap .cap{font-size:.78rem;opacity:.75;margin:12px 0 16px}
.lmap-links{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.lmap-links .pill{font-size:.8rem}

/* Best-Price-Banner (hochwertig) */
.bp{background:radial-gradient(120% 160% at 15% 0%,#6e1830 0%,#4a0e1f 55%,#34091540 100%),#3a0b17;color:#f5ecd9;padding:34px 24px;border-top:1px solid #c9a24a;border-bottom:1px solid #c9a24a;position:relative}
.bp::before,.bp::after{content:"";position:absolute;left:0;right:0;height:1px;background:rgba(201,162,74,.45)}
.bp::before{top:5px}.bp::after{bottom:5px}
.bp-in{max-width:1080px;margin:0 auto;display:flex;align-items:center;gap:clamp(20px,3.5vw,44px);justify-content:center;text-align:left;flex-wrap:wrap}
.bp-mark{flex:none;display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 26px 14px;border:1px solid #c9a24a;outline:1px solid rgba(201,162,74,.5);outline-offset:4px;background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,0));text-align:center}
.bp-mark em{font:italic 400 2.5rem/1 var(--serif);background:linear-gradient(135deg,#f6dc9a,#d4aa55 55%,#a97c2c);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.bp-mark i{display:block;width:44px;height:1px;background:linear-gradient(90deg,transparent,#d9b56a,transparent)}
.bp-mark b{font:600 .78rem var(--sans);letter-spacing:.42em;text-transform:uppercase;color:#e6c97f;margin-right:-.42em}
.bp-t{flex:1 1 320px;max-width:620px}
.bp-e{margin:0 0 8px;font:600 .72rem var(--sans);letter-spacing:.24em;text-transform:uppercase;color:#d9b56a}
.bp-t h2{font:300 clamp(1.7rem,3.2vw,2.5rem) var(--serif);margin:0 0 8px;color:#fbf3e1;line-height:1.15;text-wrap:balance}
.bp-p{margin:0;font-size:1rem;color:#e8dcc4}
.bp-btn{background:linear-gradient(135deg,#f0d38c,#c9a24a 55%,#a97c2c);color:#3a0b17;font-weight:700;white-space:nowrap;border:0;box-shadow:0 8px 20px rgba(0,0,0,.35)}
.bp-btn:hover{background:linear-gradient(135deg,#f8e0a2,#d6b05a 55%,#b88a34);color:#3a0b17}
@media (max-width:760px){.bp-in{flex-direction:column;text-align:center}}

.of-all{margin:40px 0 0;text-align:center}

/* Speisekarte-Banner: weinrotes Textfeld */
.menubar{background:var(--surface)}
.menubar .mb-txt{background:radial-gradient(120% 90% at 100% 0%,#7a1f35 0%,#5e1226 45%,#430b1a 100%);color:#f3e9dc;position:relative}
.menubar .mb-txt::before{content:"";position:absolute;left:clamp(24px,6vw,88px);top:40px;width:56px;height:2px;background:var(--gold)}
.menubar .mb-txt .eyebrow{color:var(--gold);margin-top:14px}
.menubar .mb-txt h2{color:#fff}
.menubar .mb-txt p{color:#eadfd0}
.menubar .mb-txt .mb-hours strong{color:var(--gold);font-weight:600}
.menubar .mb-txt .pill{background:var(--gold);color:#430b1a}
.menubar .mb-txt .pill:hover{background:#fff}
.menubar .mb-txt .pill.ghost{background:transparent;color:#f3e9dc;border:1px solid rgba(217,201,168,.7)}
.menubar .mb-txt .pill.ghost:hover{background:rgba(217,201,168,.18);color:#fff}

/* Häuser: Highlight-Liste (Stil wie "Ihre Vorteile") */
.htxt .hl{gap:10px;margin-top:20px}
.htxt .hl li{position:relative;padding:14px 16px 14px 56px;border:1px solid var(--line);border-radius:6px;background:var(--surface);line-height:1.5;font-weight:400;color:var(--ink)}
.htxt .hl li::before{content:"\2713";position:absolute;left:18px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;background:var(--wine,#5e1226);color:#fff;font-size:.85rem;line-height:26px;text-align:center}

/* Karte auf der Seite Fragen & Antworten (heller Hintergrund) */
.faqp .lmap{max-width:none;margin:32px 0 0}
.faqp .lmap h3{color:var(--head)}
.faqp .lmap .cap{color:var(--ink)}
.faqp .lmap .pill.line{color:var(--head);border-color:var(--taupe)}
.faqp .lmap .pill.line:hover{background:var(--taupe);color:#fff}
.faqp .lmap-svg{box-shadow:0 8px 24px rgba(0,0,0,.12)}

/* Best-Price-Banner: heller Hintergrund */
.bp{background:linear-gradient(180deg,#fbf7ee,#f3ebd9);color:#4a4036;border-top:1px solid #c9a24a;border-bottom:1px solid #c9a24a}
.bp::before,.bp::after{background:rgba(201,162,74,.5)}
.bp-mark{border-color:#b8924a;outline-color:rgba(184,146,74,.5);background:#fff}
.bp-mark em{background:linear-gradient(135deg,#c79a3b,#a97c2c 55%,#7d5a1c);-webkit-background-clip:text;background-clip:text}
.bp-mark i{background:linear-gradient(90deg,transparent,#b8924a,transparent)}
.bp-mark b{color:#8d6420}
.bp-e{color:#8d6420}
.bp-t h2{color:#5e1226}
.bp-p{color:#4a4036}
.bp-btn{background:#5e1226;color:#fff;box-shadow:0 8px 20px rgba(94,18,38,.25)}
.bp-btn:hover{background:#430b1a;color:#fff}

/* Gästestimmen */
.gv{background:var(--bg);padding:72px 24px}
.gv h2{text-align:center;margin-bottom:8px;font-size:clamp(2rem,3.6vw,3rem);font-weight:300}
.gv .sub{text-align:center;margin:0 auto 36px;max-width:56ch}
.rev-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rev-card{position:relative;margin:0;padding:78px 30px 26px;background:var(--surface);border:1px solid var(--line);border-radius:6px}
.rev-card::before{content:"\201E";position:absolute;left:28px;top:18px;font:400 3.2rem/1 var(--serif);color:#b8924a}
.rev-stars{color:#b8924a;letter-spacing:.2em;font-size:1rem;margin:0 0 10px}
.rev-card blockquote{margin:0 0 18px;font:400 .95rem/1.75 var(--sans);color:#3a3129}
.rev-card figcaption{font-size:.84rem;letter-spacing:.04em;color:#4a4036}
.rev-card figcaption b{display:block;color:#5e1226;font-weight:600;letter-spacing:.1em;text-transform:uppercase;font-size:.78rem}
@media (max-width:980px){.rev-grid{grid-template-columns:1fr}}

.gv-link{text-align:center;margin:34px 0 0}
.gv-score{text-align:center;margin:-18px 0 30px;font-size:1.1rem;color:#3a3129}.gv-score b{font-size:1.6rem;font-weight:600;margin-right:6px}

/* Zimmerpreise: Hinweis + Leistungen */
.prices .rm-note{max-width:70ch;margin:34px auto 10px;padding:18px 22px 18px 58px;position:relative;text-align:left;opacity:1;background:#fbf7ee;border:1px solid #e6d9b8;border-radius:8px;color:#3a3129}
.prices .rm-note::before{content:"i";position:absolute;left:18px;top:18px;width:26px;height:26px;border-radius:50%;background:var(--wine,#5e1226);color:#fff;font:italic 600 1rem/26px Georgia,serif;text-align:center}
.pinfo{padding:10px 0 70px}.pinfo .pi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1100px;margin:0 auto;padding:0 24px}
.pi-card{border-radius:10px;padding:30px 28px;background:var(--surface,#faf7f2);border:1px solid var(--line,#e5ddd0);border-top:5px solid var(--wine,#5e1226)}
.pi-add{border-top-color:#c9a24a}.pi-can{border-top-color:#3e6f8e}
.pi-card h2{margin:0 0 4px;font-size:1.5rem}.pi-card .pi-sub{margin:0 0 18px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;opacity:.7}
.pi-card ul{list-style:none;margin:0;padding:0}.pi-card li{position:relative;padding:10px 0 10px 28px;border-bottom:1px solid var(--line,#e5ddd0);line-height:1.45}.pi-card li:last-child{border-bottom:0}
.pi-card li::before{content:"\2713";position:absolute;left:0;top:10px;color:var(--wine,#5e1226);font-weight:700}
.pi-add li::before{content:"+";color:#8f6a14;font-size:1.15rem;top:7px}
.pi-card li b{display:block;font-weight:600;color:var(--wine,#5e1226);margin-top:2px}
.pi-can p{margin:0;line-height:1.65}
@media (max-width:900px){.pinfo .pi-grid{grid-template-columns:1fr}}
/* Dachterrasse: farbige Merkmale */
.pg-dachterrasse .hl,#page-dachterrasse .hl{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:26px}
.pg-dachterrasse .hl li,#page-dachterrasse .hl li{border:0;border-radius:10px;padding:22px 18px;color:#fff;font-weight:500;line-height:1.35;text-align:center;display:flex;align-items:center;justify-content:center;min-height:92px;background:#b4553a}
.pg-dachterrasse .hl li:nth-child(6n+2),#page-dachterrasse .hl li:nth-child(6n+2){background:#3e6f8e}
.pg-dachterrasse .hl li:nth-child(6n+3),#page-dachterrasse .hl li:nth-child(6n+3){background:#a8456a}
.pg-dachterrasse .hl li:nth-child(6n+4),#page-dachterrasse .hl li:nth-child(6n+4){background:#5d6c3a}
.pg-dachterrasse .hl li:nth-child(6n+5),#page-dachterrasse .hl li:nth-child(6n+5){background:#8f6a14}
.pg-dachterrasse .hl li:nth-child(6n+6),#page-dachterrasse .hl li:nth-child(6n+6){background:#5e1226}
@media (max-width:640px){.pg-dachterrasse .hl,#page-dachterrasse .hl{grid-template-columns:1fr 1fr}}

/* Ostern: Programm */
.easter{margin:20px 0 6px;border:1px solid #e6d9b8;border-radius:10px;background:#fbf7ee;padding:20px 20px 8px}
.easter .ea-head{margin:0 0 4px;font:400 1.25rem var(--serif);color:var(--wine,#5e1226)}
.easter .ea-tag{display:inline-block;margin:6px 0 14px;padding:5px 14px;border-radius:99px;background:var(--wine,#5e1226);color:#fff;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}
.easter ol{list-style:none;margin:0;padding:0}.easter li{display:grid;grid-template-columns:118px 1fr;gap:6px 16px;padding:12px 0;border-top:1px solid #e6d9b8;align-items:start}
.easter .ea-day{display:flex;flex-direction:column;align-items:flex-start}
.easter .ea-day b{display:inline-block;padding:4px 10px;border-radius:6px;background:#b4553a;color:#fff;font-size:.82rem;font-weight:600;letter-spacing:.02em}

.easter .ea-day i{font-style:normal;font-size:.78rem;opacity:.7;margin:3px 0 0 2px}
.easter .ea-txt{line-height:1.5;color:#3a3129}
@media (max-width:560px){.easter li{grid-template-columns:1fr}}

/* Ostern: Umschalter */
.easter [hidden]{display:none!important}
.easter .ea-tabs{display:inline-flex;gap:0;margin:8px 0 6px;border:1px solid var(--wine,#5e1226);border-radius:99px;overflow:hidden}
.easter .ea-tabs button{appearance:none;border:0;background:#fff;color:var(--wine,#5e1226);padding:9px 20px;font:600 .86rem var(--sans,inherit);letter-spacing:.04em;cursor:pointer}
.easter .ea-tabs button+button{border-left:1px solid var(--wine,#5e1226)}
.easter .ea-tabs button[aria-pressed="true"]{background:var(--wine,#5e1226);color:#fff}
.easter .ea-tabs button:focus-visible{outline:3px solid #c9a24a;outline-offset:-3px}
.easter .ea-tag{display:block;width:max-content;max-width:100%}
.easter .ea-day b.c-f{background:#5e1226}.easter .ea-day b.c-gd{background:#c46f2a}.easter .ea-day b.c-kf{background:#3e6f8e}.easter .ea-day b.c-ks{background:#8f6a14}.easter .ea-day b.c-os{background:#a8456a}.easter .ea-day b.c-om{background:#5d6c3a}

/* Ostern mittig */
.rm-cat.ea-offer .rm-in{display:block;max-width:860px;margin:0 auto;text-align:center}
.rm-cat.ea-offer .rm-pics{margin:0 0 30px}
.rm-cat.ea-offer .rm-main{width:100%;height:auto;aspect-ratio:16/7;background-position:50% 62%;object-position:50% 62%;min-height:0;border-radius:8px;object-fit:cover}
.rm-cat.ea-offer .rm-txt{max-width:none}
.rm-cat.ea-offer .easter{text-align:left}
.rm-cat.ea-offer .ea-tabs{display:flex;width:max-content;max-width:100%;margin:12px auto 10px}
.rm-cat.ea-offer .ea-head{text-align:center}
.rm-cat.ea-offer .ea-tag{margin-left:auto;margin-right:auto;text-align:center}

/* Zimmerpreise: Leistungs-Tabelle */
.pi-table{width:100%;max-width:900px;margin:0 auto;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line,#e5ddd0);border-radius:10px;overflow:hidden;font-size:1rem}
.pi-table thead th{background:#3a3129;color:#fff;text-align:left;padding:12px 20px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.pi-table td{padding:13px 20px;border-top:1px solid var(--line,#e5ddd0);vertical-align:top;line-height:1.5}
.pi-table td:first-child{width:56%;color:#3a3129}.pi-table td:last-child{color:var(--wine,#5e1226);font-weight:500}
.pi-table .pt-g th{text-align:left;padding:12px 20px;color:#fff;font:400 1.15rem var(--serif);background:var(--wine,#5e1226)}
.pi-table .pt-add th{background:#8f6a14}.pi-table .pt-can th{background:#3e6f8e}
.pi-table tbody tr:not(.pt-g):nth-child(even) td{background:#fbf8f2}
@media (max-width:640px){.pi-table td,.pi-table th{padding:11px 14px}.pi-table td:first-child{width:auto}}

/* Leistungs-Tabellen je Haus */
.pi-wrap{display:grid;gap:24px;max-width:1000px;margin:0 auto;padding:0 24px}.pi-wrap.pi-two{grid-template-columns:1fr 1fr}.pi-wrap.pi-one{grid-template-columns:minmax(0,640px);justify-content:center}
.pi-wrap .pi-table{max-width:none;margin:0}.pi-wrap .pi-table thead th{background:var(--wine,#5e1226);padding:16px 20px;font:400 1.3rem var(--serif);letter-spacing:0;text-transform:none}
.pi-wrap .pi-table thead th span{display:block;margin-top:3px;font:600 .74rem var(--sans,inherit);letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.pi-wrap .pi-table td{width:auto!important;color:#3a3129!important;font-weight:400!important;position:relative;padding-left:48px}
.pi-wrap .pi-table td::before{content:"\2713";position:absolute;left:20px;top:13px;color:var(--wine,#5e1226);font-weight:700}
@media (max-width:820px){.pi-wrap.pi-two{grid-template-columns:1fr}}
.pi-wrap{align-items:start}

.pi-wrap .pi-extra{grid-column:1/-1}.pi-wrap.pi-one .pi-extra{width:100%}
.pi-extra thead th:first-child{width:68%}.pi-extra thead th:last-child{font-size:.78rem}
.pi-wrap .pi-extra thead th{background:#8f6a14;font:400 1.3rem var(--serif);text-transform:none;letter-spacing:0}
.pi-wrap .pi-extra thead th:last-child{font:600 .78rem var(--sans,inherit);letter-spacing:.14em;text-transform:uppercase}
.pi-wrap .pi-extra td{padding-left:20px;color:#3a3129!important;font-weight:400!important}.pi-wrap .pi-extra td::before{content:none}
.pi-wrap .pi-extra td:last-child{color:var(--wine,#5e1226)!important;font-weight:600!important;white-space:nowrap}
.pi-extra td small{display:block;font-size:.78rem;opacity:.65;margin-top:2px}
.pi-wrap.pi-one{grid-template-columns:minmax(0,760px)}

.pi-wrap .pi-can thead th{background:#3e6f8e}.pi-wrap .pi-extra .pt-note td{background:#eef4f8!important;color:#2d4f66!important;font-style:italic;padding:14px 20px}

.pr-hint{max-width:70ch;margin:16px auto 0;padding:14px 20px 14px 52px;position:relative;background:#fbf7ee;border:1px solid #e6d9b8;border-radius:8px;color:#3a3129;line-height:1.55}
.pr-hint::before{content:"i";position:absolute;left:16px;top:14px;width:24px;height:24px;border-radius:50%;background:var(--wine,#5e1226);color:#fff;font:italic 600 .95rem/24px Georgia,serif;text-align:center}

.nav .sub a.sh{font-weight:600;color:var(--head,#5e1226)}.nav .sub a.sh:not(:first-child){margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}

.pi-times{display:flex;flex-wrap:wrap;gap:10px 28px;justify-content:center;margin:0 0 22px;font:500 .95rem var(--sans);color:var(--head)}.pi-times span{padding:8px 18px;border:1px solid var(--line);border-radius:999px;background:var(--surface)}

.fams{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;margin:26px 0 8px}.fam{border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden;display:flex;flex-direction:column}.fam img{aspect-ratio:3/2;width:100%;object-fit:cover;display:block}.fam-t{padding:18px 20px 16px}.fam-t h3{font-family:var(--serif);font-weight:500;font-size:1.3rem;margin:2px 0 8px;color:var(--head)}.fam-t .meta{margin:0;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;opacity:.75}
.pg-beilstein .gal2 img{object-position:50% 38%}
.acts{display:flex;flex-direction:column;gap:14px;margin:26px 0 34px}
.act{display:grid;grid-template-columns:1fr auto;column-gap:24px;align-items:center;padding:20px 26px 22px}
.act h3{grid-column:1;grid-row:1;margin:0 0 2px;align-self:end}
.act .meta{grid-column:1;grid-row:2;margin:0;align-self:start}
.act p:not(.meta):not(:last-child){grid-column:1/-1;grid-row:3;margin:14px 0 0;padding-top:14px;border-top:1px solid var(--line)}
.act p:last-child{grid-column:2;grid-row:1/3;margin:0;padding:0}
@media(max-width:620px){.act{display:block;padding:22px 20px 18px}.act h3{margin:0 0 6px}.act .meta{margin:0 0 10px}.act p:not(.meta):not(:last-child){margin:0 0 12px;padding:0;border:0}.act p:last-child{margin:0;padding-top:4px}}
.pill.blink{background:var(--wine,#5e1226);color:#fff;border-color:transparent;animation:lmblink 1.3s ease-in-out infinite}
@keyframes lmblink{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(94,18,38,.5)}50%{opacity:.6;box-shadow:0 0 0 10px rgba(94,18,38,0)}}
@media(prefers-reduced-motion:reduce){.pill.blink{animation:none}}

@media(max-width:620px){.pill{font-size:14px}.htabs button{font-size:13.5px}.chips span,.bp-e,.eyebrow,.card .more,.more{font-size:13px}.sn-tab span{font-size:13px}label{font-size:14px}.fine,.fine a{font-size:14px}}
.legal h2,.pg-impressum h2,.pg-datenschutz h2{font-size:1.35rem;margin:1.6em 0 .4em}.legal h1{margin:.2em 0 .6em}

/* Buttons in Seiteninhalten: Linkfarbe der Textseiten darf die Button-Schrift nicht überschreiben */
.entry a.pill{color:#fff;text-decoration:none}
.entry a.pill:hover{color:#fff}
.entry a.pill.ghost{color:var(--accent,var(--head))}
.entry a.pill.ghost:hover{color:#fff}

/* Banner: Hintergrund auch ohne Bild (Fallback) */
.banner{background:linear-gradient(rgba(60,48,36,.62),rgba(60,48,36,.72)),var(--im,linear-gradient(#7f7469,#7f7469)) center 40%/cover #7f7469}

/* ---------- Handy: Kopfzeile, Seitenreiter, Schwebe-Buttons, Formular ---------- */
@media (max-width:620px){
.r .pill.alt{display:none}header.top .in{grid-template-columns:auto 1fr auto;gap:6px;height:78px;padding:0 12px}
header.top .in .logo{justify-self:center}
header.top .in .logo .mark{width:112px;height:44px}
header.top .r .pill{padding:.55rem .95rem;font-size:.68rem;letter-spacing:.12em}
.util{padding-left:12px;padding-right:12px}
.sidenav,.sidefaq{display:none}
.wa{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:.62rem 1rem;font-size:.8rem}
.lmbot-fab{right:12px;bottom:calc(62px + env(safe-area-inset-bottom,0px));width:48px;height:48px}
.lmbot-panel{right:12px;bottom:calc(118px + env(safe-area-inset-bottom,0px))}
body{overflow-x:clip}
}
.lmf-grid>*,.lmg-grid>*{min-width:0}
.lmf-grid input,.lmf-grid select,.lmf-grid textarea,.lmg-grid input,.lmg-grid select,.lmg-grid textarea{max-width:100%;box-sizing:border-box}
footer .fine{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px}
@media (min-width:621px) and (max-width:820px){header.top .r .pill{padding:.6rem 1rem;font-size:.7rem;letter-spacing:.12em}}

/* Gästestimmen auf Textseiten: volle Breite wie in der Vorschau */
body{overflow-x:clip}
.entry .gv{width:100vw;max-width:100vw;margin:50px 0 0 calc(50% - 50vw);box-sizing:border-box}
.entry .gv .rev-grid{padding:0}
