﻿*,*::before,*::after{box-sizing:border-box}html{font-size:18px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:1rem;line-height:1.6;color:#3d3d3d;background-color:#fdf8f0}h1,h2,h3,h4,h5,h6{font-family:"Playfair Display",Georgia,"Times New Roman",serif;font-weight:600;line-height:1.2;color:#1a1a1a;margin-top:0}h1{font-size:clamp(2.5rem,5vw,4rem);letter-spacing:-.02em}h2{font-size:2.5rem}h3{font-size:2rem}h4{font-size:1.5rem}p{margin-top:0;margin-bottom:1rem}a{color:#8b4513;text-decoration:none;transition:color 150ms ease}a:hover{color:#654321;text-decoration:underline}img{max-width:100%;height:auto;display:block}ul,ol{padding-left:1.5rem}li{margin-bottom:.5rem}::selection{background-color:#daa520;color:#1a1a1a}:focus-visible{outline:3px solid #b8860b;outline-offset:2px}:focus:not(:focus-visible){outline:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 clamp(1rem,5vw,4rem)}.btn{display:inline-block;padding:1rem 2rem;font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:1rem;font-weight:600;text-align:center;text-decoration:none;border:none;border-radius:8px;cursor:pointer;transition:all 300ms ease}.btn:hover{text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background:#8b4513;box-shadow:0 1px 3px rgba(0,0,0,.08)}.btn-primary:hover{color:#fff;background:#654321;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1);text-decoration:none}.btn-primary:active{transform:translateY(0)}.btn-secondary{color:#8b4513;background:rgba(0,0,0,0);border:2px solid #8b4513}.btn-secondary:hover{color:#fff;background:#8b4513}.btn-large{padding:1.5rem 3rem;font-size:1.125rem;border-radius:16px}.btn-primary,.btn-secondary{position:relative;overflow:hidden}.btn-primary,.btn-secondary{isolation:isolate}.btn-primary::before,.btn-secondary::before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:rgba(255,255,255,.2);border-radius:50%;transform:translate(-50%, -50%);transition:width .6s ease,height .6s ease;z-index:-1}.btn-primary:hover::before,.btn-secondary:hover::before{width:300px;height:300px}.site-header{position:fixed;top:0;left:0;right:0;height:80px;background:rgba(253,248,240,.95);backdrop-filter:blur(10px);z-index:100;transition:all 300ms ease}.site-header.scrolled{height:64px;box-shadow:0 4px 12px rgba(0,0,0,.1)}.menu-open .site-header{z-index:210}.header-container{display:flex;align-items:center;justify-content:space-between;height:100%;max-width:1400px;margin:0 auto;padding:0 2rem}.logo{flex-shrink:0}.logo a{display:flex;align-items:center;gap:1rem;text-decoration:none;color:#1a1a1a}.logo a:hover{text-decoration:none}.logo a:hover .logo-svg{color:#8b4513}.logo .logo-svg{width:48px;height:40px;color:#3d3d3d;transition:color 150ms ease}.logo .logo-text{font-family:"Playfair Display",Georgia,"Times New Roman",serif;font-size:1.25rem;font-weight:600;line-height:1.2}.logo .logo-text small{display:block;font-size:.75rem;font-weight:400;color:#8b4513;letter-spacing:.05em;text-transform:uppercase}@media (max-width: 767px){.main-nav{display:none}}.nav-list{display:flex;gap:.5rem;list-style:none;margin:0;padding:0}.nav-link{display:block;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#3d3d3d;text-decoration:none;border-radius:4px;transition:all 150ms ease}.nav-link:hover,.nav-link.active{color:#8b4513;background:rgba(139,69,19,.08);text-decoration:none}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:.5rem}@media (max-width: 767px){.mobile-menu-toggle{display:block}}.hamburger{display:block;width:24px;height:2px;background:#3d3d3d;position:relative;transition:background 150ms ease}.hamburger::before,.hamburger::after{content:"";position:absolute;left:0;width:100%;height:2px;background:#3d3d3d;transition:transform 300ms ease}.hamburger::before{top:-8px}.hamburger::after{bottom:-8px}.menu-open .hamburger{background:rgba(0,0,0,0)}.menu-open .hamburger::before{transform:translateY(8px) rotate(45deg)}.menu-open .hamburger::after{transform:translateY(-8px) rotate(-45deg)}.mobile-nav-overlay{position:fixed;inset:0;background:rgba(26,26,26,.95);z-index:200;opacity:0;visibility:hidden;transition:all 300ms ease}.menu-open .mobile-nav-overlay{opacity:1;visibility:visible}.mobile-nav{display:flex;align-items:center;justify-content:center;height:100%;padding:2rem}.mobile-nav-list{list-style:none;margin:0;padding:0;text-align:center}.mobile-nav-list li{margin-bottom:1.5rem;opacity:0;transform:translateY(20px);transition:all 300ms ease}.menu-open .mobile-nav-list li{opacity:1;transform:translateY(0)}.menu-open .mobile-nav-list li:nth-child(1){transition-delay:100ms}.menu-open .mobile-nav-list li:nth-child(2){transition-delay:200ms}.menu-open .mobile-nav-list li:nth-child(3){transition-delay:300ms}.menu-open .mobile-nav-list li:nth-child(4){transition-delay:400ms}.menu-open .mobile-nav-list li:nth-child(5){transition-delay:500ms}.mobile-nav-list a{font-family:"Playfair Display",Georgia,"Times New Roman",serif;font-size:2rem;color:#fdf8f0;text-decoration:none}.mobile-nav-list a:hover{color:#daa520}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:80px 0 0;overflow:hidden}.hero-background{position:absolute;inset:0;z-index:-1;background:url("../img/Startbild_Hintergrund_Gewoelbe.jpg") center/cover no-repeat}.hero-background::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg, rgba(139,69,19,.4), rgba(101,67,33,.45));pointer-events:none;z-index:1}.hero-background::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.3);pointer-events:none}.hero-overlay{position:absolute;inset:0;z-index:1;background:repeating-linear-gradient(0deg, rgba(0,0,0,0), rgba(0,0,0,0) 2px, rgba(255,255,255,.04) 2px, rgba(255,255,255,.04) 4px);pointer-events:none}.hero-content{text-align:center;padding:2rem;max-width:900px;animation:fadeInUp 1s ease-out}.hero-title{color:#fdf8f0;margin-bottom:2rem}.hero-title .title-line{display:block;font-size:clamp(2.5rem,5vw,4rem);font-weight:700}.hero-title .title-accent{display:block;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:400;font-style:italic;color:#daa520;margin-top:.5rem}.hero-subtitle{font-size:1.5rem;color:rgba(253,248,240,.9);line-height:1.8;margin-bottom:3rem;max-width:700px;margin-left:auto;margin-right:auto}.btn-hero{display:inline-block;padding:1.5rem 3rem;font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:1.125rem;font-weight:600;color:#1a1a1a;background:#daa520;border:none;border-radius:9999px;cursor:pointer;text-decoration:none;transition:all 300ms ease;box-shadow:0 8px 24px rgba(0,0,0,.12)}.btn-hero:hover{transform:translateY(-3px);box-shadow:0 16px 48px rgba(0,0,0,.15),0 0 20px rgba(184,134,11,.3);background:#b8860b;color:#fff;text-decoration:none}.btn-hero:active{transform:translateY(-1px)}.scroll-indicator{position:absolute;bottom:3rem;left:50%;transform:translateX(-50%);animation:bounce 2s infinite}.scroll-indicator span{display:block;width:24px;height:40px;border:2px solid rgba(253,248,240,.5);border-radius:9999px;position:relative}.scroll-indicator span::before{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:4px;height:8px;background:#fdf8f0;border-radius:9999px;animation:scrollDown 2s infinite}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%, 20%, 50%, 80%, 100%{transform:translateX(-50%) translateY(0)}40%{transform:translateX(-50%) translateY(-10px)}60%{transform:translateX(-50%) translateY(-5px)}}@keyframes scrollDown{0%{opacity:0;top:8px}30%{opacity:1}60%{opacity:1}100%{opacity:0;top:20px}}.content-section{padding:clamp(4rem,10vh,8rem) clamp(1rem,5vw,4rem);position:relative}.content-section:nth-child(odd){background:#fdf8f0}.content-section:nth-child(even){background:#e8ddd0}.section-container{max-width:1200px;margin:0 auto}.section-header{text-align:center;margin-bottom:4rem;position:relative}.section-number{display:inline-block;font-family:"Playfair Display",Georgia,"Times New Roman",serif;font-size:2rem;font-weight:600;color:#b8860b;margin-bottom:.5rem}.section-number::after{content:"";display:block;width:40px;height:2px;background:#b8860b;margin:.5rem auto 0}.section-title{font-size:clamp(2rem,4vw,3rem);color:#1a1a1a;margin-bottom:1rem}.section-intro{font-size:1.5rem;color:#3d3d3d;max-width:600px;margin:0 auto}.section-cta{text-align:center;margin-top:4rem}.content-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.1);transition:all 300ms ease;padding:2rem}.content-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.12)}.content-card.featured{padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0}@media (max-width: 767px){.content-card.featured{grid-template-columns:1fr}}.card-image{position:relative;overflow:hidden}.card-image::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg, rgba(101,67,33,.05), rgba(74,28,34,.08));pointer-events:none}.card-image img{width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform 500ms ease}.content-card:hover .card-image img{transform:scale(1.05)}.card-content{padding:2rem}.card-content h3{margin-bottom:1rem;color:#654321}.card-content h4{margin-bottom:.5rem;color:#3d3d3d}.card-content p{color:#3d3d3d;line-height:1.8}.card-icon{width:48px;height:48px;margin-bottom:1rem;color:#b8860b}.card-icon svg{width:100%;height:100%}.content-grid{display:grid;gap:2rem;margin-top:3rem;grid-template-columns:1fr}@media (min-width: 768px){.content-grid{grid-template-columns:repeat(2, 1fr)}}.section-note{text-align:center;color:#3d3d3d;font-size:1rem;line-height:1.8;max-width:700px;margin:3rem auto 0}.possibilities-grid{display:grid;gap:2rem;grid-template-columns:1fr}@media (min-width: 768px){.possibilities-grid{grid-template-columns:repeat(2, 1fr)}}.possibility-card{position:relative;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.1);transition:all 300ms ease}.possibility-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 16px 48px rgba(0,0,0,.15)}.possibility-card:hover .card-bg{transform:scale(1.1)}.possibility-card:hover .card-icon-large{transform:scale(1.1) rotate(5deg)}.possibility-card .card-header{padding:2rem 2rem}.possibility-card .card-header h3{color:#fff;font-size:1.5rem;margin:0}.possibility-card[data-category=business] .card-header{background:linear-gradient(135deg, sienna, #8b4513)}.possibility-card[data-category=community] .card-header{background:linear-gradient(135deg, #daa520, #b8860b)}.possibility-card[data-category=celebration] .card-header{background:linear-gradient(135deg, #8b3a3a, #722f37)}.possibility-card[data-category=culture] .card-header{background:linear-gradient(135deg, #c1ac95, #987958)}.possibility-card .card-body{padding:2rem}.possibility-card .card-body p{font-size:1rem;color:#3d3d3d;margin:0}.pricing-grid{display:grid;gap:2rem;grid-template-columns:1fr}@media (min-width: 768px){.pricing-grid{grid-template-columns:repeat(2, 1fr)}}.pricing-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.1);transition:all 300ms ease}.pricing-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.12)}.pricing-header{padding:2rem;background:linear-gradient(135deg, #8b4513, #654321);color:#fff}.pricing-header h3{color:#fff;margin-bottom:1rem;font-size:1.5rem}.price-badge{display:flex;flex-direction:column;gap:.25rem}.price{font-family:"Playfair Display",Georgia,"Times New Roman",serif;font-size:2.5rem;font-weight:700}.price-period{font-size:.875rem;opacity:.9}.pricing-body{padding:2rem}.pricing-body h4{font-size:1rem;margin:1rem 0 .5rem}.pricing-body p{font-size:1rem;color:#3d3d3d}.pricing-body .small{font-size:.875rem;color:#707070}.pricing-body .required-note{font-weight:600;color:#722f37;font-size:.875rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e8ddd0}.pricing-features{list-style:none;padding:0;margin:0}.pricing-features li{position:relative;padding-left:1.5rem;margin-bottom:.5rem}.pricing-features li::before{content:"✓";position:absolute;left:0;color:#4a7c59;font-weight:bold}.pricing-divider{height:1px;background:#e8ddd0;margin:1.5rem 0}.pricing-note{margin-top:.5rem}.caterer-list{list-style:none;padding:0}.caterer-list li{margin-bottom:.5rem}.caterer-link{color:#8b4513;font-weight:500}.caterer-link:hover{color:#654321}.section-banner{position:absolute;top:0;left:0;right:0;height:1000px;overflow:hidden;z-index:0}.section-banner::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg, rgba(101,67,33,.15), rgba(74,28,34,.25));pointer-events:none}.section-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 55%, rgba(253,248,240,.3) 70%, rgba(253,248,240,.7) 80%, rgba(253,248,240,.9) 88%, #fdf8f0 95%);pointer-events:none}.section-banner img{width:100%;height:100%;object-fit:cover;object-position:center 30%}.section-2,.section-3,.section-4{position:relative;padding-top:920px}.section-2 .section-header,.section-3 .section-header,.section-4 .section-header{position:relative;z-index:10}.section-2 .section-container,.section-3 .section-container,.section-4 .section-container{position:relative;z-index:10}.legal-page{padding-top:160px;padding-bottom:6rem}.legal-page h1{font-size:clamp(2rem,4vw,3rem);color:#1a1a1a;margin-bottom:3rem;padding-bottom:1rem;border-bottom:2px solid #e8ddd0}.legal-page h2{font-size:2rem;color:#654321;margin-top:3rem;margin-bottom:1rem}.legal-page h3{font-size:1.5rem;color:#3d3d3d;margin-top:2rem;margin-bottom:.5rem}.legal-page h4{font-size:1.125rem;color:#3d3d3d;margin-top:1.5rem;margin-bottom:.5rem}.legal-page p,.legal-page li{color:#3d3d3d;line-height:1.8;margin-bottom:.5rem}.legal-page ul,.legal-page ol{padding-left:2rem;margin-bottom:1rem}.legal-page strong{color:#1a1a1a}.legal-page a{color:#8b4513}.legal-page a:hover{color:#654321}.section-3 .section-banner::after{background:linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 55%, rgba(232,221,208,.3) 70%, rgba(232,221,208,.7) 80%, rgba(232,221,208,.9) 88%, #e8ddd0 95%)}.steps-container{max-width:800px;margin:0 auto}.step-card{display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:center;padding:2rem;background:#fff;border-radius:16px;box-shadow:0 4px 12px rgba(0,0,0,.1);transition:all 300ms ease}@media (max-width: 767px){.step-card{grid-template-columns:1fr;text-align:center}}.step-card:hover{transform:scale(1.02);box-shadow:0 8px 24px rgba(0,0,0,.12)}.step-card:hover .step-number{background:#8b4513;transform:scale(1.1)}.step-card:hover .step-visual svg{transform:rotate(10deg)}.step-number{width:64px;height:64px;display:flex;align-items:center;justify-content:center;font-family:"Playfair Display",Georgia,"Times New Roman",serif;font-size:2rem;font-weight:700;color:#fff;background:#b8860b;border-radius:50%;transition:all 300ms ease}@media (max-width: 767px){.step-number{margin:0 auto 1rem}}.step-content h3{margin-bottom:.5rem;color:#1a1a1a}.step-content p{color:#3d3d3d;margin-bottom:1rem}.btn-step{display:inline-block;padding:.5rem 1.5rem;font-size:.875rem;font-weight:600;color:#8b4513;background:rgba(0,0,0,0);border:2px solid #8b4513;border-radius:9999px;text-decoration:none;transition:all 150ms ease}.btn-step:hover{color:#fff;background:#8b4513;text-decoration:none}.step-visual{width:80px;height:80px;color:#d4c5b5}@media (max-width: 767px){.step-visual{margin:1rem auto 0}}.step-visual svg{width:100%;height:100%;transition:transform 300ms ease}.step-connector{width:40px;height:60px;margin:0 auto;color:#d4c5b5}.step-connector svg{width:100%;height:100%}.success-message{display:flex;align-items:center;gap:2rem;margin-top:3rem;padding:2rem;background:linear-gradient(135deg, #cbe0d2, #bbd7c4);border-radius:16px;border:2px solid #4a7c59}@media (max-width: 767px){.success-message{flex-direction:column;text-align:center}}.success-icon{flex-shrink:0;width:64px;height:64px;color:#4a7c59}.success-icon svg{width:100%;height:100%}.success-message p{margin:0;font-size:1.125rem;color:#2d4c37}.success-message p strong{display:block;margin-top:.5rem;font-size:1.5rem;color:#243c2b}.inquiry-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}@media (max-width: 767px){.inquiry-grid{grid-template-columns:1fr}}.inquiry-form-container h3,.faq-container h3{font-size:2rem;margin-bottom:1.5rem;color:#1a1a1a}.form-intro{color:#3d3d3d;margin-bottom:2rem}.booking-form{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 4px 12px rgba(0,0,0,.1)}.booking-form fieldset{border:none;padding:0;margin:0 0 2rem}.booking-form fieldset:last-of-type{margin-bottom:1.5rem}.booking-form legend{font-family:"Playfair Display",Georgia,"Times New Roman",serif;font-size:1.125rem;font-weight:600;color:#654321;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e8ddd0;width:100%}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 767px){.form-row{grid-template-columns:1fr}}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:#3d3d3d;margin-bottom:.25rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.5rem 1rem;font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:1rem;color:#1a1a1a;background:#fdf8f0;border:2px solid #e8ddd0;border-radius:8px;transition:all 150ms ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#8b4513;background:#fff;box-shadow:0 0 0 4px rgba(139,69,19,.1)}.form-group input::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:#8a8a8a}.form-group textarea{resize:vertical;min-height:100px}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%233D3D3D' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;padding-right:3rem}.form-required-note{padding:1rem;background:rgba(184,134,11,.1);border-radius:8px;margin-bottom:1.5rem}.form-required-note p{font-weight:600;margin-bottom:.5rem;color:#654321}.form-required-note ol{margin:0;padding-left:1.5rem}.form-required-note ol li{color:#3d3d3d;font-size:.875rem}.faq-list{display:flex;flex-direction:column;gap:1rem}.faq-item{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.08);transition:all 150ms ease}.faq-item:hover{box-shadow:0 4px 12px rgba(0,0,0,.1)}.faq-item[open]{box-shadow:0 4px 12px rgba(0,0,0,.1)}.faq-item[open] summary{color:#8b4513;background:rgba(139,69,19,.05)}.faq-item[open] summary::after{transform:rotate(180deg)}.faq-item summary{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;font-weight:600;color:#1a1a1a;cursor:pointer;list-style:none;transition:all 150ms ease}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:"";width:20px;height:20px;flex-shrink:0;margin-left:1rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%238B4513' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;transition:transform 150ms ease}.faq-item summary:hover{color:#8b4513}.faq-answer{padding:0 1.5rem 1.5rem}.faq-answer p{color:#3d3d3d;line-height:1.8;margin:0}.accessibility-info{margin-top:2rem;padding:1.5rem;background:rgba(184,134,11,.08);border-left:3px solid #b8860b;border-radius:8px}.accessibility-info h4{font-size:1.125rem;color:#654321;margin-bottom:.5rem}.accessibility-info p{color:#3d3d3d;line-height:1.8;margin-bottom:.25rem}.accessibility-info p:last-child{margin-bottom:0}.accessibility-info a{color:#8b4513;font-weight:500}.accessibility-info a:hover{color:#654321}.contact-form .form-group{margin-bottom:.5rem}.contact-form .form-group input,.contact-form .form-group textarea{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);color:#fff}.contact-form .form-group input::placeholder,.contact-form .form-group textarea::placeholder{color:rgba(255,255,255,.6)}.contact-form .form-group input:focus,.contact-form .form-group textarea:focus{background:rgba(255,255,255,.15);border-color:#b8860b}.modal-overlay{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 300ms ease,visibility 300ms ease}.modal-overlay.is-open{opacity:1;visibility:visible}.modal-dialog{background:#fff;border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.12);width:90vw;max-width:720px;max-height:85vh;display:flex;flex-direction:column;transform:translateY(20px);transition:transform 300ms ease}.is-open .modal-dialog{transform:translateY(0)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:2px solid #e8ddd0}.modal-header h3{margin:0;font-size:2rem;color:#1a1a1a}.modal-header-actions{display:flex;align-items:center;gap:.5rem}.modal-print{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:0 .25rem;color:#3d3d3d;transition:color 150ms ease}.modal-print:hover{color:#8b4513}.modal-close{background:none;border:none;font-size:2rem;line-height:1;color:#3d3d3d;cursor:pointer;padding:0 .25rem;transition:color 150ms ease}.modal-close:hover{color:#8b4513}.modal-body{padding:2rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem}.caterer-card{background:#fdf8f0;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px rgba(0,0,0,.08)}.caterer-card h4{margin:0 0 .5rem;color:#654321;font-size:1.125rem}.caterer-card p{margin:0 0 .25rem;color:#3d3d3d;font-size:.875rem}.caterer-card a{color:#8b4513;text-decoration:none}.caterer-card a:hover{text-decoration:underline}.modal-dialog-wide{max-width:900px;max-height:92vh}.lageplan-image{width:100%;height:auto;border-radius:8px}.lageplan-text{margin-top:1.5rem}.caterer-card-links{margin-top:.5rem;display:flex;flex-wrap:wrap;gap:1rem}.site-footer{background:#3d3d3d;color:rgba(255,255,255,.9);padding:6rem clamp(1rem,5vw,4rem) 2rem}.footer-container{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:4rem;max-width:1200px;margin:0 auto}.footer-section h3{font-family:"Playfair Display",Georgia,"Times New Roman",serif;font-size:1.5rem;color:#fff;margin-bottom:1.5rem;position:relative;padding-bottom:.5rem}.footer-section h3::after{content:"";position:absolute;bottom:0;left:0;width:40px;height:2px;background:#b8860b}.footer-section h4{font-size:1rem;color:#daa520;margin-bottom:.5rem}.footer-section p{font-size:1rem;line-height:1.8;margin-bottom:.5rem}.footer-section a{color:rgba(255,255,255,.8);text-decoration:none;transition:color 150ms ease}.footer-section a::before{content:"→ "}.footer-section a:hover{color:#daa520}.footer-section .btn::before{content:none}.footer-section address{font-style:normal;margin-bottom:1rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.5rem}@media (max-width: 767px){.contact-grid{grid-template-columns:1fr}}.contact-heading{grid-column:1/-1;font-size:1rem;color:#daa520;margin-bottom:.5rem}.contact-stiftung{grid-column:1/-1;margin-top:.5rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.contact-stiftung a::before{content:none}.address-label{font-size:.875rem;color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem;white-space:nowrap}.link-description{font-size:.875rem;color:rgba(255,255,255,.55);line-height:1.8;margin-top:.25rem}.footer-links ul{list-style:none;padding:0;margin:0}.footer-links ul li{margin-bottom:.5rem}.footer-subheading{margin-top:3rem}.booking-hint{font-size:.875rem;color:rgba(255,255,255,.6);margin-top:1rem}.footer-bottom{max-width:1200px;margin:4rem auto 0;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);text-align:center}.footer-bottom p{font-size:.875rem;color:rgba(255,255,255,.5);margin:0}.chat-widget{display:none;position:fixed;bottom:2rem;right:2rem;z-index:10}.chat-toggle{display:flex;align-items:center;gap:.5rem;padding:1rem 1.5rem;background:#b8860b;color:#fff;border:none;border-radius:9999px;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.12);transition:all 300ms ease;font-family:"Source Sans 3",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:.875rem;font-weight:600}.chat-toggle:hover{transform:translateY(-3px);box-shadow:0 16px 48px rgba(0,0,0,.15),0 0 20px rgba(184,134,11,.3);background:#8b7500}.chat-icon{width:24px;height:24px}.chat-icon svg{width:100%;height:100%}@media (max-width: 767px){.chat-text{display:none}}@keyframes float{0%, 100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}@keyframes revealUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.content-section>.section-container{animation:revealUp .8s ease-out}.arch-pattern{background-image:radial-gradient(ellipse 100px 60px at 50px 100%, rgba(0,0,0,0) 45%, #e8ddd0 45%, #e8ddd0 55%, rgba(0,0,0,0) 55%),radial-gradient(ellipse 100px 60px at 150px 100%, rgba(0,0,0,0) 45%, #e8ddd0 45%, #e8ddd0 55%, rgba(0,0,0,0) 55%);background-size:200px 80px;background-position:0 100%;background-repeat:repeat-x}html{scroll-padding-top:calc(80px + 2rem)}::selection{background:rgba(184,134,11,.3);color:#1a1a1a}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#e8ddd0}::-webkit-scrollbar-thumb{background:#d4c5b5;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:sienna}@media print{body>*:not(#lageplan-modal){display:none !important}#lageplan-modal{position:static !important;opacity:1 !important;visibility:visible !important;background:none !important}#lageplan-modal .modal-dialog{max-width:100% !important;max-height:none !important;box-shadow:none !important;width:100% !important;transform:none !important}#lageplan-modal .modal-close,#lageplan-modal .modal-print{display:none !important}#lageplan-modal .lageplan-image{max-width:100%;height:auto}#lageplan-modal .lageplan-text{font-size:.75rem;line-height:1.4;margin-top:.25rem}#lageplan-modal .lageplan-text p{margin-bottom:.2rem}#lageplan-modal .modal-header h3{font-size:1rem}#lageplan-modal .modal-body{padding:.5rem;gap:.25rem}#lageplan-modal .modal-header{padding:.4rem .5rem}.content-section{break-inside:avoid;page-break-inside:avoid}}