/* ═══════════════════════════════════════════════════════════
   MyInvest24 — Lateral Pages Layer (Welle E)
   Vollständiges Lateral-Styling der Legacy-Klassennamen.
   Lädt NACH mi24-lateral.css. Scope: body.lx.mi24-legacy
   ABLAUFENDE SCHICHT: stirbt, wenn Seiten auf echtes lx-Markup
   neu gebaut werden. Tokens NUR aus mi24-lateral.css.
   Spec: docs/brand/MYINVEST24_BRANDING.md
   ═══════════════════════════════════════════════════════════ */

/* !important-Politik: nur wo (a) der Inline-Block Inline-STYLE-Attribute
   nutzt (author-box, source-note), (b) mi24-lateral-article.css bereits
   !important setzt und die Spec einen anderen Wert verlangt (Radius 2 statt
   14, Label statt Pill, Rail statt Karte) oder (c) der Kill-Layer greift. */

/* ────────────────────────────────────────────────────────────
   1 · BASE / SAFETY-NET
   ──────────────────────────────────────────────────────────── */

body.lx.mi24-legacy {
  font-family: var(--font-ui);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0;
  color: var(--gray-text);
  background: var(--light-base);
  /* body.lx ist dunkel — Legacy-Seiten sind hell */
}
body.lx.mi24-legacy .main-content { background: var(--light-base); }

body.lx.mi24-legacy ::selection { background: var(--ink); color: var(--white); } /* #080808 auf #fff */

body.lx.mi24-legacy [id] { scroll-margin-top: 96px; /* TOC-Anker unter der 64px-Nav */ }

/* Heading-Farben mit 0-Spezifitaet: Seitenkontext (dunkle Heros) gewinnt */
:where(body.lx.mi24-legacy) :where(h1, h2, h3, h4) { color: var(--ink); }

/* Seiten ohne Hero: Content unter der fixed Nav freistellen (z.B. Glossar-Artikel) */
body.lx.mi24-legacy main.main-content:not(:has(.article-hero, .page-hero, .hero, .city-hero, .mi24-standort-hero, .funnel-step, .lx-hero)) {
  padding-top: calc(var(--lx-nav-h, 64px) + 44px);
}

/* Basis-Container — Safety-Net fuer Seiten ohne eigene .container-Regel */
body.lx.mi24-legacy .container {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--lx-gutter, 24px);
  padding-right: var(--lx-gutter, 24px);
}

/* Typo-Leiter: 62 / 52 / 21 / 16 / 14 / 13 / 11 */
body.lx.mi24-legacy h1 {
  font-family: var(--font-display);
  font-size: clamp(40px, 5vw, 62px);
  font-weight: 300;
  line-height: 1.15;
  letter-spacing: -0.05em;
  text-wrap: balance;
}
body.lx.mi24-legacy h2 {
  font-family: var(--font-display);
  font-size: clamp(30px, 3.6vw, 52px);
  font-weight: 300;
  line-height: 1.25;
  letter-spacing: -0.04em;
  text-wrap: balance;
}
/* !important: mi24-lateral-article.css zwingt h3 auf Sentient 300 !important —
   die Spec verlangt H3 als UI-Schrift 21/500 */
body.lx.mi24-legacy h3 {
  font-family: var(--font-ui) !important;
  font-size: 21px;
  font-weight: 500 !important;
  line-height: 1.3;
  letter-spacing: -0.02em;
}
body.lx.mi24-legacy h4 {
  font-family: var(--font-ui) !important;
  font-size: 16px;
  font-weight: 500 !important;
  letter-spacing: -0.01em;
  color: var(--ink);
}
body.lx.mi24-legacy p { font-size: 16px; }
:where(body.lx.mi24-legacy) a { color: inherit; }
/* lx-Komponenten dürfen von Legacy-Basisregeln nie überschrieben werden */
body.lx.mi24-legacy .lx-btn { color: var(--white); }
body.lx.mi24-legacy .lx-nav--ondark:not(.is-scrolled) .lx-btn { color: var(--black-base); }
body.lx.mi24-legacy .lx-footer a { color: rgba(255, 255, 255, 0.6); }


/* Fließtext-Links: Unterstrich mit Hairline-Farbe, Hover Ink */
body.lx.mi24-legacy .article-content a, body.lx.mi24-legacy .main-article a, body.lx.mi24-legacy .content a,
body.lx.mi24-legacy .content-section a, body.lx.mi24-legacy .glossary-article a,
body.lx.mi24-legacy .definition-text a {
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: var(--hairline-light);
  transition: text-decoration-color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .article-content a:hover, body.lx.mi24-legacy .main-article a:hover,
body.lx.mi24-legacy .content a:hover, body.lx.mi24-legacy .content-section a:hover,
body.lx.mi24-legacy .glossary-article a:hover, body.lx.mi24-legacy .definition-text a:hover {
  color: var(--ink);
  text-decoration-color: var(--ink);
}

/* Tabellen-Basis: Hairline-Zeilen, Mono-Head */
body.lx.mi24-legacy table {
  width: 100%;
  border-collapse: collapse;
  margin: 28px 0;
  font-variant-numeric: tabular-nums;
}
body.lx.mi24-legacy th {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--label-gray);
  text-align: left;
  padding: 10px 16px;
  border-bottom: 1px solid var(--ink);
}
body.lx.mi24-legacy td {
  font-size: 14px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--hairline-light);
  color: var(--gray-text);
  font-variant-numeric: tabular-nums;
}
body.lx.mi24-legacy td:first-child { color: var(--ink); }

/* Formulare: Hairline, Radius 2, kein blauer Focus-Ring */
body.lx.mi24-legacy input[type="text"], body.lx.mi24-legacy input[type="email"],
body.lx.mi24-legacy input[type="tel"], body.lx.mi24-legacy input[type="number"],
body.lx.mi24-legacy input[type="search"], body.lx.mi24-legacy select, body.lx.mi24-legacy textarea {
  font-family: var(--font-ui);
  font-size: 15px;
  color: var(--ink);
  background: var(--white);
  border: 1px solid var(--hairline-light);
  border-radius: 2px;
  padding: 12px 16px;
  box-shadow: none;
  transition: border-color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy input[type="text"]:focus, body.lx.mi24-legacy input[type="email"]:focus,
body.lx.mi24-legacy input[type="tel"]:focus, body.lx.mi24-legacy input[type="number"]:focus,
body.lx.mi24-legacy input[type="search"]:focus, body.lx.mi24-legacy select:focus,
body.lx.mi24-legacy textarea:focus {
  border-color: var(--ink);
  outline: none;
  box-shadow: none;
}
body.lx.mi24-legacy ::placeholder { color: var(--label-gray); }

/* Legacy-Reveal-Hooks entschärfen: Inhalt darf ohne Alt-JS nie unsichtbar
   bleiben. Neue Reveals laufen ausschließlich über [data-lxr] (mi24-lateral). */
body.lx.mi24-legacy .reveal, body.lx.mi24-legacy .reveal.reveal-hidden, body.lx.mi24-legacy .fade-in {
  opacity: 1;
  transform: none;
}

/* ── Buttons: es gibt genau EINE Form — die Pill (45px / H 39 / 13-500).
   !important auf Farbe/Form: Inline-Block + mi24-lateral-article.css setzen
   dort bereits !important-Werte (Gradienten, 8px-Radius, Blau). ── */
body.lx.mi24-legacy .btn, body.lx.mi24-legacy .btn-primary, body.lx.mi24-legacy .btn--primary,
body.lx.mi24-legacy .btn-primary-large, body.lx.mi24-legacy .btn-primary-small,
body.lx.mi24-legacy .btn-small, body.lx.mi24-legacy .btn-secondary, body.lx.mi24-legacy .btn--outline,
body.lx.mi24-legacy .btn-outline, body.lx.mi24-legacy .btn-secondary-large,
body.lx.mi24-legacy .cta-section__btn, body.lx.mi24-legacy .cta-button, body.lx.mi24-legacy .calc-btn,
body.lx.mi24-legacy .calculator-cta a, body.lx.mi24-legacy .cta__btn, body.lx.mi24-legacy .final-cta__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 39px;
  padding: 0 22px;
  border-radius: 45px !important;
  font-family: var(--font-ui) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
  background: var(--ink) !important;
  background-image: none !important;
  color: var(--white) !important;
  border: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  cursor: pointer;
  transition: transform var(--lx-dur-fast) var(--lx-ease);
  will-change: transform;
}
body.lx.mi24-legacy .btn:hover, body.lx.mi24-legacy .btn-primary:hover,
body.lx.mi24-legacy .btn--primary:hover, body.lx.mi24-legacy .btn-primary-large:hover,
body.lx.mi24-legacy .btn-primary-small:hover, body.lx.mi24-legacy .btn-small:hover,
body.lx.mi24-legacy .btn-secondary:hover, body.lx.mi24-legacy .btn--outline:hover,
body.lx.mi24-legacy .btn-outline:hover, body.lx.mi24-legacy .btn-secondary-large:hover,
body.lx.mi24-legacy .cta-section__btn:hover, body.lx.mi24-legacy .cta-button:hover,
body.lx.mi24-legacy .calc-btn:hover, body.lx.mi24-legacy .calculator-cta a:hover,
body.lx.mi24-legacy .cta__btn:hover, body.lx.mi24-legacy .final-cta__btn:hover {
  transform: scale(1.03);
  background: var(--ink) !important;
  /* keine Farbrotation */
  color: var(--white) !important;
}
body.lx.mi24-legacy .btn:active, body.lx.mi24-legacy .btn-primary:active,
body.lx.mi24-legacy .cta-section__btn:active {
  transform: scale(0.99);
}
body.lx.mi24-legacy .btn svg, body.lx.mi24-legacy .btn-primary svg, body.lx.mi24-legacy .btn-small svg,
body.lx.mi24-legacy .cta-section__btn svg, body.lx.mi24-legacy .calc-btn svg {
  width: 14px;
  height: 14px;
  flex: none;
  stroke: currentColor;
  fill: none;
}

/* Sekundär-Variante: flach, transparent, Hairline-Rand, Ink-Text */
body.lx.mi24-legacy .btn-secondary, body.lx.mi24-legacy .btn--outline, body.lx.mi24-legacy .btn-outline,
body.lx.mi24-legacy .btn-secondary-large {
  background: transparent !important;
  color: var(--ink) !important;
  border: 1px solid var(--hairline-light) !important;
}
body.lx.mi24-legacy .btn-secondary:hover, body.lx.mi24-legacy .btn--outline:hover,
body.lx.mi24-legacy .btn-outline:hover, body.lx.mi24-legacy .btn-secondary-large:hover {
  background: transparent !important;
  color: var(--ink) !important;
  border-color: var(--ink) !important;
}

/* Auf dunklen Flächen invertiert die Pill */
body.lx.mi24-legacy .cta-section .btn, body.lx.mi24-legacy .cta-section__btn,
body.lx.mi24-legacy .cta-section .btn-primary, body.lx.mi24-legacy .cta-section .btn-primary-large,
body.lx.mi24-legacy .sidebar-box.cta .btn, body.lx.mi24-legacy .sidebar-box.cta .btn-small,
body.lx.mi24-legacy .sidebar-cta .btn, body.lx.mi24-legacy .sidebar-cta .btn-small,
body.lx.mi24-legacy .toc-cta .btn, body.lx.mi24-legacy .toc-cta .btn-small, body.lx.mi24-legacy .cta__btn,
body.lx.mi24-legacy .final-cta__btn {
  background: var(--white) !important;
  color: var(--black-base) !important;
}
body.lx.mi24-legacy .cta-section .btn:hover, body.lx.mi24-legacy .cta-section__btn:hover,
body.lx.mi24-legacy .sidebar-box.cta .btn:hover, body.lx.mi24-legacy .sidebar-box.cta .btn-small:hover,
body.lx.mi24-legacy .sidebar-cta .btn:hover, body.lx.mi24-legacy .toc-cta .btn:hover,
body.lx.mi24-legacy .toc-cta .btn-small:hover, body.lx.mi24-legacy .cta__btn:hover,
body.lx.mi24-legacy .final-cta__btn:hover {
  background: var(--white) !important;
  color: var(--black-base) !important;
  transform: scale(1.03);
}
/* Sekundär-Variante auf dunkel: Hairline-Dark statt Fläche */
body.lx.mi24-legacy .cta-section .btn-secondary, body.lx.mi24-legacy .cta-section .btn-secondary-large {
  background: transparent !important;
  color: var(--white) !important;
  border: 1px solid var(--hairline-dark) !important;
}

/* CTA-Zeilen (Container, keine Buttons) */
body.lx.mi24-legacy .cta-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-top: 8px;
}
body.lx.mi24-legacy .cta-content { max-width: 560px; margin: 0 auto; }

/* ────────────────────────────────────────────────────────────
   2 · ARTIKEL-FAMILIE
   ──────────────────────────────────────────────────────────── */

