

body.mn-startseite .entry-content > * {
	margin-top: 0;
}

.mn-home-block {
	margin: 0 0 44px;
}

.mn-home-block:last-child {
	margin-bottom: 0;
}

.mn-home-trenner {
	height: 1px;
	margin: 0 0 44px;
	border: 0;
	background: linear-gradient(90deg, transparent, var(--mn-band) 22%, var(--mn-band) 78%, transparent);
}

.mn-home-trenner + .mn-home-trenner,
.mn-home-trenner:last-child {
	display: none;
}

body.mn-startseite .entry-content p:empty {
	display: none;
}

.mn-home-kategorien:not(:has(*)) {
	display: none;
}

.mn-home-lead,
.mn-startseite .mn-slider-text {
	margin: -4px 0 20px;
	font-size: 15px;
	line-height: 1.6;
	color: var(--mn-text);
}


.mn-home-kopf {
	display: grid;
	gap: 18px;
}

@media (min-width: 768px) {
	.mn-home-kopf {
		grid-template-columns: 1fr 1.5fr;
	}
}


.mn-home-willkomm {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 16px;
	padding: 32px 34px;
	background: linear-gradient(158deg, #fbf9f3 0%, var(--mn-beige) 100%);
	border: 1px solid var(--mn-band);
	border-radius: var(--mn-radius-card);
}


.mn-home-buehne {
	padding: 32px 34px 30px;
	background: var(--mn-white);
	border: 1px solid var(--mn-border);
	border-radius: var(--mn-radius-card);
	box-shadow: var(--mn-shadow-card);
}

.mn-buehne-beige .mn-home-buehne {
	background: linear-gradient(158deg, #fbf9f3 0%, var(--mn-beige) 100%);
	border-color: var(--mn-band);
}

.mn-home-gruss {
	margin: 0;
	font-size: clamp(20px, 2.05vw, 29px);
	font-weight: 300;
	line-height: 1.45;
	letter-spacing: 0.2px;
	color: var(--mn-text-dark);
	text-wrap: balance;
	text-align: center;
	align-self: stretch;
}

.mn-home-gruss-text {
	font-weight: 600;
}

.mn-home-gruss-wunsch {
	display: block;
	font-weight: 400;
}

.mn-home-gruss-wunsch[hidden] {
	display: none;
}

.mn-home-gruss-herz {
	display: inline-flex;
	vertical-align: -0.18em;
	margin: 0 0.15em;
	color: #7b2d8e;
}

.mn-home-gruss-herz .mn-icon {
	width: 1em;
	height: 1em;
	fill: currentColor;
	stroke: none;
}

.mn-home-fest {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 8px 16px;
	background: var(--mn-white);
	border: 1px solid var(--mn-band);
	border-radius: 999px;
	font-size: clamp(14px, 1.05vw, 16px);
	font-weight: 500;
	color: #7b2d8e;
}

.mn-home-fest[hidden] {
	display: none;
}

.mn-home-buehne h1 {
	margin: 0 0 12px;
	font-size: clamp(23px, 2.4vw, 33px);
	line-height: 1.22;
	font-weight: 500;
	text-align: left;
	text-wrap: balance;
}

.mn-home-gruss-wunsch.is-pending {
	visibility: hidden;
}

.mn-home-marken {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin: 0;
	padding: 0;
}

.mn-home-marken li {
	display: flex;
	align-items: center;
	gap: 7px;
	padding: 5px 13px 5px 10px;
	background: var(--mn-white);
	border: 1px solid var(--mn-band);
	border-radius: 999px;
	font-size: 13px;
	letter-spacing: 0.4px;
	color: var(--mn-text-dark);
}

.mn-home-marken .mn-icon {
	flex-shrink: 0;
	color: var(--mn-link);
}

.mn-home-buehne p {
	margin: 0 0 12px;
	line-height: 1.65;
}

.mn-home-buehne p:last-child {
	margin-bottom: 0;
}

.mn-home-mark {
	font-weight: 500;
	color: #2f6b21;
}

.mn-home-mark--premium {
	color: #7b2d8e;
}

.mn-home-mark--planet {
	color: #21598f;
}

@media (max-width: 767.98px) {
	.mn-home-kopf {
		gap: 14px;
	}

	.mn-home-willkomm {
		padding: 22px 20px;
		gap: 12px;
	}

	.mn-home-buehne {
		padding: 24px 20px 22px;
	}
}


.mn-home-wege {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
	gap: 16px;
}

.mn-home-weg {
	display: flex;
	flex-direction: column;
	padding: 20px;
	background: var(--mn-white);
	border: 1px solid var(--mn-border);
	border-radius: var(--mn-radius-box);
	box-shadow: var(--mn-shadow-card);
	text-align: center;
}

.mn-home-weg-icon {
	display: flex;
	align-self: center;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	margin-bottom: 12px;
	border-radius: 50%;
	background: var(--mn-beige);
	color: var(--mn-text-dark);
}

.mn-home-weg--whatsapp .mn-home-weg-icon {
	background: #e2f4e4;
	color: #1f7a33;
}

.mn-home-weg--code .mn-home-weg-icon {
	background: #f3e8f7;
	color: #7b2d8e;
}

.mn-home-weg h3 {
	margin: 0 0 8px;
	font-size: 16px;
	border-bottom: 0;
	padding-bottom: 0;
}

.mn-home-weg p {
	margin: 0 0 8px;
	font-size: 14px;
	line-height: 1.55;
}

.mn-home-weg p:last-child {
	margin-bottom: 0;
}

.mn-home-wege .mn-home-weg .mn-home-weg-klein {
	margin-top: auto;
	padding-top: 8px;
	font-size: 13px;
	color: var(--mn-muted);
}

.mn-home-wege .mn-home-weg .mn-home-weg-sprache {
	margin-top: 10px;
	padding: 10px 12px;
	border-inline-start: 3px solid var(--mn-band);
	border-radius: 6px;
	background: var(--mn-beige);
	font-size: 13.5px;
	line-height: 1.45;
	color: var(--mn-text);
	text-align: start;
}

.mn-home-tel {
	display: inline-block;
	padding: 2px 0;
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0.4px;
	color: var(--mn-text-dark);
	text-decoration: none;
}

.mn-home-tel:hover {
	color: var(--mn-link);
	text-decoration: none;
}

.mn-home-code {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 15px;
	background: var(--mn-white);
	border: 1px dashed var(--mn-btn-border);
	border-radius: var(--mn-radius-s);
	font-family: inherit;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 1.6px;
	color: var(--mn-text-dark);
	cursor: pointer;
	transition: background 0.18s ease, border-color 0.18s ease;
}

.mn-home-code:hover {
	background: var(--mn-beige);
	border-color: var(--mn-text-dark);
}

.mn-home-code .mn-icon {
	flex-shrink: 0;
	color: var(--mn-muted);
}

.mn-home-code.is-kopiert {
	background: #e6f2e2;
	border-style: solid;
	border-color: #2f6b21;
	color: #2f6b21;
}

.mn-home-code.is-kopiert .mn-icon {
	color: #2f6b21;
}

.mn-home-code-echo {
	margin: 8px 0 0;
	font-size: 13px;
	color: #2f6b21;
}

.mn-home-code-echo:empty {
	margin: 0;
}


.mn-home-welten {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 18px;
}

@media (min-width: 768px) {
	.mn-home-welten {
		grid-template-columns: repeat(3, 1fr);
	}
}

.mn-home-welt {
	position: relative;
	overflow: hidden;
	border-radius: var(--mn-radius-card);
	background: var(--mn-beige);
	box-shadow: var(--mn-shadow-card);
	transition: box-shadow 0.22s ease, transform 0.22s ease;
}

.mn-home-welt:hover,
.mn-home-welt:focus-within {
	box-shadow: var(--mn-shadow-hover);
	transform: translateY(-2px);
}

.mn-home-welt > a {
	display: block;
	color: inherit;
	text-decoration: none;
}

.mn-home-welt > a:hover {
	text-decoration: none;
}

.mn-home-welt > a[aria-disabled="true"] {
	cursor: default;
}

.mn-home-welt-bild {
	display: block;
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	transition: transform 0.4s ease;
}

.mn-home-welt:hover .mn-home-welt-bild {
	transform: scale(1.04);
}

.mn-home-welt-schild {
	position: absolute;
	inset-inline: 0;
	bottom: 0;
	z-index: 1;
	padding: 46px 16px 13px;
	background: linear-gradient(
		to top,
		rgba(18, 18, 16, 0.88) 0%,
		rgba(18, 18, 16, 0.72) 26%,
		rgba(18, 18, 16, 0.38) 58%,
		rgba(18, 18, 16, 0.12) 82%,
		rgba(18, 18, 16, 0) 100%
	);
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.3;
	border-bottom: 0;
	margin: 0;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}

@media (hover: hover) {
	.mn-home-welt-schleier {
		position: absolute;
		inset: 0;
		z-index: 2;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 9px;
		padding: 22px;
		background: rgba(20, 20, 18, 0.72);
		color: #fff;
		text-align: center;
		opacity: 0;
		transition: opacity 0.24s ease;
	}

	.mn-home-welt:hover .mn-home-welt-schleier,
	.mn-home-welt:focus-within .mn-home-welt-schleier {
		opacity: 1;
	}

	.mn-home-welt-schleier-titel {
		font-size: 16px;
		font-weight: 500;
		line-height: 1.35;
	}

	.mn-home-welt-schleier-text {
		font-size: 13.5px;
		line-height: 1.5;
		opacity: 0.92;
	}

	.mn-home-welt-cta {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		margin-top: 3px;
		padding: 7px 16px;
		border: 1px solid rgba(255, 255, 255, 0.75);
		border-radius: var(--mn-radius-s);
		font-size: 12.5px;
		letter-spacing: 0.7px;
		text-transform: uppercase;
	}
}

@media not all and (hover: hover) {
	.mn-home-welt {
		background: var(--mn-white);
	}

	.mn-home-welt .mn-home-welt-schild {
		margin: 0;
	}

	.mn-home-welt-schild {
		position: static;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
		padding: 12px 14px 0;
		background: var(--mn-white);
		color: var(--mn-text-dark);
		font-size: 15px;
		text-shadow: none;
	}

	.mn-home-welt-schleier {
		display: block;
		padding: 3px 14px 13px;
		background: var(--mn-white);
	}

	.mn-home-welt-schleier-titel {
		display: none;
	}

	.mn-home-welt-schleier-text {
		display: -webkit-box;
		-webkit-line-clamp: 2;
		line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
		font-size: 13px;
		line-height: 1.45;
		color: var(--mn-text);
	}

	.mn-home-welt-cta {
		display: none;
	}
}

@media (max-width: 479.98px) {
	.mn-home-welten {
		gap: 12px;
	}

	.mn-home-welt-schild {
		padding: 20px 11px 10px;
		font-size: 13.5px;
	}
}


.mn-home-kategorien {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	gap: 18px;
}

.mn-home-kat {
	display: flex;
	flex-direction: column;
	padding: 20px;
	background: var(--mn-box);
	border: 1px solid var(--mn-border);
	border-radius: var(--mn-radius-box);
}

.mn-home-kat-titel {
	margin: 0 0 8px;
	font-size: 17px;
	border-bottom: 0;
	padding-bottom: 0;
}

.mn-home-kat-text {
	margin: 0 0 16px;
	font-size: 14px;
	line-height: 1.55;
}

.mn-home-kat-raster {
	list-style: none;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
	margin: 0 0 16px;
	padding: 0;
}

.mn-home-kat-produkt a {
	display: block;
	color: var(--mn-text);
	text-decoration: none;
}

.mn-home-kat-produkt a:hover {
	color: var(--mn-text-dark);
	text-decoration: none;
}

.mn-home-kat-bild {
	display: block;
	margin-bottom: 7px;
	overflow: hidden;
	background: var(--mn-white);
	border: 1px solid var(--mn-border);
	border-radius: var(--mn-radius-s);
}

.mn-home-kat-bild img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	transition: transform 0.28s ease;
}

.mn-home-kat-produkt a:hover .mn-home-kat-bild img {
	transform: scale(1.05);
}

.mn-home-kat-name {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-width: 0;
	font-size: 13px;
	line-height: 1.4;
}

.mn-home-kat-mehr {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	min-height: 40px;
	margin-top: auto;
	padding: 8px 0;
	font-size: 14px;
	color: var(--mn-link);
}

.mn-home-kat-mehr .mn-icon {
	flex-shrink: 0;
	transition: transform 0.18s ease;
}

.mn-home-kat-mehr:hover .mn-icon {
	transform: translateX(2px);
}


.mn-home-blog-raster {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(250px, 100%), 1fr));
	gap: 18px;
}

