.progressive-image {
	position: relative;
	overflow: hidden;
	width: 100%;
	display: inline-block
}

.progressive-image-canvas {
	visibility: hidden;
	position: absolute;
	top: 0;
	left: 0;
}

.progressive-image-main {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: auto;
	z-index: 1;
	transition-duration: 0.3s;
	transition-property: all;
	transition-timing-function: ease-out;
	transform: translateZ(0);
}

.progressive-image-before-enter {
	opacity: 1;
}

.progressive-image-enter {
	opacity: 0;
}

.progressive-image-placeholder {
	position: absolute;
	top: 0px;
	left: 0px;
	z-index: 0;
	overflow: hidden;
	transition-duration: 300ms;
	transition-property: all;
	transition-timing-function: ease-out;
	backface-visibility: hidden;
	transform: translateZ(0) scale(1.1);
	width: 100%;
	height: 100%;
	background-size: cover;
}

.progressive-image-placeholder-out {
	transition-duration: inherit;
	transition-property: all;
	transition-timing-function: ease-out;

	transition-delay: 0.4s;
	opacity: 0;
}

.progressive-image-preloader {
	pointer-events: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
}

.progressive-background {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.progressive-background-slot {
	position: relative;
	z-index: 1;
}

.progressive-background-canvas {
	visibility: hidden;
	position: absolute;
	top: 0;
	left: 0;
}

.progressive-background-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	transition: all 0.4s ease-out;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.progressive-background-placeholder {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	transition: all 0.4s ease-out;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transform: scale(1.1);
	z-index: 0;
}

.progressive-background-before {
	opacity: 1;
}

.progressive-background-enter {
	opacity: 0;
}

.progressive-background-preloader {
	pointer-events: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
}