/*
 * Layout-Korrekturen für Elemente, die sich über MCP nicht speichern lassen.
 *
 * Konzert, Startseite, Spenden und 30 Jahre enthalten ausführbare Code-Elemente,
 * Header (Intranet) ein BricksExtras-Element, Beitrag scheitert an der
 * Normalisierung. Die Regeln ersetzen dort Einstellungen
 * im Builder. Wird ein Element gelöscht oder neu angelegt, greift die Regel nicht mehr.
 *
 * .brx-body erhöht die Spezifität über die Element-Styles von Bricks.
 * Die Variablen --lmn-* sind in Bricks als globale Variablen angelegt.
 */

/*
 * Rechnung, Gagenbogen, Programmzettel und Empfangsbestätigung im Konzert-Template
 * behalten bewusst die Abstände vor der Vereinheitlichung, auch im Druck.
 * Bricks gibt diesen Sections keine ID aus, deshalb der Weg über die Ausschlüsse.
 */
.brx-body.single-konzert #brx-content > .brxe-section:not(#brxe-jwbbbl):not(#brxe-vbjyvk) {
	padding: 3rem;
}

.brx-body.single-konzert #brx-content > .brxe-section:not(#brxe-jwbbbl):not(#brxe-vbjyvk) > .brxe-container {
	padding: 1rem;
}

@media (max-width: 767px) {
	.brx-body.single-konzert #brx-content > .brxe-section:not(#brxe-jwbbbl):not(#brxe-vbjyvk) {
		padding: 2rem;
	}
}

@media (max-width: 478px) {
	.brx-body.single-konzert #brx-content > .brxe-section:not(#brxe-jwbbbl):not(#brxe-vbjyvk) > .brxe-container {
		padding: 0;
	}
}

@media screen {
	/* Lange Adressen und Wörter. Nicht global: anywhere würde Tabellenspalten zusammendrücken. */
	.brx-body .brxe-text a,
	.brx-body .brxe-accordion a,
	.brx-body .brxe-posts h3 {
		overflow-wrap: anywhere;
	}

	/* „Flüchtlingshochkommissariat“ auf Unisono war bei 375 px breiter als der Bildschirm. */
	.brx-body .brxe-text h2,
	.brx-body .brxe-text h3 {
		overflow-wrap: anywhere;
		hyphens: auto;
	}

	/* Header (Intranet) */
	.brx-body #brxe-efzxyd .bricks-mobile-menu-toggle {
		color: #ffffff;
	}

	/* Bei 768 px lagen Team und Homepage außerhalb des Bildschirms. */
	.brx-body #brxe-efzxyd .bricks-nav-menu {
		flex-wrap: wrap;
	}

	.brx-body #brxe-efzxyd .bricks-nav-menu > li {
		white-space: nowrap;
	}

	/*
	 * Intranet-Listen: Die Module erlauben Scrollen und Umbruch erst unter 768 px,
	 * darüber lief die ganze Seite über. Hier statt in den Modul-Dateien, weil
	 * Uploads ab etwa 16 KB beim Hoster Dateien leeren können.
	 */
	.brx-body .lmn-table-wrapper,
	.brx-body .lmn-musiker-wrapper,
	.brx-body .lmn-spielstaette-wrapper {
		max-width: 100%;
		overflow-x: auto;
	}

	.brx-body .lmn-filter-row {
		flex-wrap: wrap;
	}

	.brx-body .lmn-table-period-switcher,
	.brx-body .lmn-musiker-view-switcher {
		flex-wrap: wrap;
		max-width: 100%;
	}

	/* Überschriften mit Einzelwerten in den genannten Dokumenten */
	.brx-body #brxe-ihwrbe,
	.brx-body #brxe-iagzkk,
	.brx-body #brxe-cnxcva,
	.brx-body #brxe-jcwnkl,
	.brx-body #brxe-pyswjb,
	.brx-body #brxe-eqetxn {
		font-size: var(--lmn-h1);
		line-height: 1.2;
	}

	/* Container im Container hätte sonst doppelten Rand, zum Beispiel auf Unisono. */
	.brx-body .brxe-container > .brxe-container {
		padding-left: 0;
		padding-right: 0;
	}

	/* Konzert (Template 7852) */

	/* visibility: hidden im Builder hielt 257–307 px Platz über dem Footer frei. */
	.brx-body #brxe-dupwbm {
		display: none;
	}

	.brx-body #brxe-vbjyvk {
		margin: 0;
		padding: var(--lmn-section-y) 0;
	}

	/* Startseite (3095) */
	.brx-body #brxe-zdydmg {
		padding: 0;
	}

	.brx-body #brxe-xdfoey,
	.brx-body #brxe-hyvslq {
		padding-top: var(--lmn-section-y-lg);
		padding-bottom: var(--lmn-section-y-lg);
	}

	.brx-body #brxe-izwnbo {
		padding-bottom: var(--lmn-section-y-lg);
	}

	/* Jubiläumsblock auf die Inhaltslinie, im Builder steht 100 % Breite. */
	.brx-body #brxe-rjrnsp {
		width: 1280px;
		max-width: 100%;
	}
}

@media screen and (max-width: 767px) {
	/* Header (Intranet): Balken war nur 16 px hoch. */
	.brx-body #brxe-efzxyd {
		padding-top: 0.5rem;
		padding-bottom: 0.5rem;
	}

	/* Konzert (Template 7852) */
	.brx-body #brxe-jwbbbl {
		height: auto;
		padding-top: var(--lmn-section-y);
	}

	/* Startseite (3095) */
	.brx-body #brxe-xfomcd .title {
		font-size: clamp(1.75rem, 7vw, 3rem);
		line-height: 1.25;
	}

	.brx-body #brxe-dfhoyj,
	.brx-body #brxe-dfhoyj img {
		width: 100%;
		height: auto;
	}

	/* Spenden (31010) */
	.brx-body #brxe-oepntx {
		height: 40vh;
	}

	.brx-body #brxe-bhgwsk {
		flex-direction: column;
		gap: 1rem;
	}

	.brx-body #brxe-vrjpow,
	.brx-body #brxe-ikecvt {
		margin: 0;
	}

	/* 30 Jahre (33140) */
	.brx-body #brxe-ccilse {
		height: auto;
	}

	.brx-body #brxe-ljgmdp {
		width: 100%;
		height: auto;
		padding: 3rem var(--lmn-gutter);
	}

	.brx-body #brxe-pyswjb {
		text-align: center;
	}

	.brx-body #brxe-weokng {
		padding: 2rem var(--lmn-gutter);
	}

	.brx-body #brxe-yfpqdm {
		font-size: clamp(1.25rem, 5vw, 2rem);
	}
}

@media screen and (max-width: 478px) {
	/* Startseite (3095) */
	.brx-body #brxe-3kwqpe {
		padding: var(--lmn-section-y) 0;
	}

	/* Bei 375 px überdeckten die Pfeile den Slider-Text; Wischen und Punkte bleiben. */
	.brx-body #brxe-xfomcd .swiper-button {
		display: none;
	}
}