.mn-home-blog-karte {
	overflow: hidden;
	background: var(--mn-white);
	border: 1px solid var(--mn-border);
	border-radius: var(--mn-radius-card);
	box-shadow: var(--mn-shadow-card);
	transition: box-shadow 0.22s ease, transform 0.22s ease;
}

.mn-home-blog-karte:hover,
.mn-home-blog-karte:focus-within {
	box-shadow: var(--mn-shadow-hover);
	transform: translateY(-2px);
}

.mn-home-blog-link {
	display: flex;
	flex-direction: column;
	height: 100%;
	color: var(--mn-text);
	text-decoration: none;
}

.mn-home-blog-link:hover {
	color: var(--mn-text);
	text-decoration: none;
}

.mn-home-blog-bild {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: var(--mn-beige);
}

.mn-home-blog-bild img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s ease;
}

.mn-home-blog-karte:hover .mn-home-blog-bild img {
	transform: scale(1.04);
}

.mn-home-blog-body {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
	padding: 15px 17px 17px;
}

.mn-home-blog-datum {
	display: block;
	margin-bottom: 6px;
	font-size: 12.5px;
	color: var(--mn-muted);
}

.mn-home-blog-titel {
	display: block;
	margin-bottom: 7px;
	font-size: 15.5px;
	font-weight: 500;
	line-height: 1.35;
	color: var(--mn-text-dark);
}

