 @media (hover:none) and (pointer:coarse) {
	@media only screen and (max-width:50em) {
		header nav {
			transform: scaleY(0);
			transform-origin: top;
			transition: var(--nav-open-time);
		}

		header .radio:checked~.submenu-wrap {
			display: flex;
		}

		header #nav-closed:checked ~ #nav-icons-wrap #nav-open-icon,
		header #nav-open:checked ~ #nav-wrap nav {
			transform: scaleY(1);
		}

		header #nav-open:checked ~ #nav-icons-wrap #nav-close-icon,
		header #nav-open:checked ~ #nav-icons-wrap #nav-icons-box {
			transform: scale(1);
		}

		header #nav-closed:checked ~ #nav-icons-wrap #nav-open-icon,
		header #nav-open:checked ~ #nav-icons-wrap #nav-close-icon {
			opacity: 1;
		}

		header #nav-open:checked ~ #nav-close-background {
			z-index: 997;
			pointer-events: all;
		}

		header #nav-open:checked ~ #nav-wrap nav,
		header #nav-closed:checked ~ #nav-icons-wrap #nav-icons-box {
			transition-delay: var(--nav-open-time);
		}

		header #header-title {
			display: flex;
			flex-direction: column;
		}

		header #plus-sign {
			display: none
		}

		header #homebutton {
			right: 0;
		}

		header #nav-wrap {
			position: fixed;
			width: 320px;
			height: calc(100% - var(--header-line-height));
			overflow: auto;
			padding-top: var(--header-line-height);
			z-index: 998;
			pointer-events: none;
		}

		header .menu-button:not(:last-child) {
			border-bottom: 1px solid var(--menu-button-seperator-color)
		}

		header .submenu-button {
			width: 100%
		}

		header .submenu-button,
		header .blue {
			font-size: 0.8em;
		}

		header .blue {
			min-height: 3em;
		}

		header .submenu-wrap {
			display: none;
			flex-direction: column;
		}

		header .submenu {
			flex-direction: column
		}
	}

	@media only screen and (min-width:50em) and (max-width:60em) {
		header nav {
			display: flex;
		}

		header #homebutton {
			left: calc(10% - 1.25em)
		}

		header .submenu-wrap {
			width: 100vw;
			position: fixed;
		}

		header .submenu-button {
			height: 4em;
		}

		header .submenu-button,
		header .blue {
			font-size: 1.3vw;
		}
	}

	@media only screen and (min-width:60em) {
		header nav {
			display: flex;
		}

		header #homebutton {
			left: calc(10% - 1.25em)
		}

		header .submenu-button {
			height: 4em;
		}

		header .submenu-wrap {
			width: 980px;
			position: fixed;
		}

		header .submenu-button,
		header .blue {
			font-size: 0.8em;
		}
	}

	header .submenu-button {
		min-height: 3em;
	}

	header .center {
		display: table;
		margin: auto;
		width: 75%;
		text-align: left;
		white-space: nowrap;
	}

	header .header-text {
		font-size: 0.8em;
	}
}

@media (hover:hover) and (pointer:fine) {
	header nav {
		display: flex;
	}

	header #homebutton {
		left: calc(10% - 1.25em)
	}

	header .radio:hover~.submenu-wrap {
		transform: scaleY(1);
		z-index: 1
	}

	header .submenu-wrap:hover {
		transform: scaleY(1);
		z-index: 1
	}

	header .submenu-wrap {
		width: 980px;
		position: fixed;
		max-height: calc(100vh - 4.5em);
	}

	header .submenu-button {
		font-size: 0.8em;
	}

	header .center {
		display: flex;
		align-items: center;
		justify-content: center;
	}

	header .submenu-button {
		height: 4em;
		white-space: nowrap
	}
}

header {
	--menu-bg-color: lightgray;
	--menu-bdr-radius: 0.4em;
	--menu-button-bg-color: rgb(140, 0, 0);
	--menu-button-hvr-bg-color: rgb(10, 60, 100);
	--menu-button-height: 2em;
	--menu-button-seperator-color: sienna;
	--submenu-button-bg-color: rgb(200, 90, 0);
	--submenu-button-color: white;
	--submenu-button-bdr-color: sienna;
	--submenu-button-hvr-bg-color: white;
	--submenu-button-hvr-color: rgb(200, 90, 0);
	--header-line-height: 2.5em;
	--nav-icon-bar-height: 0.25em;
	--nav-icon-bg-color: gold;
	--nav-icon-bdr-color: rgb(10, 60, 100);
	--nav-open-time: 0.2s;

	position: sticky;
	font-weight: bold;
	background-color: lightgray;
	overflow: auto;
	display: flex;
	flex-direction: column;
	z-index: 10;
	top: 0;
	max-height: 100vh
}

header,
header * {
	scrollbar-width: thin;
	scrollbar-color: dodgerblue deepskyblue;
}

header::-webkit-scrollbar,
header *::-webkit-scrollbar {
	height: 1vw;
	width: 1vw;
}

header::-webkit-scrollbar-thumb,
header *::-webkit-scrollbar-thumb {
	background-color: dodgerblue;
}

header::-webkit-scrollbar-track,
header *::-webkit-scrollbar-track {
	background-color: deepskyblue;
}

header span {
	display: table-cell;
	vertical-align: middle;
	padding: 0 0.3em;
	text-align: center
}

