/* Ausschließlich auf der Impressum-Seite geladen. */
.impressum-panel { min-height: 520px; }
.impressum-content { position: relative; z-index: 1; max-width: 650px; margin: 0 auto; color: var(--muted); }
.impressum-content h1 { margin: 0 0 24px; text-align: center; }
.impressum-legal { margin: 0 0 30px; color: #74656d; font-size: 1.15rem; text-align: center; }
.impressum-address { margin: 0; font-size: 1.1rem; font-style: normal; line-height: 1.8; }
.impressum-section { margin-top: 40px; padding-top: 30px; border-top: 1px solid rgba(222, 201, 211, .72); }
.impressum-section h2 { margin-bottom: 14px; color: var(--ink); font-size: clamp(1.55rem, 2.6vw, 2rem); }
.impressum-section p { margin: 0; font-size: 1.1rem; line-height: 1.8; }
.impressum-section a { color: var(--accent); overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .impressum-panel { min-height: 0; }
  .impressum-legal { margin-bottom: 24px; font-size: 1.05rem; }
  .impressum-address,
  .impressum-section p { font-size: 1rem; line-height: 1.7; }
  .impressum-section { margin-top: 32px; padding-top: 24px; }
}

/* Ausschließlich die normale Impressum-Seite: bestehende Inhalte passen sich
   bei schmalen Breiten an, ohne eine zweite Fassung zu erzeugen. */
@media (max-width: 1100px) {
  .impressum-page-only .site-header { gap: 18px; }
  .impressum-page-only .site-header nav { gap: 12px 22px; flex-wrap: wrap; justify-content: flex-end; }
  .impressum-page-only .impressum-panel { min-height: 0; padding: 54px 46px; }
  .impressum-page-only .impressum-content { width: 100%; min-width: 0; }
}

@media (max-width: 900px) {
  .impressum-page-only .site-header { justify-content: center; padding-block: 16px; }
  .impressum-page-only .site-header > .contact-wordmark { margin-inline: auto; }
  .impressum-page-only .site-header nav { flex: 1 0 100%; justify-content: center; gap: 10px 18px; }
  .impressum-page-only .impressum-page { padding-top: 38px; padding-bottom: 68px; }
  .impressum-page-only .impressum-panel { padding: 46px 32px 42px; }
  .impressum-page-only .impressum-content,
  .impressum-page-only .impressum-content * { overflow-wrap: anywhere; }
}

@media (max-width: 520px) {
  .impressum-page-only .site-header { gap: 12px; }
  .impressum-page-only .site-header > .contact-wordmark .contact-wordmark-title { font-size: 1.55rem; }
  .impressum-page-only .site-header > .contact-wordmark small { margin-left: 2px; font-size: .33rem; letter-spacing: .16em; }
  .impressum-page-only .site-header nav { gap: 8px 14px; font-size: .84rem; }
  .impressum-page-only .impressum-page { padding-top: 28px; padding-bottom: 52px; }
  .impressum-page-only .impressum-panel { padding: 38px 18px 34px; border-radius: 20px; }
  .impressum-page-only .impressum-content h1 { font-size: clamp(2.2rem, 11vw, 2.8rem); }
  .impressum-page-only .impressum-section h2 { font-size: clamp(1.45rem, 8vw, 1.75rem); }
}
