/* Styled legal pages (Impressum / Datenschutz).
   Adapted from the prototype's .legal-modal typography, presented as a
   branded full page (white card on the site's tinted background). */

.legal-page {
  background:
    radial-gradient(1200px 480px at 50% -10%, rgba(107,179,217,.18), transparent 60%),
    var(--bg, #F0F4F7);
  min-height: 70vh;
}

.legal-page .legal-page-inner {
  padding: clamp(4.5rem, 10vw, 7rem) 0 clamp(3rem, 6vw, 5rem);
}

.legal-page .container {
  max-width: 820px;
  margin: 0 auto;
  padding: 0 1.25rem;
}

.legal-page .legal-card {
  background: var(--white, #fff);
  border: 1px solid var(--border, #E8E5DF);
  border-radius: var(--r-lg, 24px);
  box-shadow: var(--shadow-lg, 0 20px 60px rgba(26,26,46,.15));
  padding: clamp(1.75rem, 4vw, 3rem);
}

/* First heading = page title */
.legal-page .legal-card h1,
.legal-page .legal-card h2 {
  font-family: var(--ff-head, 'Cormorant Garamond', Georgia, serif);
  font-size: clamp(2rem, 4vw, 2.6rem);
  font-weight: 600;
  color: var(--navy, #1A2F4A);
  line-height: 1.15;
  margin: 0 0 1.5rem;
}

.legal-page .legal-card h3 {
  font-family: var(--ff-body, 'Plus Jakarta Sans', system-ui, sans-serif);
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--navy, #1A2F4A);
  margin: 2rem 0 .6rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--border, #E8E5DF);
}
.legal-page .legal-card h3:first-of-type { border-top: 0; padding-top: 0; }

.legal-page .legal-card p,
.legal-page .legal-card li {
  font-family: var(--ff-body, 'Plus Jakarta Sans', system-ui, sans-serif);
  font-size: .95rem;
  color: #4A4A60;
  line-height: 1.75;
}
.legal-page .legal-card p { margin: 0 0 .85rem; }
.legal-page .legal-card ul { margin: .5rem 0 1.1rem 1.25rem; }
.legal-page .legal-card li { margin: .3rem 0; }

.legal-page .legal-card a {
  color: var(--navy-mid, #2C4A6E);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.legal-page .legal-card a:hover { color: var(--accent, #6BB3D9); }

.legal-page .legal-back {
  text-align: center;
  margin: 1.75rem 0 0;
}
.legal-page .legal-back a {
  color: var(--navy-mid, #2C4A6E);
  font-family: var(--ff-body, 'Plus Jakarta Sans', system-ui, sans-serif);
  font-size: .9rem;
  font-weight: 600;
  text-decoration: none;
}
.legal-page .legal-back a:hover { color: var(--accent, #6BB3D9); }
