/*
Theme Name: mymama.lab
Theme URI: https://mymamalab.de
Author: mymama.lab
Description: Block-Theme für mymama.lab – bindungsorientierte Schwangerschaftsbegleitung. Warm, ruhig, editorial. Mit Bausteinen (Patterns) und Adventskalender.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mymamalab
*/

/* ---------------------------------------------------------------
   Grundlagen
---------------------------------------------------------------- */
:root {
	--mml-linie: 1.5px;
	--mml-radius: 24px;
	--mml-radius-karte: 20px;
}

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}

body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }

/* Fokus sichtbar: 2 px Terra */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 2px solid var(--wp--preset--color--terra);
	outline-offset: 3px;
	border-radius: 4px;
}

/* Textlinks: Schoko, Unterstreichung 1.5 px Terra */
:where(.wp-site-blocks) a:where(:not(.wp-element-button):not(.wp-block-button__link)) {
	text-decoration-color: var(--wp--preset--color--terra);
	text-decoration-thickness: var(--mml-linie);
	text-underline-offset: 4px;
}
:where(.wp-site-blocks) a:where(:not(.wp-element-button):not(.wp-block-button__link)):hover {
	color: var(--wp--preset--color--terra-dunkel);
}

/* Akzentwort: kursiv (Strg/Cmd + I) in Überschriften */
:where(h1, h2, .has-h-1-font-size, .has-h-2-font-size) em {
	font-style: italic;
	font-weight: 300;
	color: var(--wp--preset--color--lavendel);
}
:where(h3, h4, h5, h6) em { font-style: italic; color: var(--wp--preset--color--lav-tief); }
/* Auf hellen Wechselflächen (Creme+) großes Akzentwort in Lav tief – besser lesbar */
.has-creme-plus-background-color :where(h1, h2) em { color: var(--wp--preset--color--lav-tief); }
/* Auf Schoko: Text Creme, Akzentwort Lavendel */
.has-schoko-background-color :where(h1, h2, h3) em { color: var(--wp--preset--color--lavendel); }
.has-schoko-background-color a:where(:not(.wp-element-button):not(.wp-block-button__link)) { color: var(--wp--preset--color--creme); }

/* Lime-Marker: <mark> oder fett in der Schau-mal-Notiz */
mark, .mml-marker {
	background: linear-gradient(transparent 60%, var(--wp--preset--color--lime) 60%) !important;
	color: inherit !important;
	padding: 0 0.1em;
}

/* ---------------------------------------------------------------
   Block-Stile
---------------------------------------------------------------- */

/* Label: kleine Versal-Zeile über Überschriften */
.is-style-label {
	font-size: 0.78rem !important;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	line-height: 1.4;
	color: var(--wp--preset--color--terra-dunkel);
	margin-bottom: 0;
}
.has-schoko-background-color .is-style-label { color: var(--wp--preset--color--lavendel); }

/* Lead */
.is-style-lead { font-size: var(--wp--preset--font-size--lead); line-height: 1.6; }

/* Bogen-Bild: oben rund, unten gerade */
.is-style-bogen img { border-radius: 999px 999px var(--mml-radius) var(--mml-radius); aspect-ratio: 4 / 5; object-fit: cover; width: 100%; }
.is-style-bogen.mml-quadrat img { aspect-ratio: 1 / 1; }

/* Karte */
.is-style-karte {
	background: var(--wp--preset--color--creme-plus);
	border-radius: var(--mml-radius-karte);
	padding: clamp(28px, 3vw, 40px) clamp(24px, 3vw, 36px);
}
.has-creme-plus-background-color .is-style-karte { background: var(--wp--preset--color--creme); }

/* „Schau mal“-Notiz */
.is-style-notiz {
	background: var(--wp--preset--color--creme-plus);
	border-radius: var(--mml-radius-karte);
	padding: 28px 30px;
}
.has-creme-plus-background-color .is-style-notiz { background: var(--wp--preset--color--creme); }
.is-style-notiz strong { background: linear-gradient(transparent 60%, var(--wp--preset--color--lime) 60%); padding: 0 0.1em; }

