@keyframes modalIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@font-face{font-family:"Open Sans";font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(fonts/open-sans-latin-ext.woff2)format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Open Sans";font-style:normal;font-weight:300 700;font-stretch:100%;font-display:swap;src:url(fonts/open-sans-latin.woff2)format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Roboto";font-style:normal;font-weight:300 700;font-display:swap;src:url(fonts/roboto-latin-ext.woff2)format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Roboto";font-style:normal;font-weight:300 700;font-display:swap;src:url(fonts/roboto-latin.woff2)format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--primary:#4A7260;--primary-light:#b0e0cb;--primary-dark:#3d6657;--accent:#8B4332;--mustard:#E2B255;--dark:#2C3531;--text:#333333;--text-light:#666666;--bg:#ffffff;--bg-light:#f8f9fa;--bg-warm:#F4EDE4;--font-heading:'Roboto', sans-serif;--font-body:'Open Sans', sans-serif}*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:1rem;color:var(--text);line-height:1.6;background:var(--bg);overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}ul{list-style:none}.container{max-width:1140px;margin:0 auto;padding:0 20px}.skip-link{position:absolute;top:-100%;left:50%;transform:translateX(-50%);background:var(--primary);color:#fff;padding:.8rem 1.5rem;border-radius:0 0 10px 10px;z-index:10000;font-weight:600;transition:top .3s}.skip-link:focus{top:0}.accordion-header:focus-visible,.btn:focus-visible,.main-nav a:focus-visible,.mobile-toggle:focus-visible,.modal-close:focus-visible,.portfolio-card:focus-visible,.slide-next:focus-visible,.slide-prev:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.site-header{position:fixed;top:0;left:0;width:100%;background:rgba(255,255,255,.97);box-shadow:0 2px 20px rgba(0,0,0,.08);z-index:1000;transition:background .3s}.header-inner,.logo{display:flex;align-items:center}.header-inner{max-width:1140px;margin:0 auto;padding:0 20px;justify-content:space-between;height:70px}.logo{gap:10px}.logo img{width:42px;height:42px;border-radius:50%;object-fit:cover}.logo-text{font-family:var(--font-heading);font-size:.85rem;font-weight:500;letter-spacing:.5px}.main-nav ul{display:flex;gap:2rem}.main-nav a{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;color:var(--text);transition:color .3s;padding:.5rem 0;position:relative}.main-nav a::after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--primary);transition:width .3s}.logo-text,.main-nav a.active,.main-nav a:hover{color:var(--primary)}.main-nav a.active::after,.main-nav a:hover::after{width:100%}.mobile-toggle{display:none;flex-direction:column;gap:5px;background:0 0;border:0;cursor:pointer;padding:10px;min-width:44px;min-height:44px;z-index:1100}.mobile-toggle span{display:block;width:26px;height:2px;background:var(--dark);border-radius:2px;transition:all .3s}.mobile-toggle.is-active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.mobile-toggle.is-active span:nth-child(2){opacity:0}.mobile-toggle.is-active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.hero-slideshow{margin-top:70px;position:relative;height:85vh;min-height:500px;max-height:800px;overflow:hidden}.slideshow{position:relative;width:100%;height:100%}.slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1s ease}.slide.active{opacity:1}.slide-hero{background-image:url(images/praxis-blumen.webp)}.slide-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(0,0,0,.55)0,rgba(0,0,0,.2) 100%);display:flex;align-items:center}.slide-content{color:#fff;padding:0 10%;max-width:700px}.slide-content h1{font-family:var(--font-heading);font-size:3rem;font-weight:700;line-height:1.2;margin-bottom:1rem;text-shadow:0 2px 10px rgba(0,0,0,.3)}.opening-banner p,.slide-content p{font-size:1.1rem;margin-bottom:1.5rem;opacity:.9;line-height:1.6}.slide-next,.slide-prev{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.2);backdrop-filter:blur(4px);border:0;color:#fff;font-size:1.5rem;width:50px;height:50px;border-radius:50%;cursor:pointer;transition:all .3s;z-index:10}.slide-next:hover,.slide-prev:hover{background:rgba(255,255,255,.4)}.slide-prev{left:20px}.slide-next{right:20px}.slide-dots{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:10}.btn,.dot{cursor:pointer}.dot{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.4);transition:background .3s}.dot.active{background:#fff}.btn{display:inline-block;padding:.85rem 2rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;border-radius:4px;border:0;transition:all .3s ease}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 8px 20px rgba(90,130,112,.3)}.btn-white{background:#fff;color:var(--dark)}.btn-white:hover{background:var(--primary-light);color:var(--dark);transform:translateY(-2px)}.opening-banner-section{padding:4rem 0;background:var(--bg-light)}.opening-banner{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:12px;padding:3rem 2.5rem;text-align:center;color:#fff;position:relative;overflow:hidden;box-shadow:0 15px 40px rgba(90,130,112,.3)}.opening-banner::before{content:"";position:absolute;top:-60px;right:-60px;width:250px;height:250px;background:rgba(255,255,255,.06);border-radius:50%}.opening-badge{display:inline-block;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.4);padding:.4rem 1.2rem;border-radius:20px;font-size:.75rem;letter-spacing:2px;text-transform:uppercase;margin-bottom:1rem}.opening-banner h2,.section-heading{font-family:var(--font-heading);font-size:2rem;font-weight:700;margin-bottom:.8rem}.opening-banner p{font-size:1rem;line-height:1.7}.section-heading{color:var(--dark);margin-bottom:1.5rem;position:relative}.section-heading.centered,.section-subheading.centered{text-align:center}.section-heading.centered::after{content:"";display:block;width:60px;height:3px;background:var(--primary);margin:.8rem auto 0}.section-subheading{color:var(--text-light);font-size:1rem;margin-bottom:2.5rem}.section-therapeutin{padding:5rem 0}.therapeutin-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.therapeutin-image img{border-radius:12px;width:100%;height:auto;box-shadow:0 20px 50px rgba(0,0,0,.1)}.therapeutin-text h3,.timeline-content h3{font-family:var(--font-heading);font-size:1.5rem;font-weight:500;color:var(--primary);margin-bottom:.5rem}.therapeutin-text .subtitle{color:var(--text-light);font-size:.95rem;margin-bottom:1.5rem;line-height:1.6}.therapeutin-text p{color:var(--text-light);margin-bottom:1rem;line-height:1.8}.therapeutin-text em{color:var(--primary);font-style:italic}.section-person{padding:5rem 0;background:var(--bg-light)}.timeline{position:relative;padding:2rem 0;max-width:700px;margin:0 auto}.timeline::before{content:"";position:absolute;left:80px;top:0;bottom:0;width:2px;background:var(--primary-light)}.timeline-item{display:flex;gap:2rem;margin-bottom:2rem;position:relative}.timeline-item::before{content:"";position:absolute;left:74px;top:8px;width:14px;height:14px;background:var(--primary);border:3px solid var(--bg-light);border-radius:50%;z-index:1}.timeline-year{min-width:60px;font-size:.8rem;font-weight:700;color:var(--primary);text-align:right;padding-top:4px}.timeline-content{padding-left:2rem;flex:1}.timeline-content h3{font-size:1rem;font-weight:600;color:var(--dark);margin-bottom:.3rem}.timeline-content p{color:var(--text-light);font-size:.9rem;line-height:1.6}.section-angebot{padding:5rem 0}.portfolio-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:2rem}.portfolio-card:nth-child(1){grid-column:1/3}.portfolio-card:nth-child(2){grid-column:3/5}.portfolio-card:nth-child(3){grid-column:5/7}.portfolio-card:nth-child(4){grid-column:2/4}.portfolio-card:nth-child(5){grid-column:4/6}.portfolio-card{display:block;cursor:pointer;text-align:center;text-decoration:none;color:inherit;transition:transform .3s}.portfolio-card:hover{transform:translateY(-5px)}.portfolio-img{position:relative;border-radius:12px;overflow:hidden;margin-bottom:1rem;box-shadow:0 10px 30px rgba(0,0,0,.08)}.portfolio-img img{width:100%;height:220px;object-fit:cover;transition:transform .4s}.portfolio-card:hover .portfolio-img img{transform:scale(1.05)}.portfolio-overlay{position:absolute;inset:0;background:0 0;display:flex;align-items:center;justify-content:center;transition:background .4s}.portfolio-card:hover .portfolio-overlay{background:rgba(90,130,112,.6)}.portfolio-plus{color:#fff;font-size:2.5rem;font-weight:300;opacity:0;transform:scale(.5);transition:all .4s}.portfolio-card:hover .portfolio-plus{opacity:1;transform:scale(1)}.modal-content h3,.portfolio-card h3{font-family:var(--font-heading);font-size:.95rem;font-weight:600;color:var(--dark)}.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:5000;align-items:center;justify-content:center;padding:2rem}.modal.is-open{display:flex}.modal-content{background:#fff;border-radius:12px;padding:3rem;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.3);animation:modalIn .3s ease}.modal-close{position:absolute;top:1rem;right:1rem;background:0 0;border:0;font-size:1.8rem;color:var(--text-light);cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s}.modal-close:hover{background:var(--bg-light);color:var(--dark)}.modal-content h3{font-size:1.5rem;font-weight:700;color:var(--primary);margin-bottom:1.5rem;padding-right:2rem}.modal-content p{color:var(--text-light);margin-bottom:1rem;line-height:1.8}.section-kontakt{padding:5rem 0}.kontakt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:2rem}.kontakt-card{text-align:center;padding:2.5rem 1.5rem;background:var(--bg-light);border-radius:12px;transition:transform .3s,box-shadow .3s}.kontakt-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px rgba(0,0,0,.08)}.kontakt-icon{margin-bottom:1rem}.info-card h3,.kontakt-card h3{font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--dark);margin-bottom:.5rem}.accordion-body p,.info-card p,.kontakt-card p{color:var(--text-light);font-size:.9rem;line-height:1.6}.kontakt-card a{color:var(--primary);transition:color .3s}.kontakt-card a:hover{color:var(--accent)}.section-patienteninfo{padding:5rem 0;background:var(--bg-light)}.info-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.info-card{background:#fff;padding:2.5rem 2rem;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.04);transition:transform .3s}.info-card:hover{transform:translateY(-3px)}.info-icon{margin-bottom:1rem}.info-card h3{margin-bottom:.8rem}.accordion-body p,.info-card p{line-height:1.7}.accordion{max-width:800px;margin:0 auto 2rem}.accordion-item{border:1px solid #e0e0e0;border-radius:8px;margin-bottom:.75rem;overflow:hidden;transition:box-shadow .3s}.accordion-item:hover{box-shadow:0 4px 15px rgba(0,0,0,.06)}.accordion-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1.2rem 1.5rem;background:#fff;border:0;cursor:pointer;font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--dark);text-align:left;transition:background .3s,color .3s}.accordion-header:hover{background:var(--bg-light);color:var(--primary)}.accordion-header[aria-expanded=true]{background:var(--primary);color:#fff}.accordion-icon{flex-shrink:0;transition:transform .3s}.accordion-header[aria-expanded=true] .accordion-icon{transform:rotate(180deg)}.accordion-body{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s ease;padding:0 1.5rem;background:#fff}.accordion-body.is-open{padding:1.2rem 1.5rem}.accordion-body p{line-height:1.8;margin-bottom:1rem;font-size:.95rem}.accordion-body p:last-child{margin-bottom:0}.site-footer{background:var(--dark);color:#fff;padding:4rem 0 0}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.1)}.footer-col .footer-heading{font-family:var(--font-heading);font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--primary-light)}.footer-col li,.footer-col p{color:rgba(255,255,255,.6);font-size:.85rem;line-height:1.8;margin-bottom:.3rem}.footer-col a{color:rgba(255,255,255,.75);transition:color .3s}.footer-col a:hover{color:var(--primary-light)}.footer-col ul{padding:0}.footer-col ul li{margin-bottom:.5rem}.footer-bottom{text-align:center;padding:1.5rem 0}.footer-bottom p{font-size:.8rem;color:rgba(255,255,255,.55)}.kontakt-form-wrapper{max-width:700px;margin:0 auto;padding-top:2rem}.kontakt-form{background:#fff;padding:2.5rem;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.08)}.form-row{display:flex;gap:1rem;margin-bottom:0}.form-group{flex:1;margin-bottom:1.5rem}.form-group-wide{flex-basis:100%}.form-group-plz{max-width:140px;flex-shrink:0}.form-group label{display:block;font-size:.85rem;font-weight:600;color:var(--dark);margin-bottom:.4rem}.form-group input,.form-group textarea{width:100%;padding:.8rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-family:var(--font-body);transition:border-color .3s ease}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary);outline:0;box-shadow:0 0 0 3px rgba(90,130,112,.1)}.form-group.has-error input,.form-group.has-error textarea{border-color:var(--accent)}.form-error{display:block;font-size:.75rem;color:var(--accent);margin-top:.3rem}.form-group textarea{min-height:120px;resize:vertical}.form-checkbox{display:flex;align-items:flex-start;gap:.6rem}.form-checkbox input[type=checkbox]{margin-top:.25rem;accent-color:var(--primary);width:auto}.form-checkbox span{font-size:.85rem;line-height:1.5}.form-checkbox a{color:#5c2a1f}.form-checkbox a,.form-checkbox a:hover{text-decoration:underline}.form-submit{text-align:center;margin-top:1.5rem}.form-hint,.form-success{text-align:center;margin-top:1rem}.form-hint{font-size:.75rem;color:var(--text-light);margin-bottom:0}.form-success{display:none;padding:2rem;background:rgba(176,224,203,.3);border-radius:12px}.form-success h4{color:var(--primary-dark);margin-bottom:.5rem}.form-success p{color:var(--text)}@media (max-width:768px){.form-row{flex-direction:column}.form-group-plz{max-width:100%}.kontakt-form{padding:1.5rem}}.page-header{margin-top:70px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);padding:4rem 0 3rem;text-align:center;color:#fff}.page-header h1{font-family:var(--font-heading);font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.page-header-breadcrumb{font-size:.85rem;opacity:.8}.page-header-breadcrumb a{color:#fff;text-decoration:underline;text-underline-offset:3px}.page-header-breadcrumb a:hover{opacity:1}.legal-page{max-width:800px;margin:3rem auto;padding:0 20px 5rem}.legal-page h2{font-family:var(--font-heading);font-size:1.4rem;margin:2rem 0 .5rem}.legal-page li,.legal-page p{color:var(--text-light);line-height:1.8;margin-bottom:.8rem}.legal-page a{color:#5c2a1f}.legal-page ul{padding-left:1.5rem;margin-bottom:1rem;list-style:disc}.legal-page h2,.legal-page strong{color:var(--dark)}.text-center{text-align:center}.pt-3{padding-top:3rem}.mt-3{margin-top:3rem}.mt-2{margin-top:2rem}.mb-1{margin-bottom:1rem}.mb-15{margin-bottom:1.5rem}.mx-auto-narrow{max-width:500px;margin:0 auto}.text-jumbo{font-size:4rem;margin-bottom:1rem}.footer-kammer{margin-top:1rem}.legal-page-link{color:var(--accent);display:inline-block;margin-top:2rem;font-weight:600;transition:color .3s}.legal-page-link:hover{color:var(--primary)}.widerspruch{text-transform:uppercase;font-weight:600}@media (max-width:992px){.therapeutin-grid{grid-template-columns:1fr;gap:2rem}.therapeutin-image{max-width:400px;margin:0 auto}.slide-content h1{font-size:2.2rem}}@media (max-width:768px){.main-nav,.mobile-toggle{display:flex}.main-nav{position:fixed;top:0;right:-100%;width:280px;height:100vh;background:#fff;z-index:1050;transition:right .4s ease,visibility 0s .4s;box-shadow:-5px 0 30px rgba(0,0,0,.1);align-items:center;justify-content:center;visibility:hidden}.main-nav.nav-open{right:0;visibility:visible;transition:right .4s ease,visibility 0s 0s}.main-nav ul{flex-direction:column;gap:1.5rem;text-align:center}.main-nav a{font-size:.9rem}.hero-slideshow{height:60vh;min-height:400px}.slide-content{padding:0 5%}.slide-content h1{font-size:1.8rem}.slide-content p{font-size:.95rem}.slide-next,.slide-prev{width:44px;height:44px;font-size:1.2rem}.section-heading{font-size:1.6rem}.section-angebot,.section-kontakt,.section-patienteninfo,.section-person,.section-therapeutin{padding:3rem 0}.timeline::before{left:15px}.timeline-item::before{left:9px}.timeline-year{display:none}.timeline-content{padding-left:2.5rem}.timeline-content h3::before{content:attr(data-year);display:block;font-size:.75rem;color:var(--primary);font-weight:700;margin-bottom:.2rem}.portfolio-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.portfolio-card:nth-child(1),.portfolio-card:nth-child(2),.portfolio-card:nth-child(3),.portfolio-card:nth-child(4),.portfolio-card:nth-child(5){grid-column:auto}.portfolio-img img{height:160px}.portfolio-card h3{font-size:.8rem}.opening-banner{padding:2rem 1.5rem}.opening-banner h2{font-size:1.5rem}.modal-content{padding:2rem;margin:1rem}}@media (max-width:480px){.kontakt-grid,.portfolio-grid{grid-template-columns:1fr}.portfolio-card:nth-child(1),.portfolio-card:nth-child(2),.portfolio-card:nth-child(3),.portfolio-card:nth-child(4),.portfolio-card:nth-child(5){grid-column:auto}.slide-content h1{font-size:1.5rem}.footer-grid{grid-template-columns:1fr;text-align:center}}.section-notfall{padding:4rem 0;background:#eef5f1}.notfall-card{background:#fff;border-radius:12px;padding:2.5rem 2rem;max-width:360px;margin:0 auto;box-shadow:0 2px 12px rgba(0,0,0,.06)}.notfall-card h2{font-family:var(--font-heading);font-size:1.4rem;font-weight:600;color:var(--dark);margin-bottom:.8rem}.notfall-divider{width:100%;height:1px;background:#c8d6ce;margin-bottom:1.5rem}.notfall-item{margin-bottom:1.2rem}.notfall-item:last-child{margin-bottom:0}.notfall-item h3{font-family:var(--font-heading);font-size:.95rem;font-weight:600;color:var(--dark);margin-bottom:.2rem}.notfall-item p{font-size:1rem;color:var(--primary);margin:0}.notfall-item a{color:var(--primary);text-decoration:none;font-weight:500}.notfall-item a:hover{text-decoration:underline}

/* === Logo im Header (eingefügt 2026-05-22) === */
.site-logo {
    position: absolute;
    left: 1.5rem;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    z-index: 1010;
    line-height: 0;
}
.site-logo img {
    height: 50px;
    width: auto;
    display: block;
}
@media (max-width: 640px) {
    .site-logo {
        left: 0.75rem;
    }
    .site-logo img {
        height: 42px;
    }
}


/* === Nav mittig im Header (Desktop) === */
@media (min-width: 769px) {
    .header-inner {
        justify-content: center;
        gap: 2.5rem;
    }
}


/* === Hamburger-Toggle nach rechts (Mobile) === */
@media (max-width: 768px) {
    .mobile-toggle {
        margin-left: auto;
    }
}