/* ── 2a · Hero: heller Auftakt unter der 64px-Nav ── */
body.lx.mi24-legacy .article-hero {
  background: var(--light-base) !important;
  background-image: none !important;
  color: var(--gray-text);
  padding: calc(var(--lx-nav-h) + 76px) 0 56px;
  border-bottom: 1px solid var(--hairline-light);
  overflow: visible;
}
body.lx.mi24-legacy .article-hero h1 {
  font-family: var(--font-display);
  font-size: clamp(36px, 4.6vw, 56px);
  font-weight: 300;
  line-height: 1.15;
  letter-spacing: -0.05em;
  color: var(--ink);
  margin: 22px 0 0;
}
body.lx.mi24-legacy .article-hero__breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--label-gray);
  margin-bottom: 28px;
}
body.lx.mi24-legacy .article-hero__breadcrumb a {
  color: var(--label-gray);
  text-decoration: none;
  transition: color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .article-hero__breadcrumb a:hover { color: var(--ink); }
/* Trenner-Spans („›") → typografischer Mittelpunkt */
body.lx.mi24-legacy .article-hero__breadcrumb span:not(:last-child) { font-size: 0; color: var(--label-gray); }
body.lx.mi24-legacy .article-hero__breadcrumb span:not(:last-child)::before {
  content: '·';
  font-size: 11px;
  line-height: 1;
}
body.lx.mi24-legacy .article-hero__breadcrumb span:last-child { color: var(--ink); }

/* Kategorie: Mono-Label mit 6×6-Quadrat statt Pill.
   !important: mi24-lateral-article.css erzwingt dort eine Hairline-Pill. */
body.lx.mi24-legacy .article-hero__category {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 0 4px;
  color: var(--label-gray) !important;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: .05em;
}
body.lx.mi24-legacy .article-hero__category::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  background: var(--ink);
  margin-right: 10px;
  vertical-align: 1px;
}

body.lx.mi24-legacy .article-hero__lead {
  font-size: 18px;
  line-height: 1.6;
  color: var(--gray-text);
  max-width: 62ch;
  margin: 20px 0 0;
}
body.lx.mi24-legacy .article-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 24px;
  margin-top: 28px;
  padding-top: 18px;
  border-top: 1px solid var(--hairline-light);
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--label-gray);
  font-variant-numeric: tabular-nums;
}
body.lx.mi24-legacy .article-hero__meta-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--label-gray);
}
body.lx.mi24-legacy .article-hero__meta-item svg { width: 12px; height: 12px; stroke: var(--label-gray); fill: none; }

/* ── 2b · Layout: 260px Rail + Inhalt ── */
body.lx.mi24-legacy .article-layout {
  display: grid;
  grid-template-columns: 260px minmax(0, 760px);
  justify-content: center;
  gap: 64px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 56px 24px 96px;
}

/* ── 2c · TOC: keine Karte — linke Hairline-Rail ── */
body.lx.mi24-legacy .article-toc { position: relative; }
/* !important: mi24-lateral-article.css setzt background weiß !important */
body.lx.mi24-legacy .toc-sticky {
  position: sticky;
  top: 96px;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0;
  box-shadow: none !important;
}
body.lx.mi24-legacy .toc-title {
  margin-bottom: 18px;
}

body.lx.mi24-legacy .toc-title svg { display: none; /* Icon weicht dem Quadrat */ }
body.lx.mi24-legacy .toc-nav {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-left: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .toc-nav a, body.lx.mi24-legacy .toc-link {
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.45;
  color: var(--label-gray) !important;
  padding: 6px 0 6px 16px;
  margin-left: -1px;
  border-left: 1px solid transparent;
  transition: color var(--lx-dur-fast) var(--lx-ease),
              border-color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .toc-nav a:hover, body.lx.mi24-legacy .toc-link:hover,
body.lx.mi24-legacy .toc-link.active {
  color: var(--ink) !important;
  border-left-color: var(--ink) !important;
}
body.lx.mi24-legacy .toc-link.active { font-weight: 500; }
body.lx.mi24-legacy .toc-link--sub { padding-left: 30px; }

/* Lese-Fortschritt: 2px-Track Hairline, Balken Ink.
   !important: mi24-lateral-article.css färbt den Track komplett Ink. */
body.lx.mi24-legacy .toc-progress {
  height: 2px;
  background: var(--hairline-light) !important;
  border-radius: 0;
  margin-bottom: 20px;
  overflow: hidden;
}
body.lx.mi24-legacy .toc-progress__bar {
  height: 100%;
  background: var(--ink) !important;
  width: 0;
  transition: width 0.2s linear;
}

/* TOC-CTA: kleines dunkles Panel (CTA-Sprache) */
body.lx.mi24-legacy .toc-cta {
  margin-top: 28px;
  padding: 20px;
  background: var(--black-base) !important;
  border: 0 !important;
  border-radius: 12px !important;
}
body.lx.mi24-legacy .toc-cta p {
  font-size: 13px;
  line-height: 1.5;
  color: var(--white-60) !important;
  margin-bottom: 14px;
}

/* ── 2d · Mobile-TOC: Hairline-Box, Mono-Toggle ── */
body.lx.mi24-legacy .mobile-toc {
  display: none;
  position: sticky;
  top: calc(var(--lx-nav-h) + 8px);
  z-index: 90;
  margin: 16px 20px 0;
  padding: 0 16px;
  background: var(--light-base) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 2px;
  box-shadow: none !important;
}
body.lx.mi24-legacy .mobile-toc-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 13px 0;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--ink);
  background: none;
  border: 0;
  cursor: pointer;
}
body.lx.mi24-legacy .mobile-toc-toggle svg { width: 13px; height: 13px; stroke: var(--ink); fill: none; }
body.lx.mi24-legacy .mobile-toc-toggle .chevron {
  stroke: var(--label-gray);
  transition: transform var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .mobile-toc-toggle[aria-expanded="true"] .chevron { transform: rotate(180deg); }
body.lx.mi24-legacy .mobile-toc-nav {
  display: none;
  flex-direction: column;
  gap: 0;
  padding: 4px 0 14px;
  border-top: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .mobile-toc-nav.open { display: flex; }
body.lx.mi24-legacy .mobile-toc-nav a {
  display: flex;
  align-items: baseline;
  gap: 12px;
  font-size: 13px;
  color: var(--gray-text);
  padding: 7px 0;
}
body.lx.mi24-legacy .mobile-toc-nav a::before {
  content: attr(data-number);
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  color: var(--label-gray);
  font-variant-numeric: tabular-nums;
  width: 18px;
  text-align: left;
}

/* ── 2e · Artikel-Inhalt: Editorial-Rhythmus ── */
body.lx.mi24-legacy .article-content { max-width: 720px; min-width: 0; overflow-wrap: break-word; }
body.lx.mi24-legacy .article-content h2, body.lx.mi24-legacy .main-article h2,
body.lx.mi24-legacy .glossary-article h2 {
  font-family: var(--font-display);
  font-size: clamp(26px, 3vw, 34px);
  font-weight: 300;
  line-height: 1.25;
  letter-spacing: -0.04em;
  color: var(--ink);
  margin: 56px 0 20px;
  padding-top: 28px;
  padding-bottom: 0;
  border-top: 1px solid var(--hairline-light);
  /* Hairline ÜBER der H2 */
  border-bottom: 0;
}
body.lx.mi24-legacy .article-content h3, body.lx.mi24-legacy .main-article h3 {
  font-size: 21px;
  margin: 40px 0 14px;
}
body.lx.mi24-legacy .article-content h4, body.lx.mi24-legacy .main-article h4 { margin: 28px 0 10px; }
body.lx.mi24-legacy .article-content p, body.lx.mi24-legacy .main-article p {
  font-size: 16px;
  line-height: 1.7;
  color: var(--gray-text);
  margin-bottom: 18px;
}
body.lx.mi24-legacy .article-content strong, body.lx.mi24-legacy .main-article strong {
  color: var(--ink);
  font-weight: 600;
}
body.lx.mi24-legacy .article-content img, body.lx.mi24-legacy .main-article img { border-radius: 16px; }
body.lx.mi24-legacy .article-content blockquote, body.lx.mi24-legacy .main-article blockquote {
  font-family: var(--font-display);
  font-style: italic;
  font-weight: 300;
  font-size: 21px;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: var(--ink);
  border-left: 1px solid var(--ink);
  padding: 4px 0 4px 24px;
  margin: 36px 0;
}

/* Listen: eigene Marker — 6×6-Quadrat (ul) bzw. Mono-Ziffern (ol).
   Der Legacy-Reset setzt list-style:none, der Inline-Block disc/decimal —
   diese Datei gewinnt als letzter Ursprung. */
body.lx.mi24-legacy .article-content ul, body.lx.mi24-legacy .main-article ul,
body.lx.mi24-legacy .glossary-article ul, body.lx.mi24-legacy .content-section ul {
  list-style: none;
  padding-left: 0;
  margin: 0 0 20px;
}
body.lx.mi24-legacy .article-content ul > li, body.lx.mi24-legacy .main-article ul > li,
body.lx.mi24-legacy .glossary-article ul > li, body.lx.mi24-legacy .content-section ul > li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 10px;
  line-height: 1.65;
}
body.lx.mi24-legacy .article-content ul > li::before, body.lx.mi24-legacy .main-article ul > li::before,
body.lx.mi24-legacy .glossary-article ul > li::before, body.lx.mi24-legacy .content-section ul > li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 6px;
  height: 6px;
  background: var(--ink);
  border-radius: 0;
}
body.lx.mi24-legacy .article-content ol, body.lx.mi24-legacy .main-article ol,
body.lx.mi24-legacy .glossary-article ol {
  list-style: none;
  counter-reset: lx-ol;
  padding-left: 0;
  margin: 0 0 20px;
}
body.lx.mi24-legacy .article-content ol > li, body.lx.mi24-legacy .main-article ol > li,
body.lx.mi24-legacy .glossary-article ol > li {
  position: relative;
  counter-increment: lx-ol;
  padding-left: 36px;
  margin-bottom: 10px;
  line-height: 1.65;
}
body.lx.mi24-legacy .article-content ol > li::before, body.lx.mi24-legacy .main-article ol > li::before,
body.lx.mi24-legacy .glossary-article ol > li::before {
  content: counter(lx-ol, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 0.28em;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  color: var(--label-gray);
  font-variant-numeric: tabular-nums;
}

body.lx.mi24-legacy .lead { font-size: 18px; line-height: 1.6; color: var(--gray-text); }
body.lx.mi24-legacy .speakable-content { font-size: 16px; color: var(--gray-text); }
body.lx.mi24-legacy .article-title {
  font-family: var(--font-display);
  font-weight: 300;
  letter-spacing: -0.05em;
  color: var(--ink);
}
body.lx.mi24-legacy .main-article { min-width: 0; }

/* ── 2f · Key Facts: Daten-Panel (Radius 2, Hairline-Zeilen).
   !important auf Radius: mi24-lateral-article.css erzwingt 14px. ── */
body.lx.mi24-legacy .key-facts {
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--ink) !important;
  border-radius: 0 !important;
  padding: 20px 0 0 !important;
  margin: 36px 0;
  box-shadow: none !important;
}
body.lx.mi24-legacy .key-facts__title {
  margin-bottom: 14px;
}

body.lx.mi24-legacy .key-facts__title svg { display: none; }
body.lx.mi24-legacy .key-facts ul { list-style: none; padding: 0; margin: 0; }
body.lx.mi24-legacy .key-facts li {
  display: block;
  padding: 11px 0;
  margin: 0;
  border-bottom: 1px solid var(--hairline-light);
  font-size: 14px;
  line-height: 1.55;
  color: var(--gray-text);
}
body.lx.mi24-legacy .key-facts li:last-child { border-bottom: 0; padding-bottom: 0; }
body.lx.mi24-legacy .key-facts li::before {
  display: inline-block;
  margin-right: 10px;
  vertical-align: 2px;
  content: '';
  position: static;
  width: 6px;
  height: 6px;
  background: var(--ink);
  border: 0;
  border-radius: 0;
  /* Quadrat statt Legacy-Kreis */
  flex: none;
  margin-top: 7px;
}
body.lx.mi24-legacy .key-facts li strong { color: var(--ink); font-weight: 500; font-variant-numeric: tabular-nums; }

/* ── 2g · Panel-Familie: eine monochrome Box-Sprache (Radius 2) ── */
body.lx.mi24-legacy .highlight-box, body.lx.mi24-legacy .info-box, body.lx.mi24-legacy .definition-box,
body.lx.mi24-legacy .example-box, body.lx.mi24-legacy .formula-box, body.lx.mi24-legacy .summary-box,
body.lx.mi24-legacy .tip-box, body.lx.mi24-legacy .cta-box, body.lx.mi24-legacy .cta-box-inline,
body.lx.mi24-legacy .expert-tip, body.lx.mi24-legacy .warning-box, body.lx.mi24-legacy .checklist-box,
body.lx.mi24-legacy .law-box, body.lx.mi24-legacy .muster-box, body.lx.mi24-legacy .calculator-box {
  background: var(--light-base) !important;
  background-image: none !important;
  border: 0 !important;
  border-left: 2px solid var(--ink) !important;
  border-radius: 0 2px 2px 0 !important;
  padding: 20px 24px;
  margin: 28px 0;
  box-shadow: none !important;
  color: var(--gray-text);
}
body.lx.mi24-legacy .highlight-box p, body.lx.mi24-legacy .info-box p, body.lx.mi24-legacy .example-box p,
body.lx.mi24-legacy .expert-tip p, body.lx.mi24-legacy .warning-box p, body.lx.mi24-legacy .tip-box p,
body.lx.mi24-legacy .summary-box p {
  color: var(--gray-text) !important;
  font-size: 15px;
  line-height: 1.65;
  margin: 0 0 10px;
}
body.lx.mi24-legacy .highlight-box p:last-child, body.lx.mi24-legacy .info-box p:last-child,
body.lx.mi24-legacy .example-box p:last-child, body.lx.mi24-legacy .expert-tip p:last-child,
body.lx.mi24-legacy .warning-box p:last-child, body.lx.mi24-legacy .tip-box p:last-child,
body.lx.mi24-legacy .summary-box p:last-child {
  margin-bottom: 0;
}

/* Warn-/Hinweis-Varianten: warme Fläche statt Amber/Grün */
body.lx.mi24-legacy .highlight-box--warning, body.lx.mi24-legacy .warning-box {
  background: var(--light-warm) !important;
  border-color: var(--hairline-light) !important;
}
body.lx.mi24-legacy .highlight-box--warning p, body.lx.mi24-legacy .warning-box p { color: var(--ink-60) !important; }
body.lx.mi24-legacy .highlight-box--success { background: var(--light-base) !important; }

