.hv-bg-host {
	position: relative !important;
	overflow: hidden !important;
}

.hv-bg-wrap {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	pointer-events: none;
	background: #000;
}

.hv-bg-wrap .hv-layer {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	height: auto;
	min-width: 100%;
	min-height: 100%;
	transform: translate(-50%, -50%);
	object-fit: cover;
	object-position: center center;
	opacity: 0;
	transition: opacity 0.7s ease;
	z-index: 1;
}

.hv-bg-wrap .hv-layer-active {
	opacity: 1;
	z-index: 2;
}

.hv-bg-wrap .hv-layer-next {
	opacity: 0;
	z-index: 1;
}

/* Keep existing content above the background video */
.hv-bg-host > *:not(.hv-bg-wrap) {
	position: relative;
	z-index: 1;
}
