@charset "utf-8";

nav#mobile-menu {
	display: none;
}

button#mobile-menu-button {
	display: none;
}

@media only screen and ( min-width: 320px )
	and ( max-width: 960px ) {
		
	/* Header */
	
	header#page-header {
		padding-top: 1em;
		padding-bottom: 1em;
	}
	
	header#page-header > div.auxiliary-component {
		align-items: center;
	}
		
	/* Logo */

	header#page-header > div.auxiliary-component > a#logo {
		height: 25px;
	}
	
	header#page-header > div.auxiliary-component > a#logo > img {
		width: auto;
		height: 100%;
		margin-top: 0;
		margin-bottom: 0;
	}
	
	/* Header menu */
	
	header#page-header > div.auxiliary-component > nav#header-menu {
		display: none;
	}
	
	/* Mobile menu */
	
	button#mobile-menu-button {
		width: 25px;
		height: 25px;
		border: 0;
		background: none;
		cursor: pointer;
		display: block;
	}
	
	button#mobile-menu-button > img {
		width: inherit;
		height: inherit;
	}
	
	nav#mobile-menu {
		width: 100%;
		height: auto;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 10;
		background-color: rgba( 102, 195, 208, 0.9 );
	}
		
	nav#mobile-menu > div.auxiliary-component {
		width: 90%;
		height: 1.5625em;
		margin: 1.875em auto 0 auto;
		display: flex;
		justify-content: flex-end;
	}
		
	nav#mobile-menu > div.auxiliary-component > button.close {
		display: block;
		width: 25px;
		height: 25px;
		border: 0;
		background: none;
		cursor: pointer;
	}
		
	nav#mobile-menu > div.auxiliary-component > button.close > img {
		width: inherit;
		height: inherit;
	}		

	nav#mobile-menu > ul {
		display: block;
		width: 90%;
		height: auto;
		margin: 1.875em auto 1.875em auto;
		outline-style: solid;
		outline-width: 0.0625em;
		outline-color: #fff;
	}
		
	nav#mobile-menu > ul > li {
		width: 100%;
		height: auto;
		cursor: pointer;
	}
		
	nav#mobile-menu > ul > li > a {
		display: block;
		width: 100%;
		height: auto;
		font-size: 1em;
		line-height: 3.75em;
		text-decoration: none;
		text-transform: uppercase;
		text-align: center;
		color: #fff;
	}
		
	nav#mobile-menu > ul > li > a:hover {
		background-color: rgb( 248, 182, 56 );
	}

	/* Slideshow */
	
	ul#slideshow li div.slide-description {
		width: auto;
		height: auto;
		padding: 1.5em;
	}

	ul#slideshow li div.slide-description div.slide-description-line {
		
	}

	ul#slideshow li div.slide-description p.first-line {
		margin-bottom: 0.5em;
		font-size: 1.875em;
	}

	ul#slideshow li div.slide-description p.second-line {
		font-size: 1.5625em;
	}
	
	/* Page content */
	
	.page-content:nth-child( odd ) > div.auxiliary-component {
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}
	
	.page-content:nth-child( even ) > div.auxiliary-component {
		flex-direction: column-reverse;
	}

	section.page-content header > h1 {
		line-height: 1.875em;
		white-space: normal;
	}

	div.auxiliary-component-50 {
		width: 100%;
	}
	
	div.auxiliary-component-50.images {
		width: 100%;
		height: auto;
	}
	
	div.auxiliary-component-50.images img {
		width: 100%;
		height: auto;
	}
	
	/* Page: Contact */

	div.map-outline {
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}

	div.map-outline div.map {
		width: 100%;
	}

	div.map-outline div.auxiliary-component-50 {
		width: 90%;
		margin: 0 auto;
		padding: 1.875em 0;
	}
	
	/* Footer */
	
	footer#page-footer > div.auxiliary-component {
		flex-wrap: wrap;
		justify-content: center;
	}
	
	small#copyright {
		flex-basis: 100%;
		text-align: center;
	}
	
	nav#footer-menu > ul {
		margin-top: 1.25em;
		flex-wrap: wrap;
		justify-content: center;
	}
	
	nav#footer-menu > ul > li {
		margin: 0.625em 0 0 0;
	}
	
	nav#footer-menu > ul > li:last-of-type {
		margin: 0.625em 0 0 0;
	}	
}