.mn-home-blog-text {
	display: block;
	margin-bottom: 12px;
	font-size: 13.5px;
	line-height: 1.5;
}

.mn-home-blog-cta {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-top: auto;
	font-size: 13.5px;
	color: var(--mn-link);
}

.mn-home-blog-cta .mn-icon {
	flex-shrink: 0;
	transition: transform 0.18s ease;
}

.mn-home-blog-karte:hover .mn-home-blog-cta .mn-icon {
	transform: translateX(2px);
}

.mn-home-blog-raster {
	margin-bottom: calc(26px * var(--mn-space));
}

.mn-home-blog-alle {
	text-align: center;
}


.mn-home-ueber {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(340px, 100%), 1fr));
	gap: 26px;
	align-items: start;
}

.mn-home-ueber > section {
	min-width: 0;
}

.mn-home-ueber .mn-cp-usp {
	grid-template-columns: 1fr;
	gap: 10px;
}

.mn-home-ueber .entry-content h2,
.mn-home-ueber h2 {
	margin-top: 0;
}


.mn-startseite .mn-slider-title,
.mn-startseite .mn-home-titel {
	font-size: 19px;
	font-weight: 500;
	letter-spacing: normal;
	text-align: left;
	text-transform: none;
	border: 0;
	border-bottom: 2px solid var(--mn-beige);
	padding: 0 0 8px;
	margin: 0 0 16px;
}