/* „Ehrlich gesagt“-Box */
.is-style-ehrlich {
	border: var(--mml-linie) solid var(--wp--preset--color--creme-plus);
	border-radius: var(--mml-radius-karte);
	padding: 24px 28px;
	font-size: var(--wp--preset--font-size--klein);
}

/* Liste mit feinen Linien (z. B. „Kennst du das?“) */
.is-style-linien { list-style: none; padding-left: 0; }
.is-style-linien li { padding: 22px 0; border-top: var(--mml-linie) solid var(--wp--preset--color--creme-plus); }
.has-creme-plus-background-color .is-style-linien li { border-top-color: #DCCDB6; }

/* Zitat: Fraunces Italic, Lav tief, Terra-Linie links */
.wp-block-quote {
	border-left: var(--mml-linie) solid var(--wp--preset--color--terra);
	padding-left: 28px;
	margin-left: 0;
}
.wp-block-quote p {
	font-family: var(--wp--preset--font-family--fraunces);
	font-style: italic;
	font-weight: 300;
	font-size: var(--wp--preset--font-size--zitat);
	line-height: 1.3;
	color: var(--wp--preset--color--lav-tief);
}
.has-schoko-background-color .wp-block-quote p { color: var(--wp--preset--color--lavendel); }
.wp-block-quote cite { font-size: var(--wp--preset--font-size--klein); font-style: normal; }

/* Satz in Fraunces Italic (Abschluss-Sätze) */
.is-style-fraunces-kursiv {
	font-family: var(--wp--preset--font-family--fraunces);
	font-style: italic;
	font-weight: 300;
	font-size: var(--wp--preset--font-size--zitat);
	line-height: 1.3;
	color: var(--wp--preset--color--lav-tief);
}

/* Badge */
.is-style-badge {
	display: inline-block;
	background: var(--wp--preset--color--lime);
	color: var(--wp--preset--color--schoko);
	font-size: 13px !important;
	font-weight: 600;
	border-radius: 999px;
	padding: 6px 14px;
	line-height: 1.4;
	width: fit-content;
}

/* Große Ziffern (Ablauf) */
.is-style-ziffer {
	font-family: var(--wp--preset--font-family--fraunces);
	font-weight: 300;
	font-size: clamp(3rem, 6vw, 4.5rem) !important;
	line-height: 1;
	color: var(--wp--preset--color--lav-tief);
	margin-bottom: 0;
}

/* Sekundär-Button (Outline) */
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--schoko);
	border: var(--mml-linie) solid var(--wp--preset--color--schoko);
	padding: calc(16px - var(--mml-linie)) calc(32px - var(--mml-linie));
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--schoko);
	color: var(--wp--preset--color--creme);
}
.has-schoko-background-color .wp-block-button.is-style-outline > .wp-block-button__link { color: var(--wp--preset--color--creme); border-color: var(--wp--preset--color--creme); }

/* Textlink mit Pfeil */
.is-style-pfeil a { font-weight: 600; }

/* Bilder allgemein */
.wp-block-image:not(.is-style-bogen) img { border-radius: var(--mml-radius); }

/* ---------------------------------------------------------------
   Linien-Trenner („Die ununterbrochene Linie“)
---------------------------------------------------------------- */
.mml-linie {
	display: block;
	width: 100%;
	max-width: var(--wp--style--global--wide-size, 1200px);
	margin: 0 auto;
	height: auto;
	overflow: visible;
}
.mml-linie path {
	fill: none;
	stroke: var(--wp--preset--color--terra);
	stroke-width: 1.5;
	stroke-linecap: round;
	vector-effect: non-scaling-stroke;
}
.mml-linie.is-zeichnend path { stroke-dasharray: var(--laenge); stroke-dashoffset: var(--laenge); transition: stroke-dashoffset 2.2s ease-in-out; }
.mml-linie.is-zeichnend.is-sichtbar path { stroke-dashoffset: 0; }
hr.is-style-linie { border: 0; background: none; height: auto; }
.wp-block-separator.is-style-linie {
	width: 100% !important;
	max-width: var(--wp--style--global--wide-size, 1200px) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	border: 0 !important;
	background: none !important;
	opacity: 1 !important;
	height: auto;
}

