
#video_library {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr; 
    column-gap: 30px; 
	row-gap: 30px;
}
#video_library .video_teaser {
	cursor: pointer;	
}
#video_library .video_teaser .thumb {
	aspect-ratio: 16/9;
	position: relative;
	background-position: center;
	background-size: cover;
}
#video_library .video_teaser h3 {
	font-weight: 500;	
	padding-top: 5px;
}
#video_library .video_teaser p {
	font-weight: 400;	
	font-size: 14px;
	opacity: 0.75;
	line-height: 1.4;
}
.play_icon {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	
	color: red;
	font-size: 60px;
	line-height: 50px;
	
	background: rgba(255,255,255,0.0);
	padding: 15px 10px 15px 20px;
	border-radius: 100px;
	text-align: center;
	
	transition: all 0.2s ease-in-out;
}

#video_library .video_teaser:hover .play_icon {
	background: rgba(255,255,255,0.5);
}
#video_library .video_teaser:hover p {
	opacity: 1;
}

/* overlay for playing single video (loaded using video_library.js) */
#video_overlay {
	position: fixed;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background: rgba(0,0,0,0.9);
	display: none;
	z-index: 9999;
}
#video_overlay .video_container {
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
#video_overlay .video_content {
	width: 90%;
	max-width: 900px;
	aspect-ratio: 16/9;
	position: relative;
}
#video_overlay iframe {
	position: absolute;
	width: 100%;
	height: 100%;
}


@media(max-width: 940px) {
	#video_library {
		column-gap: 20px; 
	}
}
@media(max-width: 740px) {
	#video_library {
		grid-template-columns: 1fr 1fr; 
		column-gap: 20px; 
		row-gap: 20px;
	}
	#video_library .video_teaser h3 {
		font-size: 0.9em;
	}
}
@media(max-width: 460px) {
	#video_library {
		grid-template-columns: 1fr; 
		column-gap: 20px; 
		row-gap: 20px;
	}

}