/* Zusatz-Styles für Impressum und Datenschutz (nutzt die Variablen aus styles.css) */
.legal-header {
  position: static;
  padding: 24px 0;
  background: linear-gradient(114deg, #f8f5ef 0%, #eef8f6 60%, #d9efed 100%);
  border-bottom: 1px solid var(--line);
}

.legal-page { padding: 72px 0 110px; background: var(--white); }
.legal-wrap { width: min(820px, calc(100% - 40px)); margin-inline: auto; }
.legal-wrap h1 { color: var(--petrol-deep); font-size: clamp(2.4rem, 5vw, 3.8rem); margin: 14px 0 12px; }
.legal-intro { color: var(--muted); font-size: 1.02rem; margin-bottom: 40px; }
.legal-wrap h2 { color: var(--petrol-deep); font-size: clamp(1.45rem, 2.4vw, 1.9rem); letter-spacing: -.01em; margin: 44px 0 14px; padding-top: 28px; border-top: 1px solid var(--line); }
.legal-wrap h2:first-of-type { border-top: 0; padding-top: 0; margin-top: 0; }
.legal-wrap h3 { color: var(--petrol); font-size: 1.2rem; margin: 26px 0 8px; }
.legal-wrap p, .legal-wrap li { color: #4d686a; font-size: .97rem; }
.legal-wrap p { margin-bottom: 14px; }
.legal-wrap ul { padding-left: 22px; margin: 0 0 16px; }
.legal-wrap li { margin-bottom: 6px; }
.legal-wrap a { color: var(--petrol); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.legal-wrap a:hover { color: var(--petrol-deep); }
.legal-card { padding: 24px 26px; margin-bottom: 18px; background: var(--water); border: 1px solid #d5ebe8; border-radius: var(--radius); }
.legal-card p { margin: 0; color: var(--ink); }
.legal-card p + p { margin-top: 10px; }
.legal-stand { margin-top: 40px; color: #7a8a8b; font-size: .82rem; }

@media (max-width: 880px) {
  .legal-header .nav-links { display: none; }
  .legal-header .nav-links.is-open { display: flex; }
}
@media (max-width: 580px) {
  .legal-page { padding: 48px 0 80px; }
  .legal-wrap { width: min(100% - 32px, 820px); }
  .legal-card { padding: 20px; }
}
