/**
 * Unsere Leistungen — breites Layout, Value Stacking, Verdienstmodelle, Animationen.
 */

/* Volle Seitenbreite */
body.solumondo-app.solumondo-page-unsere-leistungen .entry-content {
	max-width: min(100%, 96rem) !important;
	width: 100%;
}

body.solumondo-app.solumondo-page-unsere-leistungen .solumondo-mkt-shell--leistungen {
	text-align: center;
	width: 100%;
	max-width: none;
}

body.solumondo-app.solumondo-page-unsere-leistungen .solumondo-leistungen-section {
	width: 100%;
	max-width: min(100%, 94rem);
	margin-inline: auto;
	padding-inline: clamp(15px, 2.5vw, 20px);
}

body.solumondo-app.solumondo-page-unsere-leistungen .solumondo-mkt-shell--leistungen .solumondo-section__header :is(h2, h3, p) {
	text-align: center !important;
	margin-inline: auto;
	max-width: 52rem;
}

/* Typografie — Mobile-Architektur SOLUMONDO */
body.solumondo-app .solumondo-leistungen-shell :is(h2, h3, h4) {
	line-height: 1.4;
	padding-bottom: 5px;
	font-size: clamp(1.15rem, 1rem + 1.2vw, 2rem);
	word-wrap: break-word;
}

body.solumondo-app .solumondo-leistungen-shell p,
body.solumondo-app .solumondo-leistungen-shell li {
	font-size: clamp(0.92rem, 0.88rem + 0.25vw, 1.05rem);
	word-wrap: break-word;
	letter-spacing: 0.01em;
}

body.solumondo-app .solumondo-leistungen-shell .solumondo-btn {
	max-width: 100%;
	width: auto;
	white-space: normal;
}

@keyframes solu-lst-kicker-pulse {
	0%,
	100% {
		opacity: 1;
		filter: brightness(1);
	}
	50% {
		opacity: 0.88;
		filter: brightness(1.15);
	}
}

@keyframes solu-lst-stack-in {
	from {
		opacity: 0;
		transform: translateY(14px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes solu-lst-icon-float {
	0%,
	100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-3px);
	}
}

@keyframes solu-lst-model-glow {
	0%,
	100% {
		opacity: 0.55;
		transform: scale(1);
	}
	50% {
		opacity: 0.9;
		transform: scale(1.04);
	}
}

@keyframes solu-lst-scan {
	0% {
		transform: translateY(-100%);
	}
	100% {
		transform: translateY(220%);
	}
}

@keyframes solu-lst-badge-shine {
	0%,
	100% {
		box-shadow: 0 6px 20px color-mix(in srgb, var(--solumondo-orange) 40%, transparent);
	}
	50% {
		box-shadow:
			0 8px 28px color-mix(in srgb, var(--solumondo-orange) 55%, transparent),
			0 0 24px color-mix(in srgb, var(--solumondo-orange) 35%, transparent);
	}
}

/* —— Value Stacking —— */
body.solumondo-app .solumondo-leistungen-stack {
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	width: 100%;
	max-width: none;
	padding: clamp(1.5rem, 1rem + 2vw, 2.75rem) clamp(1rem, 2vw, 2rem);
	border-radius: 1.35rem;
	background:
		linear-gradient(90deg, color-mix(in srgb, var(--solumondo-orange) 6%, transparent) 1px, transparent 1px),
		linear-gradient(color-mix(in srgb, var(--solumondo-orange) 5%, transparent) 1px, transparent 1px),
		radial-gradient(circle at 12% 18%, color-mix(in srgb, var(--solumondo-orange) 22%, transparent), transparent 38%),
		radial-gradient(circle at 92% 8%, color-mix(in srgb, #6eb5ff 14%, transparent), transparent 42%),
		color-mix(in srgb, #ffffff 7%, #0b1830);
	background-size: 28px 28px, 28px 28px, auto, auto, auto;
	border: 1px solid color-mix(in srgb, var(--solumondo-orange) 38%, transparent);
}

body.solumondo-app .solumondo-leistungen-stack__pulse-kicker {
	animation: solu-lst-kicker-pulse 2.8s ease-in-out infinite;
}

body.solumondo-app .solumondo-leistungen-stack__intro {
	margin-inline: auto;
	max-width: 46rem;
}

body.solumondo-app .solumondo-leistungen-stack__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 11.5rem), 1fr));
	gap: clamp(0.65rem, 1.5vw, 1rem);
	margin: 1.5rem auto 0;
	padding: 0;
	list-style: none;
	width: 100%;
	max-width: none;
}