body.mn-home-mit-bild .mn-home-willkomm {
	position: relative;
	isolation: isolate;
	overflow: hidden;
}

.mn-willkomm-bild {
	display: block;
	position: absolute;
	inset: 0;
	z-index: -1;
	margin: 0;
	border-radius: inherit;
	overflow: hidden;
	pointer-events: none;
}

.mn-willkomm-bild img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

body.mn-home-mit-bild .mn-home-willkomm .mn-home-gruss {
	padding: 16px 22px;
	border: 1px solid transparent;
	border-radius: 18px;
}


.mn-home-willkomm.is-sichtbar .mn-home-gruss,
.mn-home-willkomm.is-sichtbar .mn-home-fest,
.mn-home-willkomm.is-sichtbar .mn-home-marken li {
	background: rgba(253, 252, 248, var(--mn-glas-deck, 0.55));
	border: 1px solid rgba(255, 255, 255, 0.6);
	-webkit-backdrop-filter: blur(var(--mn-glas-blur, 14px)) saturate(1.2);
	backdrop-filter: blur(var(--mn-glas-blur, 14px)) saturate(1.2);
	box-shadow: 0 8px 28px rgba(25, 25, 20, 0.14);
	transition: background 0.9s ease, box-shadow 0.9s ease;
}

.mn-home-willkomm.is-sichtbar .mn-home-gruss {
	border-color: rgba(255, 255, 255, 0.6);
}


.mn-home-willkomm.is-dunkel.is-sichtbar .mn-home-gruss,
.mn-home-willkomm.is-dunkel.is-sichtbar .mn-home-fest,
.mn-home-willkomm.is-dunkel.is-sichtbar .mn-home-marken li {
	background: rgba(16, 18, 28, var(--mn-glas-deck, 0.55));
	border-color: rgba(255, 255, 255, 0.22);
	color: #f4f2ec;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35);
}

.mn-home-willkomm.is-dunkel.is-sichtbar .mn-home-gruss-herz {
	color: #c98fd9;
}

.mn-home-willkomm.is-dunkel.is-sichtbar .mn-home-fest {
	color: #e3c6ee;
}

.mn-home-willkomm.is-dunkel.is-sichtbar .mn-home-marken .mn-icon {
	color: #9ecf8b;
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
	.mn-home-willkomm.is-sichtbar .mn-home-gruss,
	.mn-home-willkomm.is-sichtbar .mn-home-fest,
	.mn-home-willkomm.is-sichtbar .mn-home-marken li {
		background: rgba(253, 252, 248, 0.92);
	}

	.mn-home-willkomm.is-dunkel.is-sichtbar .mn-home-gruss,
	.mn-home-willkomm.is-dunkel.is-sichtbar .mn-home-fest,
	.mn-home-willkomm.is-dunkel.is-sichtbar .mn-home-marken li {
		background: rgba(16, 18, 28, 0.88);
	}
}


.mn-startseite .mn-home-marken:not(.mn-home-marken--dyn) {
	display: none;
}