/* Raster (Karten, Schritte, Fakten): leere Spalten zusammenfallen lassen */
.wp-block-group.wp-block-group-is-layout-grid {
	grid-template-columns: repeat(auto-fit, minmax(min(320px, 100%), 1fr)) !important;
}

/* Platzhalter nur für Eingeloggte sichtbar */
body:not(.logged-in) .mml-formular-platzhalter { display: none; }

/* Akzentwort auf Karten (Creme+) in Lav tief */
.is-style-karte :where(h1, h2) em { color: var(--wp--preset--color--lav-tief); }

/* ---------------------------------------------------------------
   Header & Navigation
---------------------------------------------------------------- */
.mml-header { position: sticky; top: 0; z-index: 50; background: var(--wp--preset--color--creme); border-bottom: 1px solid transparent; transition: border-color .3s; }
.admin-bar .mml-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .mml-header { top: 0; position: relative; } }
.mml-header.is-gescrollt { border-bottom-color: var(--wp--preset--color--creme-plus); }

.mml-wortmarke { font-family: var(--wp--preset--font-family--fraunces); font-size: 26px; font-weight: 400; letter-spacing: -0.01em; margin: 0; }
.mml-wortmarke a { text-decoration: none; color: var(--wp--preset--color--schoko); }
.mml-wortmarke .punkt { color: var(--wp--preset--color--terra); }

.mml-header .wp-block-navigation a { text-decoration: none; }
.mml-header .wp-block-navigation a:hover { text-decoration: underline; }
.mml-header .wp-block-button__link { font-size: 15px; padding: 10px 20px; white-space: nowrap; }
.mml-header .mml-header-instagram { flex-shrink: 0; }
@media (max-width: 599px) { .mml-header .mml-header-instagram { display: none; } }
@media (max-width: 1000px) and (min-width: 600px) {
	.mml-header .wp-block-navigation { --nav-gap: 16px; }
	.mml-header .wp-block-navigation .wp-block-navigation__container { gap: 16px; }
}

/* Mobiles Vollbild-Menü in Schoko */
.wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--schoko) !important;
	color: var(--wp--preset--color--creme) !important;
	padding: 24px 20px;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	font-family: var(--wp--preset--font-family--fraunces);
	font-weight: 300;
	font-size: 2.2rem;
	color: var(--wp--preset--color--creme);
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 18px; }

/* ---------------------------------------------------------------
   Formulare (auch für Fluent Forms)
---------------------------------------------------------------- */
.wp-site-blocks input[type="text"],
.wp-site-blocks input[type="email"],
.wp-site-blocks input[type="number"],
.wp-site-blocks textarea,
.wp-site-blocks select {
	min-height: 50px;
	padding: 10px 16px;
	border: var(--mml-linie) solid #CDBBA0;
	border-radius: 12px;
	background: var(--wp--preset--color--creme);
	color: var(--wp--preset--color--schoko);
	font: inherit;
	width: 100%;
	box-sizing: border-box;
}
.wp-site-blocks input[type="checkbox"] { accent-color: var(--wp--preset--color--terra); width: 20px; height: 20px; }
.wp-site-blocks label { font-weight: 600; font-size: 0.875rem; }
.wp-site-blocks button[type="submit"], .ff-btn-submit {
	background: var(--wp--preset--color--terra) !important;
	color: var(--wp--preset--color--creme) !important;
	border: 0 !important;
	border-radius: 999px !important;
	padding: 16px 32px !important;
	font: 600 18px/1.2 var(--wp--preset--font-family--inter) !important;
	cursor: pointer;
}
.wp-site-blocks button[type="submit"]:hover, .ff-btn-submit:hover { background: var(--wp--preset--color--terra-dunkel) !important; }

