/* Shared entrance language for internal premium views. Uses `translate` so card hover transforms remain intact. */
body.cm-modern-home .cm-page-reveal {
	opacity:0;
	translate:0 28px;
	transition:opacity 800ms cubic-bezier(.16,.84,.28,1),translate 800ms cubic-bezier(.16,.84,.28,1),scale 800ms cubic-bezier(.16,.84,.28,1),filter 800ms cubic-bezier(.16,.84,.28,1);
	transition-delay:var(--cm-page-reveal-delay,0ms);
}

body.cm-modern-home .cm-page-reveal--from-left { filter:blur(4px); translate:-54px 12px; }
body.cm-modern-home .cm-page-reveal--from-right { filter:blur(4px); translate:54px 12px; }
body.cm-modern-home .cm-page-reveal--scale { translate:0 30px; scale:.972; }

body.cm-modern-home .cm-page-reveal.is-visible { filter:none; opacity:1; translate:0 0; }
body.cm-modern-home .cm-page-reveal--scale.is-visible { scale:1; }

/* Existing Elementor pages get the same visual cadence, scoped away from the modern home. */
body:not(.cm-modern-home) .cm-legacy-reveal {
	opacity:0;
	translate:0 26px;
	transition:opacity 760ms cubic-bezier(.16,.84,.28,1),translate 760ms cubic-bezier(.16,.84,.28,1),filter 760ms cubic-bezier(.16,.84,.28,1);
	transition-delay:var(--cm-legacy-reveal-delay,0ms);
}

body:not(.cm-modern-home) .cm-legacy-reveal--from-left { filter:blur(3px); translate:-46px 10px; }
body:not(.cm-modern-home) .cm-legacy-reveal--from-right { filter:blur(3px); translate:46px 10px; }
body:not(.cm-modern-home) .cm-legacy-reveal.is-visible { filter:none; opacity:1; translate:0 0; }

@media (prefers-reduced-motion: reduce) {
	body.cm-modern-home .cm-page-reveal,
	body.cm-modern-home .cm-page-reveal--from-left,
	body.cm-modern-home .cm-page-reveal--from-right,
	body.cm-modern-home .cm-page-reveal--scale {
		filter:none;
		opacity:1;
		scale:1;
		translate:0 0;
		transition:none;
	}

	body:not(.cm-modern-home) .cm-legacy-reveal,
	body:not(.cm-modern-home) .cm-legacy-reveal--from-left,
	body:not(.cm-modern-home) .cm-legacy-reveal--from-right {
		filter:none;
		opacity:1;
		translate:0 0;
		transition:none;
	}
}
