/**
 * CHEVROLET PARTNER — BLOCK-STILE (v8, theme.json-basiert)
 * =========================================================
 * Presets/Farben/Fonts kommen aus theme.json (var(--wp--preset--*)).
 * Dieses CSS: nur noch Layout + Design-Details, die theme.json
 * nicht abdecken kann. Gilt Site-weit → konsistent auf allen Seiten.
 */

/* ---------- Layout-Grundlage ---------- */
html, body { overflow-x: clip; }

/* Content-Container — URS: volle Breite nutzen.
   Alle Top-Level-Blöcke: contentSize zentriert; alignwide/alignfull: 1180/100%.
   margin-inline:auto !important (WP-Core-Resets setzen sonst margin:0). */
body:not(.editor-styles-wrapper) .entry-content > *,
body:not(.editor-styles-wrapper) article.page > *,
body:not(.editor-styles-wrapper) article.front-page > * {
	max-width: var(--wp--style--global--wideSize, 1180px);
	margin-inline: auto !important;
}
body:not(.editor-styles-wrapper) .entry-content > .alignwide,
body:not(.editor-styles-wrapper) article.page > .alignwide,
body:not(.editor-styles-wrapper) article.front-page > .alignwide {
	max-width: var(--wp--style--global--wideSize, 1180px);
}
body:not(.editor-styles-wrapper) .entry-content > .alignfull,
body:not(.editor-styles-wrapper) article.page > .alignfull,
body:not(.editor-styles-wrapper) article.front-page > .alignfull {
	max-width: none;
	width: 100%;
}

