@media (max-width: 800px) {
	nav,
	nav > *,
	nav ul,
	nav li,
	main,
	section,
	footer #sitemap,
	footer #sitemap > ul{
		display: flex;
		flex-direction: column;
	}
	header{
		height: fit-content;
		min-height: none;
		margin-bottom: 20px;
		display: block;
		/*display: flex;
		flex-direction: row;
		justify-content: center;*/
		transition: 0.3s;
	}
	#logo{
		margin: 0;
		vertical-align: top;
		display: inline-block;
		padding: 0;
	}
	#logo img{
		max-width: 17vw;
		max-height: 17vw;
		min-width: 64px;
		min-height: 64px;
		margin: 40px;
	}
	#session-menus{
		margin-right: 10%;
	}
	#identity{
		margin: 0;
		margin-right: 1vw;
		margin-top: -0.2vh;
		/*margin-left: -20vw;*/
		width: auto;
		max-width: 60vw;
		display: inline-block;
		text-align: center;
	}
	#owner-name{
		font-size: 0.9em;
		margin-top: 20px;
	}
	#app-name{
		font-size: 2em;
		margin-top: -10px;
	}
	#slogan,
	#app-name-text{
		font-size: 1.1em;
		line-height: 1.3em;
	}
	#socials{
		position: fixed;
		top: 5vh;
		right: 0;
		margin-right: 0;
		z-index: 1;
	}
	#socials img{
		width: 32px;
	}
	#socials > ul{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		width: fit-content;
	}
	#search-form{
		text-align: center;
		margin-top: 10px;
	}
	#search-form form > input:nth-child(1){
		min-width: 90%;
		margin: auto;
		margin-top: 2vw;
		/*margin-left: -20vw;*/
		font-size: 1.2em;
		padding: 0.6em;
	}
	#search-form form:after{
		font-size: 120%;
		vertical-align: middle;
	}
	nav{
		position: fixed;
		top: 0;
		bottom: 0;
		margin: 0;
		margin-left: -86vw;
		width: 80vw;
		transition: 0.6s;
		z-index: 1;
		/*border-radius: 0 0 1em 0;*/
		padding-right: 4vw;
		/*opacity: 0.9;
		box-shadow: var(--default-background-color) 0 0 10px;*/
		height: 100vh;
		font-size: 1.2em;
	}
	nav > div:nth-child(1):before{
		font-family: "fa-icons";
		background-color: var(--nav-text-color);
		border-radius: 10%;
		padding: 0.5em;
		padding-left: 0.7em;
		padding-right: 1.5em;
		margin-left: 84vw;
		content: '\f0c9';
	}
	nav:hover,
	nav:focus-within{
		margin-left: 0;
		/*opacity: 0.9;*/
		margin-left: 0;
		overflow: auto;
	}
	nav,
	nav > *{
		background-color: var(--nav-text-color);
		color: var(--default-background-color);
	}
	nav > * {
		width: 78vw;
	}
	nav > div:nth-child(2) {
		border-top: solid 1px var(--default-border-color);
		margin-top: 1em;
		padding-top: 1em;
	}
	nav > div:nth-child(1) a,
	nav > div:nth-child(1) a:active,
	nav > div:nth-child(1) a:visited,
	nav > div:nth-child(2) a,
	nav > div:nth-child(2) a:active,
	nav > div:nth-child(2) a:visited{
		color: var(--default-background-color);
	}
	nav > div:nth-child(1) a,
	nav > div:nth-child(1) a:visited,
	nav > div:nth-child(1) a:active{
		border: transparent 0;
		margin: 0.3em;
		width: auto;
		line-height: 1.3em;
	}
	nav > div:nth-child(2) a,
	nav > div:nth-child(2) a:visited,
	nav > div:nth-child(2) a:active{
		line-height: 1.1em;
		margin: 0.3em;
		padding-right: 0;
		width: auto;
	}
	nav > div:nth-child(1) a:after{
		/*content: '\276f';*/
		margin-left: 0.5em;
	}
	nav > div:nth-child(1) a:hover,
	nav > div:nth-child(1) a:visited:hover,
	nav > div:nth-child(1) a:active:hover{
		padding-bottom: 0.2em;
	}
	nav > div:nth-child(1) a:hover:before,
	nav > div:nth-child(1) a:visited:hover:before,
	nav > div:nth-child(1) a:active:hover:before{
		margin-right: 0.7em;
	}
	nav > div:nth-child(1) a:hover:after,
	nav > div:nth-child(1) a:visited:hover:after,
	nav > div:nth-child(1) a:active:hover:after{
		margin-left: 0.7em;
	}
	nav > div:nth-child(2) {
		display: block;
	}
	section,
	section > *{
		width: fit-content;
		min-width: 84vw;
		margin: auto;
		padding: 1em;
		margin: auto;
		display: flex;
		flex-direction: column;
	}
	section{
		margin-top: 0;
	}
	section article {
		margin-top: -1vh;
	}
	section #breadcrumb{
		margin-top: -35px;
		margin-bottom: -20px;
	}
	section > * {
		width: 90%;
		clear: both;
	}
	section img{
		width: auto;
		height: 40vh;
		margin: auto;
		clear: both;
	}
	aside,
	.mobile-hidden{
		display: none;
	}
	.mobile-visible{
		display: block;
	}
	footer{
		display: block;
		padding-left: 10vw;
		padding-top: 50px;
	}
	footer #sitemap{
		width: 55%;
		overflow: auto;
	}
	footer #sitemap > ul > li > a{
		border-color: var(--default-transparent-backgound);
	}
	footer #sitemap > ul > li > a:hover{
		padding-bottom: 0.5em;
	}
	footer #sitemap > ul > li > a:before{
		margin-left: 0;
	}
	footer #sitemap > ul > li > a:after{
		margin-right: 0;
	}
	footer #sitemap > ul > li > a:hover:before{
		margin-right: 0.7em;
	}
	footer #sitemap > ul > li > a:hover:after{
		margin-left: 0.7em;
	}
	footer #sitemap,
	footer #sitemap > ul,
	footer #sitemap > li{
		float: left;
		justify-content: flext-start;
	}
	footer #sitemap > ul > li{
		margin: 1em;
	}
	footer #links{
		max-width: 40%;
		padding: 0;
	}
	footer #links img{
		width: 70%;
		margin-right: 10%;
	}
	@media (max-width: 500px) {
		header{
			display: flex;
			flex-direction: column;
			align-items: center;
			height: fit-content;
		}
		#identity{
			display: flex;
			flex-direction: column;
			align-items: center;
			text-align: center;
			color: var(--nav-text-color);
			margin-top: -10px;
		}
		#session-menus{
			text-align: left;
		}
		#socials img{
			width: 32px;
		}
		#app-name{
			/*color: var(--nav-text-color);*/
			font-size: 230%;
		}
		#slogan,
		#owner-name{
			color: var(--nav-text-color);
			text-shadow: none;
		}
		#logo{
			margin-top: 0;
		}
		#logo img{
			max-width: 30vw;
			max-height: 30vw;
		}
		#search-form{
			width: fit-content;
		}
		#search-form form > input:nth-child(1){
			width: 60vw;
			font-size: 1.2em;
			margin-left: -0.7em;
		}
	}
}