/*
 * Entrance-animation guard.
 *
 * Elementor hides animated widgets with .elementor-invisible (visibility:hidden)
 * and only reveals them when its scroll observer fires. If that JS is slow,
 * blocked, or errors, copy / proof / forms / footer stay blank. These rules
 * make content visible on first paint and stop the entrance animation from
 * re-hiding it. Hover animations (.elementor-animation-*) are untouched.
 */

.elementor-invisible {
	visibility: visible !important;
	opacity: 1 !important;
	animation: none !important;
}

.elementor-element.animated,
.elementor-widget.animated,
.elementor .animated {
	animation: none !important;
	opacity: 1 !important;
	visibility: visible !important;
}

/* Respect an explicit reduced-motion preference across the whole site. */
@media (prefers-reduced-motion: reduce) {

	*,
	*::before,
	*::after {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.001ms !important;
		scroll-behavior: auto !important;
	}
}