/* Panel-Titel: Mono-Label mit Quadrat */
body.lx.mi24-legacy .highlight-box__title, body.lx.mi24-legacy .expert-tip__title,
body.lx.mi24-legacy .warning-box__title, body.lx.mi24-legacy .formula-box__title,
body.lx.mi24-legacy .muster-label, body.lx.mi24-legacy .comparison-table__title {
  margin-bottom: 12px;
}

body.lx.mi24-legacy .highlight-box__title svg, body.lx.mi24-legacy .expert-tip__title svg,
body.lx.mi24-legacy .warning-box__title svg {
  display: none;
}

/* Formeln: Geist Mono auf heller Innenfläche */
body.lx.mi24-legacy .formula-box { background: var(--white) !important; }
body.lx.mi24-legacy .formula-box__formula, body.lx.mi24-legacy .formula {
  font-family: var(--font-mono);
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: 0;
  color: var(--ink);
  background: var(--light-base);
  border: 1px solid var(--hairline-light);
  border-radius: 2px;
  padding: 14px 18px;
  text-align: center;
  margin-bottom: 14px;
  overflow-x: auto;
  font-variant-numeric: tabular-nums;
}

/* Definition (Glossar-Kopf) */
body.lx.mi24-legacy .definition-box { background: var(--white) !important; padding: 32px 36px; margin: 0 0 40px; }
body.lx.mi24-legacy .definition-box h1 { font-size: clamp(30px, 3.8vw, 44px); margin-bottom: 16px; }
body.lx.mi24-legacy .definition-text { font-size: 17px; line-height: 1.7; color: var(--gray-text); }

/* ── 2h · Tabellen: dunkler Daten-Header (Kit: #030303) ── */
body.lx.mi24-legacy .data-table, body.lx.mi24-legacy .snippet-table, body.lx.mi24-legacy .comparison-table,
body.lx.mi24-legacy .rendite-tabelle {
  width: 100%;
  border-collapse: collapse;
  margin: 28px 0;
  border: 1px solid var(--hairline-light);
  border-radius: 0;
  overflow: hidden;
  box-shadow: none !important;
}
body.lx.mi24-legacy .data-table th, body.lx.mi24-legacy .snippet-table th,
body.lx.mi24-legacy .comparison-table th, body.lx.mi24-legacy .rendite-tabelle th {
  background: var(--black-base) !important;
  color: var(--white) !important;
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  text-align: left;
  padding: 12px 16px;
  border-bottom: 0;
}
body.lx.mi24-legacy .data-table td, body.lx.mi24-legacy .snippet-table td,
body.lx.mi24-legacy .comparison-table td, body.lx.mi24-legacy .rendite-tabelle td {
  font-size: 14px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--hairline-light);
  color: var(--gray-text);
  background: var(--white);
  font-variant-numeric: tabular-nums;
}
body.lx.mi24-legacy .data-table td:first-child, body.lx.mi24-legacy .snippet-table td:first-child,
body.lx.mi24-legacy .comparison-table td:first-child, body.lx.mi24-legacy .rendite-tabelle td:first-child {
  color: var(--ink);
}
body.lx.mi24-legacy .data-table tr:last-child td, body.lx.mi24-legacy .snippet-table tr:last-child td {
  border-bottom: 0;
}
body.lx.mi24-legacy .data-table tr:nth-child(even) td,
body.lx.mi24-legacy .snippet-table tr:nth-child(even) td {
  background: var(--light-base) !important;
}
body.lx.mi24-legacy .data-table tr:hover td { background: var(--light-base); }
body.lx.mi24-legacy .rendite-tabelle caption {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--label-gray);
  text-align: left;
  margin-bottom: 14px;
}
body.lx.mi24-legacy .table-wrapper { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 28px 0; }
body.lx.mi24-legacy .table-wrapper table { margin: 0; }
/* Stadt-Zeilen-Highlight: warm statt Grün (Inline-Block nutzt !important) */
body.lx.mi24-legacy .stadt-highlight, body.lx.mi24-legacy tr.stadt-highlight td {
  background: var(--light-warm) !important;
}
body.lx.mi24-legacy .stadt-highlight td { color: var(--ink) !important; font-weight: 500 !important; }

/* ── 2i · FAQ: Hairline-Accordion wie .lx-faq ── */
body.lx.mi24-legacy .faq-container, body.lx.mi24-legacy .faq-section { margin: 32px 0; }
body.lx.mi24-legacy .faq-container, body.lx.mi24-legacy .faq-list { border-top: 1px solid var(--hairline-light); }
body.lx.mi24-legacy .faq-item, body.lx.mi24-legacy .faq-section details {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--hairline-light) !important;
  border-radius: 0 !important;
  margin: 0;
  box-shadow: none !important;
  overflow: visible;
}
body.lx.mi24-legacy .faq-item summary, body.lx.mi24-legacy .faq-section summary,
body.lx.mi24-legacy .faq-question {
  position: relative;
  display: block;
  padding: 20px 44px 20px 0;
  font-family: var(--font-ui);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.01em;
  line-height: 1.4;
  color: var(--ink) !important;
  cursor: pointer;
  list-style: none;
}
body.lx.mi24-legacy .faq-item summary::-webkit-details-marker,
body.lx.mi24-legacy .faq-section summary::-webkit-details-marker {
  display: none;
}
/* Marker: Mono-Plus, rotiert 45° beim Öffnen (Referenz .lx-faq__plus) */
body.lx.mi24-legacy .faq-item summary::after, body.lx.mi24-legacy .faq-section summary::after {
  content: '+';
  position: absolute;
  right: 4px;
  top: 50%;
  font-family: var(--font-mono);
  font-size: 17px;
  font-weight: 300;
  line-height: 1;
  color: var(--ink);
  transform: translateY(-50%) rotate(0deg);
  transition: transform var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .faq-item[open] summary::after,
body.lx.mi24-legacy .faq-section details[open] summary::after {
  content: '+';
  transform: translateY(-50%) rotate(45deg);
}
body.lx.mi24-legacy .faq-item__content, body.lx.mi24-legacy .faq-answer,
body.lx.mi24-legacy .faq-section details > div {
  padding: 0 44px 22px 0;
  font-size: 15px;
  line-height: 1.7;
  color: var(--gray-text);
  max-width: 62ch;
}

/* ── 2j · CTA-Section: dunkles Panel im 160er-Rhythmus ── */
body.lx.mi24-legacy .cta-section {
  background: var(--black-base) !important;
  background-image: none !important;
  color: var(--white-60);
  border: 0;
  border-radius: 16px;
  padding: 64px 48px;
  margin: 72px 0;
  text-align: center;
  box-shadow: none !important;
}
body.lx.mi24-legacy .cta-section__title, body.lx.mi24-legacy .cta-section h2 {
  font-family: var(--font-display);
  font-size: clamp(28px, 3.4vw, 40px);
  font-weight: 300;
  line-height: 1.2;
  letter-spacing: -0.04em;
  color: var(--white) !important;
  margin: 0 0 16px;
  padding: 0;
  border: 0;
}
body.lx.mi24-legacy .cta-section__text, body.lx.mi24-legacy .cta-section p {
  font-size: 16px;
  line-height: 1.6;
  color: var(--white-60) !important;
  max-width: 52ch;
  margin: 0 auto 28px;
}
body.lx.mi24-legacy .cta-section__trust {
  font-family: var(--font-mono);
  font-size: 11px !important;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--label-gray-dark) !important;
  margin: 20px auto 0;
}

/* ── 2k · Related: lx-Karten (Hairline, Hover-Lift, kein Schatten) ── */
body.lx.mi24-legacy .related-articles {
  margin-top: 72px;
  padding-top: 32px;
  border-top: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .related-articles h2 {
  font-family: var(--font-display);
  font-size: clamp(24px, 2.6vw, 30px);
  font-weight: 300;
  letter-spacing: -0.04em;
  color: var(--ink);
  border: 0;
  padding: 0;
  margin: 0 0 24px;
}
body.lx.mi24-legacy .related-grid, body.lx.mi24-legacy .article-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
body.lx.mi24-legacy .article-card h3, body.lx.mi24-legacy .article-card__title,
body.lx.mi24-legacy .article-card p, body.lx.mi24-legacy .article-card__excerpt,
body.lx.mi24-legacy .related-card p {
  overflow-wrap: anywhere; word-break: break-word; hyphens: auto;
}
body.lx.mi24-legacy .related-card, body.lx.mi24-legacy .article-grid .article-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 16px !important;
  padding: 24px;
  box-shadow: none !important;
  transition: transform var(--lx-dur-fast) var(--lx-ease),
              border-color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .related-card:hover, body.lx.mi24-legacy .article-grid .article-card:hover {
  transform: translateY(-4px);
  border-color: var(--gray-text) !important;
  box-shadow: none !important;
}
body.lx.mi24-legacy .related-card h3 { font-size: 16px; line-height: 1.35; color: var(--ink); margin: 0; overflow-wrap: break-word; word-break: break-word; hyphens: auto; }
body.lx.mi24-legacy .related-card p { font-size: 13px; line-height: 1.55; color: var(--gray-text); margin: 0; }
/* Kategorie im Karten-Kopf: Mono-Label mit Quadrat statt Pill */
body.lx.mi24-legacy .related-category {
  gap: 10px;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

body.lx.mi24-legacy .related-arrow {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 500;
  color: var(--ink) !important;
  transition: gap var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .related-card:hover .related-arrow { gap: 10px; }
body.lx.mi24-legacy .related-arrow svg { width: 13px; height: 13px; stroke: currentColor; fill: none; }
body.lx.mi24-legacy .related-more { text-align: center; margin-top: 24px; }
body.lx.mi24-legacy .related-more a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 500;
  color: var(--gray-text);
  transition: color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .related-more a:hover { color: var(--ink); }

/* ── 2l · Quellen & Autor ── */
body.lx.mi24-legacy .article-sources {
  margin-top: 56px;
  padding-top: 24px;
  border-top: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .article-sources__label {
  margin: 0 0 14px;
}

body.lx.mi24-legacy .article-sources ul { list-style: none; margin: 0; padding: 0; }
body.lx.mi24-legacy .article-sources ul > li {
  padding-left: 0;
  margin-bottom: 4px;
  font-size: 13px;
  color: var(--label-gray);
}
body.lx.mi24-legacy .article-sources ul > li::before { display: none; }
body.lx.mi24-legacy .article-sources a {
  color: var(--gray-text);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: var(--hairline-light);
}
body.lx.mi24-legacy .article-sources a:hover { color: var(--ink); text-decoration-color: var(--ink); }
/* source-note trägt Inline-STYLE-Attribute (grüne Border) → !important */
body.lx.mi24-legacy .source-note {
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--hairline-light) !important;
  border-radius: 0 !important;
  padding: 18px 0 0 !important;
  margin-top: 32px !important;
  font-size: 13px !important;
  line-height: 1.6;
  color: var(--label-gray) !important;
}
body.lx.mi24-legacy .source-note strong {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--label-gray);
}
body.lx.mi24-legacy .source-note a {
  color: var(--gray-text) !important;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: var(--hairline-light);
}

/* Autor-Box trägt Inline-STYLE-Attribute → !important */
body.lx.mi24-legacy .author-box {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 2px !important;
  padding: 24px 28px !important;
  margin: 40px 0 !important;
  box-shadow: none !important;
}
body.lx.mi24-legacy .author-box img, body.lx.mi24-legacy .author-box__avatar {
  width: 56px;
  height: 56px;
  border-radius: 12px !important;
  /* Karte, nicht kreisrund */
  object-fit: cover;
  flex: none;
}
body.lx.mi24-legacy .author-box p { margin: 0 0 4px; }
body.lx.mi24-legacy .author-box__info { min-width: 0; }
body.lx.mi24-legacy .author-box__name, body.lx.mi24-legacy .author-box p:first-of-type {
  font-family: var(--font-ui);
  font-size: 15px !important;
  font-weight: 500 !important;
  color: var(--ink) !important;
}
body.lx.mi24-legacy .author-box__role {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--label-gray);
  margin-top: 2px;
}
body.lx.mi24-legacy .author-box__bio, body.lx.mi24-legacy .author-box p:last-of-type {
  font-size: 13px !important;
  line-height: 1.6 !important;
  color: var(--gray-text) !important;
}

/* ── 2m · Checklisten & Takeaways: Quadrat statt Häkchen-Emoji ── */
body.lx.mi24-legacy .checklist, body.lx.mi24-legacy .takeaways, body.lx.mi24-legacy .key-takeaways,
body.lx.mi24-legacy .checklist-items, body.lx.mi24-legacy .detailed-list, body.lx.mi24-legacy .snippet-list {
  list-style: none;
  padding: 0;
  margin: 24px 0;
}
body.lx.mi24-legacy .checklist li, body.lx.mi24-legacy .takeaways li, body.lx.mi24-legacy .key-takeaways li,
body.lx.mi24-legacy .checklist-items li, body.lx.mi24-legacy .detailed-list li,
body.lx.mi24-legacy .snippet-list li {
  position: relative;
  display: block;
  padding: 11px 0 11px 24px;
  margin: 0;
  border-bottom: 1px solid var(--hairline-light);
  font-size: 15px;
  line-height: 1.6;
  color: var(--gray-text);
}
body.lx.mi24-legacy .checklist li:last-child, body.lx.mi24-legacy .takeaways li:last-child,
body.lx.mi24-legacy .key-takeaways li:last-child, body.lx.mi24-legacy .checklist-items li:last-child,
body.lx.mi24-legacy .detailed-list li:last-child, body.lx.mi24-legacy .snippet-list li:last-child {
  border-bottom: 0;
}
body.lx.mi24-legacy .checklist li::before, body.lx.mi24-legacy .takeaways li::before,
body.lx.mi24-legacy .key-takeaways li::before, body.lx.mi24-legacy .checklist-items li::before,
body.lx.mi24-legacy .detailed-list li::before, body.lx.mi24-legacy .snippet-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 1.05em;
  width: 6px;
  height: 6px;
  background: var(--ink);
  border-radius: 0;
  color: transparent;
  font-size: 0;
}
body.lx.mi24-legacy .checklist-negative li::before { background: var(--label-gray); }
/* ol in snippet-/detailed-list: nummerierter Zähler (aus .article-content ol) statt
   schwarzem Quadrat — sonst überlagert das 6px-Quadrat die Ziffern 01–05. */