body.solumondo-app .solumondo-leistungen-stack__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: clamp(0.9rem, 0.8rem + 0.5vw, 1.2rem);
	border-radius: 1rem;
	background: color-mix(in srgb, #ffffff 9%, #050b14);
	border: 1px solid color-mix(in srgb, var(--solumondo-orange) 30%, transparent);
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

body.solumondo-app .solumondo-leistungen-stack.is-visible .solumondo-leistungen-stack__item--animate {
	animation: solu-lst-stack-in 0.55s ease forwards;
	animation-delay: var(--solu-lst-delay, 0s);
	opacity: 0;
}

body.solumondo-app .solumondo-leistungen-stack__item:hover {
	transform: translateY(-3px);
	border-color: color-mix(in srgb, var(--solumondo-orange) 55%, transparent);
	box-shadow: 0 14px 36px color-mix(in srgb, var(--solumondo-orange) 22%, transparent);
}

body.solumondo-app .solumondo-leistungen-stack__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.65rem;
	height: 2.65rem;
	margin-bottom: 0.65rem;
	color: #101820;
	font-size: clamp(0.68rem, 0.64rem + 0.12vw, 0.78rem);
	font-weight: 900;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	border-radius: 999px;
	background: linear-gradient(145deg, var(--solumondo-orange), var(--solumondo-orange-hover, #ff7f24));
	animation: solu-lst-icon-float 3.2s ease-in-out infinite;
}

body.solumondo-app .solumondo-leistungen-stack__item:nth-child(odd) .solumondo-leistungen-stack__icon {
	animation-delay: 0.4s;
}

body.solumondo-app .solumondo-leistungen-stack__item h3 {
	margin: 0 0 0.45rem;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	font-size: clamp(0.88rem, 0.84rem + 0.25vw, 1.02rem);
	font-weight: 800;
	max-width: none;
}

body.solumondo-app .solumondo-leistungen-stack__item p {
	margin: 0 auto;
	max-width: none;
	color: color-mix(in srgb, #ffffff 88%, #9bb3d3) !important;
	-webkit-text-fill-color: color-mix(in srgb, #ffffff 88%, #9bb3d3) !important;
	line-height: 1.5;
}

body.solumondo-app .solumondo-leistungen-stack__footer {
	margin: 1.35rem auto 0;
	max-width: 44rem;
	color: var(--solumondo-orange) !important;
	-webkit-text-fill-color: var(--solumondo-orange) !important;
	font-size: clamp(0.95rem, 0.9rem + 0.2vw, 1.08rem);
	font-weight: 700;
	line-height: 1.5;
}

/* —— Verdienstmodelle —— */
body.solumondo-app .solumondo-leistungen-earn {
	width: 100%;
	max-width: none;
}

body.solumondo-app .solumondo-leistungen-models {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(1rem, 2.5vw, 1.75rem);
	margin: 1.75rem auto 0;
	width: 100%;
	max-width: none;
	align-items: stretch;
}

@media (min-width: 900px) {
	body.solumondo-app .solumondo-leistungen-models {
		grid-template-columns: 1.28fr 0.72fr;
		align-items: start;
	}
}

body.solumondo-app .solumondo-leistungen-model {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: clamp(1.35rem, 1rem + 2vw, 2.25rem) clamp(1rem, 3vw, 2rem);
	border-radius: 1.35rem;
	box-sizing: border-box;
	overflow: hidden;
}

/* Modell 1 — Pro Performance (dominant) */
body.solumondo-app .solumondo-leistungen-model--featured {
	order: -1;
	background:
		repeating-linear-gradient(
			-12deg,
			transparent,
			transparent 18px,
			color-mix(in srgb, var(--solumondo-orange) 7%, transparent) 18px,
			color-mix(in srgb, var(--solumondo-orange) 7%, transparent) 19px
		),
		radial-gradient(ellipse 120% 70% at 50% -10%, color-mix(in srgb, var(--solumondo-orange) 42%, transparent), transparent 62%),
		radial-gradient(circle at 8% 92%, color-mix(in srgb, #5eb0ff 18%, transparent), transparent 45%),
		linear-gradient(155deg, #142a4a 0%, #0a1428 42%, #050b14 100%);
	border: 2px solid color-mix(in srgb, var(--solumondo-orange) 75%, transparent);
	box-shadow:
		0 0 0 1px color-mix(in srgb, var(--solumondo-orange) 28%, transparent),
		0 26px 64px color-mix(in srgb, var(--solumondo-orange) 32%, transparent),
		0 0 90px color-mix(in srgb, var(--solumondo-orange) 18%, transparent);
}

body.solumondo-app .solumondo-leistungen-model--featured::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		180deg,
		transparent 0%,
		color-mix(in srgb, var(--solumondo-orange) 12%, transparent) 48%,
		transparent 100%
	);
	opacity: 0.35;
	pointer-events: none;
	animation: solu-lst-scan 5s linear infinite;
}

@media (min-width: 900px) {
	body.solumondo-app .solumondo-leistungen-model--featured {
		transform: scale(1.04);
		z-index: 2;
		min-height: 100%;
	}
}

body.solumondo-app .solumondo-leistungen-model__glow {
	position: absolute;
	inset: -20% -10%;
	background: radial-gradient(circle at 50% 30%, color-mix(in srgb, var(--solumondo-orange) 35%, transparent), transparent 58%);
	pointer-events: none;
	animation: solu-lst-model-glow 3.5s ease-in-out infinite;
}

body.solumondo-app .solumondo-leistungen-model__badge {
	position: relative;
	z-index: 1;
	display: inline-block;
	margin: 0 auto 0.85rem;
	padding: 0.45rem 1rem;
	color: #101820;
	font-size: clamp(0.68rem, 0.64rem + 0.15vw, 0.78rem);
	font-weight: 900;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	border-radius: 999px;
	background: linear-gradient(145deg, var(--solumondo-orange), #ff9a40);
	animation: solu-lst-badge-shine 2.4s ease-in-out infinite;
}

body.solumondo-app .solumondo-leistungen-model--featured .solumondo-leistungen-model__margin {
	position: relative;
	z-index: 1;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	font-size: clamp(2.35rem, 1.75rem + 3vw, 3.4rem);
	font-weight: 900;
	line-height: 1.1;
	text-shadow: 0 0 42px color-mix(in srgb, var(--solumondo-orange) 50%, transparent);
}

body.solumondo-app .solumondo-leistungen-model--featured .solumondo-leistungen-model__title {
	position: relative;
	z-index: 1;
	color: #ffe2b8 !important;
	-webkit-text-fill-color: #ffe2b8 !important;
	font-size: clamp(1.15rem, 1rem + 0.6vw, 1.5rem);
}

body.solumondo-app .solumondo-leistungen-model--featured :is(.solumondo-leistungen-model__kicker, .solumondo-leistungen-model__lead) {
	position: relative;
	z-index: 1;
	color: var(--solumondo-orange, #ff6a00) !important;
	-webkit-text-fill-color: var(--solumondo-orange, #ff6a00) !important;
}

/* Helle .solumondo-card-Regel überschreiben — Fließtext Modell 1 in Marken-Orange */
body.solumondo-app .solumondo-leistungen-model--featured.solumondo-card :is(
	.solumondo-leistungen-model__kicker,
	.solumondo-leistungen-model__lead,
	.solumondo-leistungen-model__list-mark,
	.solumondo-leistungen-model__list-text
) {
	color: var(--solumondo-orange, #ff6a00) !important;
	-webkit-text-fill-color: var(--solumondo-orange, #ff6a00) !important;
}

body.solumondo-app .solumondo-leistungen-model--featured .solumondo-leistungen-model__margin span {
	color: color-mix(in srgb, var(--solumondo-orange, #ff6a00) 88%, #ffffff) !important;
	-webkit-text-fill-color: color-mix(in srgb, var(--solumondo-orange, #ff6a00) 88%, #ffffff) !important;
}

body.solumondo-app .solumondo-leistungen-model--featured .solumondo-leistungen-model__list li::before {
	color: var(--solumondo-orange, #ff6a00);
}

/* Modell 2 — Passive (Decoy, zurückhaltend) */
body.solumondo-app .solumondo-leistungen-model--passive {
	background:
		linear-gradient(180deg, color-mix(in srgb, #ffffff 5%, #121820), #080c12);
	border: 1px dashed color-mix(in srgb, #ffffff 22%, transparent);
	box-shadow: inset 0 1px 0 color-mix(in srgb, #ffffff 8%, transparent);
	opacity: 0.9;
}

body.solumondo-app .solumondo-leistungen-model--passive .solumondo-leistungen-model__margin {
	color: color-mix(in srgb, #ffffff 50%, #7a8fa8) !important;
	-webkit-text-fill-color: color-mix(in srgb, #ffffff 50%, #7a8fa8) !important;
	font-size: clamp(1.45rem, 1.2rem + 1.4vw, 2rem);
	font-weight: 800;
}

body.solumondo-app .solumondo-leistungen-model--passive .solumondo-leistungen-model__title,
body.solumondo-app .solumondo-leistungen-model--passive p,
body.solumondo-app .solumondo-leistungen-model--passive li {
	color: color-mix(in srgb, #ffffff 68%, #8a9db5) !important;
	-webkit-text-fill-color: color-mix(in srgb, #ffffff 68%, #8a9db5) !important;
}

body.solumondo-app .solumondo-leistungen-model__title {
	margin: 0 auto 0.35rem;
	max-width: 22rem;
	font-size: clamp(1.05rem, 0.95rem + 0.5vw, 1.35rem);
	font-weight: 800;
}

body.solumondo-app .solumondo-leistungen-model__kicker {
	margin: 0 auto 0.75rem;
	color: color-mix(in srgb, #ffffff 72%, #9bb3d3) !important;
	-webkit-text-fill-color: color-mix(in srgb, #ffffff 72%, #9bb3d3) !important;
	font-size: clamp(0.78rem, 0.74rem + 0.15vw, 0.88rem);
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

body.solumondo-app .solumondo-leistungen-model__margin span {
	display: block;
	margin-top: 0.25rem;
	font-size: clamp(0.72rem, 0.68rem + 0.12vw, 0.82rem);
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	opacity: 0.85;
}

/* Textblock — gleiche Breite, echte Zentrierung (Logs: ul hatte margin-right:217px, listDelta:-108px) */
body.solumondo-app.solumondo-page-unsere-leistungen .entry-content .solumondo-leistungen-model__lead,
body.solumondo-app .solumondo-leistungen-model__lead {
	display: block;
	width: min(100%, 28rem);
	max-width: 28rem !important;
	margin: 0 auto 1rem !important;
	padding: 0;
	line-height: 1.6;
	text-align: center;
	align-self: center;
	box-sizing: border-box;
}

body.solumondo-app.solumondo-page-unsere-leistungen .entry-content .solumondo-leistungen-model__list,
body.solumondo-app .solumondo-leistungen-model__list {
	display: flex;
	flex-direction: column;
	align-items: center;
	align-self: center;
	width: min(100%, 28rem);
	max-width: 28rem !important;
	margin: 0 auto 1.25rem !important;
	padding: 0 !important;
	list-style: none;
	gap: 0.55rem;
	box-sizing: border-box;
}

body.solumondo-app.solumondo-page-unsere-leistungen .entry-content .solumondo-leistungen-model__list > li,
body.solumondo-app .solumondo-leistungen-model__list > li {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 0.2rem;
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.5;
	text-align: center;
	word-wrap: break-word;
	text-wrap: pretty;
	box-sizing: border-box;
}

body.solumondo-app .solumondo-leistungen-model__list > li::before {
	content: none;
	display: none;
}

body.solumondo-app .solumondo-leistungen-model__list-mark {
	display: block;
	width: 100%;
	text-align: center;
	color: var(--solumondo-orange);
	font-weight: 800;
	line-height: 1.2;
}

body.solumondo-app .solumondo-leistungen-model__list-text {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	text-align: center;
}

body.solumondo-app .solumondo-leistungen-model--featured .solumondo-leistungen-model__list-mark,
body.solumondo-app .solumondo-leistungen-model--featured .solumondo-leistungen-model__list-text {
	color: var(--solumondo-orange, #ff6a00) !important;
	-webkit-text-fill-color: var(--solumondo-orange, #ff6a00) !important;
}

body.solumondo-app .solumondo-leistungen-model--passive .solumondo-leistungen-model__list-mark,
body.solumondo-app .solumondo-leistungen-model--passive .solumondo-leistungen-model__list-text {
	color: color-mix(in srgb, #ffffff 68%, #8a9db5) !important;
	-webkit-text-fill-color: color-mix(in srgb, #ffffff 68%, #8a9db5) !important;
}

body.solumondo-app .solumondo-leistungen-model--passive .solumondo-leistungen-model__list-mark {
	color: color-mix(in srgb, #ffffff 45%, #9bb3d3) !important;
	-webkit-text-fill-color: color-mix(in srgb, #ffffff 45%, #9bb3d3) !important;
}

body.solumondo-app .solumondo-leistungen-model--featured .solumondo-leistungen-model__lead,
body.solumondo-app .solumondo-leistungen-model--passive .solumondo-leistungen-model__lead {
	text-align: center;
}


body.solumondo-app .solumondo-leistungen-model__actions {
	position: relative;
	z-index: 1;
	display: flex;
	justify-content: center;
	margin-top: auto;
	padding-top: 0.5rem;
}

body.solumondo-app .solumondo-leistungen-model--passive .solumondo-btn--outline-decoy {
	color: color-mix(in srgb, #ffffff 78%, #9bb3d3) !important;
	-webkit-text-fill-color: color-mix(in srgb, #ffffff 78%, #9bb3d3) !important;
	background: transparent !important;
	border: 2px solid color-mix(in srgb, #ffffff 32%, transparent) !important;
	box-shadow: none !important;
}

body.solumondo-app .solumondo-leistungen-cert-note {
	margin: 1.5rem auto 0;
	padding: 1rem 1.25rem;
	width: 100%;
	max-width: 48rem;
	border-radius: 0.9rem;
	background: color-mix(in srgb, var(--solumondo-orange) 12%, #050b14);
	border: 1px solid color-mix(in srgb, var(--solumondo-orange) 38%, transparent);
}

body.solumondo-app .solumondo-leistungen-cert-note p {
	margin: 0 auto;
	color: color-mix(in srgb, #ffffff 90%, #9bb3d3) !important;
	-webkit-text-fill-color: color-mix(in srgb, #ffffff 90%, #9bb3d3) !important;
	line-height: 1.55;
	max-width: 42rem;
}

body.solumondo-app .solumondo-leistungen-cert-note a {
	color: #ffd6a6 !important;
	-webkit-text-fill-color: #ffd6a6 !important;
	font-weight: 700;
}

/* CF7 Verdienstmodell im Modal */
body.solumondo-app .solumondo-cf7-verdienstmodell-label {
	display: block;
	margin-bottom: 0.35rem;
	color: var(--solumondo-orange, #ff6a00);
	font-size: clamp(0.78rem, 0.74rem + 0.12vw, 0.85rem);
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

@media (max-width: 767px) {
	body.solumondo-app.solumondo-page-unsere-leistungen .solumondo-leistungen-section {
		padding-block: clamp(1.25rem, 1rem + 2vw, 2rem);
	}

	body.solumondo-app .solumondo-leistungen-model--featured {
		transform: none;
	}

	body.solumondo-app .solumondo-leistungen-stack__grid {
		grid-template-columns: repeat(auto-fill, minmax(min(100%, 9.5rem), 1fr));
	}
}

@media (prefers-reduced-motion: reduce) {
	body.solumondo-app .solumondo-leistungen-stack__pulse-kicker,
	body.solumondo-app .solumondo-leistungen-stack__icon,
	body.solumondo-app .solumondo-leistungen-model__glow,
	body.solumondo-app .solumondo-leistungen-model__badge,
	body.solumondo-app .solumondo-leistungen-model--featured::after,
	body.solumondo-app .solumondo-leistungen-stack.is-visible .solumondo-leistungen-stack__item--animate {
		animation: none !important;
		opacity: 1 !important;
	}
}
