.elf-overlay-container {
	position: relative;
}

.elf-overlay-container > div {
	position: absolute;
}


/* image-overlay-cover with arbitrary content */
/*
- IE9 content position compatible
- IE9+/Edge cover not compatible (but acceptable fallback setting proper min/max height)
- IE9+/Edge full support with available polyfill
- support for min/max-height to img tag
*/
.elf-overlay-container > img.elf-overlay-position-cover,
.elf-overlay-container > picture img.elf-overlay-position-cover,
.elf-overlay-container > video.elf-overlay-position-cover {
	width: 100%;
	height: 100%;
	/*min-height: 240px;*/
	/*max-height: 360px;*/
	object-fit: cover; /* NO IE11 */
	/* bfred-it/object-fit-images polyfill */
	font-family: 'object-fit: cover;';
}

.elf-overlay-container > div.elf-overlay-position-cover {
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.elf-overlay-container > div.elf-overlay-position-cover-x {
	left: 0;
	width: 100%;
}
.elf-overlay-container > div.elf-overlay-position-cover-y {
	top: 0;
	height: 100%;
}


.elf-overlay-container > div.elf-overlay-position-top {
	top: 0px;
}
.elf-overlay-container > div.elf-overlay-position-middle {
	top: 50%;
	-ms-transform: translate(0,-50%);
	transform: translate(0,-50%);
}
.elf-overlay-container > div.elf-overlay-position-bottom {
	bottom: 0;
}


.elf-overlay-container > div.elf-overlay-position-left {
	left:0;
	top1: 0;
}
.elf-overlay-container > div.elf-overlay-position-center {
	left: 50%;
	-ms-transform: translate(-50%,0);
	transform: translate(-50%,0);
}
.elf-overlay-container > div.elf-overlay-position-right {
	right: 0;
}

.elf-overlay-container > div.elf-overlay-position-center.elf-overlay-position-middle {
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}


.elf-overlay-container > div.elf-overlay-position-top-out {
	top: 0;
	-ms-transform: translate(0,-100%);
	transform: translate(0,-100%);
}
.elf-overlay-container > div.elf-overlay-position-bottom-out {
	bottom: 0;
	-ms-transform: translate(0,100%);
	transform: translate(0,100%);
}

.elf-overlay-container > div.elf-overlay-position-left-out {
	left: 0;
	-ms-transform: translate(-100%,0);
	transform: translate(-100%,0);
}
.elf-overlay-container > div.elf-overlay-position-right-out {
	right: 0;
	-ms-transform: translate(100%,0);
	transform: translate(100%,0);
}

/* Combined transform redefinition (transform not combine with multiple classes) */
.elf-overlay-container > div.elf-overlay-position-top-out.elf-overlay-position-left-out {
	-ms-transform: translate(-100%,-100%);
	transform: translate(-100%,-100%);	
}
.elf-overlay-container > div.elf-overlay-position-top-out.elf-overlay-position-center {
	-ms-transform: translate(-50%,-100%);
	transform: translate(-50%,-100%);	
}
.elf-overlay-container > div.elf-overlay-position-top-out.elf-overlay-position-right-out {
	-ms-transform: translate(100%,-100%);
	transform: translate(100%,-100%);	
}
.elf-overlay-container > div.elf-overlay-position-bottom-out.elf-overlay-position-left-out {
	-ms-transform: translate(-100%,100%);
	transform: translate(-100%,100%);	
}
.elf-overlay-container > div.elf-overlay-position-bottom-out.elf-overlay-position-center {
	-ms-transform: translate(-50%,100%);
	transform: translate(-50%,100%);	
}
.elf-overlay-container > div.elf-overlay-position-bottom-out.elf-overlay-position-right-out {
	-ms-transform: translate(100%,100%);
	transform: translate(100%,100%);	
}
.elf-overlay-container > div.elf-overlay-position-middle.elf-overlay-position-left-out {
	-ms-transform: translate(-100%,-50%);
	transform: translate(-100%,-50%);	
}
.elf-overlay-container > div.elf-overlay-position-middle.elf-overlay-position-right-out {
	-ms-transform: translate(100%,-50%);
	transform: translate(100%,-50%);	
}