.mml-formular-platzhalter {
	border: var(--mml-linie) dashed var(--wp--preset--color--terra-dunkel);
	border-radius: 16px;
	padding: 20px 24px;
	font-size: var(--wp--preset--font-size--klein);
}

/* ---------------------------------------------------------------
   FAQ (details/summary)
---------------------------------------------------------------- */
.wp-block-details {
	border-top: var(--mml-linie) solid var(--wp--preset--color--creme-plus);
	padding: 20px 0;
}
.wp-block-details:last-of-type { border-bottom: var(--mml-linie) solid var(--wp--preset--color--creme-plus); }
.wp-block-details summary {
	list-style: none;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	font-family: var(--wp--preset--font-family--fraunces);
	font-size: var(--wp--preset--font-size--h-3);
	font-weight: 400;
	line-height: 1.25;
}
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::after {
	content: "+";
	flex: none;
	font-family: var(--wp--preset--font-family--inter);
	font-weight: 300;
	font-size: 2rem;
	line-height: 1;
	color: var(--wp--preset--color--terra);
	transition: transform .3s ease;
}
.wp-block-details[open] summary::after { transform: rotate(45deg); }
.wp-block-details > :not(summary) { margin-top: 12px; max-width: 680px; }

/* ---------------------------------------------------------------
   Instagram-Band
---------------------------------------------------------------- */
.mml-insta-raster { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; }
.mml-insta-raster .wp-block-image { margin: 0; }
.mml-insta-raster img { aspect-ratio: 4 / 5; object-fit: cover; width: 100%; border-radius: var(--mml-radius-karte) !important; transition: opacity .3s; }
.mml-insta-raster a:hover img { opacity: .85; }

/* ---------------------------------------------------------------
   Journal-Karten
---------------------------------------------------------------- */
.mml-journal .wp-block-post { background: var(--wp--preset--color--creme-plus); border-radius: var(--mml-radius-karte); overflow: hidden; display: flex; flex-direction: column; }
.mml-journal .wp-block-post-featured-image { margin: 0; }
.mml-journal .wp-block-post-featured-image img { border-radius: 0; aspect-ratio: 4 / 3; object-fit: cover; }
.mml-journal .mml-karte-text { padding: 24px 28px 32px; }
.mml-journal .wp-block-post-title a { text-decoration: none; }
.mml-journal .wp-block-post-title a:hover { text-decoration: underline; }

/* ---------------------------------------------------------------
   Adventskalender
---------------------------------------------------------------- */
.mml-advent { --tuer-luft: 14px; }
.mml-advent__hinweis { font-size: var(--wp--preset--font-size--klein); margin: 0 0 24px; }
.mml-advent__raster {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(140px, 42%), 1fr));
	grid-auto-rows: 150px;
	grid-auto-flow: dense;
	gap: var(--tuer-luft);
	list-style: none;
	margin: 0;
	padding: 0;
}
.mml-advent__feld { position: relative; perspective: 900px; }
.mml-advent__feld.is-gross { grid-row: span 2; }
.mml-advent__feld.is-breit { grid-column: span 2; }

.mml-tuer {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	font: inherit;
	color: var(--wp--preset--color--schoko);
	border-radius: var(--mml-radius-karte);
}
.mml-tuer[disabled] { cursor: not-allowed; }

/* Innenseite (hinter der Tür) */
.mml-tuer__innen {
	position: absolute; inset: 0;
	border-radius: var(--mml-radius-karte);
	background: var(--wp--preset--color--schoko);
	color: var(--wp--preset--color--creme);
	display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px;
	text-align: center;
	padding: 12px;
}
.mml-tuer__innen-titel { font-family: var(--wp--preset--font-family--fraunces); font-weight: 300; font-size: 1.05rem; line-height: 1.2; }
.mml-tuer__innen-punkt { width: 10px; height: 10px; border-radius: 50%; background: var(--wp--preset--color--lime); }

