

/* BLOCKS CSS  */

/*************************************************************************/
/* RES Header Video   */


.res-header-video{
	position: relative;
	overflow: hidden;
}
.res-video-header-frame{
	height: 100vh;
}

.res-header-video-vertical-center{
	position: absolute;
	top: 60%; 
	left: 0;
	width: 100%;
	height: auto;
	z-index: 11;
	transform: translateY(-50%);
}

/* Slogan Box header-video   */

.res-header-video .sloganBox{
	color: #fff;
}
.res-header-video .sloganBox h1,
.res-header-video .sloganBox h2,
.res-header-video .sloganBox h3{
	color: #fff;
}
.res-header-video .sloganBox a {
	color: #fff;
}

/* Background  */
.res-header-video .sloganbox-background {
	background: rgba(0,0,0, .75);
	padding: 1.7rem 3rem;
}


/* Buttons */
.res-header-video .sloganBox .btn-primary,
.res-header-video .sloganBox .btn-secondary,
.res-header-video .sloganBox .btn-outline,
.res-header-video .sloganBox .btn-text-link {
	color: #fff;
}
.res-header-video .sloganBox .btn-secondary,
.res-header-video .sloganBox .btn-outline {
	background-color:  transparent;
	border: 1px solid #fff;
}
.res-header-video .sloganBox a.btn-text-link{
	padding: 0.6rem 0;
}