header button {
	height: 100%;
	font-size: inherit;
	color: inherit;
	border: none;
	width: 100%;
	background-color: transparent;
	font-weight: inherit;
	padding: 0 0.3em;
	pointer-events: none
}

header nav {
	width: 100%;
	font-weight: bold;
	position: relative;
	pointer-events: all;
	background-color: var(--menu-bg-color);
}

header nav>a {
	min-width: 20%
}

header nav>label {
	width: 100%;
	position: relative
}

header .radio:checked~.submenu-wrap {
	transform: scaleY(1);
	z-index: 1
}

header .radio:checked~.default {
	z-index: 1
}

header .radio:checked~.menu-button {
	background-color: var(--menu-button-hvr-bg-color);
	color: yellow;
}

header #nav-icons-wrap {
	position: relative;
}

header #nav-icons-wrap > label {
	position: absolute;
	cursor: pointer;
	z-index: 999;
	left: 0.5rem;
	width: 1.5rem;
	opacity: 0;
	transition: calc(var(--nav-open-time) * 2);
	transform: scale(0);
}

header #nav-open-icon {
	top: calc((var(--header-line-height) - 5 * var(--nav-icon-bar-height) / 2) * -1);
}

header #nav-open-icon div {
	background-color: var(--nav-icon-bg-color);
	border: 1px solid var(--nav-icon-bdr-color);
	height: var(--nav-icon-bar-height);
	border-radius: 100vw;
}

header #nav-open-icon div:not(:last-child) {
	margin-bottom: var(--nav-icon-bar-height);
}

header #nav-icons-box {
	position: absolute;
	top: 0;
	left: 0;
	margin-top: calc(var(--header-line-height) * -1);
	width: var(--header-line-height);
	height: var(--header-line-height);
	transform: scaleY(0);
	transform-origin: top right;
	background-color: var(--menu-button-bg-color);
	transition: var(--nav-open-time);
	border-radius: var(--menu-bdr-radius);
}

header #nav-close-icon {
	font-size: 2em;
	top: calc(var(--header-line-height) / -2 + 0.1em);
	color: var(--nav-icon-bg-color);
	text-shadow: -1px -1px var(--nav-icon-bdr-color),
				-1px 1px var(--nav-icon-bdr-color),
				1px -1px var(--nav-icon-bdr-color),
				1px 1px var(--nav-icon-bdr-color),
				-2px 0px var(--nav-icon-bdr-color),
				0px -2px var(--nav-icon-bdr-color),
				2px 0px var(--nav-icon-bdr-color),
				0px 2px var(--nav-icon-bdr-color);
	text-align: center;
}

header #nav-close-background {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	pointer-events: none;
	z-index: -1;
}

header #plus-sign {
	font-size: 4em;
	font-weight: bold;
	color: red;
	line-height: 0.6em;
	width: 0.7em;
	height: 0.6em;
	text-align: center;
}

header #header-line {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: var(--header-line-height);
}

header #header-title {
	display: flex;
	align-items: center;
	justify-content: center;
}

header #homebutton {
	cursor: pointer;
	min-width: 2.5em;
	position: absolute;
	top: -2.3em;
}

header #homebutton svg {
	display: block;
	height: 2em;
	margin: auto
}

header #homebutton:hover #door,
header #homebutton:hover #doorknob {
	display: none
}

header #skip-menu {
	position: absolute;
	top: -100%;
	width: 100%;
	height: 100%;
	display: table;
	background-color: lightgreen;
	z-index: -1;
	transition: 0.2s linear;
	color: indigo;
	border-radius: 0.5em;
	font-variant: small-caps;
	opacity: 0;
}

header #skip-menu:focus {
	top: 0em;
	z-index: 1;
	opacity: 1;
}

header .default {
	position: absolute;
	width: 100%;
	height: var(--menu-button-height);
	cursor: pointer;
	z-index: -1;
}

header .submenu-wrap {
	left: calc(100vw - 100%);
	right: 0;
	top: calc(4.5em);
	transform: scaleY(0);
	margin: auto;
	transform-origin: top;
	transition: transform 0.1s linear;
	overflow: auto
}

header .submenu {
	background-color: var(--menu-bg-color);
	display: flex;
	width: 100%;
	overflow: auto;
}

header .submenu>a {
	width: 100%
}

header .center {
	height: 100%;
}

header .img-center {
	padding: 0;
	text-align: center;
	width: 25%
}

header .menu-button {
	color: white;
	background-color: var(--menu-button-bg-color);
	transition: 0.2s linear;
	cursor: pointer;
	border-radius: var(--menu-bdr-radius);
	height: var(--menu-button-height);
	width: 100%;
	white-space: nowrap;
	text-align: center;
	border-spacing: 0;
	display: table
}

header .submenu-button {
	display: flex;
	color: white;
	width: 100%;
	background-color: rgb(200, 90, 0, 0.8);
	cursor: pointer;
	transition: 0.2s linear;
	border: 1px solid sienna;
	border-radius: var(--menu-bdr-radius);
	align-items: center;
	justify-content: center
}

header .menu-button:hover,
header .menu-button:focus {
	background-color: var(--menu-button-hvr-bg-color);
}

header .submenu-button:hover,
header .submenu-button:focus {
	background-color: white;
	color: var(--submenu-button-hvr-color);
}

header .header-text {
	text-align: center;
	white-space: nowrap
}

header .center img {
	height: 3em;
	padding: 0 0.2em
}