/**
 * Kinderpark Zielboxen v1.1.0 – Bootstrap-5-Ergänzungen ohne Tailwind.
 */
.mm-kpz {
	--mm-kpz-bg-start: #2f516a;
	--mm-kpz-bg-mid: #2f516a;
	--mm-kpz-bg-end: #162936;
	position: relative;
	overflow: hidden;
	color: #fff;
}
.mm-kpz--mode-full-container,
.mm-kpz--mode-full-fluid {
	width: 100%;
}
.mm-kpz--mode-boxed {
	color: #fff;
}
.mm-kpz--bg-custom,
.mm-kpz--bg-sky-deep { background: linear-gradient(135deg, var(--mm-kpz-bg-start), var(--mm-kpz-bg-mid) 50%, var(--mm-kpz-bg-end)); }
.mm-kpz--bg-sky-indigo { background: linear-gradient(135deg, #38bdf8, #0284c7 45%, #3730a3); }
.mm-kpz--bg-cyan-blue { background: linear-gradient(135deg, #06b6d4, #0284c7 50%, #1d4ed8); }
.mm-kpz--bg-emerald-sky { background: linear-gradient(to right bottom in oklab, rgb(41, 71, 93) 0%, rgb(35, 61, 80) 50%, rgb(95, 142, 67) 100%); }
.mm-kpz--bg-emerald-teal { background: linear-gradient(135deg, #059669, #047857 50%, #0f766e); }
.mm-kpz--bg-forest { background: linear-gradient(135deg, #047857, #065f46 50%, #064e3b); }
.mm-kpz--bg-violet-sky { background: linear-gradient(135deg, #7c3aed, #2563eb 50%, #0369a1); }
.mm-kpz--bg-rose-violet { background: linear-gradient(135deg, #e11d48, #9333ea 50%, #3730a3); }
.mm-kpz--bg-orange-warm { background: linear-gradient(135deg, #ea580c, #f59e0b 50%, #be123c); }
.mm-kpz--radius-none { border-radius: 0; }
.mm-kpz--radius-small.mm-kpz--mode-boxed { border-radius: 1rem; }
.mm-kpz--radius-default.mm-kpz--mode-boxed { border-radius: 1.5rem; }
.mm-kpz--radius-large.mm-kpz--mode-boxed { border-radius: 2rem; }
.mm-kpz--space-compact { padding-block: 3.5rem; }
.mm-kpz--space-default { padding-block: 4rem; }
.mm-kpz--space-large { padding-block: 5rem; }
.mm-kpz--mode-boxed.mm-kpz--space-compact { padding: 2.5rem; }
.mm-kpz--mode-boxed.mm-kpz--space-default { padding: 3rem; }
.mm-kpz--mode-boxed.mm-kpz--space-large { padding: 3.5rem; }
.mm-kpz--mb-none { margin-bottom: 0; }
.mm-kpz--mb-compact { margin-bottom: 2rem; }
.mm-kpz--mb-default { margin-bottom: 3rem; }
.mm-kpz--mb-large { margin-bottom: 5rem; }
.mm-kpz__container--fluid {
	padding-inline: clamp(1rem, 4vw, 3rem);
}
.mm-kpz__container--boxed {
	position: relative;
	z-index: 1;
}
.mm-kpz__lights {
	position: absolute;
	inset: 0;
	pointer-events: none;
}
.mm-kpz--lights-soft .mm-kpz__lights { opacity: .18; }
.mm-kpz--lights-default .mm-kpz__lights { opacity: .30; }
.mm-kpz--lights-strong .mm-kpz__lights { opacity: .42; }
.mm-kpz__light {
	position: absolute;
	display: block;
	border-radius: 50%;
	filter: blur(4rem);
}
.mm-kpz__light--one {
	top: -6rem;
	right: -4rem;
	width: 24rem;
	height: 24rem;
	background: #fff;
}
.mm-kpz__light--two {
	left: -4rem;
	bottom: -5rem;
	width: 20rem;
	height: 20rem;
	background: #7dd3fc;
}
.mm-kpz__light--three {
	top: 50%;
	left: 50%;
	width: 37.5rem;
	height: 37.5rem;
	background: #bae6fd;
	opacity: .2;
	transform: translate(-50%, -50%);
}
.mm-kpz__light--four {
	top: 2.5rem;
	left: 25%;
	width: 16rem;
	height: 16rem;
	background: #93c5fd;
	opacity: .4;
	filter: blur(3rem);
}
.mm-kpz__light--five {
	right: 25%;
	bottom: 2.5rem;
	width: 18rem;
	height: 18rem;
	background: #67e8f9;
	opacity: .4;
	filter: blur(3rem);
}
.mm-kpz__inner {
	position: relative;
	z-index: 1;
}
.mm-kpz__header {
	margin-bottom: 3.5rem;
}
.mm-kpz--header-center .mm-kpz__header {
	text-align: center;
}
.mm-kpz__badge {
	display: inline-flex;
	margin-bottom: 1rem;
	padding: .5rem 1rem;
	border-radius: 50rem;
	color: #fff;
	background: rgba(255,255,255,.2);
	font-size: .875rem;
	font-weight: 500;
	backdrop-filter: blur(.35rem);
	-webkit-backdrop-filter: blur(.35rem);
}
.mm-kpz__title {
	margin: 0 0 1.5rem;
	color: #fff;	
	font-size: clamp(1.875rem, 5vw, 3rem);
	font-weight: 700;
	line-height: 1.16;
	letter-spacing: -.025em;
}
.mm-kpz__intro {
	max-width: 48rem;
	margin: 0;
	color: rgba(255,255,255,.95);
	font-size: 1.125rem;
	line-height: 1.75;
}
.mm-kpz--header-center .mm-kpz__intro {
	margin-inline: auto;
}
.mm-kpz-box__column {
	display: flex;
}
.mm-kpz--equal-height .mm-kpz-box {
	height: 100%;
}
.mm-kpz-box {
	display: block;
	width: 100%;
	padding: 1.75rem;
	border: .0625rem solid rgba(255,255,255,.2);
	border-radius: 1.5rem;
	color: #fff;
	background: rgba(255,255,255,.1);
	text-decoration: none;
	backdrop-filter: blur(.45rem);
	-webkit-backdrop-filter: blur(.45rem);
	transition: background-color .3s ease, border-color .3s ease, box-shadow .3s ease, transform .3s ease;
}
.mm-kpz-box--highlight {
	background: rgba(255,255,255,.16);
	border-color: rgba(255,255,255,.3);
}
.mm-kpz--hover .mm-kpz-box:hover,
.mm-kpz--hover .mm-kpz-box:focus-visible {
	color: #fff;
	background: rgba(255,255,255,.2);
	border-color: rgba(255,255,255,.34);
	box-shadow: 0 .9rem 1.8rem rgba(15,23,42,.18);
	transform: translateY(-.15rem);
	text-decoration: none;
}
.mm-kpz-box:focus-visible {
	outline: .1875rem solid rgba(255,255,255,.75);
	outline-offset: .15rem;
}
.mm-kpz-box__icon {
	display: block;
	margin-bottom: 1rem;
	font-size: 2.5rem;
	line-height: 1;
}
.mm-kpz-box__title {
	margin: 0 0 .75rem;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.35;
}
.mm-kpz-box__text {
	margin: 0;
	color: rgba(255,255,255,.95);
	font-size: .875rem;
	line-height: 1.7;
}
.mm-kpz-testimonial {
	margin-top: 3.5rem;
}
.mm-kpz-testimonial--compact {
	max-width: 56rem;
	margin-inline: auto;
}
.mm-kpz-testimonial__inner {
	display: flex;
	align-items: flex-start;
	gap: 1.5rem;
	padding: 2rem;
	border: .0625rem solid rgba(255,255,255,.2);
	border-radius: 1.5rem;
	background: rgba(255,255,255,.1);
	backdrop-filter: blur(.45rem);
	-webkit-backdrop-filter: blur(.45rem);
}
.mm-kpz-testimonial__media {
	flex: 0 0 auto;
}
.mm-kpz-testimonial__image {
	display: block;
	width: 5rem;
	height: 5rem;
	border-radius: 50%;
	object-fit: cover;
	box-shadow: 0 .5rem 1rem rgba(15,23,42,.18);
}
.mm-kpz-testimonial__content {
	flex: 1 1 auto;
	min-width: 0;
}
.mm-kpz-testimonial__text {
	margin: 0 0 1rem;
	color: #fff;
	font-size: 1.125rem;
	font-style: italic;
	line-height: 1.75;
}
.mm-kpz-testimonial__author {
	margin: 0;
	color: #bae6fd;
	font-weight: 700;
}
.mm-kpz--animate .mm-kpz__header,
.mm-kpz--animate .mm-kpz-box__column,
.mm-kpz--animate .mm-kpz-testimonial {
	opacity: 0;
	transform: translateY(1rem);
	transition: opacity .55s ease, transform .55s ease;
}
.mm-kpz--animate.is-visible .mm-kpz__header,
.mm-kpz--animate.is-visible .mm-kpz-box__column,
.mm-kpz--animate.is-visible .mm-kpz-testimonial {
	opacity: 1;
	transform: translateY(0);
}
.mm-kpz--animate.is-visible .mm-kpz-box__column:nth-child(2) { transition-delay: .06s; }
.mm-kpz--animate.is-visible .mm-kpz-box__column:nth-child(3) { transition-delay: .12s; }
.mm-kpz--animate.is-visible .mm-kpz-box__column:nth-child(4) { transition-delay: .18s; }
.mm-kpz--animate.is-visible .mm-kpz-box__column:nth-child(5) { transition-delay: .24s; }
.mm-kpz--animate.is-visible .mm-kpz-box__column:nth-child(6) { transition-delay: .30s; }
.mm-kpz--animate.is-visible .mm-kpz-testimonial { transition-delay: .22s; }
@media (min-width: 576px) {
	.mm-kpz--space-default { padding-block: 6rem; }
	.mm-kpz--space-large { padding-block: 7rem; }
	.mm-kpz--mode-boxed.mm-kpz--space-default { padding: 3.5rem; }
	.mm-kpz--mode-boxed.mm-kpz--space-large { padding: 4.25rem; }
}
@media (max-width: 575.98px) {
	.mm-kpz--mode-boxed.mm-kpz--space-compact,
	.mm-kpz--mode-boxed.mm-kpz--space-default,
	.mm-kpz--mode-boxed.mm-kpz--space-large {
		padding: 2rem 1.25rem;
	}
	.mm-kpz-testimonial__inner {
		flex-direction: column;
	}
}
@media (prefers-reduced-motion: reduce) {
	.mm-kpz-box,
	.mm-kpz--animate .mm-kpz__header,
	.mm-kpz--animate .mm-kpz-box__column,
	.mm-kpz--animate .mm-kpz-testimonial {
		opacity: 1;
		transform: none;
		transition: none;
	}
}
