/* =========================================================================
   Leistungsseiten (Das System → Phase 01–06) – Klassen menne-leistung-*
   Aufbau: _build/lib_leistung.py
   ========================================================================= */

/* Bildausschnitt wie im Prototyp (object-position y-Wert) */
.menne-pos-22 img { object-position: 50% 22% !important; }
.menne-pos-25 img { object-position: 50% 25% !important; }
.menne-pos-36 img { object-position: 50% 36% !important; }
.menne-pos-40 img { object-position: 50% 40% !important; }
.menne-pos-42 img { object-position: 50% 42% !important; }
.menne-pos-60 img { object-position: 50% 60% !important; }

/* Überschriften/Texte mit begrenzter Breite */
.menne-leistung-h2-narrow { max-width: 16ch; }
.menne-leistung-intro .menne-leistung-h2-narrow { max-width: 15ch; }
.menne-leistung-lead-wide { max-width: 58ch; }

/* Intro: Foto leicht wärmer */
.menne-leistung-intro .wp-block-image img { filter: saturate(1.04) sepia(.04); }

/* Experte */
.menne-leistung-expert .is-style-menne-note { margin-top: 16px; }
.menne-leistung-expert .is-style-menne-quote { margin-top: 28px; }
.menne-leistung-expert .is-style-menne-signature { margin-top: 22px; }
.menne-leistung-expert .is-style-menne-arrow { margin-top: 24px; }

/* Was dazugehört (Prototyp .fach-grid/.fach-list): schließt ohne Abstand ans Intro an */
.menne-section.menne-leistung-umfang { padding-top: 0; }
.menne-leistung-umfang .menne-leistung-umfang__h2 { font-size: clamp(28px, 3.4vw, 40px); line-height: 1.08; max-width: 18ch; margin-top: 14px; }
.menne-leistung-umfang__text { font-size: 17px; line-height: 1.65; color: var(--m-ink-soft); max-width: 44ch; margin-top: 18px !important; }
.wp-block-list.menne-leistung-fach { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--m-line); }
.menne-leistung-fach > li {
	display: grid; grid-template-columns: minmax(0, 200px) minmax(0, 1fr); gap: 24px; margin: 0;
	padding: 20px 14px 20px 6px; border-bottom: 1px solid var(--m-line);
	font-size: 16px; line-height: 1.6; color: var(--m-ink-soft); transition: background .25s var(--m-ease);
}
.menne-leistung-fach > li::before, .menne-leistung-fach > li::marker { content: none; display: none; }
.menne-leistung-fach > li:hover { background: rgba(110, 147, 34, .07); }
.menne-leistung-fach > li > strong {
	font-family: var(--m-display); font-weight: 400; font-size: 19px; line-height: 1.3; color: var(--m-moss);
	transition: transform .25s var(--m-ease);
}
.menne-leistung-fach > li:hover > strong { transform: translateX(5px); }
@media (max-width: 920px) {
	.menne-leistung-fach > li { grid-template-columns: 1fr; gap: 6px; }
}
@media (prefers-reduced-motion: reduce) { .menne-leistung-fach > li:hover > strong { transform: none; } }

/* Experte: weitere Fachleute (Prototyp .fg-more) */
.wp-block-group.menne-leistung-more { margin-top: 26px !important; padding-top: 20px; border-top: 1px solid var(--m-line); display: grid; gap: 14px; }
.menne-leistung-more > *, .menne-leistung-more__item > * { margin: 0 !important; }
.menne-leistung-more__name { font-family: var(--m-display); font-size: 19px; line-height: 1.3; color: var(--m-ink); }
.menne-leistung-more__role { font-size: 15px; line-height: 1.55; color: var(--m-ink-soft); margin-top: 2px !important; }

/* Katalog (Platzhalter für die spätere Katalog-Etappe) */
.menne-leistung-katalog .wp-block-buttons { margin-top: 32px; }

