/* Wipe reveal (after Magic UI "box-reveal" / Aceternity image reveal patterns): the photo is uncovered left to
 * right the first time it scrolls into view, then stays revealed. view.js adds .is-in once (IntersectionObserver);
 * hidden state only under html.kfx-js, so no JS = image simply shows. Covers also settle from a slight zoom. */
.kfx-js .kfx-reveal-mask.wp-block-image img,
.kfx-js .wp-block-cover.kfx-reveal-mask {
	clip-path: inset(0 100% 0 0);
	transition: clip-path calc(1.1s * var(--kfx-s)) var(--kfx-ease);
}
.kfx-js .wp-block-cover.kfx-reveal-mask > .wp-block-cover__image-background,
.kfx-js .wp-block-cover.kfx-reveal-mask > .wp-block-cover__video-background {
	transform: scale(1.08);
	transition: transform calc(1.6s * var(--kfx-s)) var(--kfx-ease);
}
.kfx-js .kfx-reveal-mask.is-in.wp-block-image img,
.kfx-js .wp-block-cover.kfx-reveal-mask.is-in { clip-path: inset(0 0 0 0); }
.kfx-js .wp-block-cover.kfx-reveal-mask.is-in > .wp-block-cover__image-background,
.kfx-js .wp-block-cover.kfx-reveal-mask.is-in > .wp-block-cover__video-background { transform: none; }

@media (prefers-reduced-motion: reduce) {
	.kfx-js .kfx-reveal-mask.wp-block-image img,
	.kfx-js .wp-block-cover.kfx-reveal-mask,
	.kfx-js .wp-block-cover.kfx-reveal-mask > .wp-block-cover__image-background,
	.kfx-js .wp-block-cover.kfx-reveal-mask > .wp-block-cover__video-background { clip-path: none; transform: none; transition: none; }
}