body.lx.mi24-legacy .detailed-list ol > li::before, body.lx.mi24-legacy .snippet-list ol > li::before {
  width: auto; height: auto; background: transparent; border-radius: 0;
}

/* ── 2n · Tipp-/Fehler-/Vergleichs-Raster ── */
body.lx.mi24-legacy .tips-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  margin: 28px 0;
}
body.lx.mi24-legacy .tip-card {
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 14px !important;
  padding: 24px;
  box-shadow: none !important;
}
body.lx.mi24-legacy .tip-card h4 { font-size: 15px; margin: 12px 0 8px; }
body.lx.mi24-legacy .tip-card p { font-size: 14px; line-height: 1.6; margin: 0; }
/* Emoji-Icons: monochromisieren statt entfernen */
body.lx.mi24-legacy .tip-icon, body.lx.mi24-legacy .error-icon, body.lx.mi24-legacy .trust-icon {
  filter: grayscale(1);
  opacity: 0.85;
  font-size: 20px;
  line-height: 1;
  background: transparent !important;
  background-image: none !important;
  border-radius: 0 !important;
  width: auto;
  height: auto;
  color: var(--ink);
}

body.lx.mi24-legacy .error-list {
  list-style: none;
  padding: 0;
  margin: 24px 0;
  border-top: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .error-item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 18px 0;
  border-bottom: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .error-content h4 { margin: 0 0 6px; font-size: 15px; }
body.lx.mi24-legacy .error-content p { margin: 0; font-size: 14px; line-height: 1.6; }

body.lx.mi24-legacy .comparison-grid, body.lx.mi24-legacy .pros-cons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin: 28px 0;
}
body.lx.mi24-legacy .comparison-card, body.lx.mi24-legacy .pros, body.lx.mi24-legacy .cons {
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 16px !important;
  padding: 26px 28px;
  box-shadow: none !important;
}
body.lx.mi24-legacy .comparison-card__title {
  font-family: var(--font-ui);
  font-size: 17px;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: var(--ink);
  margin-bottom: 16px;
}
body.lx.mi24-legacy .comparison-card__pros, body.lx.mi24-legacy .comparison-card__cons,
body.lx.mi24-legacy .pros ul, body.lx.mi24-legacy .cons ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
body.lx.mi24-legacy .comparison-card__pros li, body.lx.mi24-legacy .comparison-card__cons li,
body.lx.mi24-legacy .pros li, body.lx.mi24-legacy .cons li {
  position: relative;
  padding: 9px 0 9px 22px;
  margin: 0;
  border-top: 1px solid var(--hairline-light);
  font-size: 14px;
  line-height: 1.55;
  color: var(--gray-text);
}
body.lx.mi24-legacy .comparison-card__pros li::before, body.lx.mi24-legacy .pros li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 1em;
  width: 6px;
  height: 6px;
  background: var(--ink);
  border-radius: 0;
}
body.lx.mi24-legacy .comparison-card__cons li::before, body.lx.mi24-legacy .cons li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 1em;
  width: 6px;
  height: 6px;
  background: var(--label-gray);
  border-radius: 0;
}

/* ── 2o · Timeline: Hairline-Rail mit Quadrat-Markern ── */
body.lx.mi24-legacy .timeline {
  position: relative;
  margin: 32px 0;
  padding-left: 24px;
  border-left: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .timeline-item { position: relative; padding: 0 0 28px; }
body.lx.mi24-legacy .timeline-item:last-child { padding-bottom: 0; }
body.lx.mi24-legacy .timeline-marker {
  position: absolute;
  left: -27.5px;
  /* mittig auf der 1px-Rail */
  top: 7px;
  width: 6px;
  height: 6px;
  background: var(--ink) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.lx.mi24-legacy .timeline-content h4 { margin: 0 0 6px; font-size: 15px; }
body.lx.mi24-legacy .timeline-content p { margin: 0; font-size: 14px; line-height: 1.6; }
body.lx.mi24-legacy .timeline-item__year, body.lx.mi24-legacy .timeline__year {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--label-gray);
  font-variant-numeric: tabular-nums;
}
body.lx.mi24-legacy .timeline-item__title, body.lx.mi24-legacy .timeline__title {
  font-family: var(--font-ui);
  font-size: 15px;
  font-weight: 500;
  color: var(--ink);
  margin: 4px 0 6px;
}
body.lx.mi24-legacy .timeline-item__content, body.lx.mi24-legacy .timeline__content {
  font-size: 14px;
  line-height: 1.6;
  color: var(--gray-text);
}

/* ── 2p · Schritt-Listen: Mono-Nummern statt Farbkreise ── */
body.lx.mi24-legacy .step-by-step, body.lx.mi24-legacy .numbered-list {
  margin: 28px 0;
  border-top: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .step, body.lx.mi24-legacy .list-item {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 18px;
  padding: 24px 0;
  border-bottom: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .step-number, body.lx.mi24-legacy .number {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--white) !important;
  background-image: none !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 2px !important;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.05em;
  color: var(--ink) !important;
  font-variant-numeric: tabular-nums;
  box-shadow: none !important;
  flex: none;
}
body.lx.mi24-legacy .step-content h3, body.lx.mi24-legacy .step-content h4 { margin: 4px 0 8px; font-size: 16px; }
body.lx.mi24-legacy .step-content p { font-size: 15px; margin-bottom: 10px; }

/* ── 2q · Kosten-Familie: Mono-Werte, Hairline-Zeilen ── */
body.lx.mi24-legacy .cost-breakdown, body.lx.mi24-legacy .running-costs, body.lx.mi24-legacy .cost-catalog,
body.lx.mi24-legacy .forbidden-costs {
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 2px !important;
  padding: 24px 28px;
  margin: 28px 0;
  box-shadow: none !important;
}
body.lx.mi24-legacy .cost-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--ink);
  margin-bottom: 4px;
}
body.lx.mi24-legacy .cost-item, body.lx.mi24-legacy .running-cost-item {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding: 11px 0;
  border-bottom: 1px solid var(--hairline-light);
  font-size: 14px;
  color: var(--gray-text);
}
body.lx.mi24-legacy .cost-item:last-child, body.lx.mi24-legacy .running-cost-item:last-child { border-bottom: 0; }
body.lx.mi24-legacy .cost-amount, body.lx.mi24-legacy .cost-percentage, body.lx.mi24-legacy .cost-avg {
  font-family: var(--font-mono);
  font-size: 13px;
  letter-spacing: 0.02em;
  color: var(--ink);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
body.lx.mi24-legacy .cost-number {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  color: var(--label-gray);
  font-variant-numeric: tabular-nums;
}
body.lx.mi24-legacy .cost-content h4 { margin: 0 0 4px; font-size: 15px; }
body.lx.mi24-legacy .cost-example, body.lx.mi24-legacy .example-text {
  font-size: 14px;
  line-height: 1.6;
  color: var(--gray-text);
}
body.lx.mi24-legacy .big-number {
  font-family: var(--font-display);
  font-weight: 300;
  font-size: clamp(36px, 4vw, 52px);
  line-height: 1.1;
  letter-spacing: -0.03em;
  color: var(--ink) !important;
  font-variant-numeric: tabular-nums;
}

/* ── 2r · Trust / Gesetze / Stadtteile im Artikel ── */
body.lx.mi24-legacy .trust-signals {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
  margin: 32px 0;
  padding: 24px 28px;
  background: var(--light-base) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 2px !important;
  box-shadow: none !important;
}
body.lx.mi24-legacy .trust-item { display: flex; align-items: center; gap: 12px; }
body.lx.mi24-legacy .trust-signals .trust-icon {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--black-base) !important;
  background-image: none !important;
  border-radius: 2px !important;
  color: var(--white);
  font-family: var(--font-mono);
  font-size: 12px;
  filter: none;
  opacity: 1;
  flex: none;
}
body.lx.mi24-legacy .trust-text strong { display: block; font-size: 14px; font-weight: 500; color: var(--ink); }
body.lx.mi24-legacy .trust-text span {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--label-gray);
}

body.lx.mi24-legacy .law-boxes { display: grid; gap: 16px; margin: 28px 0; }
body.lx.mi24-legacy .law-box h4 { margin: 0 0 8px; font-size: 15px; }

body.lx.mi24-legacy .districts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  margin: 28px 0;
}
body.lx.mi24-legacy .district-card {
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 12px !important;
  padding: 20px 22px;
  text-align: left;
  box-shadow: none !important;
  transition: border-color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .district-card:hover {
  border-color: var(--gray-text) !important;
  background: var(--white) !important;
}
body.lx.mi24-legacy .district-card h4, body.lx.mi24-legacy .district-card__name {
  font-size: 15px;
  font-weight: 500;
  color: var(--ink) !important;
  margin: 0 0 6px;
}
body.lx.mi24-legacy .district-card p {
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--gray-text);
  margin: 0;
  font-variant-numeric: tabular-nums;
}

body.lx.mi24-legacy .muster-box { background: var(--light-warm) !important; }

/* ────────────────────────────────────────────────────────────
   3 · KATEGORIE- / HUB-SEITEN
   ──────────────────────────────────────────────────────────── */

body.lx.mi24-legacy .page-hero {
  background: var(--light-base) !important;
  background-image: none !important;
  color: var(--gray-text) !important;
  padding: calc(var(--lx-nav-h) + 76px) 0 56px;
  border-bottom: 1px solid var(--hairline-light);
}
/* !important: Inline-Block setzt color:#FFFFFF !important auf hellem Grund */
body.lx.mi24-legacy .page-hero h1 {
  font-family: var(--font-display) !important;
  font-size: clamp(38px, 4.8vw, 58px);
  font-weight: 300 !important;
  line-height: 1.15;
  letter-spacing: -0.05em;
  color: var(--ink) !important;
  margin-bottom: 18px;
}
body.lx.mi24-legacy .page-hero__lead {
  font-size: 18px;
  line-height: 1.6;
  color: var(--gray-text) !important;
  max-width: 62ch;
  margin: 0 auto;
}
body.lx.mi24-legacy .page-hero__count {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 20px;
  padding: 6px 14px 5px;
  background: transparent !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 45px !important;
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  color: var(--label-gray) !important;
  font-variant-numeric: tabular-nums;
}

body.lx.mi24-legacy .breadcrumb {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 24px 0;
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  color: var(--label-gray) !important;
}
body.lx.mi24-legacy .breadcrumb a { color: var(--label-gray) !important; text-decoration: none; }
body.lx.mi24-legacy .breadcrumb a:hover { color: var(--ink) !important; }

body.lx.mi24-legacy .container--narrow { max-width: 820px; }

