body {
	color:#000;
	font-size:16px;
	line-height:1.5;
	background:#fff;
	text-align:center;
	font-family:'Code-Pro-LC',verdana,sans-serif;
	margin:0;
	padding:0;
}

#container {
	position:relative;
	top:0;
	left:0;
	width:100%;
	padding:0;
	margin:0;
}

a {
	color:#335985;
}

a:hover {
	color:#000;
}

header {
	width:100%;
	position:relative;
	top:0;
	left:0;
	font-size:1em;
	height:0;
	display:block;
	text-align:center;
	margin:0;
	padding:0;
	background:transparent;
}

#site-logo {
	position:fixed;
	top:1em;
	left:1em;
	width:14em;
	height:14em;
	background:url(layout/logo.svg) center center no-repeat transparent;
	-webkit-background-size:contain;
	-moz-background-size:contain;
	-o-background-size:contain;
	background-size:contain;
}

#neve {
	position:fixed;
	left:1em;
	top:16em;
	width:14em;
	height:calc(100vh - 17em);
	background:url(layout/neve-sideview.jpg) center center no-repeat #fff;
	-webkit-background-size:cover;
	-moz-background-size:cover;
	-o-background-size:cover;
	background-size:cover;
	z-index:9;
}

header h1 {
	display:none;
}

header .socialmedia {
	position:absolute;
	top:.5em;
	right:1em;
	width:60vw;
	height:1em;
	font-size:2em;
	text-align:right;
}

header .socialmedia a {
	margin:0 0 0 .5em;
}

nav {
	position:fixed;
	top:17em;
	left:2em;
	font-size:1em;
	display:block;
	width:12em;
	margin:0;
	padding:0;
	background:transparent;
	height:auto;
	text-align:left;
	z-index:11;
}

nav ul {
	position:relative;
	top:0;
	left:0;
	width:100%;
	margin:0;
	height:auto;
}

nav ul li {
	position:relative;
	text-align:left;
	list-style:none;
	display:block;
	margin:.25em 0;
	height:auto;
}

nav ul li a {
	color:#fff;
	font-size:1em;
	line-height:1;
	height:1em;
	padding:0;
}

nav ul li a span {
	font-size:1.5em;
}

nav ul li a:hover,nav ul li.lit a {
	color:#fe5746;
}

nav ul li ul.drop {
	position:absolute;
	top:3em;
	left:-1em;
	display:none!important;
	min-width:20em;
	height:auto;
	background:#fff;
	z-index:999;
}

nav ul li ul.drop li {
	font-size:1em;
	display:block;
	float:none;
	clear:both;
	width:auto;
	height:auto;
	height:1.5em;
	padding:0 1em;
	margin:0;
	text-align:left;
	line-height:1.5;
}

nav ul li ul.drop li a {
	color:red;
	line-height:1.5em;
	display:block;
	height:1.5em;
	width:100%;
}

nav ul li ul.drop li:hover {
	background:#000;
	cursor:pointer;
}

nav ul li ul.drop li:hover a {
	color:red;
}

nav ul li:hover ul.drop {
	display:block!important;
}

.slideshow_wrap {
	position:absolute;
	top:5.25em;
	left:16em;
	width:calc(100vw - 18em);
	height:70vh;
	display:block;
}

.slideshow_wrap .slideshow,.slideshow_wrap .slideshow .slide {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

.slideshow_wrap .slideshow .slide {
	background-position:center center;
	background-repeat:no-repeat;
	background-color:#325884;
	background-size:contain;
}



.slideshow_wrap .slideshow .slide {
	background-size: contain;
}

.slideshow_wrap .slide_verbage {
	width: calc(100% - 2em);
	position: absolute;
	bottom: .25em;
	left: 0;
	text-align: center;
	color: white;
	background: rgba(0,0,0,.5);
	padding: .5em 1em;
	font-size: 1.25em;
	height: auto;
}

#main {
	position:absolute;
	top:5.25em;
	left:16em;
	width:calc(100vw - 18em);
	min-height:calc(100vh - 12em);
	display:block;
	height:auto;
	background:transparent;
	margin:0 auto 2em;
	padding:0;
	text-align:left;
}

.homepage_page #main {
	top:calc(70vh + 6em);
	margin:2em auto;
}

.configs_page #main {
	left:0;
}

#main p {
	font-size:1em;
	line-height:1.5;
	margin-bottom:.5em;
}

#mainbox .story {
	margin:0 0 3em;
}

#searchbox {
	display:none;
}

#mainbox ul {
	font-size:1em;
	margin:0;
	padding:0;
}

#mainbox ul li {
	margin-left:0;
	padding-left:0;
}

#main h1,#main h2,#main h3,#main h4 {
	font-size:1.75em;
	color:#335985;
}

#main h3 {
	font-size:1.66em;
}

#main h4 {
	font-size:1.33em;
}

#main h5 {
	font-size:1.125em;
}

#main a {
	color:#335985;
	text-decoration:none;
}

#main a:hover {
	color:#fe5746;
	text-decoration:none;
}

