/* KW Atelier – Globaler Widget-Rhythmus (rein CSS, kein JS).
 *
 * Gibt jeder Seite mit KW-Atelier-Widgets gleichmäßige Luft: zwischen den
 * gestapelten Widgets im SELBEN Container (Gap) UND zwischen aufeinander-
 * folgenden Abschnitten (margin). Die Stärke steckt in der Body-Klasse
 * (Frontend\SectionRhythm) → hier auf den fluiden Token --kwat-rhythm abgebildet.
 * Wird nur geladen, wenn der Rhythmus im Design-Tab aktiv ist (≠ „aus").
 *
 * Kein !important, keine Inline-Styles. Elementor rendert Abschnitte über
 * Flex-Container (.e-con, ggf. mit innerem .e-con-inner); Widgets sind Flex-Items.
 * Die Seiten-Hülle (Navigation/Seitenkopf/Hero/Footer) ist serverseitig, KEIN
 * Elementor → von diesen Regeln unberührt (keine Ausnahmen nötig).
 */

/* Stärke → fluider Abstandswert. Der Token erbt in alle .e-con darunter. */
body.kwat-rhythm-compact {
	--kwat-rhythm: var(--kwat-space-lg);
}
body.kwat-rhythm-standard {
	--kwat-rhythm: var(--kwat-space-xl);
}
body.kwat-rhythm-spacious {
	--kwat-rhythm: var(--kwat-space-2xl);
}

/* (a) Abstand ZWISCHEN gestapelten Widgets im selben Container (Container-Gap).
   Spezifität (0,3,0 bzw. 0,4,0) schlägt Elementors Default-Gap-Regel; ein vom
   Eigentümer je Container von Hand gesetzter Gap (Elementor-Inline-Style) bleibt
   davon unberührt und gewinnt weiterhin. Nur row-gap → mehrspaltige Container
   behalten ihren horizontalen Abstand. */
.e-con:has(> .elementor-widget[class*="elementor-widget-kwat_"]),
.e-con > .e-con-inner:has(> .elementor-widget[class*="elementor-widget-kwat_"]) {
	row-gap: var(--kwat-rhythm);
}

/* (b) Abstand ZWISCHEN Abschnitten: jeder Top-Level-Container (.e-parent), der
   irgendwo ein KW-Atelier-Widget enthält, löst sich vom vorherigen Abschnitt. */
.e-con.e-parent:has(.elementor-widget[class*="elementor-widget-kwat_"]) {
	margin-block-start: var(--kwat-rhythm);
}