body.lx.mi24-legacy .articles { padding: 64px 0 96px; }
body.lx.mi24-legacy .articles-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}
/* Hub-Karten: Hairline-Tiles wie .lx-tile */
body.lx.mi24-legacy .article-card {
  display: block;
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 14px !important;
  padding: 26px 24px;
  box-shadow: none !important;
  transition: transform var(--lx-dur-fast) var(--lx-ease),
              border-color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .article-card:hover {
  transform: translateY(-4px);
  border-color: var(--gray-text) !important;
  box-shadow: none !important;
}
body.lx.mi24-legacy .article-card__title, body.lx.mi24-legacy .article-card h3 {
  font-family: var(--font-ui);
  font-size: 17px;
  font-weight: 500 !important;
  letter-spacing: -0.01em;
  line-height: 1.35;
  color: var(--ink) !important;
  margin: 0 0 8px;
}
body.lx.mi24-legacy .article-card p, body.lx.mi24-legacy .article-card__excerpt {
  font-size: 14px;
  line-height: 1.55;
  color: var(--gray-text) !important;
  margin: 0 0 12px;
}
body.lx.mi24-legacy .article-card__arrow {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 500;
  color: var(--ink) !important;
  transition: gap var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .article-card:hover .article-card__arrow { gap: 10px; }

/* Zweispaltiges Hub-Layout + rechte Sidebar */
body.lx.mi24-legacy .content-grid { display: grid; gap: 48px; }
body.lx.mi24-legacy .content-grid--2col { grid-template-columns: minmax(0, 1fr) 300px; align-items: start; }
body.lx.mi24-legacy .content-grid--toc { grid-template-columns: 240px minmax(0, 1fr) 300px; align-items: start; }
body.lx.mi24-legacy .toc-sidebar .toc-wrapper {
  position: sticky;
  top: 96px;
  background: transparent !important;
  border: 0 !important;
  border-left: 1px solid var(--hairline-light) !important;
  border-radius: 0 !important;
  padding: 0 0 0 16px;
  box-shadow: none !important;
}
body.lx.mi24-legacy .toc-sidebar .toc a {
  display: block;
  padding: 6px 0;
  font-size: 13px;
  color: var(--label-gray);
  transition: color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .toc-sidebar .toc a:hover, body.lx.mi24-legacy .toc-sidebar .toc a.active { color: var(--ink); }
body.lx.mi24-legacy .right-sidebar .sidebar-sticky, body.lx.mi24-legacy .article-sidebar .sidebar-sticky {
  position: sticky;
  top: 96px;
  display: grid;
  gap: 16px;
}
body.lx.mi24-legacy .sidebar-box {
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 12px !important;
  padding: 22px 24px;
  box-shadow: none !important;
}
body.lx.mi24-legacy .sidebar-box__title, body.lx.mi24-legacy .sidebar-box h3,
body.lx.mi24-legacy .sidebar-box h4 {
  margin: 0 0 14px;
}

body.lx.mi24-legacy .sidebar-links, body.lx.mi24-legacy .popular-list,
body.lx.mi24-legacy .quick-links__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
body.lx.mi24-legacy .sidebar-links li, body.lx.mi24-legacy .popular-list li {
  border-bottom: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .sidebar-links li:last-child, body.lx.mi24-legacy .popular-list li:last-child {
  border-bottom: 0;
}
body.lx.mi24-legacy .sidebar-links a, body.lx.mi24-legacy .popular-list a,
body.lx.mi24-legacy .quick-links a {
  display: block;
  padding: 9px 0;
  font-size: 14px;
  line-height: 1.45;
  color: var(--gray-text);
  text-decoration: none;
  transition: color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .sidebar-links a:hover, body.lx.mi24-legacy .popular-list a:hover,
body.lx.mi24-legacy .quick-links a:hover {
  color: var(--ink);
}
body.lx.mi24-legacy .quick-links__title {
  margin-bottom: 16px;
}

/* CTA-Boxen in der Sidebar: dunkle Panels */
body.lx.mi24-legacy .sidebar-box.cta, body.lx.mi24-legacy .sidebar-cta {
  background: var(--black-base) !important;
  border: 0 !important;
  border-radius: 12px !important;
  padding: 24px;
}
body.lx.mi24-legacy .sidebar-box.cta h3, body.lx.mi24-legacy .sidebar-box.cta h4,
body.lx.mi24-legacy .sidebar-cta h3, body.lx.mi24-legacy .sidebar-cta h4 {
  color: var(--label-gray-dark) !important;
}
body.lx.mi24-legacy .sidebar-box.cta h3::before, body.lx.mi24-legacy .sidebar-box.cta h4::before,
body.lx.mi24-legacy .sidebar-cta h3::before, body.lx.mi24-legacy .sidebar-cta h4::before {
  background: var(--white);
}
body.lx.mi24-legacy .sidebar-box.cta p, body.lx.mi24-legacy .sidebar-cta p {
  color: var(--white-60) !important;
  font-size: 13px;
  line-height: 1.55;
  margin-bottom: 14px;
}
body.lx.mi24-legacy .article-layout--with-sidebar {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr) 300px;
  gap: 48px;
  align-items: start;
}
/* 992–1200px: TOC weg, Artikel + Sidebar 2-spaltig (sonst zu enge Artikelspalte) */
@media (max-width: 1200px) and (min-width: 992px) {
  body.lx.mi24-legacy .article-layout--with-sidebar { grid-template-columns: minmax(0, 1fr) 280px; }
  body.lx.mi24-legacy .article-layout--with-sidebar .article-toc { display: none; }
}

/* ────────────────────────────────────────────────────────────
   4 · GLOSSAR
   ──────────────────────────────────────────────────────────── */

body.lx.mi24-legacy .glossary-search { display: flex; justify-content: center; margin-top: 28px; }
/* !important: mi24-lateral-article.css erzwingt 12px-Radius */
body.lx.mi24-legacy .glossary-search__input {
  width: 100%;
  max-width: 560px;
  height: 48px;
  padding: 0 18px;
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 2px !important;
  font-family: var(--font-ui) !important;
  font-size: 15px;
  color: var(--ink) !important;
  box-shadow: none !important;
  outline: none;
  transition: border-color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .glossary-search__input:focus {
  border-color: var(--ink) !important;
  box-shadow: none !important;
}
body.lx.mi24-legacy .glossary-search__input::placeholder { color: var(--label-gray) !important; }
body.lx.mi24-legacy .glossary-search__hint {
  margin-top: 14px;
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  color: var(--label-gray) !important;
}

/* Alphabet: Mono-Buchstaben-Pills mit Hairline */
body.lx.mi24-legacy .alphabet-nav {
  position: sticky;
  top: var(--lx-nav-h);
  z-index: 80;
  background: var(--light-base) !important;
  border-bottom: 1px solid var(--hairline-light);
  padding: 14px 0;
}
body.lx.mi24-legacy .alphabet-nav__inner { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
body.lx.mi24-legacy .alphabet-nav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  background: transparent !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 45px !important;
  font-family: var(--font-mono) !important;
  font-size: 12px !important;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--gray-text) !important;
  text-decoration: none;
  box-shadow: none !important;
  transition: border-color var(--lx-dur-fast) var(--lx-ease),
              color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .alphabet-nav a:hover {
  border-color: var(--ink) !important;
  color: var(--ink) !important;
  background: transparent !important;
  transform: none !important;
}
body.lx.mi24-legacy .alphabet-nav a.active {
  background: var(--ink) !important;
  border-color: var(--ink) !important;
  color: var(--white) !important;
}

body.lx.mi24-legacy .glossary { padding: 64px 0 96px; }
body.lx.mi24-legacy .glossary-section { margin-bottom: 56px; }
body.lx.mi24-legacy .glossary-section__letter {
  font-family: var(--font-display) !important;
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 300 !important;
  letter-spacing: -0.04em;
  color: var(--ink) !important;
  padding-bottom: 14px;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--hairline-light) !important;
}
body.lx.mi24-legacy .glossary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
}
/* !important: mi24-lateral-article.css entkernt die Karte (border:0) —
   die Spec verlangt echte lx-Karten */
body.lx.mi24-legacy .glossary-card {
  display: block;
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 14px !important;
  padding: 22px 24px;
  box-shadow: none !important;
  text-decoration: none;
  transition: transform var(--lx-dur-fast) var(--lx-ease),
              border-color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .glossary-card:hover {
  transform: translateY(-4px);
  border-color: var(--gray-text) !important;
  box-shadow: none !important;
}
body.lx.mi24-legacy .glossary-card__title {
  font-family: var(--font-ui);
  font-size: 16px;
  font-weight: 500 !important;
  letter-spacing: -0.01em;
  color: var(--ink) !important;
  margin: 0 0 8px;
}
body.lx.mi24-legacy .glossary-card__excerpt {
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--gray-text) !important;
  margin: 0;
}

body.lx.mi24-legacy .glossary-article { min-width: 0; }
body.lx.mi24-legacy .related-terms { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0 8px; }
body.lx.mi24-legacy .term-link {
  display: inline-flex;
  align-items: center;
  padding: 7px 14px 6px;
  background: transparent !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 45px !important;
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  color: var(--gray-text) !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: border-color var(--lx-dur-fast) var(--lx-ease),
              color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .term-link:hover { border-color: var(--ink) !important; color: var(--ink) !important; }

/* ────────────────────────────────────────────────────────────
   5 · LEGAL / UTILITY + 404
   ──────────────────────────────────────────────────────────── */

body.lx.mi24-legacy .hero {
  background: var(--light-base) !important;
  background-image: none !important;
  color: var(--gray-text);
  padding: calc(var(--lx-nav-h) + 76px) 0 56px;
  border-bottom: 1px solid var(--hairline-light);
  overflow: visible;
}
body.lx.mi24-legacy .hero::before { display: none; /* Legacy-Deko-Overlays */ }
body.lx.mi24-legacy .hero__title, body.lx.mi24-legacy .hero h1 {
  font-family: var(--font-display) !important;
  font-size: clamp(38px, 4.8vw, 58px);
  font-weight: 300 !important;
  line-height: 1.15;
  letter-spacing: -0.05em;
  color: var(--ink) !important;
  margin-bottom: 16px;
}
body.lx.mi24-legacy .hero__subtitle, body.lx.mi24-legacy .hero__description, body.lx.mi24-legacy .hero__lead,
body.lx.mi24-legacy .hero p {
  font-size: 18px;
  line-height: 1.6;
  color: var(--gray-text) !important;
  max-width: 62ch;
}
body.lx.mi24-legacy .hero__badge {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin-bottom: 20px;
  box-shadow: none !important;
}

body.lx.mi24-legacy .content { padding: 64px 0 120px; }
body.lx.mi24-legacy .content .container { max-width: 768px; }
body.lx.mi24-legacy .content h2 {
  font-family: var(--font-display);
  font-size: clamp(24px, 2.8vw, 32px);
  font-weight: 300;
  letter-spacing: -0.04em;
  color: var(--ink);
  margin: 48px 0 18px;
  padding-top: 26px;
  border-top: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .content h2:first-of-type { margin-top: 0; padding-top: 0; border-top: 0; }
body.lx.mi24-legacy .content h3 { margin: 30px 0 12px; }
body.lx.mi24-legacy .content p { color: var(--gray-text); margin-bottom: 16px; }
body.lx.mi24-legacy .content ul { list-style: none; margin: 16px 0 24px; padding-left: 0; }
body.lx.mi24-legacy .content ul > li { position: relative; padding-left: 22px; margin-bottom: 8px; }
body.lx.mi24-legacy .content ul > li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 6px;
  height: 6px;
  background: var(--ink);
  border-radius: 0;
}
body.lx.mi24-legacy .content strong { color: var(--ink); font-weight: 600; }

body.lx.mi24-legacy .part-header {
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--hairline-light) !important;
  border-radius: 0 !important;
  padding: 24px 0 0;
  margin: 48px 0 12px;
  width: 100%;
}

body.lx.mi24-legacy .stand {
  margin-top: 56px;
  padding-top: 22px;
  border-top: 1px solid var(--hairline-light);
  text-align: center;
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  color: var(--label-gray) !important;
  font-variant-numeric: tabular-nums;
}

/* ── 404 ── */
body.lx.mi24-legacy .error-page {
  background: var(--light-base) !important;
  min-height: calc(100svh - var(--lx-nav-h));
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(var(--lx-nav-h) + 48px) 24px 72px;
}
body.lx.mi24-legacy .error-content { text-align: center; max-width: 640px; }
body.lx.mi24-legacy .error-code {
  font-family: var(--font-display) !important;
  font-size: clamp(120px, 22vw, 200px);
  font-weight: 300 !important;
  line-height: 1;
  letter-spacing: -0.05em;
  color: var(--ink) !important;
  display: inline-block;
  margin-bottom: 20px;
  font-variant-numeric: tabular-nums;
}
body.lx.mi24-legacy .error-code::after { display: none; /* Legacy-Akzentbalken */ }
body.lx.mi24-legacy .error-title {
  font-family: var(--font-display) !important;
  font-size: clamp(26px, 4vw, 38px);
  font-weight: 300 !important;
  letter-spacing: -0.04em;
  color: var(--ink) !important;
  margin-bottom: 14px;
}
body.lx.mi24-legacy .error-text {
  font-size: 16px;
  line-height: 1.7;
  color: var(--gray-text) !important;
  margin-bottom: 36px;
}
body.lx.mi24-legacy .error-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
  align-items: center;
}
body.lx.mi24-legacy .mi24-404-badge {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin-bottom: 24px;
}

/* Quick-Links unter dem 404-Inhalt: ruhige Hairline-Pills */
body.lx.mi24-legacy .error-page .quick-links {
  margin-top: 56px;
  padding-top: 36px;
  border-top: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .error-page .quick-links__list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}
body.lx.mi24-legacy .error-page .quick-links__item {
  display: inline-flex;
  align-items: center;
  height: 39px;
  padding: 0 20px;
  background: transparent !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 45px !important;
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 500;
  color: var(--ink) !important;
  text-decoration: none;
  box-shadow: none !important;
  transition: border-color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .error-page .quick-links__item:hover { border-color: var(--ink) !important; }

/* ────────────────────────────────────────────────────────────
   6 · TOOL- / RECHNER-BASIS (grob — Feinschliff in W3)
   Ziel-Look: .lx-calcwin (steuerersparnis-rechner)
   ──────────────────────────────────────────────────────────── */

body.lx.mi24-legacy .calculator, body.lx.mi24-legacy .calculator-section {
  background: var(--light-base) !important;
  padding: 48px 0 72px;
}
body.lx.mi24-legacy .calc-card {
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 16px !important;
  padding: clamp(28px, 4vw, 44px);
  box-shadow: 0 24px 64px -32px rgba(8, 8, 8, 0.18) !important;
}
body.lx.mi24-legacy .calc-section-label, body.lx.mi24-legacy .calc-label {
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  color: var(--label-gray) !important;
}
body.lx.mi24-legacy .calc-section-label { margin-bottom: 22px; }
body.lx.mi24-legacy .calc-section-label::before {
  content: '';
  width: 6px;
  height: 6px;
  background: var(--ink);
  border-radius: 0;
  flex: none;
}
body.lx.mi24-legacy .calc-section-label::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--hairline-light);
}
body.lx.mi24-legacy .calc-label { margin-bottom: 8px; }
body.lx.mi24-legacy .calc-field { margin-bottom: 16px; }
body.lx.mi24-legacy .calc-input-wrap { position: relative; }
/* !important: mi24-lateral-article.css erzwingt 12px-Radius auf Inputs */
body.lx.mi24-legacy .calc-input, body.lx.mi24-legacy .calc-select {
  width: 100%;
  height: 48px;
  padding: 0 44px 0 16px;
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 2px !important;
  font-family: var(--font-ui) !important;
  font-size: 15px;
  font-weight: 500;
  color: var(--ink) !important;
  box-shadow: none !important;
  font-variant-numeric: tabular-nums;
  transition: border-color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .calc-input:hover { border-color: var(--gray-text) !important; }
body.lx.mi24-legacy .calc-input:focus, body.lx.mi24-legacy .calc-select:focus {
  border-color: var(--ink) !important;
  background: var(--white) !important;
  box-shadow: none !important;
  outline: none !important;
}
body.lx.mi24-legacy .calc-suffix {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--label-gray);
  pointer-events: none;
}
body.lx.mi24-legacy .calc-divider { height: 1px; background: var(--hairline-light); border: 0; margin: 24px 0; }
body.lx.mi24-legacy .calc-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 0;
  border-bottom: 1px solid var(--hairline-light);
  font-size: 14px;
  color: var(--gray-text);
  font-variant-numeric: tabular-nums;
}
body.lx.mi24-legacy .calc-section { margin-bottom: 28px; }
body.lx.mi24-legacy .calc-note { font-size: 13px; line-height: 1.55; color: var(--label-gray); }

