section, article, header, footer, nav, aside
{
    display: block;
}

html, head, body
{
	height: 100%;
}

body
{
	margin: 0;
	padding: 0;
	background: url(../images/background.jpg) center center fixed #ddd;
	background-size: cover;
	
	color: #464040;
	font-size: 18px;
	font-family: 'Jura', sans-serif;
	font-weight: 300;
	line-height: 1.7;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    body {
        background-position: 50.001% 0;
    }
}

strong, b {
	font-weight: 600;
}


.hide-on-desktop
{
	display: none;
}

a.link-hoverline, .link-hoverline a
{
	text-decoration: none;
}

a.link-hoverline:hover, .link-hoverline a:hover
{
	text-decoration: underline;
}

.text-uppercase
{
	text-transform: uppercase;
}

.c, .clear
{
	clear: both;
}

h1:first-child
{
	margin-top: 30px;
}

h1, h2
{
	font-weight: normal;
	font-family: 'PT Serif', serif;
	color: #2a5998;
}

#background
{
	height: 100%;
}

@media (min-width: 1920px) or (min-height: 1080px)
{
	#background
	{
		background-size: cover;
	}
}

#wrap
{
	margin: 0 auto;
	width: 980px;
	min-height: 100%;
	background-color: #fff;
	box-shadow: 0 0 50px 20px rgba(0,0,0,0.6);
}

#wrap-inner
{
	padding-top: 46px;
	padding-bottom: 46px;
	width: 880px;
	margin: 0 auto;
}

#header
{
	padding-bottom: 18px;
}

#stage-section
{
	position: relative;
}

#stage-container
{
	height: 440px;
	width: 864px;
	position: relative;
	border: 6px solid #2a5998;
}

#stage-container ul
{
	list-style: none;
	margin: 0;
	padding: 0;
	
	position: relative;
	height: 100%;
}

#stage-container ul li
{
	list-style: none;
	margin: 0;
	padding: 0;
	
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	
	background-position: center center;
	background-size: cover;
}

#stage-container .square
{
	border: 1px solid #2b5471;
	display: inline-block;
	width: 13px;
	height: 13px;
	margin-left: 3px;
	vertical-align: bottom;
}

#stage-container .square.filled
{
	background-color: #2b5471;
}

nav ul
{
	list-style: none;
	margin: 0;
	padding: 0;
}

nav li
{
	display: inline;
	padding-right: 5px;
	position: relative;
}

nav > ul > li:before
{
	content: " | ";
	padding-right: 5px;
	color: #464040;
}

nav > ul > li:first-child:before
{
	display: none;
}

nav ul ul
{
	display: none;
	position: absolute;
	top: 100%;
	left: 5px;
	background-color: rgba(255, 255, 255, 1);
	box-shadow: 0 0 20px rgba(0,0,0,0.1);
	padding: 10px;
}

nav li:hover > ul
{
	display: block;
}

nav ul ul > li
{
	padding-left: 8px;
	display: block;
	white-space: nowrap;
}

nav ul ul > li:before
{
	content: " \00bb ";
	color: #464040;
	padding-right: 5px;
}

nav a
{
	color: #464040;
}

nav a.active
{
	color: #2a5998;
	text-decoration: underline;
}

#content-container
{
	min-height: 100vh;
}

#content-container a
{
	color: #2a5998;
}

#footer
{
	font-size: 14px;
	color: #464040;
	margin-top: 20px;
	text-align: right;
	line-height: 15px;
}

#footer a
{
	color: #464040;
}

#footer a.active
{
	color: #2a5998;
	text-decoration: underline;
}

#footer > span:before
{
	content: " | ";
	padding: 5px;
	color: #464040;
}

#footer > span:first-child:before
{
	display: none;
}

.slicknav_menu, #mobile-header, #mobile-service-menu
{
	display: none;
}