body.mn-gruss-unten.mn-home-mit-bild .mn-home-willkomm {
	justify-content: flex-end;
	min-height: 420px;
	padding: 0;
	gap: 10px;
}

body.mn-gruss-unten.mn-home-mit-bild .mn-home-willkomm .mn-home-marken {
	display: none;
}

body.mn-gruss-unten.mn-home-mit-bild .mn-home-willkomm .mn-home-gruss {
	margin: 0;
	padding: 13px 22px 15px;
	border-radius: 0;
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
	font-size: clamp(15px, 1.3vw, 19px);
	line-height: 1.5;
}

body.mn-gruss-unten.mn-home-mit-bild .mn-home-willkomm .mn-home-fest {
	order: -1;
	margin-bottom: 2px;
}

@media (max-width: 767.98px) {
	body.mn-gruss-unten.mn-home-mit-bild .mn-home-willkomm {
		min-height: 340px;
	}
}


.mn-willkomm-wetter {
	position: absolute;
	inset: 0;
	z-index: 3;
	pointer-events: none;
	border-radius: inherit;
	overflow: hidden;
}

.mn-willkomm-wetter--schnee,
.mn-willkomm-wetter--schnee::before,
.mn-willkomm-wetter--schnee::after {
	background-repeat: repeat;
}

.mn-willkomm-wetter--schnee {
	background-image:
		radial-gradient(3px 3px at 22px 34px, rgba(255, 255, 255, 0.9) 45%, transparent 55%),
		radial-gradient(2.6px 2.6px at 92px 110px, rgba(255, 255, 255, 0.85) 45%, transparent 55%),
		radial-gradient(3.2px 3.2px at 150px 40px, rgba(255, 255, 255, 0.9) 45%, transparent 55%),
		radial-gradient(2.4px 2.4px at 60px 180px, rgba(255, 255, 255, 0.8) 45%, transparent 55%),
		radial-gradient(2.8px 2.8px at 130px 220px, rgba(255, 255, 255, 0.85) 45%, transparent 55%);
	background-size: 190px 260px;
	animation: mn-schnee-nah 9s linear infinite;
}

.mn-willkomm-wetter--schnee::before,
.mn-willkomm-wetter--schnee::after {
	content: "";
	position: absolute;
	inset: 0;
}

.mn-willkomm-wetter--schnee::before {
	background-image:
		radial-gradient(2px 2px at 40px 60px, rgba(255, 255, 255, 0.65) 45%, transparent 55%),
		radial-gradient(1.8px 1.8px at 170px 140px, rgba(255, 255, 255, 0.6) 45%, transparent 55%),
		radial-gradient(2.2px 2.2px at 100px 240px, rgba(255, 255, 255, 0.65) 45%, transparent 55%),
		radial-gradient(1.6px 1.6px at 220px 40px, rgba(255, 255, 255, 0.55) 45%, transparent 55%);
	background-size: 260px 320px;
	animation: mn-schnee-mitte 14s linear infinite;
}

.mn-willkomm-wetter--schnee::after {
	background-image:
		radial-gradient(1.4px 1.4px at 60px 100px, rgba(255, 255, 255, 0.45) 45%, transparent 55%),
		radial-gradient(1.2px 1.2px at 200px 200px, rgba(255, 255, 255, 0.4) 45%, transparent 55%),
		radial-gradient(1.5px 1.5px at 300px 60px, rgba(255, 255, 255, 0.45) 45%, transparent 55%);
	background-size: 340px 400px;
	animation: mn-schnee-fern 20s linear infinite;
}

@keyframes mn-schnee-nah {
	to { background-position: 95px 260px; }
}

@keyframes mn-schnee-mitte {
	to { background-position: -130px 320px; }
}

@keyframes mn-schnee-fern {
	to { background-position: 100px 400px; }
}

.mn-willkomm-wetter--regen {
	transform: rotate(7deg) scale(1.25);
	background-image:
		radial-gradient(1.3px 13px at 22px 40px, rgba(222, 233, 248, 0.55) 45%, transparent 62%),
		radial-gradient(1.3px 15px at 78px 130px, rgba(222, 233, 248, 0.5) 45%, transparent 62%),
		radial-gradient(1.2px 12px at 128px 80px, rgba(222, 233, 248, 0.55) 45%, transparent 62%),
		radial-gradient(1.3px 14px at 50px 200px, rgba(222, 233, 248, 0.5) 45%, transparent 62%),
		radial-gradient(1.2px 13px at 105px 175px, rgba(222, 233, 248, 0.45) 45%, transparent 62%),
		radial-gradient(1.2px 12px at 143px 225px, rgba(222, 233, 248, 0.5) 45%, transparent 62%);
	background-size: 150px 240px;
	background-repeat: repeat;
	animation: mn-regen-nah 0.55s linear infinite;
}

