@font-face{font-family:Poppins;font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/poppins-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:500;font-style:normal;font-display:swap;src:url(../fonts/poppins-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:600;font-style:normal;font-display:swap;src:url(../fonts/poppins-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:700;font-style:normal;font-display:swap;src:url(../fonts/poppins-latin-700-normal.woff2) format("woff2")}
:root{--navy:#0b1f6b;--blau:#1b4fd8;--gelb:#fdcc00;--hell:#f0f8fe;--text:#2d3748}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Poppins,Arial,sans-serif;font-size:16px;line-height:1.6;color:var(--text);background:#fff}
img{max-width:100%;height:auto;display:block}
a{color:var(--blau)}
h1,h2,h3{color:var(--navy);line-height:1.2;margin:0}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.kicker{font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--blau);margin:0 0 8px}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:12px 26px;background:var(--gelb);color:var(--navy);font-weight:600;text-decoration:none;border-radius:6px}
.btn:hover,.btn:focus-visible{background:#f0c000}
.btn svg{width:18px;height:18px;flex:none}
header{background:#fff;position:sticky;top:0;z-index:10;box-shadow:0 1px 0 #e3ebf5}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px}
.bar img{height:50px;width:auto}
nav ul{display:none;list-style:none;margin:0;padding:0;gap:28px}
nav a{color:var(--navy);text-decoration:none;font-size:.85rem;font-weight:500}
.bar .btn{min-height:44px;padding:8px 14px;font-size:.85rem;line-height:1.25}
@media(max-width:719px){.bar img{height:40px}.bar .btn{gap:8px}}
.hero{position:relative;background:#fff url(/img/hero-breit.jpg) 75% center/cover no-repeat;background-image:image-set(url(/img/hero-breit.webp) type("image/webp"),url(/img/hero-breit.jpg) type("image/jpeg"))}
.hero::before{content:"";position:absolute;inset:0;background:rgba(255,255,255,.84)}
.hero .wrap{position:relative}
.hero .wrap{display:grid;gap:24px;padding-top:32px;padding-bottom:24px}
.hero h1{font-size:2.3rem;font-weight:700;margin-bottom:16px}
.hero h1 span{color:var(--blau);background:linear-gradient(var(--gelb),var(--gelb)) 0 92%/100% 6px no-repeat;display:inline-block;padding-bottom:6px}
.hero .sub{font-size:1.2rem;font-weight:500;color:var(--navy);margin:0 0 20px}
.haken{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:10px;font-size:.92rem;color:var(--navy);font-weight:500}
.haken li{display:flex;gap:12px;align-items:center}
.haken svg{flex:none;width:22px;height:22px}
.hero .text{padding-bottom:8px}
section{padding:48px 0}
.center{text-align:center}
.center h2{font-size:1.7rem;font-weight:700}
.vorteile{background:var(--hell)}
.vorteile ul{list-style:none;margin:32px 0 0;padding:0;display:grid;gap:28px}
.vorteile li{text-align:center}
.vorteile svg{width:44px;height:44px;color:var(--blau);margin:0 auto 12px}
.vorteile h3{font-size:1.05rem;margin-bottom:6px}
.vorteile p{margin:0;font-size:.9rem;color:#4a5568}
.standorte .lead{margin:8px 0 0;color:var(--navy)}
.karten{display:grid;gap:24px;margin-top:32px}
.standort{display:grid;grid-template-columns:42% 1fr;background:#fff;box-shadow:0 2px 10px rgba(11,31,107,.12);text-align:left}
.standort img{width:100%;height:100%;object-fit:cover;min-height:150px}
.standort div{padding:16px}
.standort h3{display:flex;gap:10px;align-items:center;font-size:1.05rem;margin-bottom:8px}
.standort svg{width:22px;height:22px;color:var(--blau);flex:none}
.standort address{font-style:normal;font-size:.88rem;margin-bottom:12px}
.standort a{font-weight:600;font-size:.88rem;text-decoration:none}
.faecher{background:#f5fbff}
.raster{display:grid;gap:16px;margin-top:32px;grid-template-columns:1fr}
.fach{background:#fff;padding:20px;box-shadow:0 1px 6px rgba(11,31,107,.1)}
.fach svg{width:36px;height:36px;color:var(--blau);margin-bottom:12px}
.fach h3{font-size:1rem;margin-bottom:6px}
.fach p{margin:0;font-size:.88rem;color:#4a5568}
.stimmen .zitate{display:grid;gap:16px;margin-top:28px;text-align:left}
.stimmen figure{margin:0;background:#fff;padding:18px 20px;box-shadow:0 1px 6px rgba(11,31,107,.1)}
.stimmen blockquote{margin:0 0 10px;font-size:.9rem;color:#4a5568}
.sterne{display:flex;gap:2px;margin-bottom:8px}
.sterne svg{width:18px;height:18px}
.stimmen figcaption{font-size:.85rem;color:var(--navy);font-weight:500}
.cta{padding:0;background:#e8f3fa}
.cta .wrap{display:grid;padding:0}
.cta img{width:100%;aspect-ratio:2/1;object-fit:cover}
.cta .text{padding:32px 20px}
.cta h2{font-size:1.9rem;margin-bottom:12px}
.cta p{margin:0 0 20px}
footer{padding:32px 0 20px;font-size:.88rem;border-top:1px solid #e3ebf5}
.fgrid{display:grid;gap:24px}
footer img{height:48px;width:auto;margin-bottom:8px}
footer h4{margin:0 0 8px;color:var(--navy);font-size:.88rem}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
footer a{color:var(--text);text-decoration:none;display:inline-block;padding:4px 0}
.copy{margin-top:24px;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.8rem}
.copy a{color:var(--text)}
.kontakt li{display:flex;gap:10px;align-items:flex-start}
.kontakt svg{width:18px;height:18px;color:var(--blau);flex:none;margin-top:6px}
.recht{padding:40px 0}
.recht h1{font-size:2rem;margin-bottom:16px}
.recht h2{font-size:1.2rem;margin:24px 0 8px}
.fehlt{background:#fff3b0;padding:0 4px}
@media(min-width:720px){
 nav ul{display:flex}
 .hero h1{font-size:3rem}
 .vorteile ul{grid-template-columns:repeat(4,1fr);gap:0}
 .vorteile li{padding:0 20px;border-left:1px solid #c9d8ee}
 .vorteile li:first-child{border:0}
 .karten{grid-template-columns:1fr 1fr}
 .raster{grid-template-columns:repeat(2,1fr)}
 .fgrid{grid-template-columns:1.4fr 1fr 1fr 1.4fr}
 .cta .wrap{grid-template-columns:1fr 1fr;align-items:center}
 .cta img{height:100%;aspect-ratio:auto}
}
@media(min-width:720px){.stimmen .zitate{grid-template-columns:repeat(3,1fr)}}
@media(min-width:960px){
 .hero::before{background:none}
 .hero .wrap{grid-template-columns:1fr 1fr;min-height:560px;align-items:center}
 .hero .text{padding:48px 0}
 .raster{grid-template-columns:repeat(4,1fr)}
}

.standort a.zoom{display:block;height:100%;cursor:zoom-in}
#popup{border:0;padding:0;background:#fff;max-width:min(92vw,1000px);max-height:92vh;cursor:zoom-out}
#popup::backdrop{background:rgba(11,31,107,.8)}
#popup img{display:block;width:100%;height:auto;max-height:80vh;object-fit:contain}
#popup button{display:block;margin:0;width:100%;min-height:48px;border:0;background:var(--gelb);color:var(--navy);font:600 1rem Poppins,Arial,sans-serif;cursor:pointer}