/* Türblatt */
.mml-tuer__blatt {
	position: absolute; inset: 0;
	border-radius: var(--mml-radius-karte);
	background: var(--wp--preset--color--creme-plus);
	border: var(--mml-linie) solid #DCCDB6;
	transform-origin: left center;
	transition: transform .9s cubic-bezier(.6, .05, .3, 1), box-shadow .9s;
	display: flex; flex-direction: column; justify-content: space-between;
	padding: 14px 16px;
	backface-visibility: hidden;
}
.mml-advent__feld:nth-child(3n+2) .mml-tuer__blatt { background: var(--wp--preset--color--creme); }
.mml-advent__feld:nth-child(5n+4) .mml-tuer__blatt { background: #E4DAF2; border-color: #D3C6EA; }
.mml-tuer__zahl { font-family: var(--wp--preset--font-family--fraunces); font-weight: 300; font-size: clamp(2.4rem, 5vw, 3.4rem); line-height: 1; align-self: flex-start; }
.mml-advent__feld.is-gross .mml-tuer__zahl { font-size: clamp(3.4rem, 7vw, 5rem); }
.mml-tuer__status { font-size: 12px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #6B5545; align-self: flex-end; text-align: right; }
.mml-tuer__linie { position: absolute; left: 16px; right: 16px; bottom: 44px; height: 24px; opacity: .7; }

.mml-tuer:not([disabled]):hover .mml-tuer__blatt { transform: rotateY(-14deg); box-shadow: 8px 8px 24px rgba(46, 29, 20, .12); }
.mml-advent__feld.is-offen .mml-tuer__blatt { transform: rotateY(-108deg); box-shadow: 10px 6px 30px rgba(46, 29, 20, .18); }
.mml-advent__feld.is-heute .mml-tuer__blatt { border-color: var(--wp--preset--color--terra); box-shadow: 0 0 0 4px rgba(217, 224, 75, .55); }
.mml-advent__feld.is-heute .mml-tuer__status { color: var(--wp--preset--color--terra-dunkel); }
.mml-advent__feld.is-zu .mml-tuer__blatt { opacity: .78; }
.mml-advent__feld.is-zu .mml-tuer__zahl { opacity: .55; }

@media (prefers-reduced-motion: reduce) {
	.mml-advent__feld.is-offen .mml-tuer__blatt { transform: none; opacity: 0; }
}

/* Dialog mit dem Inhalt */
.mml-advent__dialog {
	width: min(680px, calc(100vw - 32px));
	max-height: calc(100vh - 48px);
	border: 0;
	border-radius: var(--mml-radius);
	padding: 0;
	background: var(--wp--preset--color--creme);
	color: var(--wp--preset--color--schoko);
	box-shadow: 0 30px 80px rgba(46, 29, 20, .35);
}
.mml-advent__dialog::backdrop { background: rgba(46, 29, 20, .55); backdrop-filter: blur(3px); }
.mml-advent__dialog[open] { animation: mml-auftauchen .6s cubic-bezier(.2, .7, .2, 1) both; }
.mml-advent__dialog[open]::backdrop { animation: mml-blende .5s ease both; }
@keyframes mml-auftauchen { from { opacity: 0; transform: translateY(24px) scale(.96); } to { opacity: 1; transform: none; } }
@keyframes mml-blende { from { opacity: 0; } to { opacity: 1; } }
.mml-advent__dialog-kopf { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; padding: 32px 32px 0; }
.mml-advent__dialog-tag { font-size: 0.78rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--terra-dunkel); margin: 0 0 8px; }
.mml-advent__dialog h2 { margin: 0; font-family: var(--wp--preset--font-family--fraunces); font-weight: 300; font-size: clamp(1.8rem, 4vw, 2.6rem); line-height: 1.1; }
.mml-advent__dialog-inhalt { padding: 20px 32px 36px; }
.mml-advent__dialog-inhalt > * + * { margin-top: 1em; }
.mml-advent__dialog-inhalt img { max-width: 100%; height: auto; border-radius: 16px; }
.mml-advent__dialog-inhalt iframe, .mml-advent__dialog-inhalt video { width: 100%; aspect-ratio: 16 / 9; height: auto; border-radius: 16px; border: 0; }
.mml-advent__schliessen {
	flex: none;
	width: 44px; height: 44px;
	border-radius: 50%;
	border: var(--mml-linie) solid var(--wp--preset--color--schoko);
	background: transparent;
	color: var(--wp--preset--color--schoko);
	font-size: 22px; line-height: 1;
	cursor: pointer;
}
.mml-advent__schliessen:hover { background: var(--wp--preset--color--schoko); color: var(--wp--preset--color--creme); }
.mml-advent__vorschau { display: inline-block; background: var(--wp--preset--color--lime); border-radius: 999px; padding: 4px 12px; font-size: 13px; font-weight: 600; margin-bottom: 16px; }


/* ---------------------------------------------------------------
   Eigene Formulare (Kontakt, Warteliste)
---------------------------------------------------------------- */
.mml-formular { display: flex; flex-direction: column; gap: 16px; }
.mml-formular__reihe { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr)); gap: 16px; }
.mml-formular__feld { margin: 0; display: flex; flex-direction: column; gap: 6px; }
.mml-formular__feld.is-voll { grid-column: 1 / -1; }
.mml-formular__feld.is-check { flex-direction: row; align-items: flex-start; gap: 10px; }
.mml-formular__feld.is-check input { flex: none; margin-top: 3px; }
.mml-formular__feld.is-check label { font-weight: 400; font-size: 0.875rem; line-height: 1.5; }
.mml-formular__honig { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.mml-formular__hinweis { font-size: 0.8rem; margin: 0; opacity: .8; }
.mml-formular__fehler { background: var(--wp--preset--color--lime); color: var(--wp--preset--color--schoko); border-radius: 12px; padding: 12px 16px; margin: 0; font-weight: 600; }
.has-schoko-background-color .mml-formular input[type="text"],
.has-schoko-background-color .mml-formular input[type="email"],
.has-schoko-background-color .mml-formular textarea { background: var(--wp--preset--color--creme); border-color: transparent; }
.has-schoko-background-color .mml-formular label a { color: var(--wp--preset--color--creme); }

/* Menüpunkt Adventskalender: kleiner Lime-Punkt */
.mml-nav-advent > .wp-block-navigation-item__content::before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-right: 8px;
	border-radius: 50%;
	background: var(--wp--preset--color--lime);
	vertical-align: 0.1em;
}

