/* Schriften lokal eingebunden (keine Verbindung zu Google) */
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ibm-plex-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibm-plex-sans-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/ibm-plex-sans-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/ibm-plex-mono-latin-500-normal.woff2) format('woff2')}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:#F6F7F9;font-family:'IBM Plex Sans',system-ui,sans-serif;color:#0F1B2D}
img{max-width:100%}
a{color:#00739A}a:hover{color:#005573}
a:focus-visible{outline:3px solid #009DCC;outline-offset:3px}
nav a[href^="index.html#"]:not([style*="background"]):hover,nav a[href^="#"]:not([style*="background"]):hover{color:#00739A!important}

/* Rechtstexte */
.legal{max-width:820px;margin:0 auto;padding:80px 24px 96px;line-height:1.65;font-size:16px;color:#3A4556}
.legal h1{margin:0 0 32px;font-size:44px;line-height:1.1;font-weight:600;letter-spacing:-.02em;color:#0F1B2D}
.legal h2{margin:40px 0 12px;font-size:22px;font-weight:600;color:#0F1B2D}
.legal h3{margin:24px 0 8px;font-size:17px;font-weight:600;color:#0F1B2D}
.legal p,.legal ul{margin:0 0 14px}

/* Smartphone: große Überschriften verkleinern */
@media (max-width:640px){
  h1{font-size:38px!important}
  h2{font-size:30px!important}
  #top>div{padding-top:56px!important;padding-bottom:64px!important}
  section>div,section#leistungen,section[style*="max-width: 1200px"]{padding-top:72px!important;padding-bottom:72px!important}
  #datenschutz>div{padding:28px!important}
  #datenschutz h2{font-size:24px!important}
  h1,h2,h3{hyphens:auto;overflow-wrap:break-word}
  header img{height:34px!important}
  .legal h1{font-size:34px!important}
  .legal h2{font-size:21px!important;overflow-wrap:anywhere}
}
