/*-*-*-*- Header -*-*-*-*/
#header {
	position: fixed;
	top: 0;
	width: 100%;
	background: rgba(0, 0, 0, 0);
	padding: 15px;
	font-weight: bold;
	transition: 0.4s;
	z-index: 1;
}

#header ul {
	padding: 0;
	margin: 0;
	overflow: hidden;
	list-style: none;
}

#header li {
		float: left;
	}

#header li a {
	display: block;
	border-radius: 8px;
	margin: 10px;
	padding: 10px 1vw;
	color: rgba(255, 255, 255, 1);
	font-size: 15px;
	text-decoration: none;
	transition: all .2s ease-in-out;
}

#header li a:hover,
#header .navigation-btn:hover {
	background-color: hsla(0, 0%, 0%, .4);
}

#header .logo {
	display: block;
	float: left;
	width: 180px;
	height: auto;
	padding: 10px 15px 5px 15px;
}

/* Navigation */
#header .navigation {
	float: right;
	max-height: none;
	margin-right: 2vw;
	line-height: 25px;
	clear: both;
	transition: max-height .2s ease-out;
	clear: none;
}

/* Navigation navigation-icon */
#header .navigation-icon {
	display: none;
	position: relative;
	float: right;

	padding: 28px;
	cursor: pointer;
	user-select: none;
}

#header .navigation-icon .navicon {
	display: block;
	position: relative;

	width: 18px;
	height: 2px;

	background: rgba(255, 255, 255, 1);
	transition: background .2s ease-out;
}

#header .navigation-icon .navicon:before,
#header .navigation-icon .navicon:after {
	content: '';
	display: block;
	position: absolute;

	width: 100%;
	height: 100%;

	background: rgba(255, 255, 255, 1);
	transition: all .2s ease-out;
}

#header .navigation-icon .navicon:before {
	top: 5px;
}

#header .navigation-icon .navicon:after {
	top: -5px;
}

/* Mobile navigation button */
#header .navigation-btn {
	display: none;
}

#header .navigation-btn:checked ~ .navigation {
	width: 100%;
	max-height: 1000px;
}

#header .navigation-btn:checked ~ #header {
	background: rgba(255, 0, 0, 1);
}

#header .navigation-btn:checked ~ .navigation-icon .navicon {
	background: transparent;
}

#header .navigation-btn:checked ~ .navigation-icon .navicon:before {
	transform: rotate(-45deg);
}

#header .navigation-btn:checked ~ .navigation-icon .navicon:after {
	transform: rotate(45deg);
}

#header .navigation-btn:checked ~ .navigation-icon:not(.steps) .navicon:before,
#header .navigation-btn:checked ~ .navigation-icon:not(.steps) .navicon:after {
	top: 0;
}

/*-*-*-*- Login -*-*-*-*/
#login {
	display: none;
	position: relative;

	background: url('/images/polygon_backgrounds/polygon_background_1.svg');
	/* Create the parallax scrolling effect */
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;

	z-index: 2;
}

#login h1 {
	margin-bottom: 30px;
	color: rgba(255, 255, 255, 1);
}

#login input[type='email'],
#login input[type='password'] {
	width: 75%;
	height: 40px;

	background: none;
	border: none;
	border-bottom: 1px solid rgba(255, 255, 255, 1);
	border-radius: 0;

	color: rgba(255, 255, 255, 1);
	font-size: 18px;
	text-align: center;
	letter-spacing: 2px;
	outline: none;
}

#login input[type='email']::placeholder,
#login input[type='password']::placeholder {
	color: rgba(255, 255, 255, 1);
	font-size: 0.6em;
	text-transform: uppercase;
}

#login input[type='submit'] {
	width: 75%;
	height: 40px;

	background-color: rgba(255, 255, 255, 1);
	border: none;
	border-radius: 5px;

	margin-top: 30px;

	color: rgba(245, 103, 106, 1);
	font-size: 0.7em;
	font-weight: bold;
	letter-spacing: 2px;
	text-transform: uppercase;

	cursor: pointer;
	transition: 0.3s ease-out;
	outline: none;
}

#login input[type='submit']:hover {
	background-color: rgba(255, 255, 255, .2);
	border: 2px solid rgba(255,255,255,0.5);
	color: rgba(255, 255, 255, 1);
}

#login-box {
	width: 400px;
	height: 100vh;

	background-color: rgba(255, 255, 255, .3);
	text-align: center;

	margin: auto;
	justify-content: center;
	align-items: center;
}

#login-main form {
	position: absolute;
	top: 50%;
	width: 400px;
	transform: translateY(-50%);
}

.login-logo {
	position: absolute;
	top: 5%;
	width: 300px;
	transform: translateX(-50%);
}

.login-wachtwoord-vergeten {
	display: block;
	margin: 10px 0px;
	color: rgba(255, 255, 255, 1);
}

.login-back {
	position: absolute;
	bottom: 5%;
	text-decoration: none;
	animation: bounce 5s infinite;
}

.login-back:hover {
	text-decoration: none;
}

.login-back p {
	color: rgba(255, 255, 255, 1);
	cursor: pointer;
}

.login-back img {
	width: 40px;
	height: 40px;
	transform: rotate(270deg);
	filter: invert(1);
}

/*-*-*-*- Alleen touchscreen -*-*-*-*/
@media (pointer: coarse) {

	#login {
		background-attachment: local;
	}

}

/*-*-*-*- Schermen met een maximum van 600px breed -*-*-*-*/
@media (max-width: 750px) {
	/* Header */
	#header {
		background: rgba(0, 0, 0, 0.5);
		padding: 15px 0px;
	}

	#header li {
		float: none;
	}

	#header li a {
		padding: 10px 20px;
	}

	#header .navigation {
		float: left;
		max-height: 0;
	}

	#header .navigation-icon {
		display: inline-block;
	}

	/* Login */
	#login-box,
	#login-main form {
		width: 70vw;
		min-width: 280px;
		max-width: 70vw;
	}

	.login-logo {
		width: 220px;
	}

	.login-back {
		bottom: 15vh;
		animation: none;
		transform: translateX(-50%);
	}

	#logout_button {
		display: none;
	}

}
