/* Impressum und Datenschutz: gleicher Look wie die Startseite, ruhig und gut lesbar */
@font-face { font-family: 'Red Hat Display'; font-weight: 900; font-display: swap; src: url('red-hat-display-900.woff2') format('woff2'); }
@font-face { font-family: 'IBM Plex Sans'; font-weight: 400; font-display: swap; src: url('ibm-plex-sans-400.woff2') format('woff2'); }
@font-face { font-family: 'IBM Plex Sans'; font-weight: 600; font-display: swap; src: url('ibm-plex-sans-600.woff2') format('woff2'); }
* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; background: #0c0f17; color: #dfe3ec; }
body { font: 16px/1.7 'IBM Plex Sans', system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
.seite { position: relative; min-height: 100vh; padding: 48px 20px 64px; overflow: hidden; }
.licht { position: absolute; border-radius: 50%; filter: blur(90px); pointer-events: none; }
.l1 { width: 620px; height: 620px; left: -220px; top: -260px; background: rgba(224, 72, 132, 0.22); animation: schweben 26s ease-in-out infinite alternate; }
.l2 { width: 540px; height: 540px; right: -200px; top: 40%; background: rgba(124, 108, 242, 0.14); animation: schweben 34s ease-in-out infinite alternate-reverse; }
@keyframes schweben { from { transform: translate(0, 0); } to { transform: translate(80px, 50px); } }
main { position: relative; max-width: 760px; margin: 0 auto; }
.marke { display: inline-block; color: #f0f2f6; text-decoration: none; font-family: 'Red Hat Display', system-ui, sans-serif; font-weight: 900; font-size: 22px; letter-spacing: -0.02em; }
.strich { width: 48px; height: 4px; border-radius: 2px; margin: 10px 0 40px; background: linear-gradient(135deg, #ef7aa8 0%, #d63d7a 48%, #b23e9f 100%); }
h1 { margin: 0 0 28px; color: #f0f2f6; font-family: 'Red Hat Display', system-ui, sans-serif; font-weight: 900; font-size: clamp(34px, 7vw, 48px); letter-spacing: -0.02em; line-height: 1.1; }
h2 { margin: 40px 0 10px; color: #f0f2f6; font-family: 'Red Hat Display', system-ui, sans-serif; font-weight: 900; font-size: 21px; letter-spacing: -0.01em; }
p, li { margin: 0 0 12px; }
ul { margin: 0 0 12px; padding-left: 20px; }
b { color: #f0f2f6; font-weight: 600; }
a { color: #f3a6c6; text-decoration: none; }
a:hover { color: #fff; }
.kurz { padding: 20px 22px; border-radius: 16px; border: 1px solid rgba(255, 255, 255, 0.08); background: linear-gradient(160deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02)); box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25); }
.kurz h2 { margin-top: 0; }
.kurz p:last-child { margin-bottom: 0; }
.stand { margin-top: 36px; color: #9aa1b2; font-size: 14px; }
footer { position: relative; max-width: 760px; margin: 56px auto 0; padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, 0.08); display: flex; flex-wrap: wrap; gap: 8px 22px; font-size: 14px; color: #7d8496; }
footer a { color: #b4bac6; }
@media (prefers-reduced-motion: reduce) { .licht { animation: none; } }
