/* v09: Tastaturbedienung, mobile Navigation, Lesbarkeit. */
.nav-toggle{min-width:48px;min-height:48px;border-radius:999px}.nav-toggle:focus-visible{outline:3px solid #246652;outline-offset:3px}
.hero-grid>*,.cards>*,.footer-grid>*,.brand-block>*{min-width:0}
input,textarea,select{font:inherit}textarea{resize:vertical;min-height:150px}
.form [aria-invalid="true"]{outline:2px solid #a32d27;outline-offset:2px}
@media(max-width:940px){html:not(.nav-ready) .header-inner{flex-wrap:wrap}html:not(.nav-ready) .nav{display:flex;position:static;width:100%;max-height:none;box-shadow:none}html:not(.nav-ready) .nav-toggle{display:none}.nav a{min-height:44px}.nav{overscroll-behavior:contain}}
@media(max-width:520px){input,textarea,select{font-size:16px}.nav{padding-bottom:24px}.legal-page h1{font-size:clamp(1.65rem,7vw,2.4rem)}}
@media print{.site-header{position:static!important}.nav-toggle{display:none}.section{padding-block:24px}.card,.panel,.brand-block{break-inside:avoid}.btn{box-shadow:none}}

/* v10: Neues Vektorlogo mit Wortabstand, responsiv. */
.site-header .logo img{width:222px;height:auto}.site-footer .logo img,.footer-grid .logo img{width:210px;height:auto}
@media(max-width:1100px) and (min-width:941px){.site-header .logo img{width:195px}.nav{gap:16px}}
@media(max-width:520px){.site-header .logo img{width:180px}}
@media(max-width:360px){.site-header .logo img{width:160px}}

/* v11: Gut erkennbare Ampersand-Glyphe, unabhängig von der übrigen Schrift. */
.ampersand-clear{font-family:Arial,Helvetica,sans-serif;font-style:normal;font-weight:600;font-size:1em;line-height:inherit;letter-spacing:normal;text-transform:none}