/* ---------------------------------------------------------------
   „Kennst du das?“ – Gedanken-Karten an der Linie
---------------------------------------------------------------- */
@media (min-width: 782px) {
	.mml-kennst__links { position: sticky; top: 120px; align-self: flex-start; }
}
.mml-kennst__gedanken { position: relative; display: flex; flex-direction: column; gap: 22px; padding: 8px 0; }
.mml-kennst__gedanken::before {
	content: "";
	position: absolute;
	top: -24px;
	bottom: -24px;
	left: 50%;
	width: 24px;
	margin-left: -12px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='160' viewBox='0 0 24 160'%3E%3Cpath d='M12 0 C24 40 0 80 12 120 C18 140 12 150 12 160' fill='none' stroke='%23C7522A' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E") repeat-y center top / 24px 160px;
	opacity: .7;
	pointer-events: none;
}
.wp-block-group.is-style-gedanke {
	position: relative;
	z-index: 1;
	background: var(--wp--preset--color--creme-plus);
	border-radius: var(--mml-radius-karte);
	padding: 26px 30px 26px 74px;
	margin: 0 !important;
}
.mml-kennst__gedanken > .is-style-gedanke:nth-child(odd) { margin-right: 56px !important; }
.mml-kennst__gedanken > .is-style-gedanke:nth-child(even) { margin-left: 56px !important; background: var(--wp--preset--color--creme-warm); border: 1.5px solid var(--wp--preset--color--creme-plus); }
.is-style-gedanke::before {
	content: "\201E";
	position: absolute;
	left: 24px;
	top: -6px;
	font-family: var(--wp--preset--font-family--fraunces);
	font-size: 4.2rem;
	line-height: 1;
	color: var(--wp--preset--color--lavendel);
}
.is-style-gedanke p {
	margin: 0;
	font-family: var(--wp--preset--font-family--fraunces);
	font-weight: 300;
	font-size: clamp(1.15rem, 1.9vw, 1.4rem);
	line-height: 1.42;
}
.is-style-gedanke em { font-style: italic; color: var(--wp--preset--color--lav-tief); }
@media (max-width: 781px) {
	.mml-kennst__gedanken > .is-style-gedanke:nth-child(n) { margin-left: 0 !important; margin-right: 0 !important; }
	.wp-block-group.is-style-gedanke { padding: 22px 22px 22px 60px; }
	.is-style-gedanke::before { left: 16px; font-size: 3.4rem; }
}

