/**
 * Full-bleed animation layers for Elementor containers.
 * The canvas is isolated from layout, clicks and accessibility navigation.
 */

.mcab-host {
	position: relative;
	isolation: isolate;
}

.mcab-host > .mcab-layer {
	z-index: 0;
}

.mcab-host > :not(.mcab-layer) {
	z-index: 1;
}

.mcab-layer {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	min-width: 1px;
	min-height: 1px;
	overflow: hidden;
	pointer-events: none;
	user-select: none;
	border-radius: inherit;
	contain: strict;
	opacity: var(--mcab-layer-opacity, 0.82);
}

.mcab-layer canvas {
	display: block;
	width: 100%;
	height: 100%;
	pointer-events: none;
	transform: translateZ(0);
	filter: blur(var(--mcab-layer-blur, 0px));
}

.mcab-layer--dotlottie {
	--mcab-lottie-opacity: 1;
	--mcab-lottie-scale: 1;
	--mcab-lottie-offset-x: 0px;
	--mcab-lottie-offset-y: 0px;
	--mcab-lottie-blur: 0px;
	--mcab-lottie-background: transparent;

	opacity: var(--mcab-lottie-opacity);
	background: var(--mcab-lottie-background);
	pointer-events: none;
}

.mcab-layer--dotlottie canvas {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	transform: translate3d(var(--mcab-lottie-offset-x), var(--mcab-lottie-offset-y), 0) scale(var(--mcab-lottie-scale));
	transform-origin: 50% 50%;
	filter: blur(var(--mcab-lottie-blur));
	pointer-events: none;
}

.mcab-layer--dotlottie[hidden],
.mcab-layer--dotlottie.is-disabled,
.mcab-layer--dotlottie.is-error {
	display: none;
}

.mcab-layer--dotlottie.is-loading canvas {
	visibility: hidden;
}

.mcab-anchor {
	display: block !important;
	width: 0 !important;
	height: 0 !important;
	min-width: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
}

@media (prefers-reduced-motion: reduce) {
	.mcab-layer {
	opacity: min(var(--mcab-layer-opacity, 0.82), 0.45);
	}
}
