/**
 * Rechtsseiten im NeBi-Stil (01.10.2026): alle Seiten der Menüposition `legal`
 * und die Cookie-Richtlinie des Consent-Plugins (nebi_is_legal_page()).
 *
 * Es gibt keinen Figma-Frame für Rechtsseiten; abgeleitet aus Kontakt und
 * Startseite:
 * - Inhaltskante auf dem Figma-Raster wie jede NeBi-Seite (1440 px: 120..1320,
 *   mobil 16 px Rand). Vorher trugen Kopf und Abschnitte die Base-Breite mit
 *   32 px Innenrand und begannen bei 152 px bzw. mobil 32 px.
 * - Dachzeile „[ RECHTLICHES ]“ in Plex Mono ÜBER der H1 (wie überall in
 *   Figma), H1 Light 55/66 (mobil 27/32) wie Kontakt.
 * - Figma-Textstile eine Stufe tiefer (Stilabgleich 08.10.2026, vorher eigene
 *   Ableitung 18/26 und Light-h3): h2 = H3, h3 = H4 (Regular), h4 = Body 1
 *   SemiBold, h5 = H5 (Regular, 13.10.2026 — vorher fiel sie auf die Basis-h5
 *   und war kleiner als der Fließtext), Fließtext = Body 1; das Lesemaß ist auf
 *   880 px begrenzt, die Spalte selbst steht in voller Inhaltsbreite.
 * Farben nur über Semantik-Tokens; das Complianz-Dokument stylt weiter
 * consent-document.css.
 */

.nebi-legal .page-header,
.nebi-legal .entry-content > .is-section > .nebi-section__inner {
	max-inline-size: none;
	padding-inline: max(16px, calc((100% - var(--wide-width)) / 2));
}

/* Abstand Titel → Inhalt: die allgemeine Regel nullt ihn (site.css, Kopf vor Abschnitt);
   hier steht er am ersten Abschnitt, damit die Spezifität die der allgemeinen schlägt. */
.nebi-legal .page-header + .entry-content > .is-section.is-surface-default:first-child {
	padding-block-start: 48px;
}

/* Zwei Abschnitte untereinander (Cookie-Richtlinie): ein Abstand, nicht zwei Abschnittsstufen. */
.nebi-legal .entry-content > .is-section:not(:last-child) {
	padding-block-end: 0;
}

.nebi-legal .entry-content > .is-section + .is-section {
	padding-block-start: 0;
}

.nebi-legal .nebi-legal__eyebrow {
	margin: 0 0 24px;
	color: var(--text-brand);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 23px;
	font-weight: 600;
	line-height: 32px;
	text-transform: uppercase;
}

.nebi-legal .page-header__title {
	margin: 0;
	font-family: var(--wp--preset--font-family--sans);
	font-size: 55px;
	font-weight: 300;
	line-height: 66px;
	letter-spacing: 0;
}

.nebi-legal .entry-content > .is-section > .nebi-section__inner > :is(p, ul, ol, h2, h3, h4, h5, .wp-block-group:not(.nebi-consent-register)),
.nebi-legal .nebi-consent-register > *,
.nebi-legal #cmplz-document > :is(p, ul, ol) {
	max-inline-size: 880px;
}

.nebi-legal .entry-content :is(p, li) {
	font-size: 18px;
	line-height: 24px;
}

.nebi-legal .entry-content h2 {
	margin-block: 48px 16px;
	font-size: 35px;
	font-weight: 300;
	line-height: 42px;
}

.nebi-legal .entry-content h3 {
	margin-block: 40px 16px;
	font-size: 28px;
	font-weight: 400;
	line-height: 34px;
}

.nebi-legal .entry-content h4 {
	margin-block: 32px 8px;
	font-size: 18px;
	font-weight: 600;
	line-height: 24px;
}

.nebi-legal .entry-content h5 {
	margin-block: 24px 8px;
	font-size: 18px;
	font-weight: 400;
	line-height: 22px;
}

.nebi-legal .entry-content > .is-section:first-child > .nebi-section__inner > :first-child {
	margin-block-start: 0;
}

.nebi-legal .entry-content a {
	color: var(--text-link);
	text-decoration: underline;
}

.nebi-legal .entry-content a:hover {
	color: var(--text-link-hover);
}

@media (width < 600px) {

	.nebi-legal .page-header + .entry-content > .is-section.is-surface-default:first-child {
		padding-block-start: 32px;
	}

	.nebi-legal .nebi-legal__eyebrow {
		font-size: 18px;
		line-height: 24px;
	}

	.nebi-legal .page-header__title {
		font-size: 27px;
		line-height: 32px;
	}

	.nebi-legal .entry-content :is(p, li) {
		font-size: 16px;
		line-height: 22px;
	}

	.nebi-legal .entry-content h2 {
		font-size: 27px;
		line-height: 32px;
	}

	.nebi-legal .entry-content h3 {
		font-size: 18px;
		line-height: 23px;
	}

	.nebi-legal .entry-content h4 {
		font-size: 16px;
		line-height: 22px;
	}

	.nebi-legal .entry-content h5 {
		font-size: 14px;
		line-height: 18px;
	}
}
