*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #4a7c59;--text-color: #333;--light-bg: #f9f9f9}body{font-family:Poppins,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:var(--text-color);background-color:#fff}.container{max-width:1200px;margin:0 auto;padding:0 20px}@media(max-width:768px){.container{padding:0 15px}}@media(max-width:480px){.container{padding:0 10px}}.main-header{background-color:#f5f5f5;padding:20px 0;border-bottom:1px solid #e0e0e0}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.logo-section{display:flex;align-items:center;gap:15px}.main-title{display:block;font-size:2.2rem;font-weight:300;color:#4a7c59;margin:0;letter-spacing:1px;text-decoration:none}.main-nav ul{list-style:none;display:flex;gap:30px;margin:0;padding:0}.main-nav li{margin:0}.main-nav a{text-decoration:none;color:#666;font-size:1rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase;transition:color .3s ease;padding:5px 0}.main-nav a:hover{color:#4a7c59}.main-nav a.active{color:#4a7c59;font-weight:700;border-bottom:2px solid #4a7c59}.main-nav .contact-link{color:#4a7c59;font-weight:600}.mobile-menu-toggle{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:10px;z-index:1001}.hamburger-line{width:25px;height:3px;background-color:#4a7c59;margin:3px 0;transition:.3s;border-radius:2px}.mobile-menu-toggle.menu-open .hamburger-line:nth-child(1){transform:rotate(-45deg) translate(-5px,6px)}.mobile-menu-toggle.menu-open .hamburger-line:nth-child(2){opacity:0}.mobile-menu-toggle.menu-open .hamburger-line:nth-child(3){transform:rotate(45deg) translate(-5px,-6px)}@media(max-width:1024px){.header-content{justify-content:space-between;align-items:center}.logo-section{gap:10px}.main-title{font-size:1.8rem}.mobile-menu-toggle{display:flex}.main-nav{position:fixed;top:0;right:-100%;width:80%;max-width:300px;height:100vh;background-color:#fff;box-shadow:-2px 0 10px #0000001a;transition:right .3s ease;z-index:1000;padding-top:80px}.main-nav.nav-open{right:0}.main-nav ul{flex-direction:column;gap:0;padding:20px}.main-nav li{border-bottom:1px solid #f0f0f0}.main-nav a{display:block;padding:15px 0;font-size:1.1rem;color:#4a7c59}.main-nav a:hover{color:#3a6249;background-color:#f8f8f8}.main-nav a.active{color:#4a7c59;font-weight:700;background-color:#f0f7f2;border-bottom:none;border-left:3px solid #4a7c59;padding-left:12px}}@media(max-width:480px){.main-title{font-size:1.4rem}}.main-footer{background-color:#f5f5f5;padding:30px 0;border-top:1px solid #e0e0e0;margin-top:auto}.footer-content{text-align:center}.footer-content p{margin-bottom:10px;color:#666;font-size:.95rem}.footer-links{margin-top:10px}.footer-links a{color:#4a7c59;text-decoration:none;transition:color .3s ease}.footer-links a:hover{color:#3a6249;text-decoration:underline}.footer-links span{color:#999;margin:0 8px}@media(max-width:480px){.main-footer{padding:20px 0}.footer-content p{font-size:.85rem}.footer-links{font-size:.9rem}}.hero-section{padding:60px 0;background-color:#fff}.hero-content{display:flex;gap:60px;align-items:center}.hero-text{flex:1}.hero-text h1{font-size:2.5rem;font-weight:300;color:#4a7c59;margin-bottom:30px;letter-spacing:1px;line-height:1.3}.hero-text p{font-size:1.1rem;color:#444;line-height:1.8;margin-bottom:20px}.hero-image{flex:0 0 320px;max-width:320px}.portrait-image{width:100%;height:auto;border-radius:8px;box-shadow:0 4px 12px #0000001a}.quote{margin-top:40px;padding:25px;background-color:#f9f9f9;border-left:4px solid #4a7c59;border-radius:4px}.quote-text{font-size:1.2rem;font-style:italic;color:#555;margin-bottom:10px;line-height:1.6}.quote-author{font-size:1rem;color:#4a7c59;font-weight:500;text-align:right;margin:0}.offers-section{padding:60px 0;background-color:#f9f9f9}.offers-section h2{font-size:2.5rem;font-weight:300;color:#4a7c59;text-align:center;margin-bottom:50px;letter-spacing:1px}.offers-heading-link{color:inherit;text-decoration:none}.offers-heading-link:hover{text-decoration:underline}.offers-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;max-width:1200px;margin:0 auto}.offer-card{background-color:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 8px #00000014;transition:transform .3s ease,box-shadow .3s ease}.offer-card:hover{transform:translateY(-5px);box-shadow:0 4px 16px #0000001f}.offer-card h3{font-size:1.4rem;color:#4a7c59;margin-bottom:15px;font-weight:500}.offer-card p{font-size:1rem;color:#666;line-height:1.6}@media(max-width:1024px){.hero-content{gap:40px}.hero-image{flex:0 0 280px;max-width:280px}}@media(max-width:768px){.hero-section{padding:40px 0}.hero-content{flex-direction:column;gap:30px}.hero-text h1{font-size:2rem;margin-bottom:20px}.hero-text p{font-size:1rem}.hero-image{flex:none;max-width:100%;width:100%}.portrait-image{max-width:350px;margin:0 auto;display:block}.quote{margin-top:30px;padding:20px}.quote-text{font-size:1.1rem}.offers-section{padding:40px 0}.offers-section h2{font-size:2rem;margin-bottom:30px}.offers-grid{grid-template-columns:1fr;gap:20px}}@media(max-width:480px){.hero-section{padding:30px 0}.hero-text h1{font-size:1.6rem}.hero-text p{font-size:.95rem}.portrait-image{max-width:280px}.quote{padding:15px;margin-top:25px}.quote-text{font-size:1rem}.quote-author{font-size:.9rem}.offers-section{padding:30px 0}.offers-section h2{font-size:1.8rem}.offer-card{padding:20px}.offer-card h3{font-size:1.2rem}.offer-card p{font-size:.95rem}}.angebote-page{padding:60px 0;min-height:100vh}.angebote-page .container{max-width:1200px;margin:0 auto;padding:0 2rem}.angebote-page h1{text-align:center;font-size:2.5rem;font-weight:300;color:#4a7c59;margin-bottom:50px;letter-spacing:1px}.service-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #4a7c591f;margin-bottom:2rem;overflow:hidden;transition:all .3s ease;border-left:5px solid #4a7c59}.service-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #4a7c592e;border-left-color:#5a8c69}.service-card h2{background:transparent;color:#4a7c59;padding:1.8rem 2rem;margin:0;font-size:1.4rem;font-weight:500;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease;border-bottom:2px solid #f0f4f2}.service-card h2:hover{color:#3a6249;background:#4a7c5908}.service-card h2 .arrow{font-size:1.2rem;transition:transform .3s ease;display:inline-block;color:#4a7c59;font-weight:700}.service-card h2 .arrow.open{transform:rotate(180deg)}.service-content{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .4s ease;padding:0 2rem}.service-content.open{max-height:5000px;padding:2rem}.service-content p{line-height:1.8;color:#444;margin-bottom:1.2rem;font-size:1.05rem}.service-content h3{color:#4a7c59;margin-top:2rem;margin-bottom:1rem;font-size:1.3rem;font-weight:500}.service-content ul,.service-content ol{margin:1rem 0 1.5rem 1.5rem;line-height:1.8}.service-content ul li,.service-content ol li{margin-bottom:.8rem;color:#666;font-size:1rem}.service-content ol li{margin-bottom:1.5rem}.service-content strong{color:#4a7c59}.service-btn{display:inline-block;background:linear-gradient(135deg,#4a7c59,#5a8c69);color:#fff;padding:.8rem 2rem;border-radius:25px;text-decoration:none;font-weight:600;margin-top:1.5rem;transition:all .3s ease}.service-btn:hover{background:linear-gradient(135deg,#3a6249,#4a7c59);transform:translateY(-2px);box-shadow:0 4px 8px #0003}@media(max-width:768px){.angebote-page{padding:40px 0}.angebote-page h1{font-size:2rem;margin-bottom:30px}.service-card h2{font-size:1.2rem;padding:1.2rem 1.5rem}.service-content.open{padding:1.5rem}.angebote-page .container{padding:0 1rem}}@media(max-width:480px){.angebote-page{padding:30px 0}.angebote-page h1{font-size:1.8rem}}.about-page{padding:60px 0;background-color:#fff}.about-page h1{font-size:2.5rem;font-weight:300;color:#4a7c59;text-align:center;margin-bottom:50px;letter-spacing:1px}.about-content{max-width:900px;margin:0 auto}.about-text p{font-size:1.1rem;color:#444;line-height:1.8;margin-bottom:25px}.about-text h2{font-size:1.8rem;font-weight:400;color:#4a7c59;margin-top:40px;margin-bottom:20px}.about-text ul{list-style:none;padding-left:0;margin-bottom:30px}.about-text ul li{font-size:1.05rem;color:#555;line-height:1.8;padding-left:30px;position:relative;margin-bottom:12px}.about-text ul li:before{content:"✓";position:absolute;left:0;color:#4a7c59;font-weight:700;font-size:1.2rem}.highlight-box{background-color:#f9f9f9;padding:30px;border-radius:8px;border-left:4px solid #4a7c59;margin-top:40px}.highlight-box h3{font-size:1.6rem;font-weight:500;color:#4a7c59;margin-bottom:15px}.highlight-box p{font-size:1.1rem;color:#555;line-height:1.8;margin:0}@media(max-width:768px){.about-page{padding:40px 0}.about-page h1{font-size:2rem;margin-bottom:30px}.about-text p{font-size:1rem}.about-text h2{font-size:1.6rem;margin-top:30px}.about-text ul li{font-size:1rem}.highlight-box{padding:20px;margin-top:30px}.highlight-box h3{font-size:1.4rem}.highlight-box p{font-size:1rem}}@media(max-width:480px){.about-page{padding:30px 0}.about-page h1{font-size:1.8rem}.about-text p{font-size:.95rem}.about-text h2{font-size:1.4rem}.about-text ul li{font-size:.95rem}.highlight-box{padding:15px}.highlight-box h3{font-size:1.2rem}.highlight-box p{font-size:.95rem}}.map-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:30px 20px;text-align:center;background:#f0f4f2;color:#333}.map-placeholder-address{font-size:1.1rem;font-weight:600;color:#4a7c59}.map-placeholder-button{padding:12px 28px;border:none;border-radius:6px;background:#4a7c59;color:#fff;font-size:1rem;font-family:inherit;cursor:pointer;transition:background .2s ease}.map-placeholder-button:hover,.map-placeholder-button:focus-visible{background:#3a6249}.map-placeholder-note{max-width:420px;font-size:.85rem;color:#666}.map-placeholder-note a,.map-placeholder-link{color:#4a7c59}.kontakt-page{background-color:#fff}.kontakt-section{max-width:1200px;margin:0 auto;padding:60px 20px}.kontakt-section h1{text-align:center;font-size:2.5rem;color:#4a7c59;margin-bottom:20px;font-weight:300}.kontakt-intro{text-align:center;font-size:1.1rem;color:#666;max-width:800px;margin:0 auto 50px;line-height:1.8}.kontakt-container{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-bottom:60px}.kontakt-info-bereich h2,.kontakt-formular-bereich h2{font-size:1.8rem;color:#4a7c59;margin-bottom:30px;font-weight:400}.kontakt-details{margin-bottom:40px}.kontakt-detail{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #e0e0e0}.kontakt-detail:last-child{border-bottom:none}.kontakt-detail h3{font-size:1.3rem;color:#4a7c59;margin-bottom:10px;font-weight:500}.kontakt-detail a{color:#4a7c59;text-decoration:none}.kontakt-detail a:hover{text-decoration:underline}.kontakt-detail p{font-size:1.05rem;color:#555;line-height:1.8;margin:5px 0}.oeffnungszeiten h3{font-size:1.3rem;color:#4a7c59;margin-bottom:15px;font-weight:500}.oeffnungszeiten table{width:100%;border-collapse:collapse}.oeffnungszeiten td{padding:8px 0;font-size:1.05rem;color:#555}.oeffnungszeiten td:first-child{font-weight:500;padding-right:20px}.kontakt-formular{background:#f9f9f9;padding:30px;border-radius:8px}.form-gruppe{margin-bottom:20px}.form-gruppe label{display:block;font-size:1rem;color:#333;margin-bottom:8px;font-weight:500}.form-gruppe input,.form-gruppe textarea{width:100%;padding:12px 15px;font-size:1rem;border:1px solid #ddd;border-radius:5px;font-family:inherit;transition:border-color .3s ease}.form-gruppe input:focus,.form-gruppe textarea:focus{outline:none;border-color:#4a7c59}.form-gruppe textarea{resize:vertical;min-height:120px}.checkbox-gruppe{display:flex;align-items:flex-start;gap:10px}.checkbox-gruppe input[type=checkbox]{width:auto;margin-top:4px;flex-shrink:0}.checkbox-gruppe label{margin-bottom:0;font-size:.95rem;font-weight:400;line-height:1.6}.submit-btn{background:linear-gradient(135deg,#4a7c59,#5a8c69);color:#fff;padding:15px 40px;font-size:1.1rem;font-weight:600;border:none;border-radius:25px;cursor:pointer;transition:all .3s ease;margin-top:10px}.submit-btn:hover{background:linear-gradient(135deg,#3a6249,#4a7c59);transform:translateY(-2px);box-shadow:0 4px 12px #4a7c594d}.map-container{margin-top:60px}.map-container h2{text-align:center;font-size:2rem;color:#4a7c59;margin-bottom:30px;font-weight:400}.map{border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000001a}.map iframe{display:block;width:100%}@media(max-width:968px){.kontakt-container{grid-template-columns:1fr;gap:40px}}@media(max-width:768px){.kontakt-section{padding:40px 15px}.kontakt-section h1{font-size:2rem}.kontakt-intro{font-size:1rem;margin-bottom:40px}.kontakt-info-bereich h2,.kontakt-formular-bereich h2{font-size:1.5rem}.kontakt-formular{padding:20px}.map-container h2{font-size:1.6rem}}@media(max-width:480px){.kontakt-section h1{font-size:1.8rem}.kontakt-detail h3,.oeffnungszeiten h3{font-size:1.1rem}.submit-btn{width:100%;padding:12px 30px}}.legal-section{padding:60px 0;background-color:#fff}.legal-content{max-width:800px;margin:0 auto}.legal-title{font-size:2.2rem;font-weight:300;color:#4a7c59;margin-bottom:40px;text-align:center;letter-spacing:1px}.legal-text h3{font-size:1.4rem;color:#4a7c59;margin-top:30px;margin-bottom:15px;font-weight:500}.legal-text h4{font-size:1.2rem;color:#444;margin-top:20px;margin-bottom:10px;font-weight:500}.legal-text p{font-size:1rem;color:#444;line-height:1.7;margin-bottom:15px;text-align:justify}.legal-text ul{margin:15px 0;padding-left:20px}.legal-text li{font-size:1rem;color:#444;line-height:1.6;margin-bottom:5px}.legal-text a{color:#4a7c59;text-decoration:none;font-weight:500;transition:color .3s ease}.legal-text a:hover{color:#3a6249;text-decoration:underline}.legal-text a:focus{outline:2px solid #4a7c59;outline-offset:2px;border-radius:2px}.page-container{min-height:calc(100vh - 200px)}.content-section{padding:60px 0;background-color:#fff}.page-title{font-size:2.5rem;font-weight:300;color:#4a7c59;margin-bottom:40px;text-align:center;letter-spacing:1px}.page-content{max-width:800px;margin:0 auto;font-size:1.1rem;color:#444;line-height:1.8}@media(max-width:480px){.legal-section{padding:40px 0}.legal-title{font-size:1.8rem;margin-bottom:30px}.legal-text h3{font-size:1.2rem;margin-top:25px}.legal-text h4{font-size:1.1rem;margin-top:15px}.legal-text p{font-size:.95rem}.page-title{font-size:2rem;margin-bottom:30px}.content-section{padding:40px 0}}.app{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1}