/* Slider: 2px-Track, 16px-Quadrat-Thumb (kein blauer Kreis) */
body.lx.mi24-legacy input[type="range"], body.lx.mi24-legacy .range-slider, body.lx.mi24-legacy .calc-slider {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: 2px;
  background: var(--hairline-light) !important;
  border: 0;
  border-radius: 0;
  outline: none;
  padding: 0;
}
body.lx.mi24-legacy input[type="range"]::-webkit-slider-runnable-track,
body.lx.mi24-legacy .range-slider::-webkit-slider-runnable-track,
body.lx.mi24-legacy .calc-slider::-webkit-slider-runnable-track {
  height: 2px;
  background: var(--hairline-light) !important;
  border-radius: 0;
}
body.lx.mi24-legacy input[type="range"]::-webkit-slider-thumb,
body.lx.mi24-legacy .range-slider::-webkit-slider-thumb,
body.lx.mi24-legacy .calc-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 16px;
  height: 16px;
  margin-top: -7px;
  background: var(--ink) !important;
  border: 0 !important;
  border-radius: 2px !important;
  cursor: pointer;
  box-shadow: none !important;
  transition: transform var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy input[type="range"]::-webkit-slider-thumb:hover { transform: scale(1.12); }
body.lx.mi24-legacy input[type="range"]::-moz-range-track,
body.lx.mi24-legacy .range-slider::-moz-range-track, body.lx.mi24-legacy .calc-slider::-moz-range-track {
  height: 2px;
  background: var(--hairline-light);
  border: 0;
}
body.lx.mi24-legacy input[type="range"]::-moz-range-thumb,
body.lx.mi24-legacy .range-slider::-moz-range-thumb, body.lx.mi24-legacy .calc-slider::-moz-range-thumb {
  width: 16px;
  height: 16px;
  background: var(--ink);
  border: 0;
  border-radius: 2px;
  cursor: pointer;
}

/* Ergebnis-Panel: dunkel, flach, Sentient-Zahlen */
body.lx.mi24-legacy .results-card {
  background: var(--black-base) !important;
  background-image: none !important;
  border: 1px solid var(--hairline-dark) !important;
  border-radius: 16px !important;
  padding: clamp(28px, 4vw, 40px);
  color: var(--white) !important;
  box-shadow: none !important;
}
body.lx.mi24-legacy .results-card__label, body.lx.mi24-legacy .results-card__metric-label {
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  color: var(--label-gray-dark) !important;
}
body.lx.mi24-legacy .results-card__main-value, body.lx.mi24-legacy .results-card__value {
  font-family: var(--font-display) !important;
  font-size: clamp(40px, 5vw, 56px);
  font-weight: 300 !important;
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: var(--white) !important;
  font-variant-numeric: tabular-nums;
}
body.lx.mi24-legacy .results-card__sub { font-size: 14px; color: var(--white-60) !important; }
body.lx.mi24-legacy .results-card__metric {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 0;
  border-bottom: 1px solid var(--hairline-dark);
}
body.lx.mi24-legacy .results-card__metric:last-child { border-bottom: 0; }
body.lx.mi24-legacy .results-card__metric-value {
  font-family: var(--font-display) !important;
  font-size: 20px;
  font-weight: 300 !important;
  color: var(--white) !important;
  font-variant-numeric: tabular-nums;
}
body.lx.mi24-legacy .results-card__divider {
  height: 1px;
  background: var(--hairline-dark) !important;
  border: 0;
  margin: 20px 0;
}
body.lx.mi24-legacy .result { font-variant-numeric: tabular-nums; }

/* Rechenbeispiel-Box im Artikel: Daten-Panel mit Mono-Zeilen */
body.lx.mi24-legacy .calc-box {
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 2px !important;
  padding: 24px 28px;
  margin: 28px 0;
  box-shadow: none !important;
}
body.lx.mi24-legacy .calc-box__title {
  margin-bottom: 14px;
}

body.lx.mi24-legacy .calc-box__row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 0;
  border-bottom: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .calc-box__label { font-size: 14px; color: var(--gray-text); }
body.lx.mi24-legacy .calc-box__value {
  font-family: var(--font-mono);
  font-size: 13px;
  letter-spacing: 0.02em;
  color: var(--ink);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
body.lx.mi24-legacy .calc-box__value--highlight { color: var(--ink) !important; font-weight: 500; }
body.lx.mi24-legacy .calc-box__total {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 0 0;
  margin-top: 4px;
  border-top: 1px solid var(--ink);
}
body.lx.mi24-legacy .calc-box__total-label {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--ink);
}
body.lx.mi24-legacy .calc-box__total-value {
  font-family: var(--font-display);
  font-size: 24px;
  font-weight: 300;
  letter-spacing: -0.02em;
  color: var(--ink);
  font-variant-numeric: tabular-nums;
}

body.lx.mi24-legacy .calculator-cta { text-align: center; margin-top: 28px; }

/* ────────────────────────────────────────────────────────────
   7 · LOCATION-BASIS (Städte-Seiten)
   ──────────────────────────────────────────────────────────── */

body.lx.mi24-legacy .city-hero {
  background: var(--light-base) !important;
  background-image: none !important;
  color: var(--gray-text);
  padding: calc(var(--lx-nav-h) + 76px) 0 56px;
  border-bottom: 1px solid var(--hairline-light);
}
body.lx.mi24-legacy .city-hero h1 {
  font-family: var(--font-display) !important;
  font-size: clamp(38px, 4.8vw, 58px);
  font-weight: 300 !important;
  line-height: 1.15;
  letter-spacing: -0.05em;
  color: var(--ink) !important;
  margin-bottom: 16px;
}
body.lx.mi24-legacy .city-hero__badge {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin-bottom: 18px;
  color: var(--label-gray) !important;
  font-family: var(--font-mono);
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .05em;
}

body.lx.mi24-legacy .city-hero__breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 24px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--label-gray);
}
body.lx.mi24-legacy .city-hero__breadcrumb a { color: var(--label-gray) !important; text-decoration: none; }
body.lx.mi24-legacy .city-hero__breadcrumb a:hover { color: var(--ink) !important; }
body.lx.mi24-legacy .city-hero__lead {
  font-size: 18px;
  line-height: 1.6;
  color: var(--gray-text) !important;
  max-width: 62ch;
}

/* Kennzahlen: Daten-Panels (Radius 2, Sentient-Zahlen, Mono-Labels) */
body.lx.mi24-legacy .stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 40px; }
body.lx.mi24-legacy .stat-card {
  background: var(--white) !important;
  background-image: none !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 2px !important;
  padding: 22px 24px;
  box-shadow: none !important;
  text-align: left;
}
body.lx.mi24-legacy .stat-card__value {
  font-family: var(--font-display) !important;
  font-size: clamp(28px, 3vw, 40px);
  font-weight: 300 !important;
  line-height: 1.1;
  letter-spacing: -0.03em;
  color: var(--ink) !important;
  font-variant-numeric: tabular-nums;
  margin-bottom: 10px;
}
body.lx.mi24-legacy .stat-card__label {
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  color: var(--label-gray) !important;
}

body.lx.mi24-legacy .content-section { padding: 64px 0; }
body.lx.mi24-legacy .content-section h2 {
  font-family: var(--font-display) !important;
  font-size: clamp(26px, 3vw, 36px);
  font-weight: 300 !important;
  letter-spacing: -0.04em;
  color: var(--ink) !important;
  margin-bottom: 20px;
}
body.lx.mi24-legacy .content-section p { color: var(--gray-text) !important; max-width: 72ch; margin-bottom: 18px; }

body.lx.mi24-legacy .districts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 16px;
  margin: 32px 0;
}

/* Weitere Städte: warme Fläche, Hairline-Karten */
body.lx.mi24-legacy .other-cities { background: var(--light-warm) !important; padding: 72px 0; }
body.lx.mi24-legacy .other-cities h2 {
  font-family: var(--font-display) !important;
  font-weight: 300 !important;
  letter-spacing: -0.04em;
  color: var(--ink) !important;
  text-align: center;
  margin-bottom: 32px;
}
body.lx.mi24-legacy .cities-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 24px;
}
body.lx.mi24-legacy .city-link {
  display: block;
  background: var(--white) !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 12px !important;
  padding: 18px 16px;
  text-align: center;
  text-decoration: none;
  box-shadow: none !important;
  transition: transform var(--lx-dur-fast) var(--lx-ease),
              border-color var(--lx-dur-fast) var(--lx-ease);
}
body.lx.mi24-legacy .city-link:hover {
  transform: translateY(-4px);
  border-color: var(--gray-text) !important;
  box-shadow: none !important;
}
body.lx.mi24-legacy .city-link__name {
  display: block;
  font-family: var(--font-ui);
  font-size: 15px;
  font-weight: 500;
  color: var(--ink) !important;
}
body.lx.mi24-legacy .city-link__yield {
  display: block;
  margin-top: 6px;
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  color: var(--label-gray) !important;
  font-variant-numeric: tabular-nums;
}

/* ────────────────────────────────────────────────────────────
   8 · KILL-LAYER (höchste Priorität, gezielt — keine *-Nukes)
   ──────────────────────────────────────────────────────────── */

/* Inline-STYLE-Gradienten überleben das Farb-Mapping des Blocks nicht mit */
body.lx.mi24-legacy [style*="linear-gradient"] { background-image: none !important; }

/* Schatten-Verbot auf allen bekannten Legacy-Karten/Panels */
body.lx.mi24-legacy .related-card, body.lx.mi24-legacy .article-card, body.lx.mi24-legacy .glossary-card,
body.lx.mi24-legacy .faq-item, body.lx.mi24-legacy .key-facts, body.lx.mi24-legacy .highlight-box,
body.lx.mi24-legacy .info-box, body.lx.mi24-legacy .sidebar-box, body.lx.mi24-legacy .tip-card,
body.lx.mi24-legacy .comparison-card, body.lx.mi24-legacy .district-card, body.lx.mi24-legacy .city-link,
body.lx.mi24-legacy .stat-card, body.lx.mi24-legacy .cta-section, body.lx.mi24-legacy .toc-cta,
body.lx.mi24-legacy .author-box, body.lx.mi24-legacy .calc-box, body.lx.mi24-legacy .results-card,
body.lx.mi24-legacy .term-link, body.lx.mi24-legacy .quick-links__item {
  box-shadow: none !important;
}
body.lx.mi24-legacy .related-card:hover, body.lx.mi24-legacy .article-card:hover,
body.lx.mi24-legacy .glossary-card:hover, body.lx.mi24-legacy .city-link:hover,
body.lx.mi24-legacy .district-card:hover {
  box-shadow: none !important;
}

/* Badges/Eyebrows: keine Farbflächen, kein Gradient-Amber */
body.lx.mi24-legacy .badge, body.lx.mi24-legacy .year-badge {
  background: transparent !important;
  background-image: none !important;
  border: 1px solid var(--hairline-light) !important;
  border-radius: 45px !important;
  color: var(--gray-text) !important;
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  box-shadow: none !important;
}
body.lx.mi24-legacy .eyebrow {
  font-family: var(--font-mono) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase;
  color: var(--label-gray) !important;
  background: transparent !important;
}

/* Mark-/Text-Highlight: warme Fläche statt Textmarker-Farbe.
   Nur echte Hervorhebungen — Footer-Link-Klasse .highlight bleibt Text. */
body.lx.mi24-legacy mark, body.lx.mi24-legacy .article-content .highlight,
body.lx.mi24-legacy .content .highlight, body.lx.mi24-legacy .main-article .highlight {
  background: var(--light-warm) !important;
  color: var(--ink) !important;
  padding: 0 3px;
  border-radius: 0;
}

/* Emoji-/Bild-Icons monochromisieren — Fotos bleiben ORIGINAL
   (kein globales img-Filter!) */
body.lx.mi24-legacy .tip-icon, body.lx.mi24-legacy .error-icon, body.lx.mi24-legacy .other-calcs__icon,
body.lx.mi24-legacy .funnel-option__icon {
  filter: grayscale(1);
  opacity: 0.85;
}

/* Letzte Buntfarben-Reste mit Inline-!important (z. B. Cyan-Hover) */
body.lx.mi24-legacy .site-footer a:hover, body.lx.mi24-legacy .footer a:hover { color: var(--white) !important; }
body.lx.mi24-legacy .article-content svg [stroke]:not([stroke="none"]):not([stroke="currentColor"]) {
  stroke: currentColor;
}
body.lx.mi24-legacy .article-content svg [fill]:not([fill="none"]):not([fill="currentColor"]) { fill: currentColor; }

/* ────────────────────────────────────────────────────────────
   9 · RESPONSIVE (synchron zu mi24-lateral.css: 767 / 991 / 1100)
   ──────────────────────────────────────────────────────────── */

@media (min-width: 768px) {
  body.lx.mi24-legacy .article-layout { padding-left: 48px; padding-right: 48px; }
}
@media (min-width: 1100px) {
  body.lx.mi24-legacy .article-layout { padding: 64px 64px 112px; }
}