#menubox h4 {
	font-size:1.125em;
}

#menubox h4.lit,#menubox h4 a.lit {
	color:red;
}

#menubox ul li .menuimage a {
	background-position:center bottom;
	background-color:transparent;
	background-repeat:no-repeat;
	-webkit-background-size:contain;
	-moz-background-size:contain;
	-o-background-size:contain;
	background-size:contain;
}

#menubox ul li .menuimage a:hover {
	opacity:.75;
}

#main a.tagbox {
	background:#335985;
	color:#fff;
	padding:.4em .33em .25em;
	display:inline-block;
	border:none;
	outline:none;
	line-height:1;
}

blockquote {
	font-size:1em;
	font-style:oblique;
}

iframe {
	width:100%;
	border:none;
	outline:none;
}

table#cdlist,table#cdlist td,table#cdlist th {
	border:0 transparent none;
	text-align:left;
	padding:.125em .5em;
	background:#b0c6d7;
	height:2em;
	line-height:1.2;
}

#mainbox div.prevnext {
	width: calc(100vw - 9em);
	left: 8em;
}

.projects_page #main .introwrap a.projectintro {
	display:block;
}

.projects_page #main .introwrap a.projectintro:hover {
	opacity:.75;
}

.projects_page #main .introwrap .projectintro h4,.projects_page #main .introwrap .projectintro h5 {
	font-size:1em;
	line-height:1.25;
	margin:0;
	padding:0;
	display:block;
	height:auto;
	width:100%;
	text-align:center;
}

.projects_page #main .introwrap .projectintro h5 {
	font-size:.9em;
}

.projects_page #main .introwrap .projectintro .projectsintroimg {
	background-repeat:no-repeat;
	background-position:center bottom;
	background-color:transparent;
	-webkit-background-size:contain;
	-moz-background-size:contain;
	-o-background-size:contain;
	background-size:contain;
}

.projects_page h3.subtitle span {
	font-size:.8em;
}

.product_page .introentry .thumb {
	background-position:center bottom;
	background-repeat:no-repeat;
	background-color:transparent;
	-webkit-background-size:contain;
	-moz-background-size:contain;
	-o-background-size:contain;
	background-size:contain;
}

.imagecolumnleft,.imagecolumnright {
	position:relative;
	height:100%;
}

.imagecolumnleft {
	margin-right:1em;
}

.imagecolumnright {
	margin-left:1em;
}

.slab_contact_form { 
	margin: 0;
}

footer {
	position:fixed;
	bottom:1em;
	left:1em;
	width:13em;
	height:auto;
	padding:1em 1em 1em 0;
	margin:0;
	color:#fff;
	background-color:rgba(0,0,0,.5);
	text-align:right;
	font-size:1em;
	z-index:10;
}

footer #footer_main {
	font-size:.7em;
}

#copyright {
	display:block;
}

footer a {
	color:#fff;
}

@media( max-width: 64em) {
	header {
		height:10em;
	}
	
	#site-logo {
		position:absolute;
		top:2.5vw;
		left:2.5vw;
		width:calc(95vw - 4em);
		height:7.5em;
		background-image:url(layout/logo-horiz.svg);
		background-position:left center;
	}
	
	header .socialmedia {
		top:5em;
		font-size:1.5em;
	}
	
	#neve {
		display:none;
	}
	
	header nav.mobi {
		background:url(layout/neve-sideview.jpg) center center no-repeat #000;
		-webkit-background-size:cover;
		-moz-background-size:cover;
		-o-background-size:cover;
		background-size:cover;
	}
	
	a#hamburger {
		background:#fff;
		-moz-border-radius:.125em;
		border-radius:.125em;
	}
	
	a#hamburger .hlines {
		background:#335985!important;
	}
	
	.slideshow_wrap {
		position: relative;
		top:0;
		left:0;
		width:100vw;
		height:100vw;
	}
	
	#main {
		position:relative;
		top:0;
		left:0;
		width:90vw;
		min-height:0;
		display:block;
		height:auto;
		background:transparent;
		margin:0 auto;
		padding:1em 0;
		text-align:left;
		clear:both;
		float:none;
	}
	
	.homepage_page #main {
		top:0;
	}
	
	#menubox,#mainbox {
		float:none;
		clear:both;
	}
	
	#main h1,#main h2,#main h3,#main h4 {
		font-size:1.5em;
		color:#335985;
	}
	
	#main h3 {
		font-size:1.33em;
	}
	
	#main h4 {
		font-size:1.25em;
	}
	
	#main h5 {
		font-size:1.125em;
	}
	
	footer {
		position:relative;
		width:calc(100% - 2em);
		top:0;
		bottom:auto;
		left:0;
		padding:2em 1em;
		color:#fff;
		height:auto;
		margin:4em 0 0;
		background:#335985;
		display:block;
		float:none;
		clear:both;
	}
	
	footer #footer_main {
		width:100%;
	}
	
	footer a {
		color:#335985;
	}
}

@media( min-width: 50em) and (max-width: 64em) {
	body {
		color:#000;
	}
}