/* Menne-Original-Hinweis */
.menne-leistung-system__intro .wp-block-heading { margin-bottom: 16px; }
.menne-leistung-system__intro .is-style-menne-lead { margin-top: 0; }
.menne-leistung-phases { margin-top: 72px !important; }
.menne-leistung-system .menne-leistung-phases + .is-style-menne-arrow { margin-top: 60px; }
.menne-leistung-system .is-current .menne-phase-num { box-shadow: 0 0 0 6px rgba(141, 185, 46, .18); }
.has-walnut-background-color .menne-leistung-phases > .wp-block-column.is-current .wp-block-heading { color: #fff; }
@media (max-width: 920px) {
	.menne-leistung-system__intro > .wp-block-column:last-child { max-width: 360px; }
	.menne-leistung-phases { margin-top: 56px !important; }
}

/* Kundenstimme zentriert */
.menne-leistung-stimme .wp-block-quote.is-style-menne-testimonial { margin-top: 22px; text-align: center; }

/* Kontakt allgemein: Gruppenfoto mit dunklem Etikett */
.menne-leistung-teamfoto { position: relative; }
.wp-block-image.menne-leistung-teamfoto .wp-element-caption {
	position: absolute; left: 0; bottom: 18px; z-index: 2; margin: 0; padding: 12px 20px;
	background: rgba(42, 32, 23, .92); border-radius: 0 2px 2px 0; text-align: left;
	font-family: var(--m-display); font-size: 19px; line-height: 1.1; color: #fff;
}
.wp-block-image.menne-leistung-teamfoto .wp-element-caption strong {
	display: block; margin-top: 5px; font-family: var(--m-body); font-weight: 600; font-size: 11px; line-height: 1.6;
	letter-spacing: .14em; text-transform: uppercase; color: var(--m-moss-bright);
}
.wp-block-image.menne-leistung-teamfoto .wp-element-caption strong + br,
.wp-block-image.menne-leistung-teamfoto .wp-element-caption br { display: none; }
.menne-leistung-cways { margin-top: 48px !important; }
.menne-contact-card--grid.menne-leistung-cways > .is-style-menne-info-row:last-child { grid-column: 1 / -1; border-right: 0; border-bottom: 0; }
.menne-contact-card--grid.menne-leistung-cways > .is-style-menne-info-row:first-child { border-bottom: 1px solid var(--m-walnut-line); }
.menne-ico-steps { --m-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h16M4 12h16M4 18h10'/%3E%3C/svg%3E"); }
@media (max-width: 680px) {
	.menne-contact-card--grid.menne-leistung-cways > .is-style-menne-info-row { padding-left: 84px; padding-right: 20px; }
	.menne-contact-card--grid.menne-leistung-cways > .is-style-menne-info-row::before { left: 22px; }
	.menne-contact-card--grid.menne-leistung-cways > .is-style-menne-info-row::after { left: 34px; }
}

/* Phasenmodell (lazy, sizes=auto): Seitenverhältnis fest, sonst greift contain-intrinsic-size (1500px) */
.menne-leistung-system .wp-block-image.is-style-menne-natural img { aspect-ratio: 1023 / 1537 !important; }

/* Zentrierung (Prototyp): Kundenstimme + Link unter der Phasen-Leiste */
.menne-leistung-stimme .menne-inner { text-align: center; }
.menne-leistung-system .menne-leistung-phases + .is-style-menne-arrow { text-align: center; }

/* =========================================================================
   Das Menne-Original (Übersicht /das-system/) – Klassen menne-system-*
   ========================================================================= */
.menne-system-modell { max-width: 400px; margin-left: auto; box-shadow: var(--m-shadow-card); }
.menne-system-modell img { aspect-ratio: 1023 / 1537 !important; }
.menne-system-stats { margin-top: 54px !important; }

.menne-system-phasen__head { max-width: 720px; margin-bottom: 44px; }
.menne-system-phasen__head .wp-block-heading { margin-top: 12px !important; }
.menne-system-phasen__intro { font-size: 18px; line-height: 1.65; color: var(--m-ink-soft); max-width: 56ch; margin-top: 16px; }

.wp-block-group.menne-system-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.menne-system-grid > * { margin: 0 !important; }
.wp-block-group.menne-system-card {
	position: relative; display: flex; flex-direction: column; background: var(--m-paper); border: 1px solid var(--m-line);
	border-radius: 3px; overflow: hidden; transition: transform .2s var(--m-ease), box-shadow .2s var(--m-ease), border-color .2s var(--m-ease);
}
.menne-system-card:hover { transform: translateY(-5px); box-shadow: var(--m-shadow-card); border-color: var(--m-moss); }
.menne-system-card:focus-within { outline: 3px solid var(--m-moss); outline-offset: 3px; }
.menne-system-card > * { margin: 0 !important; }
.wp-block-image.menne-system-card__media { position: relative; overflow: hidden; border-radius: 0; }
.menne-system-card__media img { border-radius: 0; display: block; transition: transform .6s var(--m-ease); }
.menne-system-card:hover .menne-system-card__media img { transform: scale(1.05); }
.wp-block-image.menne-system-card__media .wp-element-caption {
	position: absolute; left: 14px; top: 14px; margin: 0; padding: 4px 12px; border-radius: 2px;
	background: rgba(42, 32, 23, .86); color: #fff; font-family: var(--m-display); font-size: 15px; line-height: 1.4;
}
.wp-block-group.menne-system-card__body { display: flex; flex-direction: column; flex: 1; padding: 24px 24px 26px; }
.menne-system-card__body > * { margin: 0; }
.menne-system-card__body .is-style-menne-label { letter-spacing: .16em; margin-bottom: 8px; }
.menne-system-card__title.wp-block-heading { font-family: var(--m-display); font-weight: 400; font-size: 23px; line-height: 1.12; letter-spacing: 0; }
.menne-system-card__title a { color: var(--m-ink); text-decoration: none; }
.menne-system-card__title a::after { content: ""; position: absolute; inset: 0; z-index: 3; }
.menne-system-card__title a:focus-visible { outline: none; }
.menne-system-card__body > p:not([class]), .menne-system-card__body > p.wp-block-paragraph:not(.is-style-menne-label):not(.menne-system-card__go) { font-size: 15px; line-height: 1.55; color: var(--m-ink-soft); margin-top: 9px; }
.menne-system-card__go {
	margin-top: auto !important; padding-top: 14px; display: inline-flex; align-items: center; gap: 9px;
	color: var(--m-moss); font-weight: 600; font-size: 14px; transition: gap .2s var(--m-ease);
}
.menne-system-card__go::after { content: ""; width: 15px; height: 14px; background: currentColor; -webkit-mask: var(--m-arrow) no-repeat center / contain; mask: var(--m-arrow) no-repeat center / contain; }
.menne-system-card:hover .menne-system-card__go { gap: 14px; }
@media (max-width: 920px) {
	.wp-block-group.menne-system-grid { grid-template-columns: 1fr 1fr; gap: 20px; }
	.menne-system-modell { margin-inline: auto; }
}
@media (max-width: 560px) {
	.wp-block-group.menne-system-grid { grid-template-columns: 1fr; }
}

/* Schluss-CTA zentriert */
.menne-system-cta .menne-inner { text-align: center; }
.menne-system-cta .is-style-menne-statement { margin-bottom: 30px; }
.menne-system-cta .wp-block-buttons { justify-content: center; }

/* Fachmann der Phase: Partnerzeile + Hinweis auf die Projektleiter (Update 10/2026) */
.menne-leistung-expert__partner { font-size: 15px; line-height: 1.6; color: var(--m-ink-soft); margin-top: 18px !important; }
.menne-leistung-expert__partner em { font-family: var(--m-display); font-size: 17px; color: var(--m-bark); }
.menne-leistung-expert__pl { font-size: 15px; line-height: 1.6; color: var(--m-ink-soft); margin-top: 22px !important; padding-top: 18px; border-top: 1px solid var(--m-line); max-width: 52ch; }
.menne-leistung-expert__pl strong, .menne-leistung-expert__partner strong { color: var(--m-ink); }
.menne-leistung-expert .is-style-menne-arrow { margin-top: 24px !important; }

/* ---------- Das System: geteilter Hero (Bild 62 %) ---------- */
.wp-block-cover.is-style-menne-hero-split.menne-hero-split--62 .wp-block-cover__image-background { width: 62%; filter: brightness(1.12) saturate(1.05); }
.wp-block-cover.is-style-menne-hero-split.menne-hero-split--62::after { left: 38%; width: 16%; }
.wp-block-cover.menne-hero-split--62 .wp-block-cover__inner-container > h1 { max-width: 520px !important; }
.wp-block-cover.menne-hero-split--62 .wp-block-cover__inner-container > .is-style-menne-lead { max-width: 460px !important; color: #f0ebe2; font-size: 19px; line-height: 1.5; }
.wp-block-cover.menne-hero-split--62 .wp-block-cover__inner-container > .wp-block-buttons,
.wp-block-cover.menne-hero-split--62 .wp-block-cover__inner-container > .is-style-menne-eyebrow { max-width: none; }

/* ---------- Das System: Wer führt Ihr Projekt? ---------- */
.menne-wf-head { max-width: 760px; margin-bottom: 48px !important; }
.menne-wf-head > * { margin: 0; }
.menne-wf-head .wp-block-heading { margin-top: 12px !important; }
.menne-wf-intro { font-size: 18px; line-height: 1.65; max-width: 58ch; margin-top: 16px !important; }
.menne-wf-head--2 { margin: 88px 0 32px !important; }
.menne-wf-h3.wp-block-heading { font-size: clamp(26px, 3.2vw, 36px); line-height: 1.1; }
.wp-block-group.menne-wf-leads { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.menne-wf-leads > * { margin: 0 !important; }
.wp-block-group.menne-wf-lead { background: var(--m-sand); border-radius: 3px; overflow: hidden; display: flex; flex-direction: column; transition: transform .25s var(--m-ease), box-shadow .25s var(--m-ease), background .25s var(--m-ease); }
.menne-wf-lead:hover { transform: translateY(-5px); box-shadow: var(--m-shadow-card-hover); background: var(--m-sand-deep); }
.menne-wf-lead > * { margin: 0 !important; }
.menne-wf-lead .wp-block-image.menne-wf-lead__img { border-radius: 0; box-shadow: none; }
.menne-wf-lead .wp-block-image.menne-wf-lead__img img { border-radius: 0; object-position: 50% 20% !important; }
.menne-wf-lead__body { padding: 24px 26px 28px; }
.menne-wf-lead__body > * { margin: 0; }
.menne-wf-lead__body .is-style-menne-label { letter-spacing: .16em; }
.menne-wf-lead__name.wp-block-heading { font-size: 26px; line-height: 1.15; margin: 8px 0 6px !important; letter-spacing: 0; }
.menne-wf-lead__desc { font-size: 15px; line-height: 1.55; }
.menne-wf-quote { font-family: var(--m-display); font-style: italic; font-size: 18px; line-height: 1.5; color: var(--m-bark); margin-top: 16px !important; }
.wp-block-group.menne-wf-phases { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 48px; border-top: 1px solid var(--m-line); }
.menne-wf-phases > * { margin: 0 !important; }
.wp-block-group.menne-wf-phase { position: relative; padding: 26px 14px 26px 6px; border-bottom: 1px solid var(--m-line); transition: background .25s var(--m-ease); }
.menne-wf-phase:hover { background: rgba(110, 147, 34, .07); }
.menne-wf-phase > * { margin: 0; }
.menne-wf-phase__head { display: flex; align-items: baseline; gap: 14px; margin-bottom: 16px !important; }
.menne-wf-phase__head strong { font-family: var(--m-display); font-weight: 400; font-size: 30px; line-height: 1; color: var(--m-moss); transition: transform .25s var(--m-ease); }
.menne-wf-phase:hover .menne-wf-phase__head strong { transform: translateX(5px); }
.menne-wf-phase__head a { font-weight: 600; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--m-ink-soft); text-decoration: none; }
.menne-wf-phase__head a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.menne-wf-phase:hover .menne-wf-phase__head a { color: var(--m-moss); }
.menne-wf-phase:focus-within { outline: 3px solid var(--m-moss); outline-offset: -3px; }
.menne-wf-phase__head a:focus-visible { outline: none; }
.wp-block-group.menne-wf-person { display: flex; gap: 18px; align-items: flex-start; }
.menne-wf-person > * { margin: 0 !important; }
.menne-wf-person + .menne-wf-person { margin-top: 18px !important; padding-top: 18px; border-top: 1px dashed var(--m-line); }
.menne-wf-person .menne-wf-person__img { flex: none; width: 76px; }
.menne-wf-person .menne-wf-person__img img { width: 76px; height: 96px; object-fit: cover; object-position: 50% 22%; border-radius: 3px; }
.menne-wf-person .wp-block-group > * { margin: 0; }
.menne-wf-person__name { font-family: var(--m-display); font-size: 19px; line-height: 1.2; color: var(--m-ink); }
.menne-wf-person__role { font-size: 14px; color: var(--m-ink-mute); margin-top: 3px !important; }
.menne-wf-person__quote { font-family: var(--m-display); font-style: italic; font-size: 16px; line-height: 1.5; color: var(--m-bark); margin-top: 8px !important; }
@media (max-width: 920px) {
	.wp-block-group.menne-wf-leads { grid-template-columns: 1fr; max-width: 520px; }
	.wp-block-group.menne-wf-phases { grid-template-columns: 1fr; }
	.menne-wf-lead:hover { transform: none; }
	.wp-block-cover.is-style-menne-hero-split.menne-hero-split--62 .wp-block-cover__image-background { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .menne-wf-phase:hover .menne-wf-phase__head strong { transform: none; } }
.wp-block-cover.menne-hero-split--62 > .wp-block-cover__inner-container { padding-bottom: 74px !important; }