/* ---------- KICKER — Sektionstitel mit blauer Linie (Site-weit) ========== */
.chev-kicker {
	display: flex;
	align-items: center;
	gap: .65em;
}
.chev-kicker::before {
	content: '';
	width: 2.4em;
	height: 2px;
	background: var(--wp--preset--color--ci, #1E4EC4);
	border-radius: 2px;
}

/* ========== HERO ========== */
.chev-hero-media .wp-block-media-text__media img {
	border-radius: var(--wp--preset--border-radius--card, 24px) !important;
	box-shadow: var(--wp--preset--shadow--raised, 0 12px 32px rgba(29,26,78,.10));
}

/* ========== TRUST / PORTRAIT ========== */
.chev-trust-media .wp-block-media-text__media img {
	border-radius: var(--wp--preset--border-radius--card, 24px) !important;
	box-shadow: var(--wp--preset--shadow--raised, 0 12px 32px rgba(29,26,78,.10));
}

/* ========== QUOTE-BAND ========== */
blockquote.wp-block-quote.chev-quote-band {
	background: var(--wp--preset--color--tint, #F5F8FF);
	padding: 2.5rem 2rem;
	border-left: 3px solid var(--wp--preset--color--ci, #1E4EC4);
	border-radius: 0 var(--wp--preset--border-radius--card, 24px) var(--wp--preset--border-radius--card, 24px) 0;
	margin: var(--wp--preset--spacing--70, 5rem) 0;
	text-align: center;
}
blockquote.wp-block-quote.chev-quote-band p {
	font-family: var(--wp--preset--font-family--heading, Fraunces);
	font-size: var(--wp--preset--font-size--large);
	font-style: italic;
	margin: 0 0 .5em;
}

/* ========== CARDS (Säulen + Angebot) ========== */
/* Cards = weisser Hintergrund, Hairline, Radius, Schatten — Site-weit uniform */
.chev-pillars > .wp-block-column,
.chev-offer-grid > .wp-block-column {
	background: var(--wp--preset--color--white, #fff);
	border: 1px solid var(--wp--preset--color--hairline, #E3E7F3);
	border-radius: var(--wp--preset--border-radius--card, 24px);
	padding: 2rem 1.5rem;
	box-shadow: var(--wp--preset--shadow--soft, 0 2px 8px rgba(29,26,78,.04));
	transition: box-shadow .2s var(--ease, ease), transform .2s var(--ease, ease);
}
.chev-offer-grid > .wp-block-column:hover {
	box-shadow: var(--wp--preset--shadow--raised, 0 12px 32px rgba(29,26,78,.10));
	transform: translateY(-2px);
}
.chev-pillars > .wp-block-column > h3,
.chev-offer-grid > .wp-block-column > h3 {
	color: var(--wp--preset--color--ci, #1E4EC4);
}

/* ========== INTRO-TEXT nach H2 ========== */
p.chev-intro {
	color: var(--wp--preset--color--muted, #626880);
	max-width: 52ch;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 781px) {
	/* media-text stackt automatisch; Ausrichtung justieren */
	.chev-hero-media, .chev-trust-media { display: flow-root; }
	.chev-offer-grid { flex-wrap: wrap; }
}

/* ========== KIERKEGAARD-VERSE (Ruhekarte) ========== */
p.chev-pause-verse {
  background: linear-gradient(rgba(29,26,78,.55), rgba(29,26,78,.55)), url('/mediation/wp-content/uploads/2024/12/2.jpeg') center/cover no-repeat;
  min-height: 380px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 3rem 2rem;
  border-radius: var(--wp--preset--border-radius--card, 24px);
  margin: var(--wp--preset--spacing--70, 5rem) 0;
}

/* Constrained groups: children dürfen die volle Container-Breite nutzen
   (WP begrenzt sie sonst auf contentSize 820px zentriert) */
body:not(.editor-styles-wrapper) .is-layout-constrained > * {
	max-width: var(--wp--style--global--wideSize, 1180px) !important;
	margin-left: 0 !important;
	margin-right: auto !important;
}
body:not(.editor-styles-wrapper) .is-layout-constrained > .alignwide,
body:not(.editor-styles-wrapper) .is-layout-constrained > .aligncenter {
	margin-inline: auto !important;
}

/* ========== ABSTANDS-SYSTEM (einheitlich, hierarchisch) ==========
   Logik: grössere Abstände vor wichtigeren Titel-Kategorien.
   L1 Sektion (Kicker+H2):   7rem  — vor JEDER Sektion gleich viel
   L2 Unterkategorie (H3):    3rem
   L3 Content-Elemente:       1.5rem
   QUOTE/VERSE-Akzente:       gleiche Sektionspause wie L1 (7rem)
   Alles über Presets — theme.json bleibt Single Source of Truth. */
:root { --chev-space-section: 7rem; --chev-space-sub: 3rem; --chev-space-el: 1.5rem; }

/* L1 — vor jeder Sektion (Kicker) gleich viel; erste Sektion nach Hero: mehr */
body:not(.editor-styles-wrapper) article.front-page > p.chev-kicker,
body:not(.editor-styles-wrapper) .entry-content > p.chev-kicker,
body:not(.editor-styles-wrapper) .is-layout-constrained > p.chev-kicker {
	margin-top: var(--chev-space-section) !important;
	margin-bottom: 0 !important;
}
/* Hero braucht keinen extra Abstand */
body:not(.editor-styles-wrapper) article.front-page > p.chev-kicker:first-child {
	margin-top: 0 !important;
}

/* Kicker → H2: eng (Titel-Paar gehört zusammen) */
.chev-kicker + .wp-block-heading,
p.chev-kicker + h2 {
	margin-top: .6em !important;
}
/* H2 → folgender Text: klar getrennt */
h2.wp-block-heading {
	margin-bottom: .8em !important;
}

/* L2 — H3-Untertitel */
h3.wp-block-heading { margin-top: var(--chev-space-sub) !important; margin-bottom: .5em !important; }

/* L3 — Intro-Absätze nach H2 */
p.chev-intro { margin-bottom: var(--chev-space-el) !important; }

/* QUOTE / VERSE — Akzente mit Sektionspause, beide gleich */
blockquote.wp-block-quote.chev-quote-band,
p.chev-pause-verse {
	margin-top: var(--chev-space-section) !important;
	margin-bottom: var(--chev-space-section) !important;
}

/* ========== EDITOR = FRONTEND (Backend-Layout entspricht Frontend) ==========
   Die Frontend-Regeln nutzen body:not(.editor-styles-wrapper) — hier die
   Spiegel-Regeln für den Block-Editor (iframe). */
.editor-styles-wrapper .is-root-container > * {
	max-width: var(--wp--style--global--wideSize, 1180px) !important;
	margin-inline: auto !important;
}
.editor-styles-wrapper .is-root-container > .alignwide {
	max-width: var(--wp--style--global--wideSize, 1180px) !important;
}
.editor-styles-wrapper .is-root-container > .alignfull {
	max-width: none !important; width: 100% !important;
}
.editor-styles-wrapper .is-root-container > p.chev-kicker,
.editor-styles-wrapper .is-layout-constrained > p.chev-kicker {
	margin-top: var(--chev-space-section, 7rem) !important;
	margin-bottom: 0 !important;
}
.editor-styles-wrapper .is-root-container > p.chev-kicker:first-child {
	margin-top: 0 !important;
}
.editor-styles-wrapper .is-layout-constrained > * {
	max-width: var(--wp--style--global--wideSize, 1180px) !important;
	margin-left: 0 !important;
	margin-right: auto !important;
}
.editor-styles-wrapper .is-layout-constrained > .alignwide,
.editor-styles-wrapper .is-layout-constrained > .aligncenter {
	margin-inline: auto !important;
}

/* ========== ABSTANDS-AUTORITÄT (eine einzige Quelle) ==========
   Kein Element bringt eigene vertikale Margins mit — NUR der Kicker
   erzeugt die Sektionspause. Damit ist jeder Augenmass-Abstand identisch. */
body:not(.editor-styles-wrapper) article.front-page > *,
body:not(.editor-styles-wrapper) .entry-content > * {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
/* Ausnahme: Kicker = Sektionspause */
body:not(.editor-styles-wrapper) article.front-page > p.chev-kicker,
body:not(.editor-styles-wrapper) .entry-content > p.chev-kicker {
	margin-top: var(--chev-space-section, 7rem) !important;
	margin-bottom: 0 !important;
}
/* Erster Block ohne Pause */
body:not(.editor-styles-wrapper) article.front-page > *:first-child,
body:not(.editor-styles-wrapper) .entry-content > *:first-child {
	margin-top: 0 !important;
}
/* Innerhalb Sektionen: Gruppeninnenabstände neutralisieren (Wire-Frame liest nur Content) */
body:not(.editor-styles-wrapper) article.front-page section.wp-block-group,
body:not(.editor-styles-wrapper) .entry-content section.wp-block-group {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
/* Media-Texte: untereinander via Sektionspause des nächsten Kickers — kein Eigener */
body:not(.editor-styles-wrapper) article.front-page .wp-block-media-text,
body:not(.editor-styles-wrapper) .entry-content .wp-block-media-text {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

/* ========== HEADER-CLEARANCE + FOOTER-PAUSE (Site-weit) ==========
   Header ist fixed (88px) — Inhalt braucht clearance + Sektionspause (7rem).
   Footer: gleiche Pause wie vor einer Sektion. */
body:not(.editor-styles-wrapper) main {
	padding-top: calc(88px + var(--chev-space-section, 7rem)) !important;
}
body:not(.editor-styles-wrapper) article.front-page {
	padding-top: 0 !important;
}
body:not(.editor-styles-wrapper) .site-footer,
body:not(.editor-styles-wrapper) footer.site-footer {
	margin-top: var(--chev-space-section, 7rem) !important;
}

/* Innerer Sektions-Rhythmus: Karten + Akzente bekommen Luft (Site-weit) */
/* Stoa/Zen/Wu Wei + Angebots-Karten: Abstand oben */
body:not(.editor-styles-wrapper) article.front-page > .chev-pillars,
body:not(.editor-styles-wrapper) .entry-content > .chev-pillars,
body:not(.editor-styles-wrapper) article.front-page > .chev-offer-grid,
body:not(.editor-styles-wrapper) .entry-content > .chev-offer-grid {
	margin-top: 4rem !important;
}
/* Kierkegaard-Vers + Zitat-Band: Luft oben (Akzent-Blöcke) */
body:not(.editor-styles-wrapper) article.front-page > .chev-pause-verse,
body:not(.editor-styles-wrapper) .entry-content > .chev-pause-verse,
body:not(.editor-styles-wrapper) article.front-page > blockquote.chev-quote-band,
body:not(.editor-styles-wrapper) .entry-content > blockquote.chev-quote-band {
	margin-top: 5rem !important;
}
/* Sektionspause gilt ab Box-Unterkante des letzten Elements — Pause unverändert 7rem */
