/* Elementor Grain - layer styling driven by CSS variables set on each container */

.e-con.eg-has-grain {
	position: relative;
}

.e-con > .eg-grain {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image: var(--eg-grain-noise);
	background-repeat: repeat;
	background-size: calc(var(--eg-grain-size, 1) * 180px) auto;
	opacity: var(--eg-grain-amount, 0);
	mix-blend-mode: var(--eg-grain-blend, overlay);
	z-index: var(--eg-grain-z, 1);
	border-radius: inherit;
}

/* Keep the container's own content above the grain, so grain only covers
   the background and the background overlay, never text or widgets. */
.e-con.eg-has-grain > .e-con-inner,
.e-con.eg-has-grain > :not(.eg-grain):not(.elementor-background-overlay):not(.elementor-shape):not(.elementor-background-video-container) {
	position: relative;
	z-index: 2;
}
