/* Subtle Entrance Animations for Elementor Widgets */

/* Hidden state — only applied when JS is active and observer is ready */
.elementor-widget-heading.reveal-ready-1f3839fa,
.elementor-widget-text-editor.reveal-ready-1f3839fa,
.elementor-widget-image.reveal-ready-1f3839fa,
.elementor-widget-button.reveal-ready-1f3839fa,
.elementor-widget-icon-box.reveal-ready-1f3839fa {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 1.2s cubic-bezier(0.215, 0.61, 0.355, 1), transform 1.2s cubic-bezier(0.215, 0.61, 0.355, 1);
	will-change: transform, opacity;
}

/* Active (visible) state applied via scroll observer */
.elementor-widget-heading.reveal-active-1f3839fa,
.elementor-widget-text-editor.reveal-active-1f3839fa,
.elementor-widget-image.reveal-active-1f3839fa,
.elementor-widget-button.reveal-active-1f3839fa,
.elementor-widget-icon-box.reveal-active-1f3839fa {
	opacity: 1;
	transform: translateY(0);
}
