/* impressum v4c — T0: Lese-Typografie mit Hairline-Gliederung, sonst nichts.
   Rechtstext bleibt zeichengenau unangetastet (der nbslash-Span aendert kein
   Zeichen). Iteration 3: H1-Boden 40px ab Tablet, Zeilenmass hart auf ~600px
   gedeckelt, Eroeffnungszeile bekommt dieselbe Hairline wie alle Abschnitte,
   Mail-/Telefonzeilen erreichen 44px-Ziele, keine Waisenzeilen. */
@layer page, pageresponsive;

@layer page {
  .section-head h1 { font-size: clamp(28px, 3vw, 38px) !important; }
  .prose { max-width: var(--maxw-prose); }
  .prose h2 { border-top: 1px solid var(--line); padding-top: var(--sp-4); margin-top: var(--sp-6); font-size: clamp(22px, 2.1vw, 27px); text-wrap: pretty; }
  .prose p { text-wrap: pretty; }
  /* Eroeffnungszeile in der H2-Stimme - Markup und Wortlaut unveraendert;
     sie bekommt dieselbe Hairline wie jeder Abschnitt (Kill-Liste R2) */
  .prose > p:first-child { border-top: 1px solid var(--line); padding-top: var(--sp-4); }
  .prose > p:first-child strong { display: block; font-family: var(--ff-body); font-weight: var(--wght-head); font-size: clamp(20px, 1.9vw, 24px); line-height: 1.3; letter-spacing: var(--ls-head); color: var(--ink); text-wrap: balance; }
}

@layer pageresponsive {
  /* Zeilenmass: 66ch-Token rechnet mit dem ch der Grundschrift zu weit -
     harte 600px-Deckelung ab Tablet (gemessen 71-73 Zeichen pro Zeile) */
  @media (min-width: 720px) {
    .container--text .prose { max-width: 600px; }
  }
  /* Der Schraegstrich bleibt am ERSTEN Wort: Zeile 2 beginnt nie mit "/"
     (Kill-Liste R3, dritter Anlauf - Wortlaut zeichengenau unveraendert) */
  .prose h2 .nbslash { white-space: nowrap; }
  /* Die Paragraphen-Referenz bricht nicht mitten in "§ 18 Abs. 2 MStV" */
  @media (min-width: 1024px) {
    .prose h2 .nbpar { white-space: nowrap; }
  }
  @media (max-width: 900px) {
    .prose a { display: inline-block; padding-block: 12px; margin-block: -12px; }
    /* Reine Rechtstext-Seite: keine Conversion-Leiste (Kill-Liste R3) */
    .sticky-cta { display: none; }
    body { padding-bottom: 0; }
    .site-footer { padding-bottom: 0; }
  }
}
