@font-face {
	font-family: 'GlacialIndifference-Bold';
	src: url('/fonts/GlacialIndifference-Bold.eot');
	src: url('/fonts/GlacialIndifference-Bold.woff2') format('woff2'),
		url('/fonts/GlacialIndifference-Bold.woff') format('woff');
}

body {
	font-family: 'GlacialIndifference-Bold', sans-serif;
	font-display: swap;
}

.video {
	transition: height 0.5s, width 0.5s, visibility 0s, opacity 0.5s linear;
}

.video-show {
	opacity: 1;
	visibility: visible;
	width: auto;
	height: auto;
}

.video-hide {
	visibility: hidden;
	opacity: 0;
	width: 0px;
	height: 0px;
}

.title,
#loading {
	text-align: center;
}

video {
	width: 100%;
}

a {
	color: white;
}

a:hover {
	color: #6a9e3b;
}

.form {
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-bottom: 1rem;
}

.form input {
	width: 80%;
}

.filter-links {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.link {
	outline: 1px solid white;
	margin: 0.5em;
	font-size: 1rem;
	padding: 0.4rem;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

h1.title {
	margin-top: 1rem;
	color: #7a8a7d;
	margin-bottom: 3rem;
}

div.filter-links {
	align-items: flex-start;
	justify-content: flex-start;
	margin-right: 5rem;
	border-left: 3px solid lime;
	padding-left: 1rem;
}

div.filter-links a.link {
	transition: outline 0.3s, color 0.3s;
	padding: 0.45rem 1rem;
}

div.filter-links a.link {
	border: 1px solid #4a4a4a;
	outline: none;
	color: #aeaeae;
	border-radius: 0.3rem;
	transition: border 0.3s, color 0.3s;
}

div.filter-links a.link:hover {
	text-decoration: none;
	color: white;
	border-color: #959595;
}

div.video.video-show {
	padding: 1rem;
	width: min-content;
}

div.video.video-show a {
	text-decoration: none;
	color: white;
}

div.video.video-show .card {
	height: auto;
	border-radius: 0.5rem;
	overflow: hidden;
	border: 1px solid #4a4a4a;
	background-color: #222;
	transition: background, border 0.3s;
}

div.video.video-show .card:hover {
	border-color: #959595;
}

div.video.video-show .card h5 {
	font-size: 1.3rem;
}

div.video.video-show .card .card-img-top {
	opacity: 1;
	transition: opacity 0.3s;
}

div.video.video-show .card:hover .card-img-top {
	opacity: 0.8;
}

input#filter {
	width: calc(100% - 2rem);
	margin: 1rem 1rem;
	margin-top: 0;
	box-sizing: border-box;
	outline: none;
	background-color: #222;
	border: 1px solid #4a4a4a;
	border-radius: 0.5rem;
	transition: border 0.3s;
	padding: 0.2rem 0.5rem;
	font-size: 1.2rem;
	color: white;
}

input#filter:focus {
	border-color: #959595;
}

label[for='filter'] {
	color: white;
	margin: 1rem;
	margin-bottom: 0;
	margin-top: 3rem;
	padding-bottom: 0.2rem;
	font-size: 1.2rem;
}

section#videos {
	margin: 0;
}

@media (min-width: 1400px) {
	section#videos {
		margin: 0 15rem;
	}

	label[for='filter'] {
		margin-left: 16rem;
		margin-right: 16rem;
	}

	input#filter {
		margin-left: 16rem;
		margin-right: 16rem;
		width: calc(100% - 32rem);
	}

	div.filter-links {
		padding-left: 15rem;
		margin-right: 15rem;
	}
}
