/* Rechtsseiten (Impressum, Datenschutz). Bewusst schlicht und lesbar,
   im Farb- und Schriftbild der Hauptseite. Fonts liegen lokal in fonts/. */
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 400; font-display: swap; src: url('fonts/manrope-400-latin.woff2') format('woff2'); }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 600; font-display: swap; src: url('fonts/manrope-600-latin.woff2') format('woff2'); }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 800; font-display: swap; src: url('fonts/manrope-800-latin.woff2') format('woff2'); }

* { box-sizing: border-box; }
body {
  margin: 0;
  background: #F5EEE0;
  color: #241C18;
  font-family: 'Manrope', system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-wrap: pretty;
}
a { color: #D81028; }
a:hover { color: #B00A20; }

header {
  display: flex; align-items: center; justify-content: space-between;
  gap: 20px; padding: 20px 32px; max-width: 860px; margin: 0 auto;
}
header img { height: 34px; width: auto; display: block; }
.zurueck { font-size: 13px; font-weight: 700; color: #6B5D4C; text-decoration: none; }
.zurueck:hover { color: #241C18; }

main { max-width: 860px; margin: 0 auto; padding: 10px 32px 72px; }
h1 { font-size: clamp(32px, 5vw, 46px); line-height: 1.1; letter-spacing: -0.03em; font-weight: 800; margin: 22px 0 30px; }
h2 { font-size: 20px; line-height: 1.3; font-weight: 800; margin: 38px 0 10px; }
h3 { font-size: 16px; line-height: 1.35; font-weight: 700; margin: 26px 0 8px; }
p, li { font-size: 15.5px; line-height: 1.68; color: #3C312A; }
ul { padding-left: 22px; }
li { margin-bottom: 7px; }
strong { font-weight: 700; color: #241C18; }

.stand { font-size: 13px; color: #8C7F6B; margin-top: 4px; }
.hinweis {
  margin-top: 40px; padding: 18px 20px; border-left: 3px solid #F8B800;
  background: #FDF5E3; border-radius: 0 14px 14px 0; font-size: 14.5px; line-height: 1.6;
}
.karte {
  background: #FDF9F0; border: 1px solid #E3D8C2; border-radius: 16px;
  padding: 20px 22px; margin: 16px 0;
}
table { border-collapse: collapse; width: 100%; margin: 14px 0; font-size: 14.5px; }
th, td { text-align: left; vertical-align: top; padding: 9px 12px; border-bottom: 1px solid #E3D8C2; }
th { font-weight: 700; color: #241C18; }
.tabellenrahmen { overflow-x: auto; }

footer {
  max-width: 860px; margin: 0 auto; border-top: 1px solid #E3D8C2;
  padding: 24px 32px 48px; display: flex; gap: 20px; flex-wrap: wrap;
}
footer a { font-size: 13.5px; font-weight: 700; color: #6B5D4C; text-decoration: none; }
footer a:hover { color: #241C18; }
