/**
 * Lyor Atmosphere — statisch, GPU-schonend (keine Dauer-Animationen).
 */

.lyor-has-motion-yes,
.lyor-legacy-atmosphere,
.lyor-scene[data-lyor-scene-motion="yes"] {
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

.lyor-legacy-atmosphere::before,
.lyor-legacy-atmosphere::after {
	content: "";
	pointer-events: none;
	position: absolute;
	inset: 0;
	z-index: 0;
}

.lyor-legacy-atmosphere--morphing::before {
	opacity: calc(var(--lyor-atmo-strength, 0.28) * 0.55);
	background: radial-gradient(85% 70% at 20% 18%, rgba(255, 255, 255, 0.06) 0%, transparent 58%);
}

.lyor-legacy-atmosphere--morphing::after {
	opacity: calc(var(--lyor-atmo-strength, 0.28) * 0.4);
	background: radial-gradient(100% 80% at 50% 100%, rgba(0, 0, 0, 0.12) 0%, transparent 70%);
}

.lyor-legacy-atmosphere--floating::before {
	opacity: calc(var(--lyor-atmo-strength, 0.28) * 0.45);
	background: radial-gradient(80% 65% at 75% 20%, rgba(168, 192, 210, 0.1) 0%, transparent 60%);
}

.lyor-legacy-atmosphere--floating::after {
	opacity: calc(var(--lyor-atmo-strength, 0.28) * 0.35);
	background: radial-gradient(95% 75% at 50% 0%, rgba(255, 255, 255, 0.05) 0%, transparent 65%);
}

.lyor-legacy-atmosphere--wave::before {
	opacity: calc(var(--lyor-atmo-strength, 0.28) * 0.5);
	background: radial-gradient(75% 70% at 50% 40%, rgba(60, 58, 54, 0.12) 0%, transparent 62%);
}

.lyor-legacy-atmosphere--wave::after {
	opacity: calc(var(--lyor-atmo-strength, 0.28) * 0.45);
	background: radial-gradient(105% 85% at 50% 100%, rgba(0, 0, 0, 0.14) 0%, transparent 72%);
}

.lyor-legacy-atmosphere--grain::before {
	mix-blend-mode: soft-light;
}

.lyor-legacy-atmosphere-grain {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	opacity: calc(var(--lyor-atmo-strength, 0.28) * 0.28);
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.35'/%3E%3C/svg%3E");
	background-size: 200px 200px;
	mix-blend-mode: soft-light;
}

.lyor-legacy-atmosphere > .e-con-inner,
.lyor-legacy-atmosphere > .elementor-container,
.lyor-has-motion-yes > .e-con-inner,
.lyor-has-motion-yes > .elementor-container {
	position: relative;
	z-index: 2;
}

.lyor-motion-container {
	display: none !important;
}

.lyor-mouse-fx {
	--lyor-mx: 0px;
	--lyor-my: 0px;
	--lyor-rx: 0deg;
	--lyor-ry: 0deg;
	--lyor-rz: 0deg;
	--lyor-ms: 1;
	transform: translate3d(var(--lyor-mx), var(--lyor-my), 0);
	transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Scroll-FX: sichtbar bleiben, nur leichte Bewegung — kein opacity:0 auf der ganzen Seite */
.lyor-scroll-fx {
	--lyor-scroll-duration: 700ms;
	--lyor-scroll-delay: 0ms;
	opacity: 1;
	transition: transform var(--lyor-scroll-duration) cubic-bezier(0.22, 1, 0.36, 1) var(--lyor-scroll-delay);
	transform: translate3d(0, 10px, 0);
}

.lyor-scroll-fx.lyor-scroll-fx-inview {
	transform: translate3d(0, 0, 0);
}

@media (prefers-reduced-motion: reduce) {
	.lyor-legacy-atmosphere::before,
	.lyor-legacy-atmosphere::after {
		display: none;
	}

	.lyor-legacy-atmosphere-grain {
		display: none;
	}

	.lyor-scroll-fx {
		transform: none;
	}
}