.mn-willkomm-wetter--regen::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		radial-gradient(1px 10px at 30px 60px, rgba(222, 233, 248, 0.35) 45%, transparent 62%),
		radial-gradient(1px 11px at 110px 160px, rgba(222, 233, 248, 0.3) 45%, transparent 62%),
		radial-gradient(0.9px 9px at 170px 90px, rgba(222, 233, 248, 0.35) 45%, transparent 62%),
		radial-gradient(1px 10px at 65px 230px, rgba(222, 233, 248, 0.3) 45%, transparent 62%),
		radial-gradient(0.9px 9px at 195px 250px, rgba(222, 233, 248, 0.3) 45%, transparent 62%);
	background-size: 210px 300px;
	background-repeat: repeat;
	animation: mn-regen-fern 0.85s linear infinite;
}

@keyframes mn-regen-nah {
	to { background-position: 0 240px; }
}

@keyframes mn-regen-fern {
	to { background-position: 0 300px; }
}

@media (prefers-reduced-motion: reduce) {
	.mn-willkomm-wetter {
		display: none;
	}
}

@media (hover: none) {
	body.mn-touchfx .mn-home-welt {
		transition:
			box-shadow var(--mn-press-out) ease,
			transform var(--mn-press-out) var(--mn-press-spring),
			filter var(--mn-press-out) ease;
	}

	body.mn-touchfx .mn-home-welt.mn-pressed {
		transform: scale(0.975);
		box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1), 0 0 1px rgba(0, 0, 0, 0.06);
		filter: brightness(0.97);
		transition:
			transform var(--mn-press-in) ease-out,
			box-shadow var(--mn-press-in) ease-out,
			filter var(--mn-press-in) ease-out;
	}
}


.mn-willkomm-ambiente {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	border-radius: inherit;
	overflow: hidden;
	container-type: size;
}

@media (prefers-reduced-motion: reduce) {
	.mn-willkomm-ambiente {
		display: none;
	}
}


.mn-amb-stern {
	position: absolute;
	width: var(--g, 2px);
	height: var(--g, 2px);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.95);
	box-shadow: 0 0 3px rgba(255, 255, 255, 0.7);
	opacity: 0.15;
	animation: mn-amb-funkeln var(--d, 3.6s) ease-in-out var(--v, 0s) infinite;
}

@keyframes mn-amb-funkeln {
	0%, 100% { opacity: 0.15; }
	50% { opacity: 0.9; }
}


.mn-amb-schnuppe {
	position: absolute;
	width: 90px;
	height: 2px;
	background: linear-gradient(to left, rgba(255, 255, 255, 0.95), rgba(255, 255, 255, 0));
	border-radius: 2px;
	transform: rotate(24deg);
	opacity: 0;
	animation: mn-amb-schnuppe 1.1s ease-out forwards;
}

@keyframes mn-amb-schnuppe {
	0% { opacity: 0; transform: rotate(24deg) translateX(0); }
	12% { opacity: 0.9; }
	100% { opacity: 0; transform: rotate(24deg) translateX(240px); }
}


.mn-amb-wuermchen {
	position: absolute;
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background: #ffe9a8;
	box-shadow: 0 0 6px 2px rgba(255, 224, 130, 0.55);
	opacity: 0;
	animation:
		mn-amb-treiben var(--d, 9s) ease-in-out var(--v, 0s) infinite alternate,
		mn-amb-glimmen calc(var(--d, 9s) / 3) ease-in-out var(--v, 0s) infinite;
}

@keyframes mn-amb-treiben {
	from { transform: translate(0, 0); }
	to { transform: translate(var(--dx, 16px), var(--dy, -10px)); }
}

@keyframes mn-amb-glimmen {
	0%, 100% { opacity: 0.05; }
	50% { opacity: 0.85; }
}


.mn-amb-nebel {
	position: absolute;
	left: -25%;
	width: 150%;
	height: 16%;
	background: radial-gradient(closest-side, rgba(255, 255, 255, 0.55), rgba(255, 255, 255, 0) 90%);
	filter: blur(14px);
	opacity: 0.22;
	animation: mn-amb-nebelzug var(--d, 34s) ease-in-out var(--v, 0s) infinite alternate;
}

.mn-amb-nebel:nth-child(1) { top: 44%; }
.mn-amb-nebel:nth-child(2) { top: 53%; opacity: 0.17; }
.mn-amb-nebel:nth-child(3) { top: 61%; opacity: 0.13; }

@keyframes mn-amb-nebelzug {
	from { transform: translateX(-5%); }
	to { transform: translateX(5%); }
}


