:root{--tanne:#102a23;--tanne2:#183a30;--tanne3:#245044;--gold:#ba9a5f;--gold2:#dbc99d;--creme:#f7f2e8;--ivory:#fcfaf5;--weiss:#fff;--text:#202622;--grau:#6b726e;--linie:rgba(31,38,34,.14);--schatten:0 24px 70px rgba(15,38,31,.14);--breite:min(1240px,calc(100% - 48px))}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--text);font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}body.menue-offen{overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}.seitenbreite{width:var(--breite);margin-inline:auto}.abschnitt{padding:112px 0}.nur-screenreader{position:absolute!important;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.sprunglink{position:fixed;left:16px;top:-80px;z-index:99999;background:#fff;padding:12px 16px}.sprunglink:focus{top:16px}h1,h2,h3{font-family:"Baskerville","Iowan Old Style","Palatino Linotype",Georgia,serif;font-weight:400;line-height:1.04;letter-spacing:-.035em;margin:0}h1{font-size:clamp(3.7rem,6.4vw,7rem)}h2{font-size:clamp(2.7rem,4.8vw,5rem)}h3{font-size:1.65rem}p{margin:0 0 1.35rem}.rubrik{display:inline-block;margin-bottom:18px;color:var(--gold);font-size:.68rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.rubrik-hell{color:var(--gold2)}.schaltflaeche{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:13px 25px;border:1px solid transparent;text-decoration:none;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:.25s ease}.schaltflaeche-gold{background:var(--gold);color:var(--tanne)}.schaltflaeche-gold:hover{background:var(--gold2)}.schaltflaeche-dunkel{background:var(--tanne);color:#fff}.schaltflaeche-dunkel:hover{background:var(--tanne2)}.schaltflaeche-kontur{border-color:rgba(255,255,255,.55);color:#fff}.schaltflaeche-kontur:hover{background:#fff;color:var(--tanne)}.textlink{display:inline-flex;align-items:center;gap:14px;color:var(--tanne);text-decoration:none;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.textlink:after{content:"";width:42px;height:1px;background:currentColor}.zentrierter-kopf{max-width:820px;margin:0 auto 55px;text-align:center}.zentrierter-kopf p{color:var(--grau);font-size:1.06rem}
/* Sticky Header */
.seitenkopf{position:sticky;top:0;z-index:5000;background:var(--ivory);box-shadow:0 5px 25px rgba(15,38,31,.07)}body.admin-bar .seitenkopf{top:32px}.hinweisleiste{background:var(--gold);color:var(--tanne);font-size:.8rem}.hinweisleiste .seitenbreite{min-height:40px;display:flex;justify-content:center;align-items:center;gap:14px}.hinweisleiste strong{text-transform:uppercase;letter-spacing:.12em;font-size:.64rem}.serviceleiste{background:var(--tanne);color:#fff}.serviceleiste-innen{min-height:38px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;font-size:.72rem}.statuspunkt,.serviceleiste-mitte,.serviceleiste-kontakt{display:flex;align-items:center;gap:11px}.statuspunkt i{width:7px;height:7px;border-radius:50%;background:#bc6459;box-shadow:0 0 0 4px rgba(188,100,89,.15)}.statuspunkt.offen i{background:#79b980;box-shadow:0 0 0 4px rgba(121,185,128,.15)}.statuspunkt strong{font-size:.72rem}.statuspunkt span,.serviceleiste-mitte{color:rgba(255,255,255,.62)}.serviceleiste-mitte{justify-self:center}.serviceleiste-mitte span+span:before{content:"·";margin-right:11px;color:var(--gold)}.serviceleiste-kontakt{justify-self:end}.serviceleiste-kontakt a{color:#fff;text-decoration:none}.serviceleiste-kontakt a+a{color:var(--gold2)}.navigationsleiste{background:rgba(252,250,245,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--linie)}.navigationsleiste-innen{min-height:94px;display:grid;grid-template-columns:240px 1fr 170px;align-items:center;gap:30px;transition:min-height .25s ease}.seitenkopf.kompakt .navigationsleiste-innen{min-height:75px}.marke{display:flex;align-items:center;gap:14px;text-decoration:none}.marke-rahmen{display:grid;place-items:center;width:172px;min-height:62px;padding:9px 13px;border:1px solid rgba(186,154,95,.45);position:relative}.marke-rahmen:before,.marke-rahmen:after{content:"";position:absolute;width:10px;height:10px;border-color:var(--gold)}.marke-rahmen:before{left:-1px;top:-1px;border-left:2px solid var(--gold);border-top:2px solid var(--gold)}.marke-rahmen:after{right:-1px;bottom:-1px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold)}.marke img{width:145px}.marke small{font-size:.56rem;letter-spacing:.13em;text-transform:uppercase;color:var(--grau)}.hauptnavigation{justify-self:center}.hauptmenue{display:flex;gap:clamp(18px,2.7vw,42px);list-style:none;margin:0;padding:0}.hauptmenue a{position:relative;text-decoration:none;color:var(--text);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:34px 0}.hauptmenue a:after{content:"";position:absolute;left:50%;right:50%;bottom:24px;height:1px;background:var(--gold);transition:.25s}.hauptmenue a:hover:after,.hauptmenue .aktuell a:after{left:0;right:0}.reservieren-knopf{justify-self:end;display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:158px;padding:13px 16px;border:1px solid var(--gold);color:var(--tanne);text-decoration:none;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.reservieren-knopf i{font-style:normal;font-size:1.2rem}.reservieren-knopf:hover{background:var(--tanne);color:#fff;border-color:var(--tanne)}.menueknopf{display:none;background:none;border:0;padding:10px}.menueknopf span{display:block;width:27px;height:1px;background:var(--tanne);margin:6px}.mobile-zusatz{display:none}
/* Home Hero */
.hero-neu{position:relative;overflow:hidden;background:var(--tanne);color:#fff;padding:88px 0 96px}.hero-muster{position:absolute;inset:0;opacity:.13;background:linear-gradient(45deg,transparent 46%,var(--gold) 47% 49%,transparent 50%) 0 0/70px 70px,linear-gradient(-45deg,transparent 46%,var(--gold) 47% 49%,transparent 50%) 0 0/70px 70px}.hero-neu-raster{position:relative;display:grid;grid-template-columns:.88fr 1.12fr;gap:90px;align-items:center}.hero-neu-text h1 em{color:var(--gold2);font-weight:400}.hero-neu-text>p{max-width:620px;margin:27px 0;color:rgba(255,255,255,.72);font-size:1.1rem}.hero-aktionen{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.hero-status{display:flex;align-items:center;gap:10px;margin-top:37px;padding-top:24px;border-top:1px solid rgba(255,255,255,.18)}.hero-status .statuslicht{width:9px;height:9px;border-radius:50%;background:#bc6459}.hero-status .statuslicht.offen{background:#79b980}.hero-status small{color:rgba(255,255,255,.62)}.hero-neu-bilder{position:relative;min-height:610px}.hero-hauptbild{position:absolute;inset:0;margin:0;border:1px solid rgba(219,201,157,.45);padding:12px}.hero-hauptbild img{width:100%;height:100%;object-fit:cover}.hero-siegel{position:absolute;right:3%;top:5%;display:flex;flex-direction:column;align-items:center;justify-content:center;width:112px;height:112px;border-radius:50%;background:var(--gold);color:var(--tanne);box-shadow:0 10px 35px rgba(0,0,0,.24)}.hero-siegel span,.hero-siegel small{font-size:.56rem;letter-spacing:.13em;text-transform:uppercase}.hero-siegel strong{font-family:"Baskerville",serif;font-size:2rem;line-height:1}.komfortleiste{background:var(--creme);border-bottom:1px solid var(--linie)}.komfort-raster{display:grid;grid-template-columns:repeat(4,1fr)}.komfort-raster a{position:relative;padding:28px 30px;border-right:1px solid var(--linie);text-decoration:none;min-height:120px}.komfort-raster a:first-child{border-left:1px solid var(--linie)}.komfort-raster i{position:absolute;right:23px;top:18px;color:var(--gold);font-family:"Baskerville",serif;font-style:normal}.komfort-raster strong{display:block;font-family:"Baskerville",serif;font-size:1.35rem;font-weight:400;margin-top:15px}.komfort-raster span{color:var(--grau);font-size:.84rem}.komfort-raster a:hover{background:#fff}.haltung{background:#fff}.werte-raster{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.werte-raster article{padding:38px 36px;border:1px solid var(--linie);background:var(--ivory)}.werte-raster article>span{color:var(--gold);font-family:"Baskerville",serif}.werte-raster h3{margin:17px 0 12px}.werte-raster p{color:var(--grau);margin:0}.speisekarten-vorschau{background:var(--creme)}.speisekarten-vorschau-raster{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.karten-buehne{min-height:650px;position:relative;display:grid;place-items:center;perspective:1400px}.karten-schatten{position:absolute;width:65%;height:60%;background:rgba(16,42,35,.2);filter:blur(35px);transform:translate(20px,45px) rotate(-4deg)}.karten-deckel{position:relative;width:min(420px,75%);aspect-ratio:.707;background:var(--tanne);padding:15px;box-shadow:0 35px 75px rgba(16,42,35,.26);transform:rotateY(-9deg) rotateZ(-2deg)}.karten-deckel img{width:100%;height:100%;object-fit:cover}.karten-ecke{position:absolute;right:12%;bottom:12%;background:var(--gold);padding:12px 18px;color:var(--tanne);font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.karten-text>p{color:var(--grau);font-size:1.06rem}.karten-text ul{list-style:none;padding:0;margin:25px 0 34px;border-top:1px solid var(--linie)}.karten-text li{padding:13px 0 13px 24px;border-bottom:1px solid var(--linie);position:relative}.karten-text li:before{content:"";position:absolute;left:0;top:24px;width:10px;height:1px;background:var(--gold)}.restaurant-einblick{background:#fff}.einblick-kopf{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:end;margin-bottom:45px}.einblick-kopf p{color:var(--grau)}.einblick-raster{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:280px 280px;gap:18px}.einblick-raster figure{margin:0;position:relative;overflow:hidden}.einblick-raster img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.einblick-raster figure:hover img{transform:scale(1.025)}.einblick-gross{grid-row:1/3}.einblick-raster figcaption{position:absolute;left:18px;bottom:18px;background:rgba(16,42,35,.88);color:#fff;padding:8px 12px;font-size:.65rem;text-transform:uppercase;letter-spacing:.12em}.angebote{background:var(--ivory)}.angebote-raster{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.angebot-karte{min-height:420px;padding:42px 38px;border:1px solid var(--linie);background:#fff;text-decoration:none;display:flex;flex-direction:column;position:relative;overflow:hidden}.angebot-karte>span{color:var(--gold);font-size:.64rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.angebot-karte h3{font-size:2.3rem;margin:25px 0 15px}.angebot-karte p{color:var(--grau)}.angebot-karte i{margin-top:auto;font-style:normal;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.angebot-karte.dunkel{background:var(--tanne);color:#fff}.angebot-karte.dunkel p{color:rgba(255,255,255,.65)}.angebot-karte.bild{color:#fff;justify-content:flex-end}.angebot-karte.bild>div{position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,42,35,.1),rgba(16,42,35,.85)),url("../images/restaurant/tafel-zwei.webp") center/cover}.angebot-karte.bild>*:not(div){position:relative}.oeffnung-zahlung{padding:105px 0;background:var(--tanne);color:#fff}.oeffnung-raster{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center}.oeffnung-text p{color:rgba(255,255,255,.65)}.payment-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.payment-badges span,.zahlungsarten span{border:1px solid rgba(219,201,157,.45);padding:7px 10px;color:var(--gold2);font-size:.62rem;text-transform:uppercase;letter-spacing:.1em}.zeiten-liste{border-top:1px solid rgba(255,255,255,.18)}.zeiten-liste div{display:grid;grid-template-columns:180px 1fr;gap:30px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.18)}.zeiten-liste span{color:var(--gold2);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.zeiten-liste strong{font-weight:500}.abschluss-kontakt{background:#fff}.abschluss-raster{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.abschluss-bild img{height:520px;width:100%;object-fit:cover}.abschluss-links{border-top:1px solid var(--linie);margin-top:35px}.abschluss-links a{display:grid;grid-template-columns:105px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--linie);text-decoration:none}.abschluss-links span{color:var(--gold);font-size:.64rem;text-transform:uppercase;letter-spacing:.12em}.abschluss-links strong{font-family:"Baskerville",serif;font-size:1.2rem;font-weight:400}
/* Page heroes */
.seitenhero{padding:95px 0;background:var(--tanne);color:#fff;position:relative;overflow:hidden}.seitenhero:after{content:"";position:absolute;inset:0;opacity:.1;background:linear-gradient(45deg,transparent 46%,var(--gold) 47% 49%,transparent 50%) 0 0/70px 70px}.seitenhero-raster,.seitenhero-zentriert{position:relative;z-index:1}.seitenhero-raster{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:center}.seitenhero-zentriert{max-width:850px;text-align:center}.seitenhero p{color:rgba(255,255,255,.7);font-size:1.07rem}.seitenhero-cover{justify-self:center;width:260px;transform:rotate(3deg);box-shadow:0 25px 60px rgba(0,0,0,.3)}.seitenhero-cover img{width:100%}.anfahrt-hero{background:linear-gradient(90deg,rgba(16,42,35,.92),rgba(16,42,35,.48)),url("../images/restaurant/aussenbereich.webp") center/cover}.galerie-hero{background:linear-gradient(90deg,rgba(16,42,35,.93),rgba(16,42,35,.45)),url("../images/restaurant/terrasse.webp") center/cover}.kontakt-hero{background:var(--tanne)}.feiern-hero{background:var(--tanne)}.gutschein-hero{background:var(--tanne)}.kegelbahn-hero{background:linear-gradient(90deg,rgba(16,42,35,.96),rgba(16,42,35,.65)),url("../images/restaurant/innenraum.webp") center/cover}.recht-hero,.standard-hero{background:var(--tanne)}
/* Menu */
.menue-suche-bereich{padding:55px 0 25px;background:var(--creme)}.menue-suche{max-width:850px;margin:auto;position:relative}.menue-suche label{display:block;margin-bottom:9px;font-size:.66rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--tanne)}.menue-suche>div:first-of-type{display:flex;border:1px solid var(--linie);background:#fff}.menue-suche input{width:100%;border:0;padding:17px 19px;background:transparent;outline:none}.menue-suche button{width:54px;border:0;background:transparent;font-size:1.5rem;cursor:pointer}.suchergebnisse{margin-top:8px;background:#fff;border:1px solid var(--linie);box-shadow:var(--schatten);max-height:350px;overflow:auto;position:absolute;z-index:50;width:min(850px,calc(100% - 48px))}.suchergebnisse button{width:100%;display:flex;justify-content:space-between;gap:20px;padding:14px 18px;border:0;border-bottom:1px solid var(--linie);background:#fff;text-align:left;cursor:pointer}.suchergebnisse button:hover{background:var(--creme)}.menue-viewer-bereich{padding:35px 0 110px;background:var(--creme)}.menue-werk{border:1px solid rgba(31,38,34,.16);background:#d9d1c2;box-shadow:var(--schatten);overflow:hidden}.menue-bedienung{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:66px;padding:0 17px;background:var(--ivory);border-bottom:1px solid var(--linie)}.menue-werkzeug{border:0;background:transparent;min-height:42px;padding:0 12px;color:var(--tanne);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.menue-werkzeug:hover{background:rgba(16,42,35,.07)}.menue-werkzeug.symbol{font-size:1.2rem}.menue-werkzeuge-rechts{justify-self:end;display:flex}.menue-seitenstatus{font-family:"Baskerville",serif}.menue-inhalt{position:relative}.kapitel-panel{position:absolute;inset:0 auto 0 0;z-index:40;width:min(380px,90%);padding:28px;background:var(--tanne);color:#fff;overflow:auto;transform:translateX(-102%);transition:.3s}.kapitel-panel.offen{transform:none}.kapitel-kopf{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.kapitel-kopf strong{color:var(--gold2);font-size:.68rem;letter-spacing:.13em;text-transform:uppercase}.kapitel-kopf button{border:0;background:none;color:#fff;font-size:2rem;cursor:pointer}.kapitel-panel ol{list-style:none;margin:0;padding:0}.kapitel-panel li{border-top:1px solid rgba(255,255,255,.14)}.kapitel-panel li:last-child{border-bottom:1px solid rgba(255,255,255,.14)}.kapitel-panel li button{width:100%;display:grid;grid-template-columns:38px 1fr;gap:10px;padding:14px 0;border:0;background:none;color:rgba(255,255,255,.72);text-align:left;cursor:pointer}.kapitel-panel li button.aktiv,.kapitel-panel li button:hover{color:#fff}.kapitel-panel li span{color:var(--gold2);font-family:"Baskerville",serif}.buch-buehne{min-height:790px;position:relative;display:grid;place-items:center;overflow:auto;background:radial-gradient(circle at 50% 30%,rgba(255,255,255,.5),transparent 55%),repeating-linear-gradient(90deg,rgba(16,42,35,.025) 0 1px,transparent 1px 10px)}.buch-viewport{position:relative;transition:transform .25s;transform-origin:center}.geschlossenes-buch{width:min(460px,62vw);aspect-ratio:.707;padding:13px;background:var(--tanne);box-shadow:0 30px 70px rgba(16,42,35,.28);position:relative;transform:rotateY(-5deg)}.geschlossenes-buch img{width:100%;height:100%;object-fit:cover}.cover-kante{position:absolute;right:-13px;top:7px;bottom:7px;width:13px;background:linear-gradient(90deg,#cfc7b7,#f7f2e8)}.offenes-buch{display:grid;grid-template-columns:1fr 20px 1fr;width:min(1040px,78vw);filter:drop-shadow(0 30px 35px rgba(16,42,35,.22));transition:transform .4s}.offenes-buch.blaettern-weiter{transform:perspective(1600px) rotateY(-8deg) scale(.98);opacity:.55}.offenes-buch.blaettern-zurueck{transform:perspective(1600px) rotateY(8deg) scale(.98);opacity:.55}.buchseite{margin:0;background:#fff;position:relative;aspect-ratio:.707}.buchseite img{width:100%;height:100%;object-fit:contain}.buchseite.links{box-shadow:inset -22px 0 25px -24px rgba(0,0,0,.35)}.buchseite.rechts{box-shadow:inset 22px 0 25px -24px rgba(0,0,0,.35)}.buchseite figcaption,.mobile-seite figcaption{position:absolute;left:0;right:0;bottom:-34px;text-align:center;color:var(--grau);font-size:.7rem}.buchruecken{background:linear-gradient(90deg,rgba(0,0,0,.16),rgba(255,255,255,.35),rgba(0,0,0,.16))}.mobile-seite{display:none;margin:0;width:min(500px,75vw);aspect-ratio:.707;background:#fff;box-shadow:0 30px 70px rgba(16,42,35,.25);position:relative}.mobile-seite img{width:100%;height:100%;object-fit:contain}.buch-pfeil{position:absolute;top:50%;z-index:10;width:55px;height:84px;border:1px solid rgba(31,38,34,.18);background:rgba(252,250,245,.9);font-size:2.2rem;color:var(--tanne);cursor:pointer;transform:translateY(-50%)}.buch-pfeil.links{left:18px}.buch-pfeil.rechts{right:18px}.menue-miniaturen{display:flex;gap:10px;overflow-x:auto;padding:16px;background:var(--ivory);border-top:1px solid var(--linie)}.menue-miniaturen button{min-width:95px;width:95px;border:1px solid transparent;background:transparent;padding:5px;cursor:pointer}.menue-miniaturen button.aktiv{border-color:var(--gold);background:#fff}.menue-miniaturen img{width:100%;aspect-ratio:.707;object-fit:cover}.menue-miniaturen span{display:block;font-size:.57rem;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobil-hinweis{display:none;text-align:center;padding:10px;background:var(--ivory);font-size:.74rem;color:var(--grau)}.menue-download{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:25px}.menue-download p{margin:0;color:var(--grau)}
/* Anfahrt */
.anfahrt-hauptteil{background:#fff}.anfahrt-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}.anfahrt-daten address{font-family:"Baskerville",serif;font-size:1.5rem;font-style:normal;margin:25px 0}.anfahrt-knopfe{display:flex;flex-wrap:wrap;gap:20px;align-items:center}.anfahrt-fakten{margin-top:42px;border-top:1px solid var(--linie)}.anfahrt-fakten div{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid var(--linie)}.anfahrt-fakten span{color:var(--gold);font-size:.63rem;text-transform:uppercase;letter-spacing:.11em}.anfahrt-fakten strong{font-weight:500}.kartenmodul{background:var(--creme);border:1px solid var(--linie);padding:12px}.karten-vorschau{height:530px;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;background:#ded5c5}.kartenmuster{position:absolute;inset:0;background:linear-gradient(28deg,transparent 48%,rgba(16,42,35,.12) 49% 51%,transparent 52%) 0 0/140px 100px,linear-gradient(-35deg,transparent 48%,rgba(16,42,35,.1) 49% 51%,transparent 52%) 0 0/180px 125px}.karten-vorschau>*:not(.kartenmuster){position:relative}.kartenpin{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:var(--tanne);color:#fff;font-family:"Baskerville",serif;font-size:2rem}.karten-vorschau strong{font-family:"Baskerville",serif;font-size:1.7rem;margin-top:15px}.karten-vorschau small{color:var(--grau);margin-bottom:22px}.kartenmodul iframe{width:100%;height:530px;border:0}.kartenmodul>p{font-size:.72rem;color:var(--grau);margin:8px 4px 0}.anfahrt-zeiten{padding:100px 0;background:var(--tanne);color:#fff}.anfahrt-zeiten-raster{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.aktueller-status{display:grid;grid-template-columns:12px auto;gap:3px 10px;align-items:center;margin-top:28px}.aktueller-status i{width:9px;height:9px;border-radius:50%;background:#bc6459;grid-row:1/3}.aktueller-status i.offen{background:#79b980}.aktueller-status span{color:rgba(255,255,255,.62)}.besuch-hinweise{background:var(--ivory)}.besuch-hinweise-raster{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.besuch-hinweise article{border:1px solid var(--linie);padding:35px;background:#fff}.besuch-hinweise article>span{color:var(--gold);font-family:"Baskerville",serif}.besuch-hinweise h3{margin:15px 0 10px}.besuch-hinweise p{margin:0;color:var(--grau)}
/* Gallery */
.galerie-filter{display:flex;justify-content:center;gap:8px;margin-bottom:38px;flex-wrap:wrap}.galerie-filter button{border:1px solid var(--linie);background:#fff;padding:10px 16px;font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.galerie-filter button.aktiv{background:var(--tanne);color:#fff;border-color:var(--tanne)}.galerie-mauer{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:190px;gap:15px}.galerie-element{position:relative;border:0;padding:0;overflow:hidden;cursor:pointer;background:#ddd}.galerie-element img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.galerie-element:hover img{transform:scale(1.03)}.galerie-element span{position:absolute;left:14px;bottom:14px;background:rgba(16,42,35,.88);color:#fff;padding:7px 10px;font-size:.6rem;text-transform:uppercase;letter-spacing:.1em}.element-1{grid-column:span 7;grid-row:span 3}.element-2{grid-column:span 5;grid-row:span 2}.element-3{grid-column:span 5;grid-row:span 2}.element-4,.element-5,.element-6{grid-column:span 4;grid-row:span 2}.element-7{grid-column:span 8;grid-row:span 3}.element-8{grid-column:span 4;grid-row:span 3}.element-9,.element-10,.element-11,.element-12{grid-column:span 3;grid-row:span 2}.galerie-element.versteckt{display:none}.lichtbox{position:fixed;inset:0;z-index:9000;display:none;place-items:center;background:rgba(7,20,16,.95);padding:50px}.lichtbox.offen{display:grid}.lichtbox img{max-width:90vw;max-height:82vh}.lichtbox button{position:absolute;right:25px;top:15px;background:none;border:0;color:#fff;font-size:3rem;cursor:pointer}.lichtbox p{color:#fff;margin:12px 0 0;text-align:center}
/* Contact */
.kontakt-hero-karten{display:grid;gap:12px}.kontakt-hero-karten a{display:flex;flex-direction:column;padding:22px;border:1px solid rgba(219,201,157,.45);text-decoration:none}.kontakt-hero-karten span{color:var(--gold2);font-size:.63rem;text-transform:uppercase;letter-spacing:.12em}.kontakt-hero-karten strong{font-family:"Baskerville",serif;font-size:1.4rem;font-weight:400}.kontakt-direkt{background:#fff}.kontakt-direkt-raster{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.kontakt-direkt article{padding:38px;border:1px solid var(--linie);background:var(--ivory)}.kontakt-direkt article>span{color:var(--gold);font-size:.64rem;text-transform:uppercase;letter-spacing:.12em}.kontakt-direkt h2{font-size:2.2rem;margin:17px 0}.kontakt-direkt p{color:var(--grau)}.formular-bereich{padding:100px 0;background:var(--creme)}.kontaktformular-rahmen{background:#fff;border:1px solid var(--linie);padding:55px;box-shadow:var(--schatten)}.formular-kopf{max-width:750px;margin-bottom:36px}.formular-kopf>span{color:var(--gold);font-size:.64rem;text-transform:uppercase;letter-spacing:.14em}.formular-kopf h2{margin:10px 0}.formular-kopf p{color:var(--grau)}.kontaktformular label{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.kontaktformular label>span{font-size:.64rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.kontaktformular input,.kontaktformular select,.kontaktformular textarea{width:100%;border:1px solid var(--linie);background:var(--ivory);padding:13px 14px;outline:none}.kontaktformular input:focus,.kontaktformular select:focus,.kontaktformular textarea:focus{border-color:var(--gold);background:#fff}.formular-zweispaltig{display:grid;grid-template-columns:1fr 1fr;gap:18px}.formular-dreispaltig{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}.datenschutz-check{flex-direction:row!important;align-items:flex-start;gap:10px!important}.datenschutz-check input{width:auto;margin-top:5px}.datenschutz-check span{text-transform:none!important;letter-spacing:0!important;font-weight:400!important;font-size:.82rem!important}.formular-abschluss{display:flex;align-items:center;gap:22px;margin-top:25px}.formular-abschluss small{color:var(--grau)}.formularmeldung{padding:14px 16px;margin-bottom:20px}.formularmeldung.erfolg{background:#e1eee2;color:#28522e}.formularmeldung.fehler{background:#f3e0dc;color:#7b362b}.honigfeld{position:absolute!important;left:-9999px}.kontakt-service{background:#fff}.kontakt-service-raster{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px}.kontakt-info-liste{border-top:1px solid var(--linie)}.kontakt-info-liste div{display:grid;grid-template-columns:150px 1fr;gap:25px;padding:17px 0;border-bottom:1px solid var(--linie)}.kontakt-info-liste span{color:var(--gold);font-size:.64rem;text-transform:uppercase;letter-spacing:.11em}.kontakt-info-liste strong{font-weight:500}
/* Feiern */
.feiern-hero-bild{justify-self:center}.feiern-hero-bild img{width:470px;max-height:420px;object-fit:cover;border:10px solid rgba(255,255,255,.08);box-shadow:0 25px 60px rgba(0,0,0,.25)}.feiern-einstieg{background:#fff}.feiern-einstieg-raster{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.feiern-einstieg-raster>div:first-child p{color:var(--grau)}.feiern-punkte{border-top:1px solid var(--linie)}.feiern-punkte article{display:grid;grid-template-columns:50px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--linie)}.feiern-punkte article>span{color:var(--gold);font-family:"Baskerville",serif}.feiern-punkte h3{margin-bottom:8px}.feiern-punkte p{grid-column:2;margin:0;color:var(--grau)}.feiern-galerie{padding:0 0 110px;background:#fff}.feiern-galerie-raster{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:280px 280px;gap:16px}.feiern-galerie img{width:100%;height:100%;object-fit:cover}.feiern-galerie img:first-child{grid-row:1/3}.buffet-bereich{background:var(--tanne);color:#fff}.buffet-raster{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.buffet-raster>div:first-child p{color:rgba(255,255,255,.65)}.buffet-karten{display:grid;gap:12px}.buffet-karten article{padding:24px;border:1px solid rgba(255,255,255,.17)}.buffet-karten span{color:var(--gold2);font-size:.62rem;text-transform:uppercase;letter-spacing:.1em}.buffet-karten strong{display:block;font-family:"Baskerville",serif;font-size:1.3rem;font-weight:400;margin:8px 0}.buffet-karten p{margin:0;color:rgba(255,255,255,.62)}
/* Voucher / Bowling */
.gutschein-visual{display:grid;place-items:center}.gutschein-innen{width:min(460px,100%);aspect-ratio:1.6;background:var(--tanne2);border:1px solid var(--gold);box-shadow:0 30px 70px rgba(0,0,0,.25);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.gutschein-innen:before,.gutschein-innen:after{content:"";position:absolute;inset:17px;border:1px solid rgba(219,201,157,.35)}.gutschein-innen:after{inset:27px}.gutschein-innen img{width:200px;position:relative;z-index:1}.gutschein-innen span{position:relative;z-index:1;font-family:"Baskerville",serif;font-size:2.5rem;margin:15px 0;color:var(--gold2)}.gutschein-innen small{position:relative;z-index:1;text-transform:uppercase;letter-spacing:.12em}.gutschein-ablauf{background:#fff}.ablauf-raster{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ablauf-raster article{border:1px solid var(--linie);padding:36px}.ablauf-raster article>span{color:var(--gold);font-family:"Baskerville",serif}.ablauf-raster h3{margin:15px 0}.ablauf-raster p{color:var(--grau);margin:0}.gutschein-aktion{display:flex;justify-content:center;gap:14px;margin-top:38px}.kegelbahn-einstieg{background:#fff}.kegelbahn-raster{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.kegelbahn-raster>div:first-child p{color:var(--grau)}.kegelbahn-aktionen{display:flex;flex-wrap:wrap;align-items:center;gap:20px}.kegelbahn-info{border:1px solid var(--linie);background:var(--creme);padding:28px}.kegelbahn-info div{padding:15px 0;border-bottom:1px solid var(--linie)}.kegelbahn-info div:last-child{border:0}.kegelbahn-info span{display:block;color:var(--gold);font-size:.62rem;text-transform:uppercase;letter-spacing:.1em}.kegelbahn-info strong{font-weight:500}.kegelbahn-cta{padding:90px 0;background:var(--tanne);color:#fff;text-align:center}.kegelbahn-cta span{color:var(--gold2);font-size:.65rem;text-transform:uppercase;letter-spacing:.12em}.kegelbahn-cta h2{margin:12px 0 28px}
/* Legal/Footer */
.recht-bereich{background:#fff}.recht-layout{display:grid;grid-template-columns:260px 1fr;gap:80px}.recht-layout aside{position:sticky;top:180px;align-self:start;border-top:2px solid var(--gold);padding-top:18px}.recht-layout aside strong{display:block;font-family:"Baskerville",serif;font-size:1.3rem}.recht-layout aside span{color:var(--grau)}.recht-text h2{font-size:2rem;margin:35px 0 12px}.recht-text h2:first-child{margin-top:0}.recht-text p{color:#444d49}.textspalte{max-width:900px}.fehlerseite{min-height:70vh;display:grid;place-items:center;text-align:center;padding:100px 0}.fehlerseite p{color:var(--grau);margin:25px 0}.seitenfuss{position:relative;background:#081c17;color:#fff;overflow:hidden}.fuss-muster{position:absolute;inset:0;opacity:.07;background:linear-gradient(45deg,transparent 46%,var(--gold) 47% 49%,transparent 50%) 0 0/70px 70px}.fuss-hauptteil,.fuss-zeiten,.fuss-unten{position:relative}.fuss-hauptteil{display:grid;grid-template-columns:1.35fr .8fr .9fr .9fr;gap:55px;padding:75px 0 55px}.fuss-marke img{width:230px}.fuss-marke p{max-width:410px;color:rgba(255,255,255,.58);margin-top:20px}.zahlungsarten{display:flex;flex-wrap:wrap;gap:7px}.fuss-spalte{display:flex;flex-direction:column;align-items:flex-start}.fuss-spalte h3{color:var(--gold2);font-size:.64rem;font-family:inherit;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px}.fuss-spalte address{font-style:normal;color:rgba(255,255,255,.68);margin-bottom:12px}.fuss-spalte a{color:rgba(255,255,255,.72);text-decoration:none;margin-bottom:8px}.fuss-spalte a:hover{color:#fff}.fuss-zeiten{display:grid;grid-template-columns:180px repeat(4,1fr);gap:12px;padding:25px 0;border-top:1px solid rgba(255,255,255,.12)}.fuss-zeiten>strong{color:var(--gold2);font-size:.65rem;text-transform:uppercase;letter-spacing:.12em}.fuss-zeiten span{display:flex;flex-direction:column;color:rgba(255,255,255,.65);font-size:.7rem}.fuss-zeiten b{color:#fff;font-weight:600}.fuss-unten{border-top:1px solid rgba(255,255,255,.12)}.fuss-unten-innen{min-height:66px;display:flex;justify-content:space-between;align-items:center;color:rgba(255,255,255,.45);font-size:.74rem}.fuss-unten nav{display:flex;gap:20px}.fuss-unten a{color:rgba(255,255,255,.65);text-decoration:none}.elementor-seiteninhalt{overflow:hidden}
/* Reveal animations */
[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}[data-reveal].sichtbar{opacity:1;transform:none}.hero-neu-bilder.sichtbar .hero-hauptbild img{animation:bildzoom 1.4s ease both}@keyframes bildzoom{from{transform:scale(1.045)}to{transform:scale(1)}}
@media(max-width:1100px){:root{--breite:min(100% - 36px,1240px)}.serviceleiste-mitte{display:none}.serviceleiste-innen{grid-template-columns:1fr 1fr}.navigationsleiste-innen{grid-template-columns:200px 1fr 150px}.marke small{display:none}.hauptmenue{gap:20px}.hero-neu-raster,.speisekarten-vorschau-raster,.oeffnung-raster,.abschluss-raster,.anfahrt-layout,.anfahrt-zeiten-raster,.kontakt-service-raster,.feiern-einstieg-raster,.buffet-raster,.kegelbahn-raster{gap:55px}.fuss-hauptteil{grid-template-columns:1.2fr 1fr 1fr}.fuss-hauptteil .fuss-spalte:last-child{grid-column:2/4}.fuss-zeiten{grid-template-columns:150px repeat(3,1fr)}}
@media(max-width:880px){body.admin-bar .seitenkopf{top:46px}.serviceleiste{display:none}.navigationsleiste-innen{min-height:76px;grid-template-columns:1fr auto}.marke-rahmen{width:160px;min-height:55px}.marke img{width:135px}.reservieren-knopf{display:none}.menueknopf{display:block;justify-self:end}.hauptnavigation{position:fixed;inset:76px 0 0;background:var(--ivory);display:none;padding:55px 24px;overflow:auto}.hauptnavigation.offen{display:block}.hauptmenue{flex-direction:column;align-items:center;gap:5px}.hauptmenue a{font-family:"Baskerville",serif;font-size:2.1rem;font-weight:400;text-transform:none;letter-spacing:-.02em;padding:8px}.hauptmenue a:after{display:none}.mobile-zusatz{display:flex;flex-direction:column;align-items:center;margin-top:30px;padding-top:25px;border-top:1px solid var(--linie)}.mobile-zusatz a{text-decoration:none;padding:7px;text-transform:uppercase;letter-spacing:.1em;font-size:.68rem}.hero-neu-raster,.seitenhero-raster{grid-template-columns:1fr}.hero-neu-text{text-align:center}.hero-neu-text>p{margin-inline:auto}.hero-aktionen,.hero-status{justify-content:center}.hero-neu-bilder{min-height:520px}.komfort-raster{grid-template-columns:1fr 1fr}.werte-raster,.kontakt-direkt-raster,.besuch-hinweise-raster,.ablauf-raster{grid-template-columns:1fr}.einblick-kopf{grid-template-columns:1fr}.angebote-raster{grid-template-columns:1fr}.angebot-karte{min-height:320px}.fuss-zeiten{grid-template-columns:1fr 1fr}.offenes-buch{width:min(820px,84vw)}}
@media(max-width:680px){:root{--breite:min(100% - 28px,1240px)}.abschnitt{padding:78px 0}h1{font-size:clamp(3.1rem,14vw,4.7rem)}h2{font-size:clamp(2.4rem,11vw,3.8rem)}.hero-neu{padding:65px 0}.hero-neu-bilder{min-height:430px}.hero-hauptbild{inset:0}.hero-siegel{width:88px;height:88px}.komfort-raster{grid-template-columns:1fr 1fr}.komfort-raster a{padding:22px 20px;min-height:112px}.werte-raster{grid-template-columns:1fr}.speisekarten-vorschau-raster,.restaurant-einblick .einblick-kopf,.oeffnung-raster,.abschluss-raster,.anfahrt-layout,.anfahrt-zeiten-raster,.kontakt-service-raster,.feiern-einstieg-raster,.buffet-raster,.kegelbahn-raster,.recht-layout{grid-template-columns:1fr}.karten-buehne{min-height:470px}.einblick-raster{grid-template-columns:1fr 1fr;grid-template-rows:300px 180px}.einblick-gross{grid-column:1/3;grid-row:1}.abschluss-bild img{height:380px}.seitenhero{padding:70px 0}.seitenhero-raster{text-align:center}.seitenhero-cover{width:210px}.menue-bedienung{padding:0 6px}.menue-werkzeug{padding:0 7px;font-size:.61rem}.buch-buehne{min-height:610px}.geschlossenes-buch{width:min(430px,72vw)}.offenes-buch{display:none!important}.mobile-seite:not([hidden]){display:block!important;width:min(450px,72vw)}.buch-pfeil{width:38px;height:65px}.buch-pfeil.links{left:2px}.buch-pfeil.rechts{right:2px}.mobil-hinweis{display:block}.menue-miniaturen button{min-width:76px;width:76px}.menue-download{display:block}.menue-download .textlink{margin-top:10px}.anfahrt-fakten div,.kontakt-info-liste div{grid-template-columns:1fr;gap:4px}.karten-vorschau,.kartenmodul iframe{height:430px}.galerie-mauer{grid-template-columns:1fr;grid-auto-rows:280px}.galerie-element{grid-column:auto!important;grid-row:auto!important}.kontaktformular-rahmen{padding:28px 20px}.formular-zweispaltig,.formular-dreispaltig{grid-template-columns:1fr}.formular-abschluss{align-items:flex-start;flex-direction:column}.feiern-galerie-raster{grid-template-columns:1fr 1fr;grid-template-rows:280px 180px}.feiern-galerie img:first-child{grid-column:1/3;grid-row:1}.gutschein-aktion{flex-direction:column;align-items:center}.recht-layout aside{position:static}.fuss-hauptteil{grid-template-columns:1fr;gap:34px}.fuss-hauptteil .fuss-spalte:last-child{grid-column:auto}.fuss-zeiten{grid-template-columns:1fr}.fuss-unten-innen{padding:20px 0;align-items:flex-start;flex-direction:column;gap:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}[data-reveal]{opacity:1;transform:none}}

/* =====================================================================
   VERSION 2.1 – NEUE KOPFZEILE, ZENTRIERTE NAVIGATION, NEUE FUSSZEILE
   ===================================================================== */
html{scroll-padding-top:190px}
main{overflow:clip}
main>section{position:relative}
main>section[id]{scroll-margin-top:190px}
a,button{outline-offset:4px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.inline-kontaktlink{color:inherit;text-decoration:none;border-bottom:1px solid rgba(186,154,95,.55)}
.inline-kontaktlink:hover{color:var(--gold)}

/* Zusammenhängende, dauerhaft sichtbare Kopfzeile */
.seitenkopf.kopf-neu{
  position:sticky;
  top:0;
  z-index:6000;
  background:rgba(252,250,245,.985);
  box-shadow:0 12px 34px rgba(15,38,31,.08);
  border-bottom:0;
  isolation:isolate;
}
body.admin-bar .seitenkopf.kopf-neu{top:32px}
.kopf-serviceband{
  background:var(--tanne);
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.kopf-serviceband-innen{
  min-height:36px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:24px;
  font-size:.68rem;
  transition:min-height .25s ease,opacity .25s ease;
}
.kopf-status,.kopf-service-mitte,.kopf-service-kontakt{display:flex;align-items:center;gap:10px;min-width:0}
.kopf-status i,.fuss-status i{
  width:7px;
  height:7px;
  flex:0 0 auto;
  border-radius:50%;
  background:#bc6459;
  box-shadow:0 0 0 4px rgba(188,100,89,.14);
}
.kopf-status.offen i,.fuss-status.offen i{background:#79b980;box-shadow:0 0 0 4px rgba(121,185,128,.15)}
.kopf-status strong{font-size:.68rem;white-space:nowrap}
.kopf-status span{color:rgba(255,255,255,.6);white-space:nowrap}
.kopf-service-mitte{justify-self:center;color:rgba(255,255,255,.66)}
.kopf-service-mitte span+span:before{content:"·";margin-right:10px;color:var(--gold)}
.kopf-service-kontakt{justify-self:end}
.kopf-service-kontakt a{color:#fff;text-decoration:none;font-weight:700;letter-spacing:.04em}
.kopf-service-kontakt a+a{color:var(--gold2)}
.kopf-service-kontakt a:hover{text-decoration:underline;text-underline-offset:4px}

.kopf-markenband{
  background:rgba(252,250,245,.985);
  backdrop-filter:blur(16px);
}
.kopf-markenband-innen{
  min-height:88px;
  display:grid;
  grid-template-columns:1fr minmax(270px,430px) 1fr;
  align-items:center;
  gap:34px;
  transition:min-height .25s ease;
}
.kopf-direktkontakt{
  justify-self:start;
  display:flex;
  flex-direction:column;
  color:var(--text);
  text-decoration:none;
  line-height:1.25;
}
.kopf-direktkontakt.rechts{justify-self:end;text-align:right}
.kopf-direktkontakt span{
  color:var(--grau);
  font-size:.57rem;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.kopf-direktkontakt strong{
  margin-top:5px;
  color:var(--tanne);
  font-family:"Baskerville","Iowan Old Style",serif;
  font-size:1.02rem;
  font-weight:400;
}
.kopf-direktkontakt:hover strong{color:var(--gold)}
.menueknopf{display:none}
.marke-neu{
  position:relative;
  justify-self:center;
  width:100%;
  min-height:74px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  color:var(--tanne);
  text-decoration:none;
}
.marke-neu:before,.marke-neu:after{
  content:"";
  position:absolute;
  top:39%;
  width:clamp(38px,5vw,86px);
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold));
}
.marke-neu:before{right:calc(100% + 18px)}
.marke-neu:after{left:calc(100% + 18px);transform:scaleX(-1)}
.marke-neu img{
  width:min(250px,80%);
  max-height:58px;
  object-fit:contain;
  transition:width .25s ease,max-height .25s ease;
}
.marke-neu small{
  margin-top:4px;
  color:var(--grau);
  font-size:.54rem;
  font-weight:700;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.markenlinie{
  position:absolute;
  left:50%;
  bottom:-15px;
  width:1px;
  height:15px;
  background:var(--gold);
  transform:translateX(-50%);
}
.kopf-navband{
  position:relative;
  background:rgba(247,242,232,.92);
  border-top:1px solid rgba(186,154,95,.2);
  border-bottom:1px solid var(--linie);
}
.kopf-navband-innen{display:flex;align-items:center;justify-content:center;min-height:55px;transition:min-height .25s ease}
.kopf-neu .hauptnavigation{position:static;display:block;justify-self:auto;width:100%;border:0;background:transparent}
.kopf-neu .hauptmenue{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(26px,4vw,66px);
  list-style:none;
  margin:0;
  padding:0;
}
.kopf-neu .hauptmenue li{display:block}
.kopf-neu .hauptmenue a{
  position:relative;
  display:block;
  padding:18px 0 16px;
  color:var(--text);
  text-decoration:none;
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
  white-space:nowrap;
}
.kopf-neu .hauptmenue a:before{
  content:"";
  position:absolute;
  left:50%;
  bottom:8px;
  width:4px;
  height:4px;
  border:1px solid var(--gold);
  opacity:0;
  transform:translateX(-50%) rotate(45deg);
  transition:opacity .2s ease;
}
.kopf-neu .hauptmenue a:after{display:none}
.kopf-neu .hauptmenue a:hover,.kopf-neu .hauptmenue .aktuell a{color:var(--tanne)}
.kopf-neu .hauptmenue a:hover:before,.kopf-neu .hauptmenue .aktuell a:before{opacity:1}
.mobile-kontaktblock{display:none}

.seitenkopf.kopf-neu.kompakt .kopf-serviceband-innen{min-height:30px}
.seitenkopf.kopf-neu.kompakt .kopf-markenband-innen{min-height:68px}
.seitenkopf.kopf-neu.kompakt .marke-neu img{width:190px;max-height:44px}
.seitenkopf.kopf-neu.kompakt .marke-neu small{display:none}
.seitenkopf.kopf-neu.kompakt .markenlinie{bottom:-10px;height:10px}
.seitenkopf.kopf-neu.kompakt .kopf-navband-innen{min-height:48px}
.seitenkopf.kopf-neu.kompakt .hauptmenue a{padding:14px 0 13px}

/* Fließendere Übergänge zwischen Seitenbereichen */
.hero-neu,.seitenhero{isolation:isolate}
.hero-neu:after,.seitenhero:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-1px;
  width:min(1240px,calc(100% - 48px));
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(219,201,157,.55),transparent);
  transform:translateX(-50%);
}
.komfortleiste,.haltung,.speisekarten-vorschau,.restaurant-einblick,.angebote,.oeffnung-zahlung,.abschluss-kontakt{
  position:relative;
}
.komfort-raster a,.werte-raster article,.angebot-karte,.abschluss-links a,.kontakt-direkt-raster article,.besuch-hinweise-raster article{
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease,background-color .28s ease;
}
.komfort-raster a:hover,.werte-raster article:hover,.kontakt-direkt-raster article:hover,.besuch-hinweise-raster article:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 48px rgba(15,38,31,.09);
  border-color:rgba(186,154,95,.48);
}
.restaurant-einblick figure,.galerie-element,.abschluss-bild,.hero-hauptbild{overflow:hidden}
.restaurant-einblick figure img,.galerie-element img,.abschluss-bild img,.hero-hauptbild img{transition:transform .7s cubic-bezier(.22,.61,.36,1)}
.restaurant-einblick figure:hover img,.galerie-element:hover img,.abschluss-bild:hover img{transform:scale(1.025)}

/* Neue Anfahrt-Seite mit eingebetteter Google-Karte */
.anfahrt-neu{background:#fff}
.anfahrt-neu-kopf{display:grid;grid-template-columns:1fr .8fr;align-items:end;gap:80px;margin-bottom:42px}
.anfahrt-neu-kopf p{margin:0;color:var(--grau);font-size:1.02rem}
.route-optionen{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:28px}
.route-optionen a{
  position:relative;
  display:grid;
  grid-template-columns:42px 1fr 28px;
  grid-template-rows:auto auto;
  gap:3px 15px;
  min-height:124px;
  align-items:center;
  padding:24px;
  border:1px solid var(--linie);
  background:var(--ivory);
  color:var(--text);
  text-decoration:none;
  transition:.25s ease;
}
.route-optionen a:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 18px 45px rgba(15,38,31,.09)}
.route-optionen span{grid-row:1/3;color:var(--gold);font-family:"Baskerville",serif;font-size:1.15rem}
.route-optionen strong{font-family:"Baskerville",serif;font-size:1.35rem;font-weight:400}
.route-optionen small{color:var(--grau);font-size:.78rem}
.route-optionen i{grid-column:3;grid-row:1/3;justify-self:end;font-style:normal;font-size:1.4rem}
.google-kartenbereich{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);
  min-height:600px;
  background:var(--tanne);
  box-shadow:var(--schatten);
}
.google-kartenrahmen{min-height:600px;background:#ddd}
.google-kartenrahmen iframe{display:block;width:100%;height:100%;min-height:600px;border:0;filter:saturate(.84) contrast(1.02)}
.karten-adresskarte{display:flex;flex-direction:column;justify-content:center;padding:48px;color:#fff}
.karten-adresskarte h2{font-size:2.8rem;color:#fff}
.karten-adresskarte address{margin:22px 0 28px;color:rgba(255,255,255,.78);font-style:normal;font-size:1.08rem}
.karten-adresskarte .schaltflaeche{align-self:flex-start;margin-bottom:22px}
.karten-kontaktlink{display:block;padding:12px 0;border-top:1px solid rgba(255,255,255,.16);color:#fff;text-decoration:none;font-size:.84rem}
.karten-kontaktlink:last-child{border-bottom:1px solid rgba(255,255,255,.16)}
.karten-kontaktlink:hover{color:var(--gold2)}
.besuch-hinweise a{color:var(--tanne);font-weight:700;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px}

/* Vollständig neue, professionell verlinkte Fußzeile */
.fuss-neu{background:var(--tanne);color:#fff;padding:0}
.fuss-kontaktband{background:var(--gold);color:var(--tanne);padding:52px 0}
.fuss-kontaktband-innen{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:center}
.fuss-kontakttext>span{font-size:.62rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.fuss-kontakttext h2{margin-top:8px;font-size:clamp(2.2rem,3.6vw,3.75rem);color:var(--tanne)}
.fuss-kontaktaktionen{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(16,42,35,.35);border-bottom:1px solid rgba(16,42,35,.35)}
.fuss-kontaktaktionen a{
  position:relative;
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:106px;
  padding:18px 42px 18px 20px;
  border-right:1px solid rgba(16,42,35,.28);
  color:var(--tanne);
  text-decoration:none;
  transition:background .2s ease;
}
.fuss-kontaktaktionen a:last-child{border-right:0}
.fuss-kontaktaktionen a:hover{background:rgba(255,255,255,.18)}
.fuss-kontaktaktionen small{font-size:.57rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;opacity:.7}
.fuss-kontaktaktionen strong{margin-top:5px;overflow-wrap:anywhere;font-family:"Baskerville",serif;font-size:1.05rem;font-weight:400;line-height:1.25}
.fuss-kontaktaktionen i{position:absolute;right:16px;top:50%;font-style:normal;font-size:1.25rem;transform:translateY(-50%)}
.fuss-hauptbereich{position:relative;padding:58px 0 36px;background:var(--tanne);overflow:hidden}
.fuss-hauptbereich:before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.07;
  background:linear-gradient(45deg,transparent 47%,var(--gold) 48% 49%,transparent 50%) 0 0/74px 74px,
             linear-gradient(-45deg,transparent 47%,var(--gold) 48% 49%,transparent 50%) 0 0/74px 74px;
  pointer-events:none;
}
.fuss-ornament{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:24px}
.fuss-ornament span{width:88px;height:1px;background:rgba(219,201,157,.35)}
.fuss-ornament i{width:10px;height:10px;border:1px solid var(--gold);transform:rotate(45deg)}
.fuss-logozeile{position:relative;z-index:1;display:flex;justify-content:center;margin-bottom:48px}
.fuss-logo{display:flex;flex-direction:column;align-items:center;color:#fff;text-decoration:none}
.fuss-logo img{width:min(300px,72vw);max-height:96px;object-fit:contain}
.fuss-logo span{margin-top:8px;color:var(--gold2);font-size:.59rem;font-weight:700;letter-spacing:.19em;text-transform:uppercase}
.fuss-navigation-raster{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:44px;padding:42px 0;border-top:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}
.fuss-navgruppe{display:flex;flex-direction:column;align-items:flex-start}
.fuss-navgruppe h3{margin:0 0 18px;color:var(--gold2);font-family:inherit;font-size:.61rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.fuss-navgruppe>a{position:relative;margin:0 0 10px;color:rgba(255,255,255,.72);text-decoration:none;font-size:.86rem;transition:color .2s ease,transform .2s ease}
.fuss-navgruppe>a:before{content:"";position:absolute;left:-16px;top:50%;width:0;height:1px;background:var(--gold);transition:width .2s ease}
.fuss-navgruppe>a:hover{color:#fff;transform:translateX(6px)}
.fuss-navgruppe>a:hover:before{width:10px}
.fuss-zahlung{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}
.fuss-zahlung span{padding:6px 8px;border:1px solid rgba(219,201,157,.25);color:rgba(255,255,255,.65);font-size:.56rem;letter-spacing:.08em;text-transform:uppercase}
.fuss-oeffnungszeiten{position:relative;z-index:1;display:grid;grid-template-columns:270px 1fr;gap:50px;align-items:start;padding:38px 0 10px}
.fuss-status{display:flex;align-items:flex-start;gap:14px;padding-top:8px}
.fuss-status i{margin-top:7px}
.fuss-status strong,.fuss-status span{display:block}
.fuss-status strong{font-family:"Baskerville",serif;font-size:1.25rem;font-weight:400}
.fuss-status span{color:rgba(255,255,255,.55);font-size:.76rem}
.fuss-zeitenliste{display:grid;grid-template-columns:repeat(4,1fr);gap:0 24px}
.fuss-zeitenliste a{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.65);text-decoration:none;font-size:.71rem}
.fuss-zeitenliste a:hover{color:#fff;border-color:rgba(219,201,157,.4)}
.fuss-zeitenliste b{font-weight:700;color:rgba(255,255,255,.85)}
.fuss-zeitenliste span{text-align:right}
.fuss-rechtlich{background:#091c17;border-top:1px solid rgba(255,255,255,.08)}
.fuss-rechtlich-innen{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:rgba(255,255,255,.42);font-size:.73rem}
.fuss-rechtlich nav{display:flex;gap:24px}
.fuss-rechtlich a{color:rgba(255,255,255,.62);text-decoration:none}
.fuss-rechtlich a:hover{color:#fff}

@media(max-width:1120px){
  .kopf-service-mitte{display:none}
  .kopf-serviceband-innen{grid-template-columns:1fr 1fr}
  .kopf-markenband-innen{grid-template-columns:1fr minmax(260px,360px) 1fr}
  .marke-neu:before,.marke-neu:after{display:none}
  .kopf-neu .hauptmenue{gap:clamp(18px,3vw,42px)}
  .fuss-kontaktband-innen{grid-template-columns:1fr;gap:28px}
  .fuss-navigation-raster{grid-template-columns:repeat(2,1fr)}
  .fuss-zeitenliste{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:860px){
  html{scroll-padding-top:118px}
  main>section[id]{scroll-margin-top:118px}
  .seitenkopf.kopf-neu{position:sticky;top:0}
  body.admin-bar .seitenkopf.kopf-neu{top:46px}
  .kopf-serviceband-innen{min-height:32px;display:flex;justify-content:center}
  .kopf-status span,.kopf-service-kontakt{display:none}
  .kopf-markenband-innen{min-height:72px;grid-template-columns:1fr auto;gap:18px}
  .kopf-direktkontakt{display:none}
  .marke-neu{justify-self:start;align-items:flex-start;min-height:60px;width:auto}
  .marke-neu img{width:200px;max-height:48px}
  .marke-neu small{font-size:.48rem;letter-spacing:.12em}
  .markenlinie{display:none}
  .menueknopf{display:block;justify-self:end;position:relative;z-index:7002}
  .kopf-navband{border-top:0}
  .kopf-navband-innen{min-height:0}
  .kopf-neu .hauptnavigation{
    position:fixed;
    inset:0;
    z-index:7000;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:100%;
    padding:118px 24px 42px;
    background:rgba(247,242,232,.99);
    opacity:0;
    visibility:hidden;
    transform:translateY(-14px);
    transition:opacity .25s ease,transform .25s ease,visibility .25s ease;
  }
  .kopf-neu .hauptnavigation.offen{opacity:1;visibility:visible;transform:none}
  .kopf-neu .hauptmenue{flex-direction:column;gap:4px}
  .kopf-neu .hauptmenue a{padding:8px 0;font-family:"Baskerville",serif;font-size:2rem;font-weight:400;letter-spacing:-.02em;text-transform:none}
  .kopf-neu .hauptmenue a:before{bottom:3px}
  .mobile-kontaktblock{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:min(440px,100%);margin-top:30px}
  .mobile-kontaktblock a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px;border:1px solid var(--gold);color:var(--tanne);text-decoration:none;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
  .seitenkopf.kopf-neu.kompakt .kopf-serviceband-innen{min-height:30px}
  .seitenkopf.kopf-neu.kompakt .kopf-markenband-innen{min-height:64px}
  .seitenkopf.kopf-neu.kompakt .marke-neu img{width:175px;max-height:42px}
  .anfahrt-neu-kopf{grid-template-columns:1fr;gap:20px;text-align:center}
  .route-optionen{grid-template-columns:1fr}
  .google-kartenbereich{grid-template-columns:1fr}
  .google-kartenrahmen,.google-kartenrahmen iframe{min-height:440px}
  .karten-adresskarte{padding:38px}
  .fuss-kontaktaktionen{grid-template-columns:1fr}
  .fuss-kontaktaktionen a{border-right:0;border-bottom:1px solid rgba(16,42,35,.28);min-height:82px}
  .fuss-kontaktaktionen a:last-child{border-bottom:0}
  .fuss-navigation-raster{grid-template-columns:1fr 1fr;gap:36px 28px}
  .fuss-oeffnungszeiten{grid-template-columns:1fr;gap:22px}
}

@media(max-width:560px){
  .kopf-status strong{font-size:.63rem}
  .marke-neu img{width:175px}
  .marke-neu small{display:none}
  .kopf-neu .hauptnavigation{padding-top:100px}
  .kopf-neu .hauptmenue a{font-size:1.75rem}
  .mobile-kontaktblock{grid-template-columns:1fr}
  .route-optionen a{grid-template-columns:34px 1fr 24px;padding:20px}
  .google-kartenrahmen,.google-kartenrahmen iframe{min-height:380px}
  .karten-adresskarte{padding:30px 24px}
  .karten-adresskarte h2{font-size:2.35rem}
  .fuss-kontaktband{padding:40px 0}
  .fuss-kontakttext{text-align:center}
  .fuss-navigation-raster{grid-template-columns:1fr}
  .fuss-navgruppe{align-items:center;text-align:center}
  .fuss-navgruppe>a:hover{transform:none}
  .fuss-navgruppe>a:before{display:none}
  .fuss-zeitenliste{grid-template-columns:1fr}
  .fuss-status{justify-content:center;text-align:left}
  .fuss-rechtlich-innen{flex-direction:column;align-items:center;justify-content:center;padding:18px 0;text-align:center}
}

/* =====================================================================
   VERSION 3.0 – INTEGRIERTE KOPFZEILE, EXAKTE NAVIGATION, NEUER FOOTER
   ===================================================================== */

html{scroll-padding-top:190px}

/* Header: ein zusammenhängender, dunkler Markenbereich */
.seitenkopf.kopf-v3{
  position:sticky;
  top:0;
  z-index:9000;
  width:100%;
  background:var(--tanne);
  color:#fff;
  border:0;
  box-shadow:0 18px 48px rgba(4,20,15,.18);
  isolation:isolate;
}
body.admin-bar .seitenkopf.kopf-v3{top:32px}
.kopf-v3 .hinweisleiste{
  background:var(--gold);
  color:var(--tanne);
}
.kopf-v3-service{
  background:#0a211a;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.kopf-v3-service-innen{
  min-height:34px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:24px;
  color:rgba(255,255,255,.72);
  font-size:.66rem;
  transition:min-height .25s ease,opacity .25s ease;
}
.kopf-v3-status,
.kopf-v3-vorteile,
.kopf-v3-schnellkontakt{
  min-width:0;
  display:flex;
  align-items:center;
  gap:10px;
}
.kopf-v3-status i,
.fuss-v3-status i{
  width:7px;
  height:7px;
  flex:0 0 auto;
  border-radius:50%;
  background:#bc6459;
  box-shadow:0 0 0 4px rgba(188,100,89,.14);
}
.kopf-v3-status.offen i,
.fuss-v3-status.offen i{
  background:#79b980;
  box-shadow:0 0 0 4px rgba(121,185,128,.15);
}
.kopf-v3-status strong{color:#fff;font-size:.66rem;white-space:nowrap}
.kopf-v3-status span{white-space:nowrap}
.kopf-v3-vorteile{justify-self:center}
.kopf-v3-vorteile span+span:before{content:"·";margin-right:10px;color:var(--gold)}
.kopf-v3-schnellkontakt{justify-self:end}
.kopf-v3-schnellkontakt a{
  color:#fff;
  text-decoration:none;
  font-weight:800;
  letter-spacing:.05em;
}
.kopf-v3-schnellkontakt a:last-child{color:var(--gold2)}
.kopf-v3-schnellkontakt a:hover{text-decoration:underline;text-underline-offset:4px}

.kopf-v3-marke{
  position:relative;
  background:
    radial-gradient(circle at 50% -60px,rgba(219,201,157,.12),transparent 260px),
    var(--tanne);
}
.kopf-v3-marke-innen{
  min-height:82px;
  display:grid;
  grid-template-columns:1fr minmax(270px,420px) 1fr;
  align-items:center;
  gap:34px;
  transition:min-height .25s ease;
}
.kopf-v3-seitenkontakt{
  display:flex;
  flex-direction:column;
  justify-self:start;
  color:#fff;
  text-decoration:none;
  line-height:1.25;
}
.kopf-v3-seitenkontakt.rechts{justify-self:end;text-align:right}
.kopf-v3-seitenkontakt small{
  color:rgba(255,255,255,.48);
  font-size:.56rem;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.kopf-v3-seitenkontakt strong{
  margin-top:5px;
  color:var(--gold2);
  font-family:"Baskerville","Iowan Old Style",serif;
  font-size:1.02rem;
  font-weight:400;
}
.kopf-v3-seitenkontakt:hover strong{color:#fff}

.kopf-v3-logo{
  justify-self:center;
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  color:#fff;
  text-decoration:none;
}
.kopf-v3-logo img{
  width:min(238px,78vw);
  max-height:58px;
  object-fit:contain;
  transition:width .25s ease,max-height .25s ease;
}
.kopf-v3-logo span{
  margin-top:4px;
  color:rgba(255,255,255,.52);
  font-size:.52rem;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.kopf-v3-trenner{
  width:min(520px,calc(100% - 60px));
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
}
.kopf-v3-trenner span{
  width:100%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(219,201,157,.38));
}
.kopf-v3-trenner span:last-child{transform:scaleX(-1)}
.kopf-v3-trenner i{
  width:8px;
  height:8px;
  flex:0 0 auto;
  border:1px solid var(--gold);
  transform:rotate(45deg);
}
.kopf-v3-navigation{
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.kopf-v3 .hauptnavigation{
  position:static;
  display:block;
  width:100%;
  border:0;
  background:transparent;
}
.kopf-v3 .hauptmenue{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(24px,4.3vw,68px);
  margin:0 auto;
  padding:0;
  list-style:none;
}
.kopf-v3 .hauptmenue li{display:block}
.kopf-v3 .hauptmenue a{
  position:relative;
  display:block;
  padding:15px 0 16px;
  color:rgba(255,255,255,.78);
  text-decoration:none;
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
  white-space:nowrap;
  transition:color .2s ease;
}
.kopf-v3 .hauptmenue a:after{
  content:"";
  position:absolute;
  right:50%;
  bottom:8px;
  left:50%;
  height:1px;
  background:var(--gold);
  transition:left .22s ease,right .22s ease;
}
.kopf-v3 .hauptmenue a:hover,
.kopf-v3 .hauptmenue .aktuell a{color:#fff}
.kopf-v3 .hauptmenue a:hover:after,
.kopf-v3 .hauptmenue .aktuell a:after{right:0;left:0}
.kopf-v3 .mobile-kontaktblock{display:none}
.kopf-v3 .menueknopf{display:none}

/* Kompakte Scroll-Variante */
.seitenkopf.kopf-v3.kompakt .kopf-v3-service-innen{min-height:28px}
.seitenkopf.kopf-v3.kompakt .kopf-v3-marke-innen{min-height:60px}
.seitenkopf.kopf-v3.kompakt .kopf-v3-logo img{width:185px;max-height:40px}
.seitenkopf.kopf-v3.kompakt .kopf-v3-logo span{display:none}
.seitenkopf.kopf-v3.kompakt .kopf-v3-navigation{min-height:45px}
.seitenkopf.kopf-v3.kompakt .hauptmenue a{padding:12px 0 13px}

/* Neue Anfahrt-Komposition */
.anfahrt-v3{background:#fff}
.anfahrt-v3-einstieg{
  display:grid;
  grid-template-columns:1fr .82fr;
  align-items:end;
  gap:80px;
  margin-bottom:42px;
}
.anfahrt-v3-einstieg p{margin:0;color:var(--grau);font-size:1.02rem}
.anfahrt-v3-routen{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-bottom:26px;
}
.anfahrt-v3-routen a{
  position:relative;
  min-width:0;
  display:grid;
  grid-template-columns:1fr 28px;
  gap:4px 18px;
  min-height:128px;
  align-content:center;
  padding:24px 56px 24px 24px;
  border:1px solid var(--linie);
  background:var(--ivory);
  color:var(--text);
  text-decoration:none;
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.anfahrt-v3-routen a:hover{
  transform:translateY(-3px);
  border-color:var(--gold);
  box-shadow:0 18px 45px rgba(15,38,31,.09);
}
.anfahrt-v3-routen span{
  color:var(--gold);
  font-size:.59rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.anfahrt-v3-routen strong{
  font-family:"Baskerville","Iowan Old Style",serif;
  font-size:1.36rem;
  font-weight:400;
}
.anfahrt-v3-routen small{color:var(--grau);font-size:.78rem}
.anfahrt-v3-routen i{
  position:absolute;
  right:22px;
  top:50%;
  font-style:normal;
  font-size:1.35rem;
  transform:translateY(-50%);
}
.anfahrt-v3-kartenkomposition{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(320px,.6fr);
  min-height:620px;
  overflow:hidden;
  background:var(--tanne);
  box-shadow:var(--schatten);
}
.anfahrt-v3-karte{min-height:620px;background:#ddd}
.anfahrt-v3-karte iframe{
  display:block;
  width:100%;
  height:100%;
  min-height:620px;
  border:0;
  filter:saturate(.86) contrast(1.03);
}
.anfahrt-v3-adressfeld{
  display:flex;
  min-width:0;
  flex-direction:column;
  justify-content:center;
  padding:52px;
  color:#fff;
}
.anfahrt-v3-adressfeld h2{color:#fff;font-size:clamp(2.4rem,4vw,3.5rem)}
.anfahrt-v3-adressfeld address{
  margin:22px 0 28px;
  color:rgba(255,255,255,.74);
  font-size:1.08rem;
  font-style:normal;
}
.anfahrt-v3-adressfeld .schaltflaeche{align-self:flex-start}
.anfahrt-v3-direktlinks{margin-top:30px;border-top:1px solid rgba(255,255,255,.16)}
.anfahrt-v3-direktlinks a{
  display:flex;
  min-width:0;
  flex-direction:column;
  padding:14px 0;
  border-bottom:1px solid rgba(255,255,255,.16);
  color:#fff;
  text-decoration:none;
}
.anfahrt-v3-direktlinks small{
  color:var(--gold2);
  font-size:.57rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.anfahrt-v3-direktlinks strong{
  margin-top:4px;
  overflow-wrap:anywhere;
  font-family:"Baskerville","Iowan Old Style",serif;
  font-size:1.05rem;
  font-weight:400;
}
.anfahrt-v3-direktlinks a:hover strong{color:var(--gold2)}

/* Vollständig neuer Footer */
.seitenfuss.fuss-v3{
  position:relative;
  overflow:hidden;
  padding:0;
  background:#081d17;
  color:#fff;
}
.fuss-v3-aktion{
  padding:70px 0 0;
  background:var(--creme);
  color:var(--tanne);
}
.fuss-v3-aktion-kopf{
  display:grid;
  grid-template-columns:.95fr .65fr;
  gap:80px;
  align-items:end;
  margin-bottom:34px;
}
.fuss-v3-aktion-kopf>div>span{
  display:block;
  margin-bottom:10px;
  color:var(--gold);
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.fuss-v3-aktion-kopf h2{
  max-width:760px;
  color:var(--tanne);
  font-size:clamp(2.45rem,4.2vw,4.45rem);
}
.fuss-v3-aktion-kopf p{margin:0;color:var(--grau)}
.fuss-v3-aktionskarten{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  transform:translateY(34px);
  box-shadow:0 26px 65px rgba(8,29,23,.14);
}
.fuss-v3-aktionskarten a{
  position:relative;
  min-width:0;
  min-height:142px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:28px 58px 28px 28px;
  border-right:1px solid rgba(16,42,35,.13);
  background:#fff;
  color:var(--tanne);
  text-decoration:none;
  transition:background .22s ease,transform .22s ease;
}
.fuss-v3-aktionskarten a:last-child{border-right:0}
.fuss-v3-aktionskarten a:hover{background:#fdfbf7;transform:translateY(-4px)}
.fuss-v3-aktionskarten span{
  position:absolute;
  top:20px;
  right:20px;
  color:var(--gold);
  font-family:"Baskerville","Iowan Old Style",serif;
}
.fuss-v3-aktionskarten small{
  color:var(--grau);
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.fuss-v3-aktionskarten strong{
  margin-top:9px;
  overflow-wrap:anywhere;
  font-family:"Baskerville","Iowan Old Style",serif;
  font-size:1.25rem;
  font-weight:400;
  line-height:1.28;
}
.fuss-v3-aktionskarten i{
  position:absolute;
  right:24px;
  bottom:23px;
  font-style:normal;
  font-size:1.35rem;
}

.fuss-v3-hauptbereich{
  position:relative;
  padding:95px 0 34px;
  background:
    radial-gradient(circle at 12% 0,rgba(186,154,95,.09),transparent 310px),
    radial-gradient(circle at 88% 10%,rgba(219,201,157,.06),transparent 280px),
    #081d17;
}
.fuss-v3-hauptbereich:after{
  content:"";
  position:absolute;
  inset:0;
  opacity:.035;
  background:
    linear-gradient(45deg,transparent 47%,var(--gold) 48% 49%,transparent 50%) 0 0/86px 86px,
    linear-gradient(-45deg,transparent 47%,var(--gold) 48% 49%,transparent 50%) 0 0/86px 86px;
  pointer-events:none;
}
.fuss-v3-kopf,
.fuss-v3-navigationsbereich,
.fuss-v3-zeiten{position:relative;z-index:1}
.fuss-v3-kopf{
  display:grid;
  grid-template-columns:1.15fr .9fr .75fr;
  gap:65px;
  align-items:start;
  padding-bottom:46px;
}
.fuss-v3-logo{
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:flex-start;
  color:#fff;
  text-decoration:none;
}
.fuss-v3-logo img{
  width:min(300px,100%);
  max-height:82px;
  object-fit:contain;
  object-position:left center;
}
.fuss-v3-logo span{
  max-width:420px;
  margin-top:15px;
  color:rgba(255,255,255,.55);
  font-size:.78rem;
}
.fuss-v3-kontakt,
.fuss-v3-status{min-width:0}
.fuss-v3-kontakt>span,
.fuss-v3-status>span{
  display:block;
  margin-bottom:16px;
  color:var(--gold2);
  font-size:.61rem;
  font-weight:800;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.fuss-v3-kontakt a{
  display:block;
  margin-bottom:9px;
  overflow-wrap:anywhere;
  color:rgba(255,255,255,.74);
  text-decoration:none;
}
.fuss-v3-kontakt a:hover{color:#fff}
.fuss-v3-status>div{display:flex;align-items:center;gap:11px}
.fuss-v3-status strong{
  font-family:"Baskerville","Iowan Old Style",serif;
  font-size:1.3rem;
  font-weight:400;
}
.fuss-v3-status small{display:block;margin:5px 0 14px;color:rgba(255,255,255,.52)}
.fuss-v3-status>a{
  color:var(--gold2);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
  text-decoration:none;
}
.fuss-v3-status>a:hover{text-decoration:underline;text-underline-offset:4px}

.fuss-v3-navigationsbereich{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:72px;
  padding:42px 0;
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
}
.fuss-v3-navigation h3{
  margin:0 0 20px;
  color:var(--gold2);
  font-family:inherit;
  font-size:.61rem;
  font-weight:800;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.fuss-v3-linkraster{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px 28px;
}
.fuss-v3-linkraster a{
  position:relative;
  min-width:0;
  padding:4px 0 4px 17px;
  color:rgba(255,255,255,.68);
  text-decoration:none;
  font-size:.84rem;
  transition:color .2s ease,transform .2s ease;
}
.fuss-v3-linkraster a:before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:7px;
  height:1px;
  background:var(--gold);
}
.fuss-v3-linkraster a:hover{color:#fff;transform:translateX(3px)}

.fuss-v3-zeiten{
  display:grid;
  grid-template-columns:250px 1fr;
  gap:55px;
  padding-top:38px;
}
.fuss-v3-zahlung>strong{
  display:block;
  margin-bottom:14px;
  color:var(--gold2);
  font-size:.61rem;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.fuss-v3-zahlung>div{display:flex;flex-wrap:wrap;gap:7px}
.fuss-v3-zahlung span{
  padding:7px 9px;
  border:1px solid rgba(219,201,157,.25);
  color:rgba(255,255,255,.62);
  font-size:.56rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.fuss-v3-zeitenliste{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0 24px;
}
.fuss-v3-zeitenliste a{
  min-width:0;
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  border-bottom:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.62);
  text-decoration:none;
  font-size:.7rem;
}
.fuss-v3-zeitenliste a:hover{color:#fff;border-color:rgba(219,201,157,.42)}
.fuss-v3-zeitenliste b{color:rgba(255,255,255,.85);font-weight:700}
.fuss-v3-zeitenliste span{text-align:right}

.fuss-v3-rechtlich{
  background:#051510;
  border-top:1px solid rgba(255,255,255,.07);
}
.fuss-v3-rechtlich-innen{
  min-height:62px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  color:rgba(255,255,255,.42);
  font-size:.72rem;
}
.fuss-v3-rechtlich nav{display:flex;gap:24px}
.fuss-v3-rechtlich a{color:rgba(255,255,255,.62);text-decoration:none}
.fuss-v3-rechtlich a:hover{color:#fff}

@media(max-width:1120px){
  .kopf-v3-vorteile{display:none}
  .kopf-v3-service-innen{grid-template-columns:1fr 1fr}
  .kopf-v3-marke-innen{grid-template-columns:1fr minmax(250px,350px) 1fr}
  .kopf-v3 .hauptmenue{gap:clamp(18px,3.1vw,42px)}
  .fuss-v3-aktion-kopf{grid-template-columns:1fr;gap:22px}
  .fuss-v3-kopf{grid-template-columns:1fr 1fr}
  .fuss-v3-status{grid-column:2}
  .fuss-v3-navigationsbereich{gap:40px}
  .fuss-v3-linkraster{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fuss-v3-zeitenliste{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:860px){
  html{scroll-padding-top:104px}
  body.admin-bar .seitenkopf.kopf-v3{top:46px}
  .kopf-v3-service-innen{min-height:30px;display:flex;justify-content:center}
  .kopf-v3-status span,.kopf-v3-schnellkontakt{display:none}
  .kopf-v3-marke-innen{
    min-height:68px;
    grid-template-columns:1fr auto;
    gap:20px;
  }
  .kopf-v3-seitenkontakt{display:none}
  .kopf-v3-logo{justify-self:start;align-items:flex-start}
  .kopf-v3-logo img{width:190px;max-height:45px}
  .kopf-v3-logo span{display:none}
  .kopf-v3-trenner{display:none}
  .kopf-v3 .menueknopf{
    display:block;
    justify-self:end;
    position:relative;
    z-index:9102;
    padding:10px;
    border:0;
    background:transparent;
  }
  .kopf-v3 .menueknopf span{
    display:block;
    width:27px;
    height:1px;
    margin:6px;
    background:#fff;
  }
  .kopf-v3-navigation{min-height:0}
  .kopf-v3 .hauptnavigation{
    position:fixed;
    inset:0;
    z-index:9100;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:100px 24px 40px;
    background:rgba(8,29,23,.99);
    opacity:0;
    visibility:hidden;
    transform:translateY(-12px);
    transition:opacity .25s ease,visibility .25s ease,transform .25s ease;
  }
  .kopf-v3 .hauptnavigation.offen{opacity:1;visibility:visible;transform:none}
  .kopf-v3 .hauptmenue{flex-direction:column;gap:5px}
  .kopf-v3 .hauptmenue a{
    padding:7px 0;
    font-family:"Baskerville","Iowan Old Style",serif;
    font-size:2rem;
    font-weight:400;
    letter-spacing:-.02em;
    text-transform:none;
  }
  .kopf-v3 .mobile-kontaktblock{
    width:min(430px,100%);
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:30px;
  }
  .kopf-v3 .mobile-kontaktblock a{
    min-height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:10px;
    border:1px solid var(--gold);
    color:#fff;
    text-decoration:none;
    font-size:.67rem;
    font-weight:800;
    letter-spacing:.09em;
    text-transform:uppercase;
  }

  .anfahrt-v3-einstieg{grid-template-columns:1fr;gap:18px;text-align:center}
  .anfahrt-v3-routen{grid-template-columns:1fr}
  .anfahrt-v3-kartenkomposition{grid-template-columns:1fr}
  .anfahrt-v3-karte,.anfahrt-v3-karte iframe{min-height:450px}
  .anfahrt-v3-adressfeld{padding:40px}

  .fuss-v3-aktionskarten{grid-template-columns:1fr;transform:translateY(28px)}
  .fuss-v3-aktionskarten a{min-height:105px;border-right:0;border-bottom:1px solid var(--linie)}
  .fuss-v3-aktionskarten a:last-child{border-bottom:0}
  .fuss-v3-hauptbereich{padding-top:72px}
  .fuss-v3-kopf{grid-template-columns:1fr 1fr;gap:38px}
  .fuss-v3-logo{grid-column:1/3;align-items:center;text-align:center}
  .fuss-v3-logo img{object-position:center}
  .fuss-v3-navigationsbereich{grid-template-columns:1fr;gap:36px}
  .fuss-v3-zeiten{grid-template-columns:1fr;gap:24px}
}

@media(max-width:560px){
  .kopf-v3-status strong{font-size:.62rem}
  .kopf-v3-logo img{width:168px}
  .kopf-v3 .hauptmenue a{font-size:1.72rem}
  .kopf-v3 .mobile-kontaktblock{grid-template-columns:1fr}
  .anfahrt-v3-routen a{min-height:116px}
  .anfahrt-v3-karte,.anfahrt-v3-karte iframe{min-height:380px}
  .anfahrt-v3-adressfeld{padding:32px 24px}
  .fuss-v3-aktion{padding-top:55px}
  .fuss-v3-aktion-kopf{text-align:center}
  .fuss-v3-kopf{grid-template-columns:1fr;text-align:center}
  .fuss-v3-logo,.fuss-v3-kontakt,.fuss-v3-status{grid-column:auto;align-items:center}
  .fuss-v3-status>div{justify-content:center}
  .fuss-v3-linkraster{grid-template-columns:1fr;text-align:center}
  .fuss-v3-linkraster a{padding-left:0}
  .fuss-v3-linkraster a:before{display:none}
  .fuss-v3-zeitenliste{grid-template-columns:1fr}
  .fuss-v3-zahlung{text-align:center}
  .fuss-v3-zahlung>div{justify-content:center}
  .fuss-v3-rechtlich-innen{
    min-height:auto;
    flex-direction:column;
    justify-content:center;
    padding:18px 0;
    text-align:center;
  }
}

/* ================================================================
   KELMENDI MOBILE QUALITY LAYER 3.2
   Optimiert für iPhone, iPad, Touch-Bedienung und beide Ausrichtungen
   ================================================================ */

html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  min-height: 100%;
  min-height: 100dvh;
}

img,
video,
iframe,
svg {
  max-width: 100%;
}

a,
button,
input,
select,
textarea {
  touch-action: manipulation;
  -webkit-tap-highlight-color: rgba(186, 154, 95, .18);
}

button,
a,
input,
select,
textarea {
  min-width: 0;
}

input,
select,
textarea {
  font-size: 16px;
}

textarea {
  resize: vertical;
}

.seitenkopf,
.hauptnavigation,
.lichtbox,
.kapitel-panel {
  overscroll-behavior: contain;
}

.seitenkopf {
  padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right);
}

.fuss-v3-rechtlich,
.fuss-v3-hauptbereich {
  padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right);
}

.fuss-v3-rechtlich {
  padding-bottom: env(safe-area-inset-bottom);
}

.schaltflaeche,
.menue-werkzeug,
.buch-pfeil,
.galerie-filter button,
.kontaktformular button,
.kopf-v3 .mobile-kontaktblock a {
  min-height: 48px;
}

/* iPad Pro und kleinere Desktopbreiten */
@media (max-width: 1180px) {
  :root {
    --breite: min(100% - 40px, 1120px);
  }

  .abschnitt {
    padding: 96px 0;
  }

  .hero-neu-raster {
    gap: 56px;
  }

  .hero-neu-bilder {
    min-height: 540px;
  }

  .kopf-v3-marke-innen {
    grid-template-columns: minmax(150px, 1fr) minmax(250px, 330px) minmax(150px, 1fr);
    gap: 22px;
  }

  .kopf-v3-seitenkontakt strong {
    font-size: .78rem;
  }

  .kopf-v3 .hauptmenue {
    gap: clamp(16px, 2.35vw, 31px);
  }

  .kopf-v3 .hauptmenue a {
    font-size: .66rem;
  }

  .komfort-raster a {
    padding-inline: 23px;
  }

  .speisekarten-vorschau-raster,
  .abschluss-raster,
  .oeffnung-raster,
  .kontakt-service-raster,
  .feiern-einstieg-raster,
  .buffet-raster,
  .kegelbahn-raster {
    gap: 58px;
  }

  .fuss-v3-aktionskarten a {
    padding-inline: 24px;
  }

  .fuss-v3-kopf {
    gap: 40px;
  }

  .fuss-v3-navigationsbereich {
    gap: 46px;
  }
}

/* iPad hochkant, kleine iPads und große Mobilgeräte */
@media (max-width: 960px) {
  :root {
    --breite: min(100% - 36px, 900px);
  }

  html {
    scroll-padding-top: 108px;
  }

  body.admin-bar .seitenkopf.kopf-v3 {
    top: 46px;
  }

  .abschnitt {
    padding: 88px 0;
  }

  h1 {
    font-size: clamp(3.45rem, 8.8vw, 5.7rem);
  }

  h2 {
    font-size: clamp(2.65rem, 7vw, 4.25rem);
  }

  /* Kompakter, mittig ausgerichteter Tablet-/Mobile-Header */
  .kopf-v3-service-innen {
    min-height: 34px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 18px;
  }

  .kopf-v3-vorteile {
    display: none;
  }

  .kopf-v3-status span {
    display: none;
  }

  .kopf-v3-schnellkontakt {
    display: flex;
    gap: 18px;
  }

  .kopf-v3-marke-innen {
    position: relative;
    min-height: 72px;
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) 52px;
    gap: 8px;
  }

  .kopf-v3-marke-innen::before {
    content: "";
    grid-column: 1;
    width: 52px;
  }

  .kopf-v3-seitenkontakt {
    display: none;
  }

  .kopf-v3-logo {
    grid-column: 2;
    justify-self: center;
    align-items: center;
    text-align: center;
  }

  .kopf-v3-logo img {
    width: min(210px, 48vw);
    max-height: 48px;
    object-fit: contain;
  }

  .kopf-v3-logo span,
  .kopf-v3-trenner {
    display: none;
  }

  .kopf-v3 .menueknopf {
    grid-column: 3;
    display: block;
    justify-self: end;
    position: relative;
    z-index: 9302;
    width: 48px;
    height: 48px;
    padding: 10px;
    border: 0;
    background: transparent;
  }

  .kopf-v3 .menueknopf span {
    display: block;
    width: 27px;
    height: 1px;
    margin: 6px auto;
    background: #fff;
    transform-origin: center;
    transition: transform .25s ease, opacity .2s ease;
  }

  .kopf-v3 .menueknopf.aktiv span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }

  .kopf-v3 .menueknopf.aktiv span:nth-child(2) {
    opacity: 0;
  }

  .kopf-v3 .menueknopf.aktiv span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }

  .kopf-v3-navigation {
    min-height: 0;
  }

  .kopf-v3 .hauptnavigation {
    position: fixed;
    inset: 0;
    z-index: 9300;
    display: flex;
    min-height: 100vh;
    min-height: 100dvh;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow-y: auto;
    padding:
      calc(88px + env(safe-area-inset-top))
      max(24px, env(safe-area-inset-right))
      calc(34px + env(safe-area-inset-bottom))
      max(24px, env(safe-area-inset-left));
    background:
      radial-gradient(circle at 50% 16%, rgba(186, 154, 95, .13), transparent 34%),
      rgba(8, 29, 23, .995);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: opacity .25s ease, visibility .25s ease, transform .25s ease;
  }

  .kopf-v3 .hauptnavigation.offen {
    opacity: 1;
    visibility: visible;
    transform: none;
  }

  .kopf-v3 .hauptmenue {
    width: min(520px, 100%);
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }

  .kopf-v3 .hauptmenue li {
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, .11);
  }

  .kopf-v3 .hauptmenue li:first-child {
    border-top: 1px solid rgba(255, 255, 255, .11);
  }

  .kopf-v3 .hauptmenue a {
    display: flex;
    min-height: 56px;
    align-items: center;
    justify-content: center;
    padding: 10px 6px;
    color: #fff;
    font-family: "Baskerville", "Iowan Old Style", serif;
    font-size: clamp(1.5rem, 4.7vw, 2.05rem);
    font-weight: 400;
    letter-spacing: -.015em;
    text-transform: none;
  }

  .kopf-v3 .hauptmenue a::after {
    display: none;
  }

  .kopf-v3 .mobile-kontaktblock {
    width: min(520px, 100%);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 28px;
  }

  .kopf-v3 .mobile-kontaktblock a {
    min-height: 50px;
  }

  /* Startseite und allgemeine Layouts */
  .hero-neu {
    padding: 70px 0 82px;
  }

  .hero-neu-raster,
  .seitenhero-raster,
  .speisekarten-vorschau-raster,
  .oeffnung-raster,
  .abschluss-raster,
  .anfahrt-layout,
  .anfahrt-zeiten-raster,
  .kontakt-service-raster,
  .feiern-einstieg-raster,
  .buffet-raster,
  .kegelbahn-raster,
  .recht-layout {
    grid-template-columns: 1fr;
  }

  .hero-neu-raster {
    gap: 52px;
  }

  .hero-neu-text,
  .seitenhero-raster {
    text-align: center;
  }

  .hero-neu-text > p,
  .seitenhero-raster p {
    margin-inline: auto;
  }

  .hero-aktionen,
  .hero-status {
    justify-content: center;
  }

  .hero-neu-bilder {
    width: min(760px, 100%);
    min-height: clamp(440px, 64vw, 610px);
    margin-inline: auto;
  }

  .komfort-raster {
    grid-template-columns: 1fr 1fr;
  }

  .werte-raster {
    grid-template-columns: 1fr;
  }

  .werte-raster article {
    padding: 31px 30px;
  }

  .karten-buehne {
    min-height: 550px;
  }

  .einblick-kopf {
    grid-template-columns: 1fr;
    gap: 24px;
    text-align: center;
  }

  .einblick-kopf p {
    max-width: 680px;
    margin-inline: auto;
  }

  .angebote-raster,
  .kontakt-direkt-raster,
  .besuch-hinweise-raster,
  .ablauf-raster {
    grid-template-columns: 1fr;
  }

  .angebot-karte {
    min-height: 280px;
  }

  .abschluss-text,
  .oeffnung-text,
  .kontakt-service-raster > div,
  .feiern-einstieg-raster > div,
  .kegelbahn-raster > div {
    min-width: 0;
  }

  /* Digitale Speisekarte: auf iPad hochkant eine volle Einzelseite */
  .menue-bedienung {
    min-height: 68px;
    padding-inline: 12px;
  }

  .menue-werkzeug {
    min-height: 48px;
  }

  .buch-buehne {
    min-height: 760px;
    touch-action: pan-y;
  }

  .offenes-buch {
    display: none !important;
  }

  .mobile-seite:not([hidden]) {
    display: block !important;
    width: min(620px, 76vw);
  }

  .geschlossenes-buch {
    width: min(570px, 70vw);
  }

  .buch-pfeil {
    width: 48px;
    height: 76px;
  }

  .buch-pfeil.links {
    left: 8px;
  }

  .buch-pfeil.rechts {
    right: 8px;
  }

  .menue-miniaturen {
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
  }

  .menue-miniaturen button {
    min-width: 88px;
    width: 88px;
    scroll-snap-align: start;
  }

  .mobil-hinweis {
    display: block;
  }

  /* Seiten und Formulare */
  .kontaktformular-rahmen {
    padding: 38px 32px;
  }

  .formular-dreispaltig {
    grid-template-columns: 1fr 1fr;
  }

  .galerie-mauer {
    grid-auto-rows: 240px;
  }

  .anfahrt-v3-einstieg,
  .anfahrt-v3-kartenkomposition {
    grid-template-columns: 1fr;
  }

  .anfahrt-v3-einstieg {
    gap: 22px;
    text-align: center;
  }

  .anfahrt-v3-routen {
    grid-template-columns: repeat(3, 1fr);
  }

  .anfahrt-v3-karte,
  .anfahrt-v3-karte iframe {
    min-height: 500px;
  }

  .anfahrt-v3-adressfeld {
    padding: 42px;
  }

  /* Footer */
  .fuss-v3-aktion {
    padding-top: 72px;
  }

  .fuss-v3-aktion-kopf {
    grid-template-columns: 1fr;
    gap: 20px;
    text-align: center;
  }

  .fuss-v3-aktion-kopf p {
    max-width: 680px;
    margin-inline: auto;
  }

  .fuss-v3-aktionskarten {
    grid-template-columns: 1fr;
    transform: translateY(28px);
  }

  .fuss-v3-aktionskarten a {
    min-height: 104px;
    border-right: 0;
    border-bottom: 1px solid var(--linie);
  }

  .fuss-v3-aktionskarten a:last-child {
    border-bottom: 0;
  }

  .fuss-v3-hauptbereich {
    padding-top: 76px;
  }

  .fuss-v3-kopf {
    grid-template-columns: 1fr 1fr;
    gap: 38px;
  }

  .fuss-v3-logo {
    grid-column: 1 / 3;
    align-items: center;
    text-align: center;
  }

  .fuss-v3-logo img {
    object-position: center;
  }

  .fuss-v3-navigationsbereich {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .fuss-v3-linkraster {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .fuss-v3-zeiten {
    grid-template-columns: 1fr;
    gap: 26px;
  }

  .fuss-v3-zeitenliste {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* iPhone Plus/Pro Max, normale iPhones und kleine Tablets */
@media (max-width: 680px) {
  :root {
    --breite: min(100% - 28px, 640px);
  }

  html {
    scroll-padding-top: 100px;
  }

  .abschnitt {
    padding: 70px 0;
  }

  h1 {
    font-size: clamp(3rem, 13.5vw, 4.55rem);
  }

  h2 {
    font-size: clamp(2.3rem, 10.7vw, 3.55rem);
  }

  h3 {
    font-size: 1.48rem;
  }

  .rubrik {
    margin-bottom: 14px;
    font-size: .63rem;
    letter-spacing: .17em;
  }

  .kopf-v3-service-innen {
    min-height: 31px;
  }

  .kopf-v3-status strong {
    font-size: .62rem;
  }

  .kopf-v3-schnellkontakt {
    gap: 13px;
  }

  .kopf-v3-schnellkontakt a {
    font-size: .62rem;
  }

  .kopf-v3-marke-innen {
    min-height: 66px;
  }

  .kopf-v3-logo img {
    width: min(184px, 50vw);
    max-height: 42px;
  }

  .hero-neu {
    padding: 54px 0 64px;
  }

  .hero-neu-raster {
    gap: 38px;
  }

  .hero-neu-text > p {
    margin-top: 22px;
    font-size: 1rem;
  }

  .hero-aktionen {
    gap: 10px;
  }

  .hero-aktionen .schaltflaeche {
    flex: 1 1 210px;
  }

  .hero-status {
    flex-wrap: wrap;
    gap: 7px 10px;
    margin-top: 29px;
    padding-top: 19px;
  }

  .hero-neu-bilder {
    min-height: 0;
    aspect-ratio: 4 / 3;
  }

  .hero-hauptbild {
    padding: 8px;
  }

  .hero-siegel {
    width: 82px;
    height: 82px;
  }

  .hero-siegel strong {
    font-size: 1.65rem;
  }

  .komfort-raster {
    grid-template-columns: 1fr 1fr;
  }

  .komfort-raster a {
    min-height: 106px;
    padding: 20px 17px;
  }

  .komfort-raster strong {
    font-size: 1.18rem;
  }

  .komfort-raster span {
    font-size: .75rem;
    line-height: 1.4;
  }

  .zentrierter-kopf {
    margin-bottom: 38px;
  }

  .werte-raster article {
    padding: 28px 24px;
  }

  .speisekarten-vorschau-raster {
    gap: 38px;
  }

  .karten-buehne {
    min-height: 440px;
  }

  .karten-deckel {
    width: min(360px, 76%);
  }

  .einblick-raster {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(3, 260px);
  }

  .einblick-gross {
    grid-column: auto;
    grid-row: auto;
  }

  .angebot-karte {
    min-height: 260px;
    padding: 34px 28px;
  }

  .payment-badges {
    gap: 7px;
  }

  .payment-badges span {
    flex: 1 1 calc(50% - 7px);
    text-align: center;
  }

  .abschluss-bild img {
    height: 330px;
  }

  .seitenhero {
    padding: 58px 0 62px;
  }

  .seitenhero-cover {
    width: 190px;
  }

  /* Speisekarte auf iPhone */
  .menue-suche-bereich {
    padding: 38px 0 18px;
  }

  .menue-suche input {
    min-height: 54px;
    padding: 14px 15px;
  }

  .suchergebnisse {
    width: 100%;
    max-height: 52vh;
  }

  .menue-viewer-bereich {
    padding: 25px 0 76px;
  }

  .menue-bedienung {
    min-height: auto;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 4px 8px;
    padding: 8px;
  }

  .menue-seitenstatus {
    grid-column: 1 / 3;
    grid-row: 1;
    padding: 4px 0 1px;
    text-align: center;
  }

  .menue-bedienung > .menue-werkzeug {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
  }

  .menue-werkzeuge-rechts {
    grid-column: 2;
    grid-row: 2;
  }

  .menue-werkzeug {
    min-height: 44px;
    padding-inline: 9px;
    font-size: .59rem;
  }

  .menue-werkzeug.symbol {
    min-width: 42px;
    font-size: 1.12rem;
  }

  .buch-buehne {
    min-height: 590px;
  }

  .geschlossenes-buch {
    width: min(420px, 72vw);
  }

  .mobile-seite:not([hidden]) {
    width: min(455px, 72vw);
  }

  .buch-pfeil {
    width: 40px;
    height: 66px;
    font-size: 1.8rem;
  }

  .buch-pfeil.links {
    left: 1px;
  }

  .buch-pfeil.rechts {
    right: 1px;
  }

  .menue-miniaturen {
    gap: 7px;
    padding: 12px;
  }

  .menue-miniaturen button {
    min-width: 74px;
    width: 74px;
  }

  .menue-download {
    display: grid;
    gap: 13px;
  }

  .menue-download .textlink {
    justify-self: start;
  }

  .kapitel-panel {
    width: min(360px, 94%);
    padding: 22px;
  }

  /* Galerie */
  .galerie-filter {
    display: flex;
    width: 100%;
    overflow-x: auto;
    justify-content: flex-start;
    padding-bottom: 5px;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
  }

  .galerie-filter button {
    flex: 0 0 auto;
    scroll-snap-align: start;
  }

  .galerie-mauer {
    grid-template-columns: 1fr;
    grid-auto-rows: 270px;
  }

  .galerie-element {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  .lichtbox {
    padding:
      max(20px, env(safe-area-inset-top))
      max(16px, env(safe-area-inset-right))
      max(20px, env(safe-area-inset-bottom))
      max(16px, env(safe-area-inset-left));
  }

  /* Formulare */
  .kontaktformular-rahmen {
    padding: 28px 20px;
  }

  .formular-zweispaltig,
  .formular-dreispaltig {
    grid-template-columns: 1fr;
  }

  .formular-abschluss {
    align-items: stretch;
    flex-direction: column;
  }

  .formular-abschluss .schaltflaeche {
    width: 100%;
  }

  .datenschutz-check {
    align-items: flex-start;
  }

  /* Anfahrt */
  .anfahrt-v3-routen {
    grid-template-columns: 1fr;
  }

  .anfahrt-v3-routen a {
    min-height: 108px;
  }

  .anfahrt-v3-karte,
  .anfahrt-v3-karte iframe {
    min-height: 390px;
  }

  .anfahrt-v3-adressfeld {
    padding: 31px 23px;
  }

  .anfahrt-v3-direktlinks {
    display: grid;
    gap: 10px;
  }

  .anfahrt-v3-direktlinks a {
    width: 100%;
    justify-content: center;
  }

  .anfahrt-fakten div,
  .kontakt-info-liste div {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  /* Feiern/Gutscheine */
  .feiern-galerie-raster {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(3, 250px);
  }

  .feiern-galerie img:first-child {
    grid-column: auto;
    grid-row: auto;
  }

  .gutschein-aktion {
    flex-direction: column;
    align-items: stretch;
  }

  .gutschein-aktion .schaltflaeche {
    width: 100%;
  }

  .recht-layout aside {
    position: static;
  }

  /* Footer */
  .fuss-v3-aktion {
    padding-top: 56px;
  }

  .fuss-v3-aktionskarten {
    transform: translateY(22px);
  }

  .fuss-v3-aktionskarten a {
    min-height: 98px;
    padding: 20px 19px;
  }

  .fuss-v3-aktionskarten strong {
    overflow-wrap: anywhere;
  }

  .fuss-v3-hauptbereich {
    padding-top: 64px;
  }

  .fuss-v3-kopf {
    grid-template-columns: 1fr;
    gap: 31px;
    text-align: center;
  }

  .fuss-v3-logo,
  .fuss-v3-kontakt,
  .fuss-v3-status {
    grid-column: auto;
    align-items: center;
  }

  .fuss-v3-status > div {
    justify-content: center;
  }

  .fuss-v3-linkraster {
    grid-template-columns: 1fr 1fr;
    gap: 8px 20px;
  }

  .fuss-v3-linkraster a {
    padding-left: 0;
    text-align: center;
  }

  .fuss-v3-linkraster a::before {
    display: none;
  }

  .fuss-v3-zeitenliste {
    grid-template-columns: 1fr;
  }

  .fuss-v3-zahlung {
    text-align: center;
  }

  .fuss-v3-zahlung > div {
    justify-content: center;
  }

  .fuss-v3-rechtlich-innen {
    min-height: auto;
    flex-direction: column;
    justify-content: center;
    padding: 18px 0;
    text-align: center;
  }

  .fuss-v3-rechtlich nav {
    flex-wrap: wrap;
    justify-content: center;
  }
}

/* Kleine iPhones: 320–430 px */
@media (max-width: 430px) {
  :root {
    --breite: calc(100% - 22px);
  }

  .kopf-v3-service-innen {
    display: flex;
    justify-content: center;
  }

  .kopf-v3-schnellkontakt {
    display: none;
  }

  .kopf-v3-logo img {
    width: min(168px, 48vw);
  }

  .kopf-v3 .hauptnavigation {
    padding-inline:
      max(17px, env(safe-area-inset-left))
      max(17px, env(safe-area-inset-right));
  }

  .kopf-v3 .mobile-kontaktblock {
    grid-template-columns: 1fr;
  }

  .hero-neu-text h1 {
    font-size: clamp(2.82rem, 13.7vw, 3.75rem);
  }

  .hero-aktionen {
    display: grid;
  }

  .hero-aktionen .schaltflaeche {
    width: 100%;
  }

  .komfort-raster {
    grid-template-columns: 1fr 1fr;
  }

  .komfort-raster a {
    padding: 18px 13px;
  }

  .komfort-raster i {
    right: 13px;
  }

  .komfort-raster strong {
    font-size: 1.08rem;
  }

  .hero-neu-bilder {
    aspect-ratio: 1 / 1;
  }

  .hero-siegel {
    right: 5%;
    top: 5%;
    width: 73px;
    height: 73px;
  }

  .payment-badges span {
    flex-basis: 100%;
  }

  .buch-buehne {
    min-height: 525px;
  }

  .geschlossenes-buch,
  .mobile-seite:not([hidden]) {
    width: min(385px, 70vw);
  }

  .menue-werkzeuge-rechts .menue-werkzeug:last-child {
    padding-inline: 6px;
  }

  .galerie-mauer {
    grid-auto-rows: 240px;
  }

  .kontaktformular-rahmen {
    padding: 24px 15px;
  }

  .fuss-v3-linkraster {
    grid-template-columns: 1fr;
  }
}

/* Sehr kleine Geräte */
@media (max-width: 350px) {
  .komfort-raster {
    grid-template-columns: 1fr;
  }

  .komfort-raster a {
    min-height: 92px;
  }

  .hero-neu-bilder {
    aspect-ratio: 4 / 5;
  }

  .menue-bedienung {
    grid-template-columns: 1fr;
  }

  .menue-seitenstatus,
  .menue-bedienung > .menue-werkzeug,
  .menue-werkzeuge-rechts {
    grid-column: 1;
  }

  .menue-seitenstatus {
    grid-row: 1;
  }

  .menue-bedienung > .menue-werkzeug {
    grid-row: 2;
    justify-self: center;
  }

  .menue-werkzeuge-rechts {
    grid-row: 3;
    justify-self: center;
  }
}

/* iPhone im Querformat: Navigation und Inhalte dürfen nicht abgeschnitten werden */
@media (max-height: 520px) and (orientation: landscape) and (max-width: 960px) {
  .kopf-v3 .hauptnavigation {
    justify-content: flex-start;
    padding-top: calc(62px + env(safe-area-inset-top));
  }

  .kopf-v3 .hauptmenue a {
    min-height: 44px;
    font-size: 1.35rem;
  }

  .kopf-v3 .mobile-kontaktblock {
    margin-top: 16px;
  }

  .hero-neu-bilder {
    max-width: 650px;
    aspect-ratio: 16 / 9;
  }
}

/* Vollbild-Speisekarte auf iPhone/iPad */
.menue-werk:fullscreen,
.menue-werk:-webkit-full-screen {
  width: 100%;
  height: 100%;
  height: 100dvh;
  overflow: auto;
  background: #d9d1c2;
  padding:
    env(safe-area-inset-top)
    env(safe-area-inset-right)
    env(safe-area-inset-bottom)
    env(safe-area-inset-left);
}

.menue-werk:fullscreen .buch-buehne,
.menue-werk:-webkit-full-screen .buch-buehne {
  min-height: calc(100dvh - 92px);
}

@media (hover: none) and (pointer: coarse) {
  .schaltflaeche:hover,
  .angebot-karte:hover,
  .komfort-raster a:hover,
  .fuss-v3-linkraster a:hover,
  .kontakt-direkt-raster a:hover {
    transform: none;
  }

  .galerie-element figcaption,
  .galerie-element span {
    opacity: 1;
  }
}

/* ================================================================
   KELMENDI MOBILE TYPOGRAPHY FIX 3.3
   Verhindert abgeschnittene Überschriften und lange Kontaktdaten
   ================================================================ */
@media (max-width: 680px) {
  .hero-neu-text,
  .abschluss-text,
  .kontakt-hero-karten,
  .kontakt-hero-karten a,
  .abschluss-links,
  .abschluss-links a {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .hero-neu-text h1 {
    max-width: 100%;
    margin-inline: auto;
    font-size: clamp(2.15rem, 9.6vw, 3.25rem);
    line-height: 1;
    letter-spacing: -.045em;
    text-wrap: balance;
  }

  .hero-neu-text h1 em {
    display: block;
    margin-top: .13em;
    font-size: .95em;
    line-height: 1.04;
  }

  .hero-neu-text > p {
    width: min(100%, 33ch);
    max-width: 100%;
    margin-inline: auto;
    text-wrap: pretty;
  }

  .abschluss-text {
    text-align: center;
  }

  .abschluss-text h2 {
    max-width: 100%;
    margin-inline: auto;
    font-size: clamp(2.05rem, 9.1vw, 3.1rem);
    line-height: 1.03;
    letter-spacing: -.04em;
    text-wrap: balance;
  }

  .abschluss-links {
    margin-top: 28px;
    text-align: left;
  }

  .abschluss-links a {
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 14px;
  }

  .abschluss-links strong,
  .kontakt-hero-karten strong,
  .kontakt-direkt h2,
  .kontakt-info-liste strong {
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
    hyphens: auto;
  }

  .kontakt-hero-karten strong {
    font-size: clamp(1.08rem, 5.2vw, 1.35rem);
    line-height: 1.28;
  }
}

@media (max-width: 430px) {
  .hero-neu-text h1 {
    font-size: clamp(1.95rem, 8.8vw, 2.55rem);
    line-height: 1.02;
  }

  .hero-neu-text h1 em {
    font-size: 1.03em;
  }

  .hero-neu-text > p {
    width: min(100%, 29ch);
    font-size: .94rem;
    line-height: 1.65;
  }

  .abschluss-text h2 {
    font-size: clamp(1.95rem, 8.7vw, 2.55rem);
    line-height: 1.05;
  }

  .abschluss-links a {
    grid-template-columns: 1fr;
    gap: 4px;
    padding: 16px 0;
  }

  .abschluss-links span {
    display: block;
  }

  .abschluss-links strong {
    display: block;
    font-size: 1.04rem;
    line-height: 1.35;
  }

  .kontakt-hero-karten a {
    padding: 18px;
  }

  .kontakt-hero-karten strong {
    font-size: 1rem;
  }
}

@media (max-width: 350px) {
  .hero-neu-text h1 {
    font-size: 1.82rem;
  }

  .abschluss-text h2 {
    font-size: 1.82rem;
  }
}

/* ================================================================
   KELMENDI MOBILE FINAL FLOW FIX 3.4
   Anfahrt und Gutscheine: keine abgeschnittenen oder gequetschten Texte
   ================================================================ */

.anfahrt-v3,
.gutschein-ablauf,
#oeffnungszeiten {
  scroll-margin-top: 180px;
}

.anfahrt-v3-einstieg > *,
.anfahrt-v3-routen a > *,
.gutschein-hero .seitenhero-raster > *,
.gutschein-innen > * {
  min-width: 0;
}

/* Routenkarten: Inhalt immer in einer sauberen vertikalen Achse */
.anfahrt-v3-routen a {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 5px;
  overflow: hidden;
  padding: 24px 58px 24px 24px;
}

.anfahrt-v3-routen a > span,
.anfahrt-v3-routen a > strong,
.anfahrt-v3-routen a > small {
  display: block;
  width: 100%;
  max-width: 100%;
  grid-column: auto;
}

.anfahrt-v3-routen strong {
  font-size: clamp(1.16rem, 2vw, 1.36rem);
  line-height: 1.18;
  letter-spacing: -.025em;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
  text-wrap: balance;
}

.anfahrt-v3-routen small {
  line-height: 1.48;
  text-wrap: pretty;
}

.anfahrt-v3-routen i {
  right: 21px;
}

.anfahrt-v3-einstieg h2 {
  max-width: 100%;
  text-wrap: balance;
}

/* Gutschein: feste visuelle Hierarchie ohne Überlauf */
.gutschein-hero .seitenhero-raster,
.gutschein-hero .seitenhero-raster > div:first-child,
.gutschein-visual {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.gutschein-hero h1 {
  max-width: 100%;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
  text-wrap: balance;
}

.gutschein-innen {
  overflow: hidden;
  padding: 38px 46px;
}

.gutschein-innen img {
  max-width: min(200px, 72%);
}

.gutschein-innen small {
  display: block;
  width: min(100%, 27ch);
  max-width: 100%;
  margin-inline: auto;
  color: rgba(255,255,255,.82);
  font-size: .58rem;
  line-height: 1.45;
  letter-spacing: .1em;
  text-align: center;
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

@media (max-width: 960px) {
  .anfahrt-v3,
  .gutschein-ablauf,
  #oeffnungszeiten {
    scroll-margin-top: 125px;
  }

  .anfahrt-v3-einstieg {
    padding-top: 10px;
  }

  .anfahrt-v3-einstieg h2 {
    font-size: clamp(2.55rem, 7.5vw, 4rem);
    line-height: 1.03;
  }

  .anfahrt-v3-routen a {
    min-height: 145px;
    padding: 23px 50px 23px 21px;
  }

  .anfahrt-v3-routen strong {
    font-size: clamp(1.12rem, 2.7vw, 1.3rem);
  }

  .gutschein-hero .seitenhero-raster {
    gap: 46px;
  }

  .gutschein-hero h1 {
    width: min(100%, 13ch);
    margin-inline: auto;
    font-size: clamp(2.35rem, 7.2vw, 4rem);
    line-height: 1.02;
    letter-spacing: -.045em;
  }

  .gutschein-hero p {
    width: min(100%, 38ch);
    margin-inline: auto;
  }

  .gutschein-innen {
    width: min(430px, 100%);
    margin-inline: auto;
  }
}

@media (max-width: 680px) {
  .anfahrt-v3 {
    padding-top: 78px;
  }

  .anfahrt-v3-einstieg {
    margin-bottom: 32px;
    padding-top: 0;
  }

  .anfahrt-v3-einstieg h2 {
    font-size: clamp(2.35rem, 10.5vw, 3.3rem);
    line-height: 1.02;
  }

  .anfahrt-v3-einstieg p {
    width: min(100%, 32ch);
    margin-inline: auto;
    font-size: .95rem;
    line-height: 1.65;
  }

  .anfahrt-v3-routen {
    gap: 12px;
  }

  .anfahrt-v3-routen a {
    min-height: 138px;
    padding: 22px 52px 22px 20px;
  }

  .anfahrt-v3-routen span {
    font-size: .58rem;
  }

  .anfahrt-v3-routen strong {
    width: min(100%, 17ch);
    font-size: 1.28rem;
    line-height: 1.18;
    text-align: left;
  }

  .anfahrt-v3-routen small {
    width: min(100%, 27ch);
    font-size: .76rem;
    text-align: left;
  }

  .gutschein-hero .seitenhero-raster {
    gap: 38px;
  }

  .gutschein-hero h1 {
    width: min(100%, 12.5ch);
    font-size: clamp(2rem, 9.2vw, 2.72rem);
    line-height: 1.04;
    letter-spacing: -.045em;
  }

  .gutschein-hero p {
    width: min(100%, 30ch);
    font-size: .95rem;
    line-height: 1.65;
    text-wrap: pretty;
  }

  .gutschein-visual {
    padding-inline: 2px;
  }

  .gutschein-innen {
    width: min(100%, 350px);
    min-height: 260px;
    aspect-ratio: auto;
    padding: 38px 31px;
  }

  .gutschein-innen:before {
    inset: 12px;
  }

  .gutschein-innen:after {
    inset: 21px;
  }

  .gutschein-innen img {
    width: min(190px, 72%);
  }

  .gutschein-innen span {
    margin: 13px 0;
    font-size: 2.1rem;
    line-height: 1;
  }

  .gutschein-innen small {
    width: min(100%, 23ch);
    font-size: .55rem;
    line-height: 1.5;
    letter-spacing: .085em;
  }
}

@media (max-width: 430px) {
  .anfahrt-v3 {
    padding-top: 68px;
  }

  .anfahrt-v3-einstieg h2 {
    font-size: clamp(2.15rem, 10.2vw, 2.75rem);
  }

  .anfahrt-v3-routen a {
    min-height: 132px;
    padding: 20px 48px 20px 18px;
  }

  .anfahrt-v3-routen strong {
    font-size: 1.2rem;
  }

  .anfahrt-v3-routen i {
    right: 17px;
  }

  .gutschein-hero h1 {
    width: min(100%, 12ch);
    font-size: clamp(1.9rem, 8.8vw, 2.35rem);
    line-height: 1.05;
  }

  .gutschein-hero p {
    width: min(100%, 28ch);
    font-size: .92rem;
  }

  .gutschein-innen {
    width: min(100%, 310px);
    min-height: 238px;
    padding: 34px 25px;
  }

  .gutschein-innen img {
    width: min(172px, 70%);
  }

  .gutschein-innen span {
    font-size: 1.9rem;
  }

  .gutschein-innen small {
    width: min(100%, 21ch);
    font-size: .52rem;
    letter-spacing: .075em;
  }
}

@media (max-width: 350px) {
  .gutschein-hero h1 {
    font-size: 1.78rem;
  }

  .gutschein-innen {
    width: 100%;
    min-height: 225px;
    padding-inline: 22px;
  }

  .anfahrt-v3-routen strong {
    font-size: 1.13rem;
  }
}

/* ================================================================
   KELMENDI PRIVACY & LEGAL FINAL 5.4
   ================================================================ */
body.consent-offen{overflow:hidden}
.kelmendi-consent[hidden],.kelmendi-consent-modal[hidden],.kelmendi-consent-banner[hidden]{display:none!important}
.kelmendi-consent{position:fixed;inset:0;z-index:999999;background:rgba(4,18,14,.72);backdrop-filter:blur(7px);display:flex;align-items:flex-end;justify-content:center;padding:22px}
.kelmendi-consent-banner,.kelmendi-consent-modal{position:relative;width:min(780px,100%);max-height:min(88vh,780px);overflow:auto;background:#fffdf8;border:1px solid rgba(186,154,95,.5);box-shadow:0 28px 90px rgba(0,0,0,.34);padding:38px 40px}
.kelmendi-consent-banner h2,.kelmendi-consent-modal h2{font-size:clamp(2rem,5vw,3.2rem);margin:8px 0 15px}
.kelmendi-consent-banner>p,.kelmendi-consent-modal>p{color:var(--grau);max-width:690px}
.kelmendi-consent-aktionen,.kelmendi-consent-modalaktionen{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:25px}
.kelmendi-consent-link,.kelmendi-cookie-einstellungen{appearance:none;border:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;padding:8px}
.kelmendi-consent-recht{font-size:.76rem;margin:20px 0 0}
.kelmendi-consent-schliessen{position:absolute;right:18px;top:14px;width:44px;height:44px;border:0;background:transparent;font-size:2rem;cursor:pointer}
.kelmendi-consent-kategorie{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:22px 0;border-top:1px solid var(--linie)}
.kelmendi-consent-kategorie:last-of-type{border-bottom:1px solid var(--linie)}
.kelmendi-consent-kategorie strong{font-family:"Baskerville",serif;font-size:1.35rem;font-weight:400}
.kelmendi-consent-kategorie p{margin:5px 0 0;color:var(--grau);font-size:.9rem}
.kelmendi-switch{display:grid;grid-template-columns:48px auto;gap:9px;align-items:center;cursor:pointer}
.kelmendi-switch input{position:absolute;opacity:0}
.kelmendi-switch span{position:relative;width:48px;height:27px;border-radius:30px;background:#bbb;transition:.2s}
.kelmendi-switch span:after{content:"";position:absolute;width:21px;height:21px;left:3px;top:3px;border-radius:50%;background:#fff;transition:.2s}
.kelmendi-switch input:checked+span{background:var(--tanne)}
.kelmendi-switch input:checked+span:after{transform:translateX(21px)}
.kelmendi-switch input:disabled+span{opacity:.72}
.kelmendi-switch em{font-style:normal;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--grau)}
.kelmendi-cookie-einstellungen{color:inherit;font-size:.78rem}
.kartenmodul .karten-vorschau{padding:30px;text-align:center;min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}
.kartenmodul .karten-vorschau .kelmendi-consent-link{position:relative;margin-top:3px;font-size:.76rem}
.kartenmodul iframe[hidden]{display:none}
.recht-text ul{padding-left:1.25rem}
.recht-text li{margin:.45rem 0}
@media(max-width:680px){
  .kelmendi-consent{padding:10px;align-items:flex-end}
  .kelmendi-consent-banner,.kelmendi-consent-modal{padding:27px 20px calc(25px + env(safe-area-inset-bottom));max-height:92vh}
  .kelmendi-consent-aktionen,.kelmendi-consent-modalaktionen{display:grid}
  .kelmendi-consent-aktionen .schaltflaeche,.kelmendi-consent-modalaktionen .schaltflaeche{width:100%}
  .kelmendi-consent-kategorie{grid-template-columns:1fr;gap:13px}
  .kelmendi-switch{justify-self:start}
}

/* KELMENDI STABILITY, LEGAL & CROSS-DEVICE 5.5 */
.formular-datenschutzhinweis{margin:0;color:var(--grau);font-size:.82rem;line-height:1.55}
.formular-datenschutzhinweis a{text-decoration:underline;text-underline-offset:3px}
.speisekarte-rechtshinweis{width:var(--breite);margin:38px auto 0;padding:20px 24px;border:1px solid var(--linie);background:#fffdf8}
.speisekarte-rechtshinweis p{margin:.35rem 0;color:var(--grau);font-size:.86rem}
.fehlerseite{min-height:62vh;display:grid;place-items:center;text-align:center}
.fehlerseite-inhalt{max-width:980px}
.fehlerseite-inhalt h1{font-size:clamp(3rem,8vw,6.4rem)}
.fehlerseite-inhalt>p{max-width:700px;margin:22px auto;color:var(--grau)}
.fehlerseite-aktionen{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:30px}
:focus-visible{outline:3px solid #c8a75f;outline-offset:4px}
.kelmendi-consent{padding:
  max(12px,env(safe-area-inset-top))
  max(12px,env(safe-area-inset-right))
  max(12px,env(safe-area-inset-bottom))
  max(12px,env(safe-area-inset-left));
}
.kelmendi-consent-banner,.kelmendi-consent-modal{
  width:min(780px,100%);
  max-width:calc(100vw - max(24px,env(safe-area-inset-left)) - max(24px,env(safe-area-inset-right)));
  max-height:calc(100dvh - max(24px,env(safe-area-inset-top)) - max(24px,env(safe-area-inset-bottom)));
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
}
.kelmendi-consent-aktionen .schaltflaeche,.kelmendi-consent-modalaktionen .schaltflaeche{min-height:48px}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@media(max-width:960px){
  .kelmendi-consent{align-items:flex-end}
  .kelmendi-consent-banner,.kelmendi-consent-modal{width:100%}
}
@media(max-width:680px){
  .speisekarte-rechtshinweis{padding:17px 16px}
  .fehlerseite-aktionen{display:grid}
  .fehlerseite-aktionen .schaltflaeche{width:100%}
  .kelmendi-consent-banner,.kelmendi-consent-modal{
    border-radius:0;
    padding:24px 18px calc(22px + env(safe-area-inset-bottom));
    max-height:94dvh;
  }
  .kelmendi-consent-banner h2,.kelmendi-consent-modal h2{font-size:clamp(2rem,9vw,3rem)}
}
@media(max-height:540px) and (orientation:landscape){
  .kelmendi-consent{align-items:stretch}
  .kelmendi-consent-banner,.kelmendi-consent-modal{max-height:100%;padding-top:18px;padding-bottom:18px}
}

/* KELMENDI FINAL ABSCHLUSS 5.6 */
.kelmendi-consent-aktionen .consent-gleichwertig{
  background:transparent;
  color:var(--tanne);
  border:1px solid var(--tanne);
}
.kelmendi-consent-aktionen .consent-gleichwertig:hover,
.kelmendi-consent-aktionen .consent-gleichwertig:focus-visible{
  background:var(--tanne);
  color:#fff;
}
@media(max-width:680px){
  .kelmendi-consent-aktionen{grid-template-columns:1fr}
}

/* ================================================================
   KELMENDI BETRIEBSURLAUB 2026 – VERSION 5.7
   ================================================================ */
.betriebsurlaub-banner{
  position:relative;
  z-index:8600;
  background:#d4b168;
  color:#102b22;
  border-top:1px solid rgba(255,255,255,.35);
  border-bottom:1px solid rgba(13,43,34,.18);
}
.betriebsurlaub-urlaub{background:#f1e6cc}
.betriebsurlaub-innen{
  min-height:74px;
  display:grid;
  grid-template-columns:52px minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding-top:10px;
  padding-bottom:10px;
}
.betriebsurlaub-symbol{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border:1px solid currentColor;
  border-radius:50%;
  font-family:"Baskerville","Iowan Old Style",serif;
  font-size:1.65rem;
}
.betriebsurlaub-text span{
  display:block;
  margin-bottom:3px;
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.betriebsurlaub-text p{
  margin:0;
  font-size:.93rem;
  line-height:1.45;
}
.betriebsurlaub-text strong{font-weight:700}
.betriebsurlaub-link{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 18px;
  border:1px solid currentColor;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.betriebsurlaub-hero-hinweis{
  display:grid;
  gap:4px;
  margin:24px 0 4px;
  padding:17px 19px;
  border-left:3px solid var(--gold);
  background:rgba(212,177,104,.12);
}
.betriebsurlaub-hero-hinweis span{
  color:var(--gold);
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.betriebsurlaub-hero-hinweis strong{
  font-family:"Baskerville","Iowan Old Style",serif;
  font-size:1.18rem;
  font-weight:400;
}
.betriebsurlaub-kontakt-hinweis{
  padding:22px 0;
  background:#f1e6cc;
  border-bottom:1px solid rgba(13,43,34,.12);
  text-align:center;
}
.betriebsurlaub-kontakt-hinweis strong{
  display:block;
  font-family:"Baskerville","Iowan Old Style",serif;
  font-size:1.5rem;
  font-weight:400;
}
.betriebsurlaub-kontakt-hinweis p{margin:5px 0 0}
@media(max-width:680px){
  .betriebsurlaub-innen{
    grid-template-columns:42px minmax(0,1fr);
    gap:12px;
    min-height:0;
    padding-top:13px;
    padding-bottom:13px;
  }
  .betriebsurlaub-symbol{
    width:38px;
    height:38px;
    font-size:1.3rem;
  }
  .betriebsurlaub-text p{font-size:.82rem}
  .betriebsurlaub-link{
    grid-column:1 / 3;
    width:100%;
    min-height:42px;
  }
}

/* KELMENDI UX UPDATE 5.13 */
.suchtreffer-text{display:grid;gap:5px;min-width:0}.suchtreffer-text strong{font-size:.92rem;color:var(--tanne)}.suchtreffer-text small{display:block;max-width:610px;color:var(--grau);font-size:.76rem;line-height:1.4;white-space:normal}.suchergebnisse button>b{flex:0 0 auto;align-self:center;font-size:.7rem;color:var(--gold);white-space:nowrap}.keine-suchergebnisse{padding:18px;color:var(--grau)}.vollbild-knopf{display:inline-flex;align-items:center;gap:7px}
.menue-werk:fullscreen,.menue-werk:-webkit-full-screen,.menue-werk.vollbild-fallback{width:100vw!important;height:100vh!important;height:100dvh!important;max-width:none!important;position:fixed!important;inset:0!important;z-index:999999!important;border:0!important;background:#d9d1c2!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto auto!important}
.menue-werk:fullscreen .menue-inhalt,.menue-werk:-webkit-full-screen .menue-inhalt,.menue-werk.vollbild-fallback .menue-inhalt{min-height:0;overflow:hidden}.menue-werk:fullscreen .buch-buehne,.menue-werk:-webkit-full-screen .buch-buehne,.menue-werk.vollbild-fallback .buch-buehne{height:100%;min-height:0}.menue-werk:fullscreen .offenes-buch,.menue-werk:-webkit-full-screen .offenes-buch,.menue-werk.vollbild-fallback .offenes-buch{width:min(1260px,86vw);max-height:calc(100dvh - 160px)}body.speisekarte-vollbild{overflow:hidden!important}
.kartenwahl-modal[hidden]{display:none!important}.kartenwahl-modal{position:fixed;inset:0;z-index:999999;background:rgba(5,22,17,.72);backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px}.kartenwahl-dialog{position:relative;width:min(620px,100%);max-height:90dvh;overflow:auto;background:#fffdf8;padding:35px;border:1px solid rgba(212,177,104,.5);box-shadow:0 30px 90px rgba(0,0,0,.35)}.kartenwahl-dialog h2{margin:8px 0;font-size:clamp(2.1rem,6vw,3.4rem)}.kartenwahl-dialog>p{margin:0 0 22px;color:var(--grau)}.kartenwahl-schliessen{position:absolute;right:13px;top:10px;width:44px;height:44px;border:0;background:transparent;font-size:2rem;cursor:pointer}.kartenwahl-anbieter{display:grid;gap:9px}.kartenwahl-anbieter a{display:grid;gap:3px;padding:17px 18px;border:1px solid var(--linie);background:#fff;color:var(--tanne)}.kartenwahl-anbieter a:hover,.kartenwahl-anbieter a:focus-visible{border-color:var(--gold);background:var(--creme)}.kartenwahl-anbieter strong{font-size:1rem}.kartenwahl-anbieter span{font-size:.76rem;color:var(--grau)}.kartenwahl-abbrechen{margin-top:18px;width:100%;min-height:46px;border:1px solid var(--tanne);background:transparent;color:var(--tanne);cursor:pointer}body.kartenwahl-offen{overflow:hidden}.anfahrt-adresse-klickbar{display:block;color:inherit;padding:12px 0}.anfahrt-adresse-klickbar small{display:block;margin-top:6px;color:var(--gold2);font-size:.72rem;text-decoration:underline;text-underline-offset:3px}
@media(max-width:680px){
.menue-suche-bereich{padding-top:35px}.suchergebnisse{position:relative;width:100%;max-height:420px}.suchergebnisse button{align-items:flex-start;padding:15px 14px}.suchtreffer-text small{font-size:.72rem}.menue-bedienung{grid-template-columns:auto 1fr;gap:4px;padding:6px}.menue-seitenstatus{grid-column:1/3;grid-row:2;text-align:center;padding:4px 0 7px}.menue-werkzeuge-rechts{grid-column:2;grid-row:1;justify-self:end}.menue-werkzeug[data-kapitel-oeffnen]{grid-column:1;grid-row:1}.vollbild-knopf span:first-child{display:none}.menue-werk:fullscreen .mobile-seite:not([hidden]),.menue-werk:-webkit-full-screen .mobile-seite:not([hidden]),.menue-werk.vollbild-fallback .mobile-seite:not([hidden]){width:min(92vw,620px);height:auto;max-height:calc(100dvh - 155px)}
.kartenwahl-modal{padding:10px}.kartenwahl-dialog{padding:28px 17px calc(22px + env(safe-area-inset-bottom));max-height:94dvh}.kartenwahl-anbieter a{padding:16px}
.fuss-v3-rechtlich{padding:0!important}.fuss-v3-rechtlich-innen{display:grid!important;grid-template-columns:1fr!important;gap:13px!important;align-items:center!important;text-align:center!important;padding:20px 0 calc(20px + env(safe-area-inset-bottom))!important}.fuss-v3-rechtlich-innen>span{font-size:.72rem;opacity:.8}.fuss-v3-rechtlich nav{width:100%;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}.fuss-v3-rechtlich nav a,.fuss-v3-rechtlich nav .kelmendi-cookie-einstellungen{min-height:44px;display:flex;align-items:center;justify-content:center;margin:0!important;padding:9px 5px!important;border:1px solid rgba(255,255,255,.2)!important;text-decoration:none!important;font-size:.7rem!important;line-height:1.2}
}

/* ================================================================
   MOBILE HEADER & URLAUB KORREKTUR 5.14
   ================================================================ */
.betriebsurlaub-ankuendigung{
  background:#d9eadf;
  color:#123a2d;
}
.betriebsurlaub-ankuendigung .betriebsurlaub-symbol{
  border-color:#2f7b58;
}
.betriebsurlaub-ankuendigung .betriebsurlaub-text span{
  color:#1f6a49;
}

@media(max-width:680px){
  /* Der vorhandene JavaScript-Code setzt beim Scrollen die Klasse .kompakt. */
  [data-seitenkopf].kompakt{
    min-height:58px!important;
  }

  [data-seitenkopf].kompakt .kopf-innen{
    min-height:58px!important;
    padding-top:4px!important;
    padding-bottom:4px!important;
  }

  [data-seitenkopf].kompakt .marke,
  [data-seitenkopf].kompakt .marke a{
    min-height:0!important;
    line-height:1!important;
  }

  [data-seitenkopf].kompakt .marke img{
    max-height:38px!important;
    width:auto!important;
  }

  [data-seitenkopf].kompakt .menue-schalter{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
  }

  [data-seitenkopf].kompakt .menue-schalter span{
    width:24px!important;
  }

  /* Statuszeile beim Scrollen ebenfalls kompakter halten. */
  [data-seitenkopf].kompakt .kopf-status,
  [data-seitenkopf].kompakt .statusleiste{
    min-height:0!important;
    padding-top:4px!important;
    padding-bottom:4px!important;
    font-size:.72rem!important;
  }

  /* Urlaubshinweis vor dem 03.08. klarer und etwas schlanker. */
  .betriebsurlaub-innen{
    grid-template-columns:34px minmax(0,1fr)!important;
    gap:10px!important;
    min-height:0!important;
    padding-top:9px!important;
    padding-bottom:9px!important;
  }

  .betriebsurlaub-symbol{
    width:32px!important;
    height:32px!important;
    font-size:1.05rem!important;
  }

  .betriebsurlaub-text span{
    margin-bottom:2px!important;
    font-size:.6rem!important;
    letter-spacing:.11em!important;
  }

  .betriebsurlaub-text p{
    font-size:.76rem!important;
    line-height:1.35!important;
  }

  .betriebsurlaub-link{
    grid-column:1 / 3!important;
    min-height:36px!important;
    padding:6px 10px!important;
    font-size:.62rem!important;
  }
}

/* ================================================================
   HEADER & FOOTER FINAL KORREKTUR 5.15
   ================================================================ */

/* Rechtliche Fußzeile auf Desktop und Mobil immer sauber in einer Linie */
.fuss-v3-rechtlich-innen{
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  align-items:center!important;
  gap:24px!important;
}

.fuss-v3-rechtlich-innen>span{
  margin:0!important;
  white-space:nowrap!important;
}

.fuss-v3-rechtlich-innen nav{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
  gap:28px!important;
  width:auto!important;
}

.fuss-v3-rechtlich-innen nav a,
.fuss-v3-rechtlich-innen nav .kelmendi-cookie-einstellungen{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:inherit!important;
  font:inherit!important;
  line-height:1.2!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

.fuss-v3-rechtlich-innen nav .kelmendi-cookie-einstellungen{
  border-bottom:1px solid currentColor!important;
  border-radius:0!important;
}

/* Logo-Header allgemein kompakter */
[data-seitenkopf] .kopf-innen{
  min-height:86px!important;
  padding-top:10px!important;
  padding-bottom:10px!important;
}

[data-seitenkopf] .marke img{
  max-height:64px!important;
  width:auto!important;
}

@media(max-width:680px){
  /* Auch im Ausgangszustand deutlich flacher */
  [data-seitenkopf]{
    min-height:78px!important;
  }

  [data-seitenkopf] .kopf-innen{
    min-height:78px!important;
    padding-top:6px!important;
    padding-bottom:6px!important;
  }

  [data-seitenkopf] .marke,
  [data-seitenkopf] .marke a{
    min-height:0!important;
    line-height:1!important;
  }

  [data-seitenkopf] .marke img{
    max-height:54px!important;
    width:auto!important;
  }

  [data-seitenkopf] .menue-schalter{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
  }

  /* Beim Scrollen noch etwas kompakter */
  [data-seitenkopf].kompakt{
    min-height:58px!important;
  }

  [data-seitenkopf].kompakt .kopf-innen{
    min-height:58px!important;
    padding-top:3px!important;
    padding-bottom:3px!important;
  }

  [data-seitenkopf].kompakt .marke img{
    max-height:38px!important;
  }

  /* Rechtliche Links exakt auf einer Linie */
  .fuss-v3-rechtlich-innen{
    grid-template-columns:1fr!important;
    gap:14px!important;
    padding:18px 18px calc(18px + env(safe-area-inset-bottom))!important;
    text-align:center!important;
  }

  .fuss-v3-rechtlich-innen>span{
    text-align:center!important;
  }

  .fuss-v3-rechtlich-innen nav{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    align-items:stretch!important;
    justify-content:stretch!important;
    gap:8px!important;
    width:100%!important;
  }

  .fuss-v3-rechtlich-innen nav a,
  .fuss-v3-rechtlich-innen nav .kelmendi-cookie-einstellungen{
    min-height:44px!important;
    padding:10px 6px!important;
    border:1px solid rgba(255,255,255,.22)!important;
    text-decoration:none!important;
    font-size:.68rem!important;
    line-height:1.15!important;
    white-space:normal!important;
    text-align:center!important;
  }

  .fuss-v3-rechtlich-innen nav .kelmendi-cookie-einstellungen{
    border-bottom:1px solid rgba(255,255,255,.22)!important;
  }
}

/* ================================================================
   TATSÄCHLICHER MOBILER V3-HEADER – FINAL 5.17
   ================================================================ */
@media(max-width:860px){
  html{
    scroll-padding-top:84px!important;
  }

  /* Kleine Statuszeile */
  .seitenkopf.kopf-v3 .kopf-v3-service-innen{
    min-height:26px!important;
    height:26px!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }

  .seitenkopf.kopf-v3 .kopf-v3-status{
    gap:8px!important;
  }

  .seitenkopf.kopf-v3 .kopf-v3-status i{
    width:6px!important;
    height:6px!important;
  }

  .seitenkopf.kopf-v3 .kopf-v3-status strong{
    font-size:.61rem!important;
    line-height:1!important;
  }

  /* Tatsächlicher Logo-/Menübereich */
  .seitenkopf.kopf-v3 .kopf-v3-marke{
    min-height:0!important;
  }

  .seitenkopf.kopf-v3 .kopf-v3-marke-innen{
    min-height:54px!important;
    height:54px!important;
    grid-template-columns:minmax(0,1fr) 42px!important;
    gap:12px!important;
    padding-top:4px!important;
    padding-bottom:4px!important;
  }

  .seitenkopf.kopf-v3 .kopf-v3-logo{
    justify-self:start!important;
    align-items:flex-start!important;
    min-height:0!important;
    height:auto!important;
    overflow:visible!important;
  }

  .seitenkopf.kopf-v3 .kopf-v3-logo img{
    width:auto!important;
    max-width:188px!important;
    height:36px!important;
    max-height:36px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }

  .seitenkopf.kopf-v3 .kopf-v3-logo span{
    display:none!important;
  }

  .seitenkopf.kopf-v3 .menueknopf{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    padding:5px!important;
    margin:0!important;
    align-self:center!important;
  }

  .seitenkopf.kopf-v3 .menueknopf span{
    width:25px!important;
    height:1px!important;
    margin:5px auto!important;
  }

  /* Kompakte Scroll-Variante */
  .seitenkopf.kopf-v3.kompakt .kopf-v3-service-innen{
    min-height:22px!important;
    height:22px!important;
  }

  .seitenkopf.kopf-v3.kompakt .kopf-v3-marke-innen{
    min-height:48px!important;
    height:48px!important;
    padding-top:3px!important;
    padding-bottom:3px!important;
  }

  .seitenkopf.kopf-v3.kompakt .kopf-v3-logo img{
    height:32px!important;
    max-height:32px!important;
    max-width:168px!important;
  }

  .seitenkopf.kopf-v3.kompakt .menueknopf{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    min-height:36px!important;
  }

  /* Navigation beginnt direkt unter dem schlanken Header */
  .kopf-v3 .hauptnavigation{
    padding-top:84px!important;
  }
}

@media(max-width:560px){
  .seitenkopf.kopf-v3 .kopf-v3-marke-innen{
    min-height:52px!important;
    height:52px!important;
  }

  .seitenkopf.kopf-v3 .kopf-v3-logo img{
    max-width:174px!important;
    height:34px!important;
    max-height:34px!important;
  }

  .seitenkopf.kopf-v3.kompakt .kopf-v3-marke-innen{
    min-height:46px!important;
    height:46px!important;
  }

  .seitenkopf.kopf-v3.kompakt .kopf-v3-logo img{
    max-width:156px!important;
    height:30px!important;
    max-height:30px!important;
  }
}

/* ================================================================
   LOGO & COOKIE FINAL 5.18
   ================================================================ */
@media(max-width:860px){
  .seitenkopf.kopf-v3 .kopf-v3-marke-innen{
    min-height:58px!important;
    height:58px!important;
    grid-template-columns:minmax(0,1fr) 42px!important;
    padding-top:4px!important;
    padding-bottom:4px!important;
  }

  .seitenkopf.kopf-v3 .kopf-v3-logo{
    justify-self:center!important;
    align-items:center!important;
    width:100%!important;
    overflow:visible!important;
  }

  .seitenkopf.kopf-v3 .kopf-v3-logo img{
    width:min(265px,72vw)!important;
    max-width:min(265px,72vw)!important;
    height:auto!important;
    max-height:48px!important;
    object-fit:contain!important;
    object-position:center center!important;
  }

  .seitenkopf.kopf-v3.kompakt .kopf-v3-marke-innen{
    min-height:52px!important;
    height:52px!important;
  }

  .seitenkopf.kopf-v3.kompakt .kopf-v3-logo img{
    width:min(235px,66vw)!important;
    max-width:min(235px,66vw)!important;
    max-height:42px!important;
  }
}

/* Cookie-Button immer klickbar */
.kelmendi-cookie-einstellungen,
[data-consent-reopen]{
  position:relative!important;
  z-index:20!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
}

/* ================================================================
   SUCHE & BUTTON-AUSRICHTUNG 5.19
   ================================================================ */
.suchergebnisse button[data-exakt-nummer="1"]{
  border-color:var(--gold)!important;
  background:#fffaf0!important;
}

.suchtreffer-aktiv{
  animation:kelmendiSuchtreffer 1.5s ease;
}

@keyframes kelmendiSuchtreffer{
  0%,100%{box-shadow:none}
  20%,70%{box-shadow:0 0 0 4px rgba(212,177,104,.55)}
}

/* Karten in Reihen erhalten gleiche Höhe und Buttons dieselbe Grundlinie */
.kontakt-karten,
.start-karten,
.vorteile-grid,
.karten-grid,
.feiern-karten,
.gutschein-karten,
.kegelbahn-karten{
  align-items:stretch!important;
}

.kontakt-karten>article,
.kontakt-karten>.kontakt-karte,
.start-karten>article,
.vorteile-grid>article,
.karten-grid>article,
.feiern-karten>article,
.gutschein-karten>article,
.kegelbahn-karten>article{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
}

.kontakt-karten>article .schaltflaeche,
.kontakt-karten>.kontakt-karte .schaltflaeche,
.kontakt-karten>article a:last-child,
.kontakt-karten>.kontakt-karte a:last-child,
.start-karten>article .schaltflaeche,
.vorteile-grid>article .schaltflaeche,
.karten-grid>article .schaltflaeche,
.feiern-karten>article .schaltflaeche,
.gutschein-karten>article .schaltflaeche,
.kegelbahn-karten>article .schaltflaeche{
  margin-top:auto!important;
  align-self:flex-start!important;
}

/* Spezifische Kontaktkarten */
.kontakt-v3-karten{
  align-items:stretch!important;
}

.kontakt-v3-karten>article{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
}

.kontakt-v3-karten>article .kontakt-v3-aktion,
.kontakt-v3-karten>article>a:last-child,
.kontakt-v3-karten>article>button:last-child{
  margin-top:auto!important;
  align-self:flex-start!important;
}

/* Einheitliche Buttonhöhe, wo mehrere Buttons nebeneinander stehen */
.schaltflaeche,
.kontakt-v3-aktion,
.menue-werkzeug,
.kartenwahl-anbieter a{
  min-height:48px;
}

@media(max-width:680px){
  .kontakt-v3-karten>article,
  .kontakt-karten>article,
  .kontakt-karten>.kontakt-karte{
    min-height:0!important;
  }
}

/* ================================================================
   MENU, MOBILE LOGO & COOKIE FINAL 5.20
   ================================================================ */

/* Speisekartenbilder immer sichtbar */
[data-speisekarte] img[data-linke-seite],
[data-speisekarte] img[data-rechte-seite],
[data-speisekarte] img[data-mobile-bild]{
  display:block!important;
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  background:#fff!important;
}

[data-speisekarte] figure[hidden],
[data-speisekarte] [hidden]{
  display:none!important;
}

/* Cookie-Schaltflächen immer klickbar */
.kelmendi-cookie-einstellungen,
[data-consent-reopen]{
  pointer-events:auto!important;
  position:relative!important;
  z-index:999!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
}

/* Mobiles Logo exakt im sichtbaren Header zentrieren */
@media(max-width:860px){
  .seitenkopf.kopf-v3 .kopf-v3-marke-innen{
    position:relative!important;
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr) 42px!important;
    align-items:center!important;
    min-height:58px!important;
    height:58px!important;
    padding:4px 14px!important;
  }

  .seitenkopf.kopf-v3 .kopf-v3-logo{
    grid-column:2!important;
    justify-self:center!important;
    align-self:center!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }

  .seitenkopf.kopf-v3 .kopf-v3-logo img{
    display:block!important;
    width:auto!important;
    max-width:min(260px,68vw)!important;
    height:auto!important;
    max-height:46px!important;
    margin:0 auto!important;
    object-fit:contain!important;
    object-position:center center!important;
  }

  .seitenkopf.kopf-v3 .menueknopf{
    grid-column:3!important;
    justify-self:end!important;
    align-self:center!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    margin:0!important;
  }

  .seitenkopf.kopf-v3.kompakt .kopf-v3-marke-innen{
    min-height:52px!important;
    height:52px!important;
  }

  .seitenkopf.kopf-v3.kompakt .kopf-v3-logo img{
    max-width:min(230px,64vw)!important;
    max-height:40px!important;
  }
}

/* ================================================================
   SPEISEKARTE SICHTBAR FINAL 5.21
   ================================================================ */
[data-speisekarte] .offenes-buch figure{
  visibility:visible!important;
  opacity:1!important;
}

[data-speisekarte] .offenes-buch figure:not([hidden]){
  display:block!important;
}

[data-speisekarte] .offenes-buch img,
[data-speisekarte] .mobile-seite img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  background:#fff!important;
}

[data-speisekarte] .buchseite{
  background:#fff!important;
  overflow:hidden!important;
}

[data-speisekarte] .offenes-buch{
  background:#fff!important;
}

[data-speisekarte] img[src=""],
[data-speisekarte] img:not([src]){
  min-height:500px!important;
  background:#fff!important;
}

@media(max-width:960px){
  [data-speisekarte] .mobile-seite:not([hidden]){
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }

  [data-speisekarte] .mobile-seite img{
    min-height:0!important;
  }
}

/* ================================================================
   GALERIE & COOKIE FINAL 5.22
   ================================================================ */
.galerie-hero,
.galerie-v3-hero,
body.page-template-page-galerie .seitenhero{
  background-image:
    linear-gradient(rgba(5,29,23,.52),rgba(5,29,23,.62)),
    url("../images/gallery/galerie-hero-feier-v522.webp")!important;
  background-size:cover!important;
  background-position:center 48%!important;
  background-repeat:no-repeat!important;
}

.kelmendi-cookie-einstellungen,
[data-consent-reopen]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  position:relative!important;
  z-index:9999!important;
}

.kelmendi-consent{
  z-index:2147483000!important;
}

/* ================================================================
   UNIVERSAL NAVIGATION 5.23
   ================================================================ */
.menueknopf,
[data-menueknopf],
[data-map-chooser]{
  pointer-events:auto!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent;
}

@media(max-width:860px){
  .hauptnavigation{
    position:fixed!important;
    inset:0!important;
    z-index:2147482000!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:18px!important;
    padding:110px 24px 40px!important;
    background:#0f2f26!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-10px)!important;
    transition:opacity .2s ease,transform .2s ease,visibility .2s ease!important;
  }

  .seitenkopf.menu-offen .hauptnavigation,
  body.menu-offen .hauptnavigation{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }

  .hauptnavigation a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:min(360px,90vw)!important;
    min-height:52px!important;
    padding:12px 18px!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.18)!important;
    text-align:center!important;
  }

  .seitenkopf.menu-offen .menueknopf{
    position:relative!important;
    z-index:2147483000!important;
  }
}

@media(min-width:861px){
  .hauptnavigation{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:static!important;
    transform:none!important;
  }
}


/* ================================================================
   BUGFIX-PAKET 5.24
   ================================================================ */
html{scroll-behavior:smooth}
.kelmendi-cookie-einstellungen{display:inline-flex;align-items:center;gap:8px}
.kelmendi-cookie-einstellungen .cookie-icon{display:inline-grid;place-items:center;width:1.35rem;height:1.35rem;border:1px solid currentColor;border-radius:999px;font-size:.8rem;line-height:1}
.kelmendi-consent{cursor:pointer}
.kelmendi-consent-banner,.kelmendi-consent-modal,.kelmendi-consent-banner *, .kelmendi-consent-modal *{cursor:auto}

/* Cookie modal must be closable and clickable */
.kelmendi-consent[hidden]{display:none!important}
.kelmendi-consent{pointer-events:auto!important}
.kelmendi-consent-banner,.kelmendi-consent-modal{pointer-events:auto!important}
.kelmendi-consent-schliessen{display:grid!important;place-items:center}

/* Mobile header: keep the thin look even after scrolling, preserve animation */
@media (max-width: 860px){
  .seitenkopf.kopf-v3 .kopf-v3-service{position:relative;z-index:3}
  .kopf-v3-marke{padding:0!important}
  .kopf-v3-marke-innen,
  .seitenkopf.kopf-v3.kompakt .kopf-v3-marke-innen{
    min-height:82px!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
    display:grid!important;
    grid-template-columns:1fr minmax(170px,1fr) 1fr!important;
    align-items:center!important;
    transition:min-height .22s ease,padding .22s ease,transform .22s ease!important;
  }
  .kopf-v3-logo,
  .seitenkopf.kopf-v3 .kopf-v3-logo,
  .seitenkopf.kopf-v3.kompakt .kopf-v3-logo{
    justify-self:center!important;
    align-self:center!important;
    width:100%!important;
    justify-content:center!important;
    display:flex!important;
    transform:translateZ(0);
  }
  .kopf-v3-logo img,
  .seitenkopf.kopf-v3.kompakt .kopf-v3-logo img{
    width:min(70vw,260px)!important;
    max-width:260px!important;
    max-height:58px!important;
    object-fit:contain!important;
    transition:transform .22s ease, width .22s ease, max-height .22s ease!important;
  }
  .seitenkopf.kopf-v3.kompakt .kopf-v3-logo img{
    transform:scale(.96)!important;
  }
  .kopf-v3-seitenkontakt{display:none!important}
  .kopf-v3 .menueknopf{
    display:inline-flex!important;
    justify-self:end!important;
    align-self:center!important;
    z-index:2147483000!important;
  }
  .kopf-v3-navigation,
  .seitenkopf.kopf-v3.kompakt .kopf-v3-navigation{min-height:0!important}
}

/* Menu viewer and search reliability */
.menue-werk img{background:#fff}
.buchseite img,.mobile-seite img,.geschlossenes-buch img{image-rendering:auto}
.suchergebnisse{overscroll-behavior:contain}
.suchergebnisse button{align-items:flex-start}
.suchergebnisse button>b{margin-top:2px}

/* Better tap comfort */
.menue-werkzeug,.schaltflaeche,.textlink,.hauptnavigation a,[data-filter],.kelmendi-cookie-einstellungen{touch-action:manipulation}


/* ================================================================
   ABSCHLUSSKORREKTUREN 5.25
   ================================================================ */

/* Alle Aktionsflächen erhalten konsistente Höhe und Grundlinie. */
.schaltflaeche,
.textlink,
.kontakt-direkt-raster article>a:last-child,
.kegelbahn-aktionen>a,
.gutschein-aktion>a,
.hero-aktionen>a,
.anfahrt-knopfe>a,
.anfahrt-knopfe>button{
  min-height:50px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}

.kontakt-direkt-raster,
.buffet-karten,
.ablauf-raster,
.feiern-punkte{
  align-items:stretch!important;
}
.kontakt-direkt-raster>article,
.buffet-karten>article,
.ablauf-raster>article,
.feiern-punkte>article{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
}
.kontakt-direkt-raster>article>p,
.buffet-karten>article>p,
.ablauf-raster>article>p,
.feiern-punkte>article>p{
  flex-grow:1!important;
}
.kontakt-direkt-raster>article>a:last-child,
.buffet-karten>article>a:last-child,
.ablauf-raster>article>a:last-child,
.feiern-punkte>article>a:last-child{
  margin-top:auto!important;
  align-self:flex-start!important;
}
.kontakt-direkt-raster>article>a.textlink:last-child{
  padding:13px 22px!important;
  border:1px solid var(--tanne)!important;
  text-decoration:none!important;
  color:var(--tanne)!important;
  font-size:.68rem!important;
  font-weight:800!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
.kontakt-direkt-raster>article>a.textlink:last-child:hover{
  background:var(--tanne)!important;
  color:#fff!important;
}
.hero-aktionen,.gutschein-aktion,.kegelbahn-aktionen,.anfahrt-knopfe{
  align-items:stretch!important;
}

/* Suchvorgang erst mit Enter oder dem Suchen-Button. */
.menue-suche-eingabe{display:grid!important;grid-template-columns:minmax(0,1fr) auto 52px!important;align-items:stretch!important;background:#fff!important;border:1px solid var(--linie)!important}
.menue-suche-eingabe input{border:0!important}
.menue-suche-start{width:auto!important;min-width:105px!important;padding:0 20px!important;border:0!important;border-left:1px solid var(--linie)!important;background:var(--tanne)!important;color:#fff!important;font-size:.68rem!important;font-weight:800!important;letter-spacing:.1em!important;text-transform:uppercase!important}
.menue-suche-loeschen{width:52px!important;border-left:1px solid var(--linie)!important}
.kelmendi-consent-status{margin:14px 0 0!important;padding:10px 12px!important;background:var(--creme)!important;color:var(--tanne)!important;font-size:.82rem!important}

/* Mobiler Header: normal schlank, beim Scrollen noch schlanker, Logo mathematisch zentriert. */
@media(max-width:860px){
  .seitenkopf.kopf-v3 .kopf-v3-service-innen{min-height:26px!important;height:26px!important;transition:height .22s ease,min-height .22s ease!important}
  .seitenkopf.kopf-v3.kompakt .kopf-v3-service-innen{min-height:22px!important;height:22px!important}
  .seitenkopf.kopf-v3 .kopf-v3-marke-innen,
  .seitenkopf.kopf-v3.kompakt .kopf-v3-marke-innen{
    position:relative!important;
    display:block!important;
    min-height:72px!important;
    height:72px!important;
    padding:0 14px!important;
    transition:height .24s ease,min-height .24s ease,box-shadow .24s ease!important;
  }
  .seitenkopf.kopf-v3.kompakt .kopf-v3-marke-innen{
    min-height:60px!important;
    height:60px!important;
  }
  .seitenkopf.kopf-v3 .kopf-v3-logo,
  .seitenkopf.kopf-v3.kompakt .kopf-v3-logo{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:min(64vw,250px)!important;
    max-width:calc(100vw - 126px)!important;
    margin:0!important;
    z-index:2!important;
  }
  .seitenkopf.kopf-v3 .kopf-v3-logo img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:48px!important;
    object-fit:contain!important;
    transform:scale(1)!important;
    transition:max-height .24s ease,transform .24s ease!important;
  }
  .seitenkopf.kopf-v3.kompakt .kopf-v3-logo img{
    max-height:40px!important;
    transform:scale(.96)!important;
  }
  .seitenkopf.kopf-v3 .menueknopf,
  .seitenkopf.kopf-v3.kompakt .menueknopf{
    position:absolute!important;
    right:12px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    margin:0!important;
    z-index:2147483000!important;
  }
  .seitenkopf.kopf-v3.kompakt .menueknopf{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important}

  /* Elegantes Vollbildmenü ohne klobige Kästen. */
  .kopf-v3 .hauptnavigation{
    position:fixed!important;
    inset:0!important;
    z-index:2147482000!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    padding:clamp(88px,16vh,150px) 28px 34px!important;
    background:
      radial-gradient(circle at 50% 14%,rgba(186,154,95,.16),transparent 38%),
      linear-gradient(165deg,#12392d 0%,#09251d 100%)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-12px)!important;
    transition:opacity .28s ease,visibility .28s ease,transform .28s ease!important;
    overflow:auto!important;
  }
  .kopf-v3 .hauptnavigation.offen,
  .seitenkopf.menu-offen .hauptnavigation,
  body.menu-offen .hauptnavigation,
  body.menue-offen .hauptnavigation{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
  }
  .kopf-v3 .hauptmenue{
    counter-reset:kelmendi-menu!important;
    display:flex!important;
    flex-direction:column!important;
    width:min(430px,86vw)!important;
    gap:0!important;
    margin:0 auto!important;
    padding:0!important;
  }
  .kopf-v3 .hauptmenue li{counter-increment:kelmendi-menu!important;border-top:1px solid rgba(255,255,255,.13)!important}
  .kopf-v3 .hauptmenue li:last-child{border-bottom:1px solid rgba(255,255,255,.13)!important}
  .kopf-v3 .hauptmenue a{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-height:58px!important;
    padding:12px 8px 12px 48px!important;
    border:0!important;
    background:transparent!important;
    color:rgba(255,255,255,.86)!important;
    font-family:"Baskerville",Georgia,serif!important;
    font-size:clamp(1.65rem,7vw,2.3rem)!important;
    font-weight:400!important;
    letter-spacing:.01em!important;
    text-transform:none!important;
    text-align:left!important;
  }
  .kopf-v3 .hauptmenue a::before{
    content:counter(kelmendi-menu,decimal-leading-zero)!important;
    position:absolute!important;
    left:8px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    color:var(--gold2)!important;
    font-family:Arial,sans-serif!important;
    font-size:.62rem!important;
    font-weight:800!important;
    letter-spacing:.14em!important;
  }
  .kopf-v3 .hauptmenue a::after{left:48px!important;right:100%!important;bottom:8px!important;height:1px!important;background:var(--gold2)!important;transition:right .24s ease!important}
  .kopf-v3 .hauptmenue a:hover::after,.kopf-v3 .hauptmenue .aktuell a::after{right:8px!important}
  .kopf-v3 .hauptmenue .aktuell a,.kopf-v3 .hauptmenue a:hover{color:#fff!important}
  .kopf-v3 .mobile-kontaktblock{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:min(430px,86vw)!important;
    gap:10px!important;
    margin:26px auto 0!important;
  }
  .kopf-v3 .mobile-kontaktblock a{
    min-height:46px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:10px 12px!important;
    border:1px solid rgba(212,177,104,.65)!important;
    background:transparent!important;
    color:#fff!important;
    font-size:.64rem!important;
    font-weight:800!important;
    letter-spacing:.09em!important;
    text-transform:uppercase!important;
  }
  .kopf-v3 .mobile-kontaktblock a:hover{background:var(--gold)!important;color:var(--tanne)!important}
  .kopf-v3 .menueknopf.aktiv span{background:#fff!important}
  body.menue-offen,body.menu-offen{overflow:hidden!important}
}

@media(max-width:560px){
  .menue-suche-eingabe{grid-template-columns:minmax(0,1fr) 48px!important}
  .menue-suche-start{grid-column:1/-1!important;grid-row:2!important;min-height:46px!important;border-left:0!important;border-top:1px solid var(--linie)!important}
  .menue-suche-loeschen{grid-column:2!important;grid-row:1!important}
  .kopf-v3 .mobile-kontaktblock{grid-template-columns:1fr!important}
}


/* ================================================================
   MENÜ, COOKIE, ICON & DATENSCHUTZ FINAL 5.26
   ================================================================ */
.kelmendi-cookie-einstellungen{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}
.kelmendi-cookie-einstellungen .cookie-icon{
  display:inline-grid!important;
  place-items:center!important;
  width:1.25rem!important;
  height:1.25rem!important;
  border:1px solid currentColor!important;
  border-radius:50%!important;
  font-size:.72rem!important;
  line-height:1!important;
}
.kelmendi-consent-status:empty{display:none!important}
.kelmendi-consent-status:not(:empty){display:block!important}

@media(max-width:860px){
  /* Drei klare Linien im geschlossenen Zustand. */
  .seitenkopf.kopf-v3 .menueknopf{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    border:0!important;
    background:transparent!important;
    padding:7px!important;
  }
  .seitenkopf.kopf-v3 .menueknopf span{
    display:block!important;
    width:28px!important;
    height:1.5px!important;
    margin:0!important;
    background:#fff!important;
    opacity:1!important;
    transform:none;
    transform-origin:center!important;
    transition:transform .22s ease,opacity .18s ease!important;
  }
  .seitenkopf.kopf-v3 .menueknopf.aktiv span:nth-child(1){transform:translateY(7.5px) rotate(45deg)!important}
  .seitenkopf.kopf-v3 .menueknopf.aktiv span:nth-child(2){opacity:0!important}
  .seitenkopf.kopf-v3 .menueknopf.aktiv span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)!important}

  /* Ruhiges, klassisches mobiles Menü. */
  .kopf-v3 .hauptnavigation{
    position:fixed!important;
    inset:0!important;
    z-index:2147482000!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    padding:96px 28px 36px!important;
    background:rgba(7,35,27,.985)!important;
    backdrop-filter:blur(10px)!important;
    -webkit-backdrop-filter:blur(10px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-6px)!important;
    transition:opacity .24s ease,visibility .24s ease,transform .24s ease!important;
    overflow:auto!important;
  }
  .kopf-v3 .hauptnavigation.offen,
  body.menue-offen .hauptnavigation{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
  }
  .kopf-v3 .hauptmenue{
    display:flex!important;
    flex-direction:column!important;
    width:min(350px,84vw)!important;
    gap:0!important;
    margin:0!important;
    padding:0!important;
    counter-reset:none!important;
  }
  .kopf-v3 .hauptmenue li{
    border:0!important;
    border-bottom:1px solid rgba(255,255,255,.13)!important;
  }
  .kopf-v3 .hauptmenue li:first-child{border-top:1px solid rgba(255,255,255,.13)!important}
  .kopf-v3 .hauptmenue a{
    display:block!important;
    min-height:auto!important;
    padding:15px 4px!important;
    border:0!important;
    background:transparent!important;
    color:rgba(255,255,255,.9)!important;
    font-family:"Baskerville",Georgia,serif!important;
    font-size:clamp(1.45rem,6.4vw,1.85rem)!important;
    font-weight:400!important;
    line-height:1.1!important;
    letter-spacing:.01em!important;
    text-align:center!important;
    text-transform:none!important;
  }
  .kopf-v3 .hauptmenue a::before{content:none!important;display:none!important}
  .kopf-v3 .hauptmenue a::after{
    content:""!important;
    position:absolute!important;
    left:50%!important;
    right:50%!important;
    bottom:9px!important;
    height:1px!important;
    background:var(--gold2)!important;
    transition:left .22s ease,right .22s ease!important;
  }
  .kopf-v3 .hauptmenue .aktuell a::after,.kopf-v3 .hauptmenue a:hover::after{left:35%!important;right:35%!important}
  .kopf-v3 .mobile-kontaktblock{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-wrap:wrap!important;
    width:min(350px,84vw)!important;
    gap:18px!important;
    margin:26px auto 0!important;
    padding-top:4px!important;
  }
  .kopf-v3 .mobile-kontaktblock a{
    min-height:auto!important;
    padding:7px 0!important;
    border:0!important;
    border-bottom:1px solid rgba(212,177,104,.65)!important;
    background:transparent!important;
    color:#fff!important;
    font-size:.68rem!important;
    font-weight:800!important;
    letter-spacing:.1em!important;
    text-transform:uppercase!important;
  }

  /* Datenschutz ohne Überlauf. */
  .recht-hero .seitenhero-zentriert,
  .recht-bereich .seitenbreite,
  .recht-layout,
  .recht-text{min-width:0!important;max-width:100%!important}
  .recht-hero h1{
    max-width:100%!important;
    font-size:clamp(2.05rem,10.5vw,3.35rem)!important;
    line-height:1.02!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    hyphens:auto!important;
  }
  .recht-text h2,
  .recht-text h3,
  .recht-text p,
  .recht-text li,
  .recht-text a,
  .recht-text strong{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
    hyphens:auto!important;
  }
  .recht-text{overflow:hidden!important}
}