@media only screen and (max-width: 970px) {
	.res-header-video .sloganBox p {font-size: 90%; line-height: 140%;}
	.res-header-video .sloganBox a.btn{font-size: 85%;}
	.res-header-video .sloganbox-background { color: #fff !important;}
} 


.res-header-video .header-arrow {
	position: absolute;
	bottom: 6%;
	left: 50%;
	z-index: 20;
	transform: translateX(-50%);
}

.res-header-video .header-arrow a {
	color: #fff;
}


/* Play Button  */

.res-video-header-play-btn {  
    cursor: pointer;
	display: flex;
  	align-items: center;
  	justify-content: center;
	transition: all .2s ease-in-out;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    text-align: center;
    margin: 0 auto;
    margin-bottom: 15px;
    font-size: 110%;
    line-height: 100%;
    background-color: #fff;
    color: #4a90e2;
    border: 1px solid #fff;
}
@media only screen and (min-width: 1010px) {
	.res-video-header-play-btn:hover{transform: scale(1.1);}
}

@media only screen and (max-width: 970px) {
	.res-video-header-play-btn {  width: 90px; height: 90px;font-size: 90%;}
}


/* --- Preview Video Fullscreen  ---- */
.previewVideo {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10;
}
.previewVideo video {
	width: 100%;
	height: auto;
	border: none;
	opacity: 0.85;
}


/* --- Video Fullscreen  ---- */

.fullscreenVideo video {
	width: 100%;
	height: auto;
	border: none;
	opacity: 0.85;
}

.fullscreenVideo {
	width: 100%;
}

.fullscreenVideo .videoScale {
    object-fit: cover;
    min-height: 100%;
}

.previewVideo .videoScale {
    object-fit: cover;
    min-height: 100%;
}


/* --- Preview Video Fullscreen  ---- */
/*
.previewVideo .videoScale {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	z-index: 0;
	transform: translateX(-50%) translateY(-50%);
	transition: 1s opacity;
	background-color: #000;
}
*/


/* --- Video Fullscreen  ---- */
/*

.fullscreenVideo video {
	width: 100%;
	height: auto;
	border: none;
	opacity: 0.85;
}
.fullscreenVideo .videoScale {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	z-index: 0;
	transform: translateX(-50%) translateY(-50%);
	transition: 1s opacity;
	background-color: #000;
}
*/



/*  Controls  */

.res-video-header-control {
	display: none;
	position: absolute;
	left: 2%;
	bottom: 6%;
	z-index: 6;
	font-size: 100%;
}
.res-video-header-control i{
	color: #fff;
}
.res-video-header-mute-btn,
.res-video-header-playback-btn,
.res-video-header-reset-btn {
	display: inline-block;
	padding: 5px 10px;
	cursor: pointer;
}
.res-video-header-mute-btn:hover,
.res-video-header-playback-btn:hover,
.res-video-header-reset-btn:hover{
	opacity: 0.6;
}

.res-video-header-reset-btn{
	background-color: #fff;
}
.res-video-header-reset-btn i{
	color: #4a90e2;
}


/* ------------  Mobile 16-9 Variante ---------------- */

@media only screen and (max-width: 970px) {
	
	.res-header-video .video-16-9{
		height: auto !important;
	}
	
	.res-header-video .video-16-9 .previewVideo video,
	.res-header-video .video-16-9 .fullscreenVideo video {
		width: 100%;
		height: auto;
		position: relative;
		top: auto;
		left: auto;
		min-width: auto;
    	min-height: auto;
		z-index: 0;
		transform: unset;
	}	
	.res-header-video .video-16-9 .fullscreenVideo {
		opacity: 1.0 !important;
		position: absolute;
		top: 0;
		z-index: 4;
	}
	.res-header-video .video-16-9 {
		flex-flow: column-reverse;
		background: transparent !important;
	}
	.res-header-video .video-16-9 .res-header-video-vertical-center {
		position: relative;
	}	
	.res-header-video .video-16-9 .res-header-video-vertical-center {
		position: relative;
		width: 100%;
		height: auto;
		top: auto !important;
		z-index: 0;
		transform: translateY(-10%);
		margin-top: 30px;
	}
	.res-header-video .video-16-9.with-play-btn .res-video-header-play-btn {
		box-shadow: 3px 8px 20px rgba(50, 50, 50, 0.2);
		z-index: 2;
	}
	.res-header-video .video-16-9 .res-header-video-vertical-center .sloganBox,
	.res-header-video .video-16-9 .res-header-video-vertical-center .sloganBox h1,
	.res-header-video .video-16-9 .res-header-video-vertical-center .sloganBox h2,
	.res-header-video .video-16-9 .res-header-video-vertical-center .sloganBox h3 {
		color: unset !important;
	}
	.res-header-video .video-16-9 .header-arrow{
		display: none;
	}

	/* with play-btn  */
	.res-header-video .video-16-9.with-play-btn {
		height: auto !important;
		height: 590px !important;
	}

	.res-header-video .video-16-9.with-play-btn .res-header-video-vertical-center {
		position: relative;
		z-index: 11;
		display: block !important;
	}	
	
	/*  controls position 16-9  */
	.res-header-video .video-16-9.with-play-btn .res-video-header-control {
		display: none;
		position: absolute;
		left: 2%;
/*		top: 2%;*/
		top: 178px;
		bottom: unset;
		z-index: 12;
		font-size: 85%;
	}
	.res-header-video .video-16-9.with-play-btn .res-video-header-reset-btn {background: transparent;}
	.res-header-video .video-16-9.with-play-btn .res-video-header-reset-btn i { color: #fff;}

	.res-header-video .video-16-9 .sloganBox .btn-secondary,
	.res-header-video .video-16-9 .sloganBox .btn-outline {
		background-color:  transparent;
		border: 1px solid #000;
		color: #000;
	}

}





/* ------------  CMS Backend Preview ---------------- */

.acf-block-preview .res-header-video {
	position: relative;
}
.acf-block-preview .res-header-video .res-header-video-outside {
	max-width: 1080px;
	margin: 0 auto;
	border: 1px solid #eee;
	max-height: 330px;
	overflow: hidden;
}
.acf-block-preview .res-header-video .res-header-video-vertical-center {
	position: absolute;
	top: 50% !important;
	left: 15%;
	width: 70%;
}

.acf-block-preview .res-header-video h1,
.acf-block-preview .res-header-video h2,
.acf-block-preview .res-header-video h3 {
	font-size: 22px;
	line-height: 24px;
	padding: 0;
	margin: 10px 0;
}
.acf-block-preview .res-header-video p {
	font-size: 16px !important;
	padding: 0;
	margin: 10px 0;
}
.acf-block-preview .res-header-video a {
	color: #000;
	text-decoration: none;
}
.acf-block-preview .res-header-video .btn {
	font-size: 17px !important;
	padding: 8px 16px;
	margin: 8px;
	border: 0;
	background-color: #222;
}
.acf-block-preview .res-header-video {
	width: 100%;
	max-width: 1020px;
	overflow: hidden;
	height: 480px;
	margin: 0 auto;
}
.acf-block-preview .res-header-video-outside video {
	max-width: 100%;
	height: auto;
}
.acf-block-preview .res-video-header-play-btn {  
    background-color: transparent;
	border: 1px solid white;
}








