.dv-background {
	--dv-bg-color: transparent;
	--dv-bg-gradient: linear-gradient(var(--dv-bg-gradient-angle, 135deg), var(--dv-bg-gradient-start, #fffdf8), var(--dv-bg-gradient-end, #f6f3ec));
	--dv-bg-image: none;
	--dv-bg-image-portrait: var(--dv-bg-image);
	--dv-bg-overlay: rgba(47, 56, 42, 0.45);
	--dv-bg-position: center center;
	--dv-bg-size: cover;

	background-color: transparent;
	background-image: none;
	background-position: var(--dv-bg-position);
	background-repeat: no-repeat;
	background-size: var(--dv-bg-size);
	position: relative;
}

.dv-background--none {
	background-color: transparent;
	background-image: none;
}

.dv-background--color {
	background-color: var(--dv-bg-color);
	background-image: none;
}

.dv-background--gradient {
	background-color: transparent;
	background-image: var(--dv-bg-gradient);
}

.dv-background--image {
	background-color: var(--dv-bg-color, transparent);
	background-image: var(--dv-bg-image);
}

.dv-background--has-overlay > .dv-background__overlay {
	background: var(--dv-bg-overlay);
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 0;
}

.dv-background--has-overlay > :not(.dv-background__overlay) {
	position: relative;
	z-index: 1;
}

@media (orientation: portrait) {
	.dv-background--image {
		background-image: var(--dv-bg-image-portrait, var(--dv-bg-image));
	}
}
