.page,body,html{overflow:hidden}.page-content,.sidebar{position:relative;z-index:1}.menu-toggle.active span:nth-child(2),.overlay{opacity:0}.bottom-nav a,.event-day,.event-range,.event-title,.hero-content h1,.hero-subtitle,.page-subtitle,.page-title,.section-subtitle,.section-title{font-family:var(--display)}.menu-arrow,.menu-arrow:disabled:hover{transform:translateY(-50%)}.badge,.btn,.event-month,.label,.sidebar-section strong{text-transform:uppercase}.event-date,.hero-content,.legal h1,.map-link,.page-subtitle,.page-title,.section-subtitle,.section-title,.sidebar{text-align:center}.kontakt-text a:hover,.link-arrow:hover,.sidebar-footer a:hover,.sidebar-section a:hover,.site-footer a:hover{text-decoration:underline}:root{--gold:#84754e;--gold-dark:#6b6249;--gold-darker:#5a5243;--gold-soft:#8b7d5e;--gold-line:#c2a868;--terracotta:#a3563f;--card:#fff;--border:#ece8e1;--shadow:0 8px 30px rgba(0, 0, 0, 0.06);--shadow-lg:0 14px 44px rgba(0, 0, 0, 0.11);--line:rgba(255, 255, 255, 0.25);--radius:14px;--serif:"Times New Roman",Times,serif;--display:Georgia,"Times New Roman",serif;--body:"Cormorant Garamond",Georgia,serif;--sidebar-bg:url('../images/HinterGrund-Schwanen.jpeg') center/cover;--sidebar-w:clamp(264px, 20vw, 320px)}*,::after,::before{box-sizing:border-box}body,html{height:100%;margin:0;padding:0}body{font-family:var(--serif);color:#333}.menu-toc li,.site-footer p,h1,h2,h3,h4,p{margin:0}img{max-width:100%}a{color:inherit}.page{display:grid;grid-template-columns:var(--sidebar-w) 1fr;grid-template-areas:"sidebar main";height:100vh}.content,.menu-toc ul,.sidebar{overflow-y:auto}.sidebar{grid-area:sidebar;background:var(--sidebar-bg);display:flex;flex-direction:column;color:#fff}.sidebar-logo{padding:50px 30px 40px}.sidebar-logo img{max-width:100%;height:auto}.sidebar-menu{width:100%;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;margin-top:auto}.nav-menu{list-style:none;margin:0;padding:0}.page-content>:first-child,.sidebar-info{margin-top:auto}.sidebar-footer,.sidebar-section{padding:25px 35px;border-top:1px solid var(--line)}.nav-menu a{display:block;padding:14px 35px;color:#fff;text-decoration:none;font-size:1.15rem;letter-spacing:.5px;transition:background .2s}.nav-menu .active a,.nav-menu a:hover{background:rgba(255,255,255,.12)}.sidebar-info{width:100%;font-size:1rem;line-height:1.8}.sidebar-section strong{display:block;font-size:.75rem;letter-spacing:2px;margin-bottom:10px;opacity:.85;font-weight:600}.sidebar-section a{color:#fff;text-decoration:none}.sidebar-footer{width:100%;font-size:.95rem}.sidebar-footer a{color:rgba(255,255,255,.8);text-decoration:none}.sidebar-footer a:hover{color:#fff}.sidebar-footer span{margin:0 12px;color:rgba(255,255,255,.4)}.bottom-nav a,.menu-toc a.active .menu-toc-num{color:rgba(255,255,255,.7)}.content{grid-area:main;display:block;overflow-x:hidden;background:#fff;position:relative;min-height:0}.event,.map-card,.menu-book,.welcome-card{overflow:hidden}.content::before{content:'';position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:800px;height:540px;margin-left:160px;background:url('../images/Logo-transparent.gif') center/contain no-repeat;opacity:.06;pointer-events:none;z-index:0}.content::-webkit-scrollbar,.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:rgba(0,0,0,.2)}.sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.3);border-radius:3px}.content::-webkit-scrollbar-track{background:#f0f0f0}.content::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.page-content{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:60px 40px}.bottom-nav,.menu-toggle,.overlay{display:none;position:fixed}.bottom-nav a,.bottom-nav ul{align-items:center;height:100%;display:flex}.page-content>:last-child{margin-bottom:auto}.page-title{font-size:3rem;font-style:italic;color:var(--gold);margin:0 0 15px;letter-spacing:2px}.page-subtitle{font-size:1.2rem;font-style:italic;color:#999;margin:0 0 40px;letter-spacing:1px}.menu-toggle{top:20px;left:20px;z-index:1001;width:50px;height:50px;background:rgba(125,114,89,.95);border:none;border-radius:8px;cursor:pointer;padding:12px;box-shadow:0 4px 15px rgba(0,0,0,.2);transition:background .3s}.menu-toggle:hover{background:rgba(90,82,67,.95)}.menu-toggle span{display:block;width:100%;height:3px;background:#fff;border-radius:2px;margin:5px 0;transition:transform .3s,opacity .3s}.bottom-nav a,.menu-toc a{text-decoration:none;transition:.2s}.menu-toggle.active span:first-child{transform:translateY(8px) rotate(45deg)}.menu-toggle.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.overlay{inset:0;background:rgba(0,0,0,.5);z-index:999;transition:opacity .3s}.overlay.active{opacity:1}.bottom-nav{bottom:0;left:0;right:0;height:54px;background:var(--sidebar-bg);z-index:998;box-shadow:0 -2px 15px rgba(0,0,0,.12)}.hero-content,.home-news,.menu-wrap{z-index:1;position:relative}.bottom-nav ul{margin:0;padding:0;list-style:none}.bottom-nav li{flex:1;height:100%}.bottom-nav a{justify-content:center;font-size:.95rem;letter-spacing:.5px;border-top:2px solid transparent}.bottom-nav a:hover{color:#fff;background:rgba(255,255,255,.08)}.bottom-nav a.active{color:#fff;border-top-color:rgba(255,255,255,.6);background:rgba(255,255,255,.1)}.hero{display:flex;align-items:center;justify-content:center;position:relative}.hero-content{padding:80px 60px 0;max-width:800px}.hero-content h1{font-size:3.5rem;font-style:italic;color:var(--gold);margin:0 0 20px;letter-spacing:2px;line-height:1.1;white-space:nowrap}.hero-subtitle{font-size:2rem;font-style:italic;color:var(--gold-soft);margin:0 0 50px;letter-spacing:4px}.hero-text{max-width:650px;margin:0 auto 50px}.hero-text p{font-family:var(--body);font-size:1.4rem;font-weight:500;line-height:1.85;color:#3a3a3a;margin:0 0 25px}.hero-signature{font-style:italic;color:var(--gold);margin:35px 0 0;font-size:1.4rem}.hero-signature span{display:block;margin-top:8px;font-weight:500;font-style:normal;letter-spacing:1px}.event-meta,.hours tr.closed td:last-child,.legal h1,.link-arrow,.map-link,.section-subtitle,.section-title{font-style:italic}.btn{display:inline-block;padding:22px 55px;background:var(--gold);color:#fff;text-decoration:none;font-size:1.25rem;letter-spacing:2px;border-radius:3px;transition:background .3s,transform .2s}.divider,.event,.event-date,.events{display:flex}.card,.event{border:1px solid var(--border)}.btn:hover{background:var(--gold-darker);transform:translateY(-2px)}.home-news{padding:24px 40px 90px}.home-news-inner{max-width:780px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.divider{align-items:center;justify-content:center;gap:16px;width:100%;max-width:300px;margin:0 auto 24px}.divider::after,.divider::before{content:'';flex:1;height:1px;background:var(--gold-line)}.divider::before{background:linear-gradient(to right,transparent,var(--gold-line))}.divider::after{background:linear-gradient(to left,transparent,var(--gold-line))}.divider span{width:9px;height:9px;background:var(--gold-line);transform:rotate(45deg);flex-shrink:0}.events,.kontakt-col{flex-direction:column}.section-title{font-size:2.5rem;color:var(--gold);margin:0 0 8px;letter-spacing:2px}.section-subtitle{font-size:1.15rem;color:#999;margin:0 0 36px;letter-spacing:1px}.home-news-more{margin-top:38px}.events{width:100%;max-width:780px;gap:26px}.event{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}.badge,.event-date{color:#fff;background:var(--gold)}.event:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.event-date{flex-shrink:0;width:132px;flex-direction:column;align-items:center;justify-content:center;padding:26px 10px;line-height:1.1}.event-day,.event-range{font-size:2rem;font-weight:600;letter-spacing:.5px}.event-month{font-size:.85rem;letter-spacing:2px;margin-top:8px;opacity:.9}.event-body{padding:26px 32px;flex:1}.badge{display:inline-block;padding:5px 14px;border-radius:20px;font-size:.72rem;letter-spacing:1.8px;font-weight:600;margin-bottom:14px}.menu-book,.menu-page-img,.menu-toc{background:var(--card)}.badge.closed{background:var(--terracotta)}.badge.holiday{background:var(--gold-soft)}.event-title{font-size:1.6rem;color:var(--gold);margin:0 0 12px;letter-spacing:.5px}.event-desc{font-family:var(--body);font-size:1.25rem;font-weight:500;line-height:1.7;color:#555;margin:0 0 14px}.event-meta{font-family:var(--display);font-size:1rem;color:var(--gold);margin:0}.menu-wrap{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:50px}.menu-stage{display:flex;justify-content:center;align-items:stretch;gap:50px;height:calc(100vh - 100px);max-height:900px;position:relative}.menu-toc{width:320px;flex-shrink:0;box-shadow:0 8px 40px rgba(0,0,0,.12);border-radius:12px;padding:35px 30px;display:flex;flex-direction:column}.menu-book,.menu-page-img,.menu-page-img img{width:100%;height:100%}.menu-toc-head{margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid var(--gold)}.menu-toc-head h2{font-size:1.6rem;font-weight:600;color:var(--gold);margin:0;letter-spacing:1px}.menu-toc ul{list-style:none;padding:0;margin:0;flex:1;min-height:0;display:flex;flex-direction:column;gap:8px}.menu-toc a{display:flex;justify-content:space-between;color:#333;font-size:1.15rem;padding:18px 20px;border-radius:8px;border-left:4px solid transparent}.menu-toc a:hover{background:#f8f6f4;color:var(--gold);border-left-color:var(--gold)}.menu-toc a.active{background:var(--gold);color:#fff}.menu-toc-title{flex:1;margin-right:15px}.menu-toc-num{color:#999;font-size:.9rem}.menu-book-wrap{position:relative;height:100%;aspect-ratio:500/707}.menu-book{position:relative;box-shadow:0 25px 80px rgba(0,0,0,.25);border-radius:8px;cursor:pointer}.menu-page-img{position:absolute;inset:0;display:none}.menu-page-img.active{display:block}.menu-page-img img{object-fit:contain;display:block}.menu-arrow{position:absolute;top:50%;background:var(--gold);color:#fff;border:none;width:50px;height:50px;font-size:1.6rem;cursor:pointer;border-radius:50%;z-index:10;transition:.3s;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 25px rgba(0,0,0,.25)}.card,.map-card{background:var(--card);box-shadow:var(--shadow)}.menu-arrow:hover{background:var(--gold-dark);transform:translateY(-50%) scale(1.1)}.menu-arrow:disabled{opacity:.3;cursor:not-allowed}.menu-arrow.prev{left:-70px}.menu-arrow.next{right:-70px}.menu-controls{display:none}.kontakt{width:100%;max-width:1000px;display:grid;grid-template-columns:1fr 1.15fr;gap:28px;align-items:stretch}.kontakt-col{display:flex;gap:22px}.card{border-radius:var(--radius);padding:26px 28px}.label{display:block;font-size:.72rem;letter-spacing:2px;font-weight:600;color:var(--gold);margin-bottom:8px}.label+.label{margin-top:20px}.kontakt-text{font-family:var(--body);font-size:1.35rem;line-height:1.55;color:#4a4338;margin:0}.kontakt-text a,.link-arrow{color:var(--gold);text-decoration:none}.link-arrow{display:inline-block;margin-top:16px;font-family:var(--display);font-size:1.05rem}.hours{width:100%;border-collapse:collapse;font-family:var(--body)}.legal h1,.legal h3,.map-link,.site-footer{font-family:var(--display)}.hours td{padding:9px 0;font-size:1.25rem;border-bottom:1px solid #f0ece4}.hours tr:last-child td{border-bottom:none}.hours td:first-child{font-weight:600;color:#4a4338}.legal h1,.legal h3,.map-link{color:var(--gold)}.hours td:last-child{text-align:right;color:var(--gold)}.hours tr.closed td{color:#b3aa9a;font-weight:400}.map-card{border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;min-height:100%}.map-card iframe{width:100%;flex:1;min-height:440px;border:0;display:block}.map-link{display:block;padding:14px;text-decoration:none;border-top:1px solid var(--border)}.map-link:hover{background:#f8f6f4}.legal{position:relative;z-index:1;padding:60px 40px;max-width:800px;margin:0 auto}.legal h1{font-size:3rem;margin:0 0 50px}.legal h3{font-size:1.3rem;margin:40px 0 15px}.legal p{font-size:1.1rem;line-height:1.8;color:#666;margin:0 0 30px}.legal a{color:var(--gold)}.welcome{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(22,18,12,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.welcome.show{display:flex;animation:.3s fade}@keyframes fade{from{opacity:0}to{opacity:1}}@keyframes pop{from{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}.welcome-card{position:relative;max-width:94vw;max-height:92vh;border-radius:16px;line-height:0;box-shadow:0 30px 90px rgba(0,0,0,.65);animation:.35s pop}.welcome-card img{display:block;width:auto;height:auto;max-width:94vw;max-height:92vh}.welcome-close{position:absolute;top:14px;right:14px;width:44px;height:44px;border:none;border-radius:50%;cursor:pointer;background:rgba(0,0,0,.55);color:#fff;font-size:1.7rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .2s;z-index:2}.welcome-close:hover{background:rgba(0,0,0,.8);transform:scale(1.08)}.site-footer{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:24px 40px;border-top:1px solid var(--border);background:#faf8f5;font-size:.9rem;color:#8a8275}.site-footer a{color:#8a8275;text-decoration:none}.site-footer a:hover{color:var(--gold)}.footer-links{display:flex;gap:22px}@media (min-width:1401px){.events,.home-news-inner{max-width:1080px}.kontakt{max-width:1240px}}@media (min-width:901px) and (max-width:1400px){.content::before{width:550px;height:370px}}@media (min-width:901px) and (max-height:800px){.content::before{width:450px;height:300px}.sidebar-logo{padding:30px 25px 25px}.sidebar-logo img{max-width:200px}.sidebar-menu{padding:18px 0}.nav-menu a{padding:10px 30px;font-size:1.05rem}.sidebar-section{padding:18px 30px;font-size:.9rem;line-height:1.6}.sidebar-section strong{font-size:.7rem;margin-bottom:6px}.sidebar-footer{padding:18px 30px;font-size:.85rem}.hero-content{padding:25px 35px 0}.hero-content h1{font-size:2.2rem;margin-bottom:10px}.hero-subtitle{font-size:1.25rem;margin-bottom:20px;letter-spacing:3px}.hero-text{margin-bottom:20px;max-width:600px}.hero-text p{font-size:1.1rem;line-height:1.65;margin-bottom:12px}.hero-signature{font-size:1.1rem;margin-top:15px}.hero-signature span{margin-top:5px}.btn{padding:14px 38px;font-size:1rem}}@media (min-width:901px) and (max-width:1400px){.hero-subtitle,.hero-text{margin-bottom:35px}.hero-content{padding:40px 40px 0;max-width:700px}.hero-content h1{font-size:2.8rem;margin-bottom:15px}.hero-subtitle{font-size:1.5rem}.hero-text p{font-size:1.2rem;line-height:1.75;margin-bottom:18px}.hero-signature{font-size:1.2rem;margin-top:25px}.btn{padding:18px 45px;font-size:1.1rem}}@media (max-width:1100px){.menu-stage{gap:30px}.menu-toc{width:280px;padding:25px}.menu-arrow.prev{left:-55px}.menu-arrow.next{right:-55px}}@media (max-width:900px){.bottom-nav,.menu-toggle,.overlay,.page{display:block}.content,.page{min-height:100vh}body,html{overflow-x:hidden;overflow-y:auto}.overlay{pointer-events:none}.overlay.active{pointer-events:auto}.page{height:auto;overflow:visible}.sidebar{position:fixed;top:0;left:-320px;width:320px;height:100vh;z-index:1000;transition:left .3s}.menu-book,.menu-book-wrap,.menu-stage,.menu-toc{width:100%;height:auto}.sidebar.active{left:0}.content{width:100%;padding-top:80px;padding-bottom:60px}.menu-wrap,.page-content{min-height:calc(100vh - 80px)}.content::before{width:400px;height:270px;margin-left:0;opacity:.05}.hero{padding-top:20px}.hero-content{padding:40px 25px 0}.hero-content h1{font-size:1.6rem}.hero-subtitle{font-size:1.3rem;margin-bottom:30px;letter-spacing:2px}.hero-text{margin-bottom:40px}.hero-text p{font-size:1.25rem;line-height:1.75}.btn{padding:18px 40px;font-size:1rem}.page-content{padding:40px 25px}.page-title{font-size:2rem}.legal p,.page-subtitle{font-size:1rem}.menu-wrap{padding:90px 16px;align-items:flex-start}.menu-stage{flex-direction:column;gap:16px;max-height:none}.menu-toc{max-height:230px;padding:16px 18px}.menu-toc-head{margin-bottom:14px;padding-bottom:12px}.menu-toc-head h2{font-size:1.25rem}.menu-toc ul{max-height:150px}.menu-toc a{padding:11px 14px;font-size:1rem}.menu-book-wrap{max-width:100%;aspect-ratio:auto;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 30px rgba(0,0,0,.15);overflow:hidden}.menu-book{aspect-ratio:500/707;border-radius:0;box-shadow:none}.menu-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:#f8f6f4;border-top:1px solid var(--border)}.menu-caption{flex:1;margin:0;text-align:center;font-family:var(--display);font-size:.95rem;font-weight:600;color:var(--gold)}.menu-mnav{flex-shrink:0;width:46px;height:46px;border:none;border-radius:50%;background:var(--gold);color:#fff;font-size:1.4rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.2);transition:background .2s,transform .2s}.menu-mnav:hover:not(:disabled){background:var(--gold-dark);transform:scale(1.06)}.menu-mnav:disabled{opacity:.35;cursor:not-allowed}.menu-arrow{display:none}.legal{padding:100px 25px 40px}.legal h1{font-size:2rem;margin-bottom:30px}.legal h3{font-size:1.1rem;margin-top:30px}.site-footer{padding:20px 25px;font-size:.85rem}}@media (max-width:860px){.kontakt{grid-template-columns:1fr;max-width:580px;gap:22px}.map-card iframe{min-height:320px}}@media (max-width:600px){.event{flex-direction:column}.event-date{width:100%;flex-direction:row;gap:10px;padding:16px 20px;justify-content:center}.event-day,.event-range{font-size:1.5rem}.event-month{margin-top:0;font-size:.8rem}.event-body{padding:22px 24px}.event-title{font-size:1.4rem}.event-desc{font-size:1.15rem}.home-news{padding:24px 22px 80px}.section-title{font-size:2rem}.section-subtitle{font-size:1.05rem}}@media (max-width:480px){.menu-toggle{top:15px;left:15px;width:45px;height:45px;padding:10px}.menu-toggle span{height:2px;margin:4px 0}.sidebar{width:280px;left:-280px}.sidebar-logo{padding:40px 20px 30px}.sidebar-logo img{max-width:200px}.nav-menu a{padding:12px 25px;font-size:1rem}.sidebar-section{padding:20px 25px;font-size:.9rem}.sidebar-footer{padding:20px 25px;font-size:.85rem}.content::before{width:280px;height:190px}.hero-content h1{font-size:1.4rem}.hero-subtitle,.hero-text p{font-size:1.1rem}.btn{padding:16px 35px;font-size:.95rem}}