/* Zwischen 992 und 1024 versteckt der Inline-Block die TOC (Legacy-Breakpoint
   1024) — auf den lx-Breakpoint 991 zurückholen */
@media (min-width: 992px) {
  body.lx.mi24-legacy .article-toc { display: block; }
  body.lx.mi24-legacy .mobile-toc { display: none; }
}

@media (max-width: 1100px) {
  body.lx.mi24-legacy .article-layout { grid-template-columns: 240px minmax(0, 1fr); gap: 48px; }
  body.lx.mi24-legacy .content-grid--toc { grid-template-columns: minmax(0, 1fr) 280px; }
  body.lx.mi24-legacy .toc-sidebar { display: none; }
}

@media (max-width: 991px) {
  body.lx.mi24-legacy .article-layout { grid-template-columns: 1fr; gap: 0; padding-top: 40px; }
  body.lx.mi24-legacy .article-toc { display: none; }
  body.lx.mi24-legacy .mobile-toc { display: block; }
  body.lx.mi24-legacy .content-grid--2col, body.lx.mi24-legacy .content-grid--toc,
  body.lx.mi24-legacy .article-layout--with-sidebar {
    grid-template-columns: 1fr;
  }
  body.lx.mi24-legacy .right-sidebar { order: 2; }
  body.lx.mi24-legacy .right-sidebar .sidebar-sticky, body.lx.mi24-legacy .article-sidebar .sidebar-sticky {
    position: static;
  }
  body.lx.mi24-legacy .related-grid, body.lx.mi24-legacy .article-grid, body.lx.mi24-legacy .articles-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  body.lx.mi24-legacy .stats-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 767px) {
  body.lx.mi24-legacy .article-hero, body.lx.mi24-legacy .page-hero, body.lx.mi24-legacy .hero,
  body.lx.mi24-legacy .city-hero {
    padding-top: calc(var(--lx-nav-h) + clamp(40px, 9vw, 64px));
    padding-bottom: clamp(36px, 7vw, 48px);
  }
  body.lx.mi24-legacy .article-hero h1 { font-size: clamp(30px, 8vw, 38px); }
  body.lx.mi24-legacy .article-hero__lead, body.lx.mi24-legacy .page-hero__lead,
  body.lx.mi24-legacy .city-hero__lead, body.lx.mi24-legacy .lead {
    font-size: 16px;
  }
  body.lx.mi24-legacy .article-layout { padding: 32px 20px 64px; }
  body.lx.mi24-legacy .article-content h2, body.lx.mi24-legacy .main-article h2 {
    margin-top: 44px;
    padding-top: 22px;
  }

/* Tabellen scrollen statt quetschen */
  body.lx.mi24-legacy .article-content table, body.lx.mi24-legacy .main-article table,
  body.lx.mi24-legacy .data-table, body.lx.mi24-legacy .snippet-table, body.lx.mi24-legacy .comparison-table,
  body.lx.mi24-legacy .rendite-tabelle {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  body.lx.mi24-legacy .related-grid, body.lx.mi24-legacy .article-grid, body.lx.mi24-legacy .articles-grid,
  body.lx.mi24-legacy .comparison-grid, body.lx.mi24-legacy .pros-cons {
    grid-template-columns: 1fr;
  }

  body.lx.mi24-legacy .cta-section { padding: 48px 24px; margin: 56px 0; border-radius: 14px; }

  body.lx.mi24-legacy .key-facts, body.lx.mi24-legacy .highlight-box, body.lx.mi24-legacy .info-box,
  body.lx.mi24-legacy .definition-box, body.lx.mi24-legacy .calc-box, body.lx.mi24-legacy .cost-breakdown,
  body.lx.mi24-legacy .running-costs {
    padding: 20px 22px;
  }
  body.lx.mi24-legacy .author-box { flex-direction: column; padding: 20px 22px !important; }

  body.lx.mi24-legacy .step, body.lx.mi24-legacy .list-item { grid-template-columns: 40px 1fr; gap: 14px; }

  body.lx.mi24-legacy .alphabet-nav a { width: 34px; height: 34px; }
  body.lx.mi24-legacy .glossary-grid { grid-template-columns: 1fr; }

  body.lx.mi24-legacy .error-code { font-size: clamp(96px, 30vw, 140px); }
  body.lx.mi24-legacy .error-actions { flex-direction: column; }
  body.lx.mi24-legacy .error-actions .btn { width: 100%; justify-content: center; }

  body.lx.mi24-legacy .content { padding: 48px 0 80px; }
  body.lx.mi24-legacy .trust-signals { grid-template-columns: 1fr 1fr; padding: 18px 20px; }
}

@media (max-width: 479px) {
  body.lx.mi24-legacy .stats-grid { grid-template-columns: 1fr; }
  body.lx.mi24-legacy .trust-signals { grid-template-columns: 1fr; }
  body.lx.mi24-legacy .mobile-toc { margin: 12px 16px 0; }
/* 375px: kein horizontales Scrollen */
  body.lx.mi24-legacy .article-content, body.lx.mi24-legacy .main-article, body.lx.mi24-legacy .content,
  body.lx.mi24-legacy .content-section {
    overflow-wrap: break-word;
    word-break: break-word;
  }
}

/* ── Seltene Alt-Komponenten (Coverage-Restposten) ─────────────── */
body.lx.mi24-legacy .forbidden-item,
body.lx.mi24-legacy .example-calc,
body.lx.mi24-legacy .download-list li {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  padding: 14px 18px;
  background: var(--white);
  border: 1px solid var(--hairline-light);
  border-radius: 2px;
  margin-bottom: 10px;
}
body.lx.mi24-legacy .forbidden-icon {
  font-size: 15px;
  filter: grayscale(1);
  opacity: 0.85;
  flex-shrink: 0;
}
body.lx.mi24-legacy .forbidden-content strong { color: var(--ink); }
body.lx.mi24-legacy .note,
body.lx.mi24-legacy .small-text {
  font-size: 13px;
  color: var(--label-gray);
}
body.lx.mi24-legacy .warning {
  background: var(--light-warm);
  border: 1px solid var(--hairline-light);
  border-radius: 2px;
  padding: 16px 20px;
}
body.lx.mi24-legacy .read-more {
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 500;
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: 3px;
}
body.lx.mi24-legacy .download-list { list-style: none; padding: 0; }

/* ── AEO-Artikel: fehlende Pipeline-Klassen (Vorbestand) ───────── */
body.mi24-design .mi24-seo-hero-copy { min-width: 0; }
body.mi24-design .mi24-seo-bar-row {
  display: grid;
  gap: 8px;
  padding: 12px 0;
  border-bottom: 1px solid var(--hairline-light, #e5e5e3);
}
body.mi24-design .mi24-seo-bar-row:last-child { border-bottom: 0; }

/* ── Long-Tail-Einzelseiten (finanzierung-2026, wohnung-kaufen, finanzierung-Hub) ── */
body.lx.mi24-legacy .content-layout { display: grid; grid-template-columns: 260px 1fr; gap: 48px; }
/* 3-Kind-Fall (TOC · Artikel · right-sidebar): sonst wrappt die right-sidebar in eine
   neue Zeile in die schmale 260px-Spalte → große leere Fläche rechts. Desktop-only. */
@media (min-width: 992px) {
  body.lx.mi24-legacy .content-layout:has(.right-sidebar) { grid-template-columns: 260px minmax(0, 1fr) 300px; }
}
body.lx.mi24-legacy .left-sidebar { min-width: 0; }
body.lx.mi24-legacy .toc-container { position: sticky; top: 96px; }
body.lx.mi24-legacy .calculation-box,
body.lx.mi24-legacy .program-box,
body.lx.mi24-legacy .strategy-tip {
  background: var(--white);
  border: 1px solid var(--hairline-light);
  border-radius: 2px;
  padding: 24px 28px;
  margin: 24px 0;
}
body.lx.mi24-legacy .program-table { width: 100%; border-collapse: collapse; }
body.lx.mi24-legacy .rate-list { list-style: none; padding: 0; }
body.lx.mi24-legacy .rate-list li { padding: 10px 0; border-bottom: 1px solid var(--hairline-light); }
body.lx.mi24-legacy .check::before { content: "■"; font-size: 6px; vertical-align: 2px; margin-right: 8px; color: var(--ink); }
body.lx.mi24-legacy .option { color: var(--gray-text); }
body.lx.mi24-legacy .negative { color: var(--label-gray); }
body.lx.mi24-legacy .small, body.lx.mi24-legacy small { font-size: 13px; color: var(--label-gray); }
body.lx.mi24-legacy .snippet-definition { font-size: 17px; color: var(--ink); max-width: 62ch; }
body.lx.mi24-legacy .requirements-grid, body.lx.mi24-legacy .equity-types { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; margin: 24px 0; }
body.lx.mi24-legacy .req-card, body.lx.mi24-legacy .equity-item { background: var(--white); border: 1px solid var(--hairline-light); border-radius: 16px; padding: 22px 24px; }
body.lx.mi24-legacy .req-icon, body.lx.mi24-legacy .equity-icon { font-size: 15px; filter: grayscale(1); opacity: .85; }
body.lx.mi24-legacy .text-right { text-align: right; }
body.lx.mi24-legacy .subtotal td { border-top: 1px solid var(--ink); font-weight: 500; color: var(--ink); }
body.lx.mi24-legacy .total td { border-top: 2px solid var(--ink); font-weight: 600; color: var(--ink); }
body.lx.mi24-legacy .ok, body.lx.mi24-legacy .limited, body.lx.mi24-legacy .no { font-family: var(--font-mono); font-size: 11px; text-transform: uppercase; letter-spacing: .05em; }
body.lx.mi24-legacy .ok { color: var(--ink); }
body.lx.mi24-legacy .limited { color: var(--label-gray); }
body.lx.mi24-legacy .no { color: var(--label-gray-dark); }
body.lx.mi24-legacy .compact-list { list-style: none; padding: 0; font-size: 14px; }
body.lx.mi24-legacy .optional { color: var(--label-gray); font-size: 13px; }
@media (max-width: 991px) {
  body.lx.mi24-legacy .content-layout { grid-template-columns: 1fr; }
}

/* ── W3/W4-Restposten: nie gestylte Markup-Klassen (grundsteuer, standorte, calc) ── */
body.lx.mi24-legacy .who-pays, body.lx.mi24-legacy .tax-types,
body.lx.mi24-legacy .model-overview, body.lx.mi24-legacy .impact-boxes,
body.lx.mi24-legacy .calculation-steps, body.lx.mi24-legacy .example-detailed,
body.lx.mi24-legacy .timeline-reform, body.lx.mi24-legacy .calc-flow {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 16px;
  margin: 24px 0;
}
body.lx.mi24-legacy .timeline-reform, body.lx.mi24-legacy .calculation-steps { grid-template-columns: 1fr; }
body.lx.mi24-legacy .payer-card, body.lx.mi24-legacy .tax-type-card,
body.lx.mi24-legacy .model-card, body.lx.mi24-legacy .impact-box,
body.lx.mi24-legacy .result-box, body.lx.mi24-legacy .info-card,
body.lx.mi24-legacy .timeline-item-reform, body.lx.mi24-legacy .calc-step {
  background: var(--white);
  border: 1px solid var(--hairline-light);
  border-radius: 2px;
  padding: 20px 24px;
}
body.lx.mi24-legacy .tax-type-header { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 10px; }
body.lx.mi24-legacy .tax-type-body { color: var(--gray-text); }
body.lx.mi24-legacy .tax-stat { font-family: var(--font-mono); font-variant-numeric: tabular-nums; color: var(--ink); }
body.lx.mi24-legacy .payer-icon, body.lx.mi24-legacy .impact-icon { font-size: 15px; filter: grayscale(1); opacity: .85; }
body.lx.mi24-legacy .subtitle { color: var(--label-gray); font-size: 14px; }
body.lx.mi24-legacy .grundsteuer-a, body.lx.mi24-legacy .grundsteuer-b, body.lx.mi24-legacy .grundsteuer-c,
body.lx.mi24-legacy .federal, body.lx.mi24-legacy .state, body.lx.mi24-legacy .neutral {
  font-family: var(--font-mono); font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--label-gray);
}
body.lx.mi24-legacy .info-note { background: var(--light-warm); border: 1px solid var(--hairline-light); border-radius: 2px; padding: 14px 18px; font-size: 14px; }
body.lx.mi24-legacy .timeline-date { font-family: var(--font-mono); font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--label-gray); }
body.lx.mi24-legacy .timeline-text { color: var(--gray-text); }
body.lx.mi24-legacy .calc-step-number { font-family: var(--font-display); font-weight: 300; font-size: 30px; color: var(--ink); }
body.lx.mi24-legacy .calc-step-content strong { color: var(--ink); }
body.lx.mi24-legacy .calc-arrow, body.lx.mi24-legacy .calc-operator { color: var(--label-gray); text-align: center; }
body.lx.mi24-legacy .big { font-size: clamp(28px, 4vw, 44px); font-family: var(--font-display); font-weight: 300; color: var(--ink); }
body.lx.mi24-legacy .highlight-box--purple { background: var(--light-warm); }
body.lx.mi24-legacy .calculator__inputs, body.lx.mi24-legacy .calculator__results { min-width: 0; }
body.lx.mi24-legacy .calc-details { font-size: 13px; color: var(--label-gray); }
body.lx.mi24-legacy .mi24-standort-hero__bg { position: absolute; inset: 0; overflow: hidden; z-index: 0; }
body.lx.mi24-legacy .mi24-standort-hero__bg img { width: 100%; height: 100%; object-fit: cover; }
body.lx.mi24-legacy .mi24-standort-hero__subtitle { font-size: 17px; color: var(--white-60, rgba(255,255,255,.6)); max-width: 60ch; }
body.lx.mi24-legacy .mi24-standort-stats__item { border: 1px solid var(--hairline-light); border-radius: 2px; padding: 20px 24px; background: var(--white); }
body.lx.mi24-legacy .mi24-standort-stats__label { font-family: var(--font-mono); font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--label-gray); }
body.lx.mi24-legacy .mi24-standort-section__subtitle { color: var(--gray-text); max-width: 62ch; }
body.lx.mi24-legacy .mi24-standort-section--alt { background: var(--light-base); }

