.xghbf-mounted {
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

.xghbf-stage {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}

.xghbf-layer,
.xghbf-overlay {
	position: absolute;
	inset: 0;
}

.xghbf-layer {
	opacity: 0;
	background-size: var(--xghbf-bg-size, cover);
	background-position: var(--xghbf-bg-position, center center);
	background-repeat: var(--xghbf-bg-repeat, no-repeat);
	background-attachment: var(--xghbf-bg-attachment, scroll);
	transition-property: opacity;
	transition-duration: var(--xghbf-fade-duration, 1200ms);
	transition-timing-function: ease;
	will-change: opacity;
	transform: translateZ(0);
}

.xghbf-layer.is-visible {
	opacity: 1;
}

.xghbf-overlay {
	z-index: 1;
	pointer-events: none;
}

.xghbf-has-overlay .xghbf-overlay {
	background: var(--xghbf-overlay-background, transparent);
}

.xghbf-legacy-hidden {
	position: absolute !important;
	inset: 0 !important;
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
	z-index: 0 !important;
	margin: 0 !important;
}

.xghbf-mounted > .xghbf-content-layer {
	z-index: 2 !important;
}

.xghbf-mounted.xghbf-has-minheight {
	min-height: var(--xghbf-min-height-desktop);
}

@media (max-width: 1024px) {
	.xghbf-mounted.xghbf-has-minheight {
		min-height: var(--xghbf-min-height-tablet, var(--xghbf-min-height-desktop));
	}
}

@media (max-width: 767px) {
	.xghbf-mounted.xghbf-has-minheight {
		min-height: var(--xghbf-min-height-mobile, var(--xghbf-min-height-tablet, var(--xghbf-min-height-desktop)));
	}
}

@media (prefers-reduced-motion: reduce) {
	.xghbf-layer {
		transition-duration: 1ms !important;
	}
}
