/* Gemeinsame Gestaltung für Impressum und Datenschutzerklärung */
:root {
  --primary: #0d2d4a;
  --accent: #e84c1e;
  --accent2: #f4a261;
  --light: #f5f7fa;
  --white: #ffffff;
  --text: #1e2d3d;
  --muted: #6b7a8d;
  --border: #dce3ec;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
  font-family: 'Segoe UI', Arial, sans-serif;
  color: var(--text);
  background: var(--white);
  line-height: 1.7;
}

header {
  background: var(--primary);
  height: 64px;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 48px;
}
header .logo {
  color: var(--white); font-size: 1.15rem; font-weight: 700;
  letter-spacing: 0.03em; text-decoration: none;
}
header .logo span { color: var(--accent2); }
header .back { color: rgba(255,255,255,0.82); text-decoration: none; font-size: 0.93rem; }
header .back:hover { color: var(--accent2); }

main { max-width: 760px; margin: 0 auto; padding: 56px 24px 80px; }
.label {
  font-size: 0.78rem; font-weight: 700; letter-spacing: 0.12em;
  text-transform: uppercase; color: var(--accent); margin-bottom: 8px;
}
h1 { font-size: 2rem; font-weight: 800; color: var(--primary); margin-bottom: 8px; line-height: 1.25; }
.stand { color: var(--muted); font-size: 0.9rem; margin-bottom: 40px; }
h2 {
  font-size: 1.2rem; font-weight: 700; color: var(--primary);
  margin: 36px 0 10px; padding-top: 20px; border-top: 1px solid var(--border);
}
h3 { font-size: 1rem; font-weight: 700; color: var(--primary); margin: 20px 0 6px; }
p, li { font-size: 0.97rem; margin-bottom: 10px; }
ul { padding-left: 22px; margin-bottom: 10px; }
a { color: var(--accent); }
address { font-style: normal; margin-bottom: 10px; }

/* Noch auszufüllende Angaben – vor dem Veröffentlichen ersetzen */
.todo { background: #fff3b0; padding: 0 4px; border-radius: 3px; }

footer {
  background: var(--primary); color: rgba(255,255,255,0.55);
  text-align: center; padding: 28px 24px; font-size: 0.85rem;
}
footer a { color: var(--accent2); text-decoration: none; }

@media (max-width: 768px) {
  header { padding: 0 20px; }
  header .logo { font-size: 1rem; }
  main { padding: 40px 20px 64px; }
  h1 { font-size: 1.6rem; hyphens: auto; overflow-wrap: break-word; }
}
