/**
 * landing.css – AIR-lebnisse Landing Page
 *
 * Enthält Layout-Overrides für Astra-Container und das Verstecken der
 * Seitentitel-Banner, damit der Hero direkt am Viewport-Top beginnt.
 * Das gesamte visuelle Landing-Design lebt im Plugin
 * (air-lebnisse-blocks/assets/css/frontend.css); diese Datei
 * ergänzt nur die fehlenden Astra-Overrides, die das Theme
 * für die Full-Bleed-Darstellung benötigt.
 *
 * @package AIR-lebnisse
 */

/* ------------------------------------------------------------------
   Astra-Titel-Banner verstecken (nur Landing Page)
   .entry-header ist im Plugin bereits ausgeblendet, aber Astra
   kann den Titel alternativ über .ast-single-entry-banner oder
   .ast-archive-entry-banner rendern – auch diese ausblenden.
------------------------------------------------------------------ */
body.al-landing .entry-header,
body.al-landing .ast-single-entry-banner,
body.al-landing .ast-archive-entry-banner,
body.al-landing .ast-article-single > .entry-header,
body.al-landing .ast-page-builder-template .entry-header {
	display: none !important;
}

/* Auch eventuelle Astra-Titel-Abstände / Spacer entfernen */
body.al-landing .ast-article-single {
	padding: 0 !important;
	margin: 0 !important;
}

body.al-landing .entry-content {
	margin: 0 !important;
	padding: 0 !important;
}

/* ------------------------------------------------------------------
   Full-bleed: Astra-Container komplett aufbrechen.
   Verdopplung der style.css-Overrides zur Sicherheit; diese Datei
   wird nach style.css im Head geladen (Dependency-Kette) und hat
   daher bei gleicher Spezifität Vorrang.
------------------------------------------------------------------ */
body.al-landing .ast-container {
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
	display: block !important;
}

body.al-landing #content.site-content,
body.al-landing .site-content,
body.al-landing .ast-separate-container .site-content {
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
}

body.al-landing #page.hfeed.site {
	width: 100% !important;
	max-width: 100% !important;
	overflow-x: hidden;
}

body.al-landing #primary,
body.al-landing #main,
body.al-landing .ast-separate-container #primary,
body.al-landing .ast-separate-container #main {
	margin: 0 !important;
	padding: 0 !important;
	max-width: none !important;
	width: 100% !important;
}

/* Astra Gutenberg "wide" / "narrow" Block-Breiten aufheben, damit
   unsere Sektionen nicht von den Block-Layout-Breiten beschnitten
   werden (body hat Klasse ast-two-container). */
body.al-landing .entry-content .alignwide,
body.al-landing .entry-content .alignfull,
body.al-landing .entry-content > .wp-block {
	max-width: none !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Der Held darf definitiv nicht vom Eltern-Container beschnitten
   werden – die negative-Margin-Breakout-Technik im Plugin-CSS
   funktioniert nur zuverlässig, wenn der Elter zentriert und nicht
   extra schmal ist. */
body.al-landing .al-hero {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc( -50vw + 50% ) !important;
	margin-right: calc( -50vw + 50% ) !important;
}