.mn-amb-vogelzug {
	position: absolute;
	left: -70px;
	display: flex;
	gap: 9px;
	animation: mn-amb-flug var(--d, 15s) linear forwards;
}

.mn-amb-vogel {
	display: block;
	animation: mn-amb-wippen var(--wd, 2.2s) ease-in-out var(--v, 0s) infinite alternate;
}

.mn-amb-vogel svg {
	display: block;
	width: 13px;
	height: 7px;
	fill: none;
	stroke: rgba(30, 35, 45, 0.75);
	stroke-width: 1.6;
	stroke-linecap: round;
	animation: mn-amb-schlag var(--f, 0.55s) ease-in-out var(--v, 0s) infinite alternate;
}

.mn-amb-vogel:nth-child(2) { margin-top: 5px; }
.mn-amb-vogel:nth-child(2) svg { width: 11px; }
.mn-amb-vogel:nth-child(3) { margin-top: 2px; }
.mn-amb-vogel:nth-child(4) { margin-top: 7px; }
.mn-amb-vogel:nth-child(4) svg { width: 10px; }
.mn-amb-vogel:nth-child(5) { margin-top: 4px; }
.mn-amb-vogel:nth-child(5) svg { width: 12px; }

@keyframes mn-amb-flug {
	0% { transform: translate(0, 0); }
	45% { transform: translate(calc(var(--w, 900px) * 0.45), -14px); }
	75% { transform: translate(calc(var(--w, 900px) * 0.75), -4px); }
	100% { transform: translate(var(--w, 900px), 6px); }
}

@keyframes mn-amb-wippen {
	from { transform: translateY(-2.5px); }
	to { transform: translateY(2.5px); }
}

@keyframes mn-amb-schlag {
	from { transform: scaleY(0.5); }
	to { transform: scaleY(1.3); }
}


.mn-amb-staub,
.mn-amb-staub::before {
	position: absolute;
	inset: 0;
	background-repeat: repeat;
}

.mn-amb-staub {
	background-image:
		radial-gradient(2.4px 2.4px at 30px 200px, rgba(255, 222, 150, 0.4) 45%, transparent 55%),
		radial-gradient(2px 2px at 140px 90px, rgba(255, 214, 140, 0.32) 45%, transparent 55%),
		radial-gradient(2.6px 2.6px at 220px 250px, rgba(255, 228, 160, 0.38) 45%, transparent 55%),
		radial-gradient(1.8px 1.8px at 90px 310px, rgba(255, 210, 130, 0.3) 45%, transparent 55%);
	background-size: 280px 360px;
	animation: mn-amb-staub-nah 26s linear infinite;
}

.mn-amb-staub::before {
	content: "";
	background-image:
		radial-gradient(1.6px 1.6px at 60px 120px, rgba(255, 222, 150, 0.22) 45%, transparent 55%),
		radial-gradient(1.4px 1.4px at 200px 260px, rgba(255, 214, 140, 0.18) 45%, transparent 55%),
		radial-gradient(1.7px 1.7px at 320px 60px, rgba(255, 228, 160, 0.2) 45%, transparent 55%);
	background-size: 380px 460px;
	animation: mn-amb-staub-fern 40s linear infinite;
}

@keyframes mn-amb-staub-nah {
	to { background-position: 40px -360px; }
}

@keyframes mn-amb-staub-fern {
	to { background-position: -50px -460px; }
}


.mn-amb-wolke {
	position: absolute;
	width: 55%;
	height: 34%;
	left: -60%;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(20, 30, 25, 0.17), rgba(20, 30, 25, 0) 85%);
	filter: blur(18px);
	animation: mn-amb-wolkenzug var(--d, 52s) linear var(--v, 0s) infinite;
}

.mn-amb-wolke:nth-child(1) { top: 44%; }
.mn-amb-wolke:nth-child(2) { top: 60%; width: 42%; height: 26%; opacity: 0.8; }

@keyframes mn-amb-wolkenzug {
	from { transform: translateX(0); }
	to { transform: translateX(calc(var(--w, 900px) + 60%)); }
}


.mn-amb-falter {
	position: absolute;
	animation: mn-amb-flattern var(--d, 22s) ease-in-out forwards;
}

.mn-amb-falter svg {
	display: block;
	width: 14px;
	height: 12px;
	fill: rgba(250, 250, 245, 0.9);
	animation: mn-amb-fluegel 0.24s ease-in-out infinite alternate;
}

@keyframes mn-amb-fluegel {
	from { transform: scaleX(0.35); }
	to { transform: scaleX(1); }
}

@keyframes mn-amb-flattern {
	0% { transform: translate(0, 0); opacity: 0; }
	6% { opacity: 1; }
	22% { transform: translate(18cqw, -6cqh); }
	40% { transform: translate(31cqw, 3cqh); }
	58% { transform: translate(52cqw, -9cqh); }
	76% { transform: translate(68cqw, -2cqh); }
	94% { opacity: 1; }
	100% { transform: translate(88cqw, -12cqh); opacity: 0; }
}


.mn-amb-glimm {
	position: absolute;
	width: 26%;
	height: 14%;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(255, 190, 110, 0.34), rgba(255, 190, 110, 0) 85%);
	filter: blur(6px);
	animation: mn-amb-dorflicht var(--d, 5.5s) ease-in-out var(--v, 0s) infinite alternate;
}

.mn-amb-glimm--dorf { left: 36%; top: 49%; }
.mn-amb-glimm--huette { left: 60%; top: 51%; width: 20%; height: 11%; }

@keyframes mn-amb-dorflicht {
	from { opacity: 0.55; }
	to { opacity: 1; }
}


.mn-amb-tipp {
	position: absolute;
	width: 0;
	height: 0;
	overflow: visible;
}

.mn-amb-tipp-stern {
	position: absolute;
	width: 2.5px;
	height: 2.5px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 0 4px rgba(255, 255, 255, 0.8);
	opacity: 0;
	animation: mn-amb-tipp-funkeln 1.6s ease-out var(--v, 0s) forwards;
}

@keyframes mn-amb-tipp-funkeln {
	0% { opacity: 0; transform: translate(0, 0) scale(0.4); }
	25% { opacity: 1; transform: translate(calc(var(--wx, 0px) * 0.5), calc(var(--wy, 0px) * 0.5)) scale(1.15); }
	100% { opacity: 0; transform: translate(var(--wx, 0px), var(--wy, 0px)) scale(0.6); }
}

.mn-amb-scheuch {
	position: absolute;
	opacity: 0;
	animation: mn-amb-scheuchen 2s ease-out var(--v, 0s) forwards;
}

.mn-amb-scheuch svg {
	display: block;
	width: 12px;
	height: 7px;
	fill: none;
	stroke: rgba(30, 35, 45, 0.75);
	stroke-width: 1.6;
	stroke-linecap: round;
	animation: mn-amb-schlag 0.32s ease-in-out infinite alternate;
}

@keyframes mn-amb-scheuchen {
	0% { opacity: 0; transform: translate(0, 0) scale(0.7); }
	12% { opacity: 1; }
	100% { opacity: 0; transform: translate(var(--wx, 60px), var(--wy, -90px)) scale(1); }
}

.mn-amb-tipp-pollen {
	position: absolute;
	width: 2.6px;
	height: 2.6px;
	border-radius: 50%;
	background: rgba(255, 222, 150, 0.9);
	box-shadow: 0 0 4px rgba(255, 210, 120, 0.6);
	opacity: 0;
	animation: mn-amb-wirbeln 1.8s ease-out var(--v, 0s) forwards;
}

@keyframes mn-amb-wirbeln {
	0% { opacity: 0; transform: translate(0, 0) rotate(0deg); }
	15% { opacity: 1; }
	100% { opacity: 0; transform: translate(var(--wx, 10px), var(--wy, -70px)) rotate(200deg); }
}

.mn-amb-schirm {
	position: absolute;
	opacity: 0;
	animation: mn-amb-wehen 2.2s ease-out var(--v, 0s) forwards;
}

.mn-amb-schirm svg {
	display: block;
	width: 11px;
	height: 13px;
	fill: none;
	stroke: rgba(255, 255, 255, 0.9);
	stroke-width: 1;
	stroke-linecap: round;
	animation: mn-amb-pendeln 0.9s ease-in-out infinite alternate;
}

@keyframes mn-amb-wehen {
	0% { opacity: 0; transform: translate(0, 0); }
	12% { opacity: 0.95; }
	100% { opacity: 0; transform: translate(var(--wx, 70px), var(--wy, -50px)); }
}

@keyframes mn-amb-pendeln {
	from { transform: rotate(-14deg); }
	to { transform: rotate(14deg); }
}

.mn-amb-funke {
	position: absolute;
	width: 2.2px;
	height: 2.2px;
	border-radius: 50%;
	background: #ffd27a;
	box-shadow: 0 0 5px 1px rgba(255, 190, 90, 0.65);
	opacity: 0;
	animation: mn-amb-verspruehen 1.5s cubic-bezier(0.2, 0.6, 0.4, 1) var(--v, 0s) forwards;
}

@keyframes mn-amb-verspruehen {
	0% { opacity: 0; transform: translate(0, 0) scale(1.2); }
	10% { opacity: 1; }
	100% { opacity: 0; transform: translate(var(--wx, 30px), var(--wy, -55px)) scale(0.5); }
}