/* Sanftes Einblenden beim Scrollen */
.mml-einblenden { opacity: 0; transform: translateY(18px); transition: opacity .9s ease, transform .9s ease; }
.mml-einblenden.is-sichtbar { opacity: 1; transform: none; }
.mml-einblenden:nth-child(2) { transition-delay: .12s; }
.mml-einblenden:nth-child(3) { transition-delay: .24s; }
.mml-einblenden:nth-child(4) { transition-delay: .36s; }

/* Icons in Karten: im weichen Kreis */
.is-style-karte > .wp-block-image:first-child img {
	background: var(--wp--preset--color--creme);
	border-radius: 50% !important;
	padding: 14px;
	box-sizing: content-box;
}
.has-creme-plus-background-color .is-style-karte > .wp-block-image:first-child img { background: var(--wp--preset--color--creme-plus); }

/* Erfahrungen: Berichte mit „Ganzen Bericht lesen“ */
.mml-bericht + .mml-bericht { margin-top: var(--wp--preset--spacing--60); padding-top: var(--wp--preset--spacing--50); border-top: 1.5px solid var(--wp--preset--color--creme-plus); }
.mml-bericht .wp-block-quote cite { display: block; margin-top: 12px; font-size: 0.875rem; color: #5A4636; }
.wp-block-details.mml-bericht__mehr { border: 0 !important; padding: 8px 0 0 30px; }
.wp-block-details.mml-bericht__mehr summary {
	display: inline-flex;
	gap: 10px;
	font-family: var(--wp--preset--font-family--inter);
	font-size: 0.95rem;
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: var(--wp--preset--color--terra);
	text-decoration-thickness: 1.5px;
	text-underline-offset: 4px;
}
.wp-block-details.mml-bericht__mehr summary::after { font-size: 1.3rem; }
.wp-block-details.mml-bericht__mehr p { font-size: 0.98rem; }

/* PDF-Titelbild */
.wp-block-image.mml-pdf-cover { max-width: 340px; margin-left: auto; margin-right: auto; }
.wp-block-image.mml-pdf-cover img { border-radius: 6px !important; box-shadow: 0 24px 50px rgba(46, 29, 20, 0.18); transform: rotate(-2deg); }

/* Keine Bögen mehr: Bilder mit normalen runden Ecken */
.wp-block-image.is-style-bogen img { border-radius: var(--mml-radius) !important; }

/* Zweiter Bericht unter Foto + erstem Bericht */
.mml-bericht.mml-bericht--solo { margin-top: var(--wp--preset--spacing--60); padding-top: var(--wp--preset--spacing--50); border-top: 1.5px solid var(--wp--preset--color--creme-plus); }