/* ── Funnel-/Legacy-Mobile-Nav Fallback (ehem. signature.css) ──── */
body.lx.mi24-legacy .hamburger { display: none; width: 44px; height: 44px; flex-direction: column; justify-content: center; gap: 5px; background: none; border: 0; cursor: pointer; }
body.lx.mi24-legacy .hamburger span { display: block; width: 22px; height: 2px; background: var(--ink); }
body.lx.mi24-legacy .mobile-nav { position: fixed; inset: 0; background: var(--black-base); display: none; flex-direction: column; gap: 4px; padding: 96px 32px 32px; z-index: 999; }
body.lx.mi24-legacy .mobile-nav.open { display: flex; }
body.lx.mi24-legacy .mobile-nav a { color: var(--white); font-size: 18px; padding: 10px 0; text-decoration: none; }
body.lx.mi24-legacy .mobile-nav__links { display: flex; flex-direction: column; gap: 4px; }
body.lx.mi24-legacy .mobile-nav__link, body.lx.mi24-legacy .mobile-nav__sublink { color: var(--white); }
body.lx.mi24-legacy .mobile-nav__cta { display: inline-flex; align-items: center; justify-content: center; height: 39px; padding: 0 22px; border-radius: 45px; background: var(--white); color: var(--black-base) !important; font-size: 13px; font-weight: 500; margin-top: 16px; }
body.lx.mi24-legacy .mobile-nav__contact { margin-top: auto; padding-top: 24px; border-top: 1px solid var(--hairline-dark, rgba(255,255,255,.12)); }
body.lx.mi24-legacy .mobile-nav__contact-item { display: flex; align-items: center; gap: 12px; color: var(--white-60, rgba(255,255,255,.6)) !important; font-size: 15px; }
body.lx.mi24-legacy .mobile-nav-close { position: absolute; top: 20px; right: 20px; width: 44px; height: 44px; background: none; border: 0; color: var(--white); font-size: 26px; cursor: pointer; }
@media (max-width: 991px) { body.lx.mi24-legacy .hamburger { display: flex; } }

/* ── Funnel-/Service-Restklassen (ehem. signature.css) ─────────── */
body.lx.mi24-legacy .page-hero__content, body.lx.mi24-legacy .hero__content { max-width: 720px; }
body.lx.mi24-legacy .hero__calc { min-width: 0; }
body.lx.mi24-legacy .proof-card-l { background: var(--white); border: 1px solid var(--hairline-light); border-radius: 16px; padding: 22px 24px; }
body.lx.mi24-legacy .calc-hint { font-size: 13px; color: var(--label-gray); }
body.lx.mi24-legacy .author-box__image { width: 56px; height: 56px; border-radius: 12px; object-fit: cover; }
body.lx.mi24-legacy .chart-axis-labels__zero { font-family: var(--font-mono); font-size: 11px; color: var(--label-gray); }
body.lx.mi24-legacy .line-chart-point { fill: var(--ink); }
body.lx.mi24-legacy .funnel-summary { background: var(--light-base); border: 1px solid var(--hairline-light); border-radius: 2px; padding: 18px 22px; }
body.lx.mi24-legacy .funnel-options--pair { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
body.lx.mi24-legacy .funnel-advisor__info { min-width: 0; }
body.lx.mi24-legacy .funnel-advisor--post-cta { margin-top: 24px; }
body.lx.mi24-legacy .funnel-contact-benefits { list-style: none; padding: 0; font-size: 14px; color: var(--gray-text); }
body.lx.mi24-legacy .funnel-cta-note { font-size: 13px; color: var(--label-gray); }
body.lx.mi24-legacy .funnel-partners-desktop { display: none; }
@media (min-width: 992px) { body.lx.mi24-legacy .funnel-partners-desktop { display: block; } }
@media (max-width: 640px) { body.lx.mi24-legacy .funnel-options--pair { grid-template-columns: 1fr; } }
body.lx.mi24-legacy .mobile-nav__submenu-trigger { color: var(--white); background: none; border: 0; font-size: 18px; text-align: left; padding: 10px 0; cursor: pointer; }
body.lx.mi24-legacy .mobile-nav__submenu-list { display: none; padding-left: 16px; }
body.lx.mi24-legacy .mobile-nav__submenu-list.open { display: block; }
body.lx.mi24-legacy .scenario-chart__kpi { font-family: var(--font-mono); font-variant-numeric: tabular-nums; font-size: 13px; color: var(--ink); }

/* ── Sweep-Fixes (2026-07-02) ──────────────────────────────────── */
/* Bilder nie unskaliert explodieren lassen (Legacy-Reset-Ersatz) */
:where(body.lx.mi24-legacy) img { max-width: 100%; height: auto; }
/* Inline-Grid-Attribute kollabieren auf Mobile zu einer Spalte */
@media (max-width: 767px) {
  body.lx.mi24-legacy [style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
}
/* Partner-/Trust-Logoleisten: Logos begrenzen */
body.lx.mi24-legacy .partner-logos img, body.lx.mi24-legacy .partners img,
body.lx.mi24-legacy .trust-logos img, body.lx.mi24-legacy .partner-grid img,
body.lx.mi24-legacy .partner-item img, body.lx.mi24-legacy .partner-card img {
  max-height: 40px;
  width: auto;
  filter: grayscale(1);
  opacity: .8;
}
/* Überlange Wörter in Headlines nie clippen (WEG, Teilungserklärung …) */
body.lx.mi24-legacy .article-title, body.lx.mi24-legacy .main-article h1,
body.lx.mi24-legacy .article-content h1 {
  overflow-wrap: break-word;
  hyphens: auto;
  -webkit-hyphens: auto;
}
body.lx.mi24-legacy .content-grid .main-article h1 { font-size: clamp(30px, 3.2vw, 46px); }

/* ── Sweep-Fixes B (2026-07-02): Klassen-Grids ohne Mobile-Query ── */
/* Der Inline-Attribut-Fix oben greift nur bei style="grid-template-columns:…" —
   diese Grids sind als Klasse definiert und brauchen eigenen Collapse */
@media (max-width: 991px) {
  body.lx.mi24-legacy .article-wrapper { grid-template-columns: 1fr; gap: 0; }
  body.lx.mi24-legacy .article-wrapper .article-sidebar { display: none; }
}
@media (max-width: 767px) {
  body.lx.mi24-legacy .pro-con-grid { grid-template-columns: 1fr; }
}

/* ── Sweep-Fixes C (2026-07-02): Partner-Logo-Marquees begrenzen ──
   `.lx img { height: auto }` (mi24-lateral.css) lädt NACH den Inline-Styles
   der Legacy-Seiten und hebt deren height:24/40px bei gleicher Spezifität
   auf → Logos explodieren auf Intrinsic-Größe. Hier mit höherer
   Spezifität (Body-Prefix) wieder festnageln + monochrom halten. */
body.lx.mi24-legacy .partners-grid img {
  height: 40px;
  width: auto;
  filter: grayscale(1);
  opacity: .6;
}
body.lx.mi24-legacy .funnel-logos__set img,
body.lx.mi24-legacy .partner-logos__row img {
  height: 24px;
  width: auto;
}

/* ── Sweep-Fixes A (2026-07-02): fb/termin-gebucht ──
   1) §2j macht .cta-section zum dunklen Panel — die seiteneigenen .cta-btn-Pills
      standen dort als Schwarz-auf-Schwarz (primary) bzw. Weiß-auf-Weiß (secondary).
      Invertierung nach lx-Konvention: primär = weiße Pill + Ink-Text,
      sekundär = Ghost mit Hairline-Dark + weißem Text.
   2) Component-Footer (.site-footer, Navy): body.lx.mi24-legacy h4 zwingt die
      Spaltentitel auf Ink (dunkel auf dunkel), das dunkle Logo verschwindet —
      Titel hell, Logo wie in der lx-Nav-ondark-Konvention invertiert. */
body.lx.mi24-legacy.page-termin-gebucht .cta-section .cta-btn--primary {
  background: var(--white) !important;
  color: var(--black-base, #030303) !important;
  box-shadow: none !important;
}
body.lx.mi24-legacy.page-termin-gebucht .cta-section .cta-btn--primary svg { stroke: var(--black-base, #030303); }
body.lx.mi24-legacy.page-termin-gebucht .cta-section .cta-btn--secondary {
  background: transparent !important;
  color: var(--white) !important;
  border: 1px solid var(--hairline-dark, rgba(255, 255, 255, 0.24)) !important;
}
body.lx.mi24-legacy.page-termin-gebucht .cta-section .cta-btn--secondary svg { stroke: var(--white); }
body.lx.mi24-legacy.page-termin-gebucht .site-footer .footer__logo img { filter: brightness(0) invert(1); }
body.lx.mi24-legacy.page-termin-gebucht .site-footer .footer__title { color: var(--white, #fff); }
/* Monochrom statt Component-Blau/Navy: Nav-Pill Ink, Footer auf lx-Schwarz */
body.lx.mi24-legacy.page-termin-gebucht .header__cta {
  background: var(--ink, #080808) !important;
  color: var(--white, #fff) !important;
  box-shadow: none !important;
  border-radius: 100px;
}
body.lx.mi24-legacy.page-termin-gebucht .site-footer { background: var(--black-base, #0A0908) !important; }

/* Dark-Service-LPs (body.mi24-dark-lp: private-investor/-equity):
   die generischen hellen .hero-Regeln aus §5 zurücknehmen */
body.lx.mi24-legacy.mi24-dark-lp .hero {
  background: transparent !important;
  color: var(--text-secondary, rgba(255, 255, 255, 0.7));
  border-bottom: 0;
  padding: 140px 0 100px;
  overflow: hidden;
}
body.lx.mi24-legacy.mi24-dark-lp .hero__title,
body.lx.mi24-legacy.mi24-dark-lp .hero h1 { color: var(--white, #fff) !important; }
body.lx.mi24-legacy.mi24-dark-lp .hero p,
body.lx.mi24-legacy.mi24-dark-lp .hero__subtitle { color: rgba(255, 255, 255, 0.7) !important; }
body.lx.mi24-legacy.mi24-dark-lp .main-content { background: transparent; }
/* Dark-LP-Buttons: Pill invertiert (weiß + schwarz auf dunklem Grund) */
body.lx.mi24-legacy.mi24-dark-lp .btn,
body.lx.mi24-legacy.mi24-dark-lp .btn--primary,
body.lx.mi24-legacy.mi24-dark-lp .btn:hover,
body.lx.mi24-legacy.mi24-dark-lp .btn--primary:hover {
  background: var(--white, #fff) !important;
  color: var(--black-base, #030303) !important;
}
body.lx.mi24-legacy.mi24-dark-lp .btn--outline {
  background: transparent !important;
  color: var(--white, #fff) !important;
  border: 1px solid rgba(255, 255, 255, 0.35) !important;
}
body.lx.mi24-legacy.mi24-dark-lp .btn--outline:hover {
  background: transparent !important;
  color: var(--white, #fff) !important;
  border-color: var(--white, #fff) !important;
}

/* ── Mobile-Tabellen: scrollen statt quetschen (Sweep 2026-07-02) ── */
/* Root-Cause der Buchstaben-Umbrueche: schmale Spalten + break-word.
   Tabellen behalten ihre natuerliche Breite und scrollen horizontal. */
@media (max-width: 767px) {
  body.lx.mi24-legacy table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  body.lx.mi24-legacy table th {
    white-space: nowrap;
  }
  body.lx.mi24-legacy table td {
    overflow-wrap: normal;
    word-break: normal;
    min-width: 84px;
  }
  body.lx.mi24-legacy table td:first-child {
    white-space: nowrap;
  }
}
/* Nummerierte Marker (01/02/03) nie digit-weise umbrechen */
body.lx.mi24-legacy ol li::before,
body.lx.mi24-legacy .numbered-list .number,
body.lx.mi24-legacy .list-item .number {
  white-space: nowrap;
  min-width: 24px;
}
/* Grid-/Flex-Blowout-Fix: intrinsische Mindestbreiten neutralisieren (0-Spezifität) */
:where(body.lx.mi24-legacy) :where(div, section, article, aside, main, nav, a, li, p, h1, h2, h3, h4, ul, ol, figure, table) {
  min-width: 0;
}
/* CTA-Karten in calculator-cta: block statt inline-flex (667px-Blowout steuern-Hub) */
body.lx.mi24-legacy .calculator-cta .article-card { display: block; max-width: 100%; }
/* Lange Einzelwoerter in Hero-Headlines brechen lassen */
body.lx.mi24-legacy .hero__title, body.lx.mi24-legacy .page-hero h1 {
  overflow-wrap: break-word;
  hyphens: auto;
  -webkit-hyphens: auto;
}
/* Rest-Pixel-Overflows nie als horizontales Scrollen zeigen */
html:has(> body.lx.mi24-legacy) { overflow-x: clip; }
body.lx.mi24-legacy { overflow-x: clip; }
/* Primaer-CTAs mit verlorenem Hintergrund (danke, fb-Sticky-CTA) */
body.lx.mi24-legacy .mi24-danke-btn--primary {
  background: var(--ink) !important;
  color: var(--white) !important;
  border-radius: 45px;
}
body.lx.mi24-legacy .sticky-cta__btn {
  background: var(--ink) !important;
  color: var(--white) !important;
  border-radius: 45px;
}
