@charset "utf-8";

body, html {
  height: 100%;
}

body {
	color: #4c66ae;
	margin: 0;
	font-family: 'EB Garamond', serif;
	min-width:300px;
	overflow-x: hidden;
	overflow-y: auto;
	width:100%;
	background-color:#dbe0ef;
}

.clear, .content-wrapper {
	clear: both;
}

header, footer-nav, footer, article, section, hgroup, aside {
	display: block;
}

img {
	border: none;
}

input, select, textarea {
	color: #4c66ae;
	font-family: 'EB Garamond', serif;
}

a {
	 transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	text-decoration: none;
	color: #4e68af;
}
.hide
{
	display:none;
}

a:hover {
	color: #4e68af;
	text-decoration:underline;
}

a img:hover {
	opacity:0.6;
	 transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
}


p {
	margin:0 0 15px 0;
	font-size:1.1em;
	line-height:1.45em;
}

h1,h2,h3,h4 {
	color:#4c66ae;
	font-family: 'EB Garamond', sans-serif;
}

h1 {
	margin: 0 0 10px 0;
	font-size: 2.8em;
	clear:both;
}

h2 {
	margin: 0 0 10px 0;
	font-size: 2em;
}

h3 {
	margin: 0 0 10px 0;
	font-size: 1.8em;
}

h4 {
	margin: 0 0 10px 0;
	font-size: 1.4em;
}

ul {
	padding: 0px;
	margin: 0 0 10px 18px;
	font-family: 'EB Garamond', sans-serif;
}

p.button {
	padding-top:20px;
}

a.button {
	padding:5px 10px;
	background-color:#01b1af;
	color:#FFF;
	text-transform:uppercase;
	text-align:center;
	text-decoration:none;
	font-weight:700;
	border:none;
}

a.button:hover {
	background-color:#47484c;
	color:#fff;
}

.line {
	clear: both;
	border-bottom-width: 5px;
	border-bottom-style: solid;
	border-bottom-color: #dc202d;
	margin-bottom: 20px;
	padding-top:10px;
}

.pop-up {
	display: none;
	width: 650px;
	padding: 15px 30px;
}



/* PANEL CSS */

.panel {
	width: 100%;
	clear: both;
	margin:0 auto;
	padding:40px 0 40px;
}


.panelcontent.blue {
	width:100%;
	background-color:#bdcbe4;
	max-width:1100px;
	padding:30px 20px;
}

@media screen and (max-width: 1140px)
{
.panelcontent.blue {
	width:100%;
	background-color:#bdcbe4;
	max-width:1140px;
	padding:30px 0;
}
}


.panel.portfoliolist, .panel.portfolio {
	width:100%;
	padding:0 0 60px;
}

.panel.portfoliolist .box {
	text-align:center;
}

.panel.portfoliolist .box.overlay {
	text-align:center;
}


/* END PANEL CSS */


/* CONTENT WRAPPER */

.content-wrapper {
	width:96%;
	padding:0 2%;
	max-width:1140px;
	margin: 0 auto;
	text-align:left;
}

.content-wrapper>h2 {
	text-align:center;
	margin-bottom:30px;
}

.content-wrapper>p {
	margin-bottom:35px;
	text-align:center;
}

.content-wrapper>p.subheading {
	font-size:1.4em;
	margin-top:-30px;
}

/* END CONTENT WRAPPER */


/* HEADER */
header {
	width:100%;
	padding:0;
	margin: 0 auto;
	box-sizing:border-box;
	text-align:center;
}

header.border {
	border-bottom:solid 2px #bdcbe4;
}

header .content-wrapper {
	width:98%;
	padding: 50px 1% 40px;
}

header #logo {
	margin:0 auto 25px;
	width:100%;
	max-width:569px;
}

header #logo img {
	width:100%;
}

@media screen and (max-width: 650px)
{
header .content-wrapper {
	width:98%;
	padding: 30px 1% 20px;
}

header #logo {
	margin:0 auto 15px;
}
}

/* The sticky class is added to the navbar with JS when it reaches its scroll position */
.sticky {
  position: fixed;
  top: 0;
  width: 100%;
  z-index:100;
}

/* Add some top padding to the page content to prevent sudden quick movement (as the navigation bar gets a new position at the top of the page (position:fixed and top:0) */
.sticky + #contentstart {
  padding-top: 60px;
}

/* END HEADER */




/* BOXED LINK */

a.borderbox
{
	text-align:center;
	border: 1px solid #666;
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
	padding:10px 30px;
	text-decoration:none;
	clear:both;
	font-size:1.2em;
}

/* END BOXED LINK */






/* BREADCRUMBS */

ul#breadcrumbs {
	width:98%;
	margin: 0 auto 20px;
	padding: 6px 1% 0;
	height:30px;
	background-color:#4e68af;
	text-transform:uppercase;
	font-size:0.95em;
}

ul#breadcrumbs li {
	float:left;
	list-style-type:none;
	padding: 0;
	color:#fff;
}

ul#breadcrumbs li a {
	color:#a6b3d7;
	text-decoration:none;
}

ul#breadcrumbs li a.active {
	color:#fff;
}

ul#breadcrumbs i {
	padding: 0 13px 0 13px;
}

#portcats {
	display:none;
}

@media screen and (max-width: 500px)
{
	.portfoliolist ul#breadcrumbs {
		display:none;
	}
	#portcats {
		display:block;
		width:98%;
		margin: 0 auto 20px;
		padding: 8px 1%;
		background-color:#4e68af;
		text-transform:uppercase;
		font-size:0.95em;		
	}
	#portcats select {
		font-size:1.1em;
		border-radius:3px;
		padding:2px 6px;
		display:block;
		float:none;
	}
	#portcats em {
		color:#fff;
		font-style:normal;
		display:block;
		float:left;
		padding-top:5px;
		margin:0 7px;
	}
}

/* END BREADCRUMBS */



/* INTRO */

.panel.intro ul {
	margin:0;
	padding:0;
}

.panel.intro .content-wrapper {
	max-width:770px;
	margin:0 auto;
	text-align:center;
}

/* END INTRO */


/* HOMECONTENT */

.panel.homecontent .table-threecol {
	display:table;
	height:100%;
	padding:0;
	margin:0 0 40px;
}

.panel.homecontent .table-threecol .box {
	display:table-cell;
	height:100%;
	box-sizing:border-box;
	text-align:center;
	vertical-align:middle;
	float:none;
	width:34%;
	background-color:#bdcbe4;
	border-collapse : seperate;
	border-right:solid 25px #dbe0ef;
	padding:0 20px;
}

.panel.homecontent .table-threecol .box:nth-child(3) {
	width:32%;
	border-right:none;
	padding:0;
}

.panel.homecontent .table-threecol .box img {
	display:inline;
	float:left;
}


.panel.homecontent .table-twoonecol {
	display:table;
	height:100%;
	padding:0;
	margin:0 0 25px;
}

.panel.homecontent .table-twoonecol .box {
	display:table-cell;
	height:100%;
	box-sizing:border-box;
	text-align:center;
	vertical-align:middle;
	float:none;
	width:68%;
	background-color:#bdcbe4;
	border-collapse : seperate;
	border-right:solid 25px #dbe0ef;
	padding:0 20px;
}

.panel.homecontent .table-twoonecol .box p {
	max-width:460px;
	margin:0 auto 20px;
}

.panel.homecontent .table-twoonecol .box:nth-child(2) {
	width:32%;
	border-right:none;
	padding:0;
}

.panel.homecontent .table-twoonecol .box img {
	display:inline;
	float:left;
}

.panel.homecontent .table-threecol .box:nth-child(4) {
	display:none;
}

.panel.homecontent .table-twoonecol .box p:last-of-type {
	margin-bottom:0;
	padding-bottom:0;
}

@media screen and (max-width: 1100px)
{
	.panel.homecontent .table-twoonecol .box h1 {
		font-size:1.7em;
	}
	.panel.homecontent .table-twoonecol .box h3 {
		font-size:1.4em;
	}	
}

@media screen and (max-width: 960px)
{
	.panel.homecontent .table-twoonecol, .panel.homecontent .table-threecol {
		display:block;
		height:auto;
		padding:0;
		margin:0 0 25px;
	}
	
	.panel.homecontent .table-twoonecol .box img {
		display:none;
	}	
	
	.panel.homecontent .table-twoonecol .box {
		display:block;
		height:auto;
		float:none;
		width:100%;
		background-color:#bdcbe4;
		border-collapse:collapse;
		border-right:none;
		padding:40px 2% 30px;
		margin-bottom:25px;
	}	

	.panel.homecontent .table-threecol .box, .panel.homecontent .table-threecol .box:nth-child(3) {
		display:block;
		height:auto;
		float:left;
		width:48%;
		background-color:#bdcbe4;
		border-collapse:collapse;
		border-right:none;
		padding:40px 2% 30px;
		margin:0 4% 25px 0;
		height:340px;
	}

	.panel.homecontent .table-threecol .box:nth-child(4) {
		display:block;
	}
	
	.panel.homecontent .table-threecol .box:nth-child(3),.panel.homecontent .table-threecol .box:nth-child(4) {
		padding:0;
		height:auto;
	}
	
	.panel.homecontent .table-threecol .box:nth-child(2n+2) {
		margin-right:0;
	}

}

@media screen and (max-width: 580px)
{
	.panel.homecontent .table-threecol .box, .panel.homecontent .table-threecol .box:nth-child(3) {
		width:100%;
		height:auto;
	}
}

.panel.homecontent h1 {
	font-size:2em;
	line-height:1.15;
	font-weight:400;
	font-style:italic;
}

.panel.homecontent h1 strong {
	font-weight:800;
	font-style:normal;
}

.panel.homecontent h1 em {
	font-weight:400;
	font-size:0.7em;
}

.panel.homecontent .box {
	margin-bottom:2%;

}

.panel.homecontent h3 {
	font-size:1.6em;
	line-height:1.15;
	font-style:italic;
}

.panel.homecontent h3 em {
	font-size:0.7em;
	font-weight:400;
}

.panel.homecontent .box.text {
	background-color:#bdcbe4;
	padding:2%;
	box-sizing:border-box;
	margin-bottom:2%;
	text-align:center;
}


/* PAGE CONTENT */

.panel.pagecontent .content-wrapper>h1 {
	text-align:center;
	margin-bottom:20px;
}

.panel.pagecontent ul li {
	margin:0 0 15px 0;
	line-height:1.55em;
}

.panel.pagecontent.portfolio .onetwocol .box:nth-child(2) {
	margin-top:30px;
}

.infopanels ul li {
	margin:0 0 5px 0;
	line-height:1.55em;
}

@media screen and (max-width: 450px)
{
.panel.pagecontent .content-wrapper {
	width:96%;
	padding:2%;
}
}



.panel .content-wrapper img.imgleft {
	float:left;
	margin:0 2% 0 0;
}

.panel .content-wrapper img.imgright {
	float:right;
	margin:0 0 0 20px;
}

/* END PAGE CONTENT */

/* INFO PANELS */

.panel.infopanels {
	background-color:#d8d8d8;
}

.panel.infopanels .content-wrapper {
	margin-bottom:2%;
	clear:both;
}

.panel.infopanels .imagebox {
	background-size:cover;
	background-position:center center;
	width:48%;
	float:left;
}

.panel.infopanels .colsplit {
	width:4%;
	float:left;
	height:100px;
}

.panel.infopanels .textbox {
	float:left;
	padding:0;
	box-sizing:border-box;
	display:inline-table;
	width:48%;
	height:395px;
}

.panel.infopanels .textbox .textwrap {
	vertical-align:middle;
	display:table-cell;
	width:100%;
	height:auto;
}

.panel.infopanels img.spacer {
	width:100%;
	height:auto;
}

.panel.application #wbdform {
	margin:0;
	max-width:700px;
}

@media screen and (max-width: 1140px)
{
.panel.infopanels .textbox {
	height:auto;
}	
}

@media screen and (max-width: 700px)
{
.panel.infopanels .imagebox {
	float:none;
	width:98%;
	margin:0 1% 20px;
	height:200px;
}

.panel.infopanels .colsplit {
	display:none;
}

.panel.infopanels .textbox {
	float:none;
	width:98%;
	margin:0 1% 20px;
	height:auto;
}
}

/* END INFO PANELS */

/* JOB SEARCH PAGE BAR */ 

#searchbar {
	margin-top:30px;
	width:100%;
	float:right;
}

/*
#searchbar select {
	width:calc(31% - 13px);
	margin-right:2%;
	padding:7px 6px 6px;
	box-sizing:border-box;
	font-size:1.15em;
	float:left;
	color:#545454;
	border:solid 1px #fff;
}
*/

#searchbar a#searchformSub {
	display:block;
	width:42px;
	height:42px;
	padding-top:8px;
	text-align:center;
	background-color:#01b1af;
	color:#fff;
	box-sizing:border-box;
	font-size:1.4em;
	float:left;
	cursor:pointer;
}


/* END JOB SEARCH PAGE BAR */ 





iframe
{
width:100%;	
}



/* FOOTER */

footer {
	color: #dbe0ef;
	clear: both;
	margin:0 auto;
	text-align:left;
	background-size:auto 100%;
	background-repeat:no-repeat;
	background-position:center;
	font-weight:300;
	background-color:#4c66ae;
	border-top:solid 1px #f1ffff;
}

footer .content-wrapper {
	text-align:left;
	padding:35px 1% 2px;
	max-width:1140px;
	margin:0 auto;
	width:98%;
}

footer p a {
	padding-bottom:4px; display:block; width:calc(100% - 130px); padding-left:130px;
}

footer a {
	color:#fff;
}

footer a:hover {
	color:#dbe0ef;
}

footer .social {
	float:right;
	text-align:right;
	margin-top:2px;
	width:130px;
}

footer .social em {
	font-style:normal;
}

footer .social i {
	margin-left:7px;
	font-size:1.2em;
	color:#fff;
}

footer em.copyright {
	display:block;
	font-style:normal;
	font-size:0.8em;
}

@media screen and (max-width: 700px)
{
	footer .content-wrapper {
		padding-top:75px;
	}
	
	footer p {
		clear:both;
	}
	
	footer p a {
		padding-bottom:4px; display:block; width:100%; padding-left:0;
	}
	
	footer .social {
		margin-top:-37px;
	}
}

/* END FOOTER */

.pagination p { margin-top:40px; text-align: center; padding: 5px; text-transform:uppercase; font-size:0.9em; }
.pagination a { padding: 1px 7px; text-decoration:none;  }
.pagination a.pag-next { background: transparent url(/forms/pagination/arrow-active.png) no-repeat left center; padding-left: 25px; margin-left: 10px; }
.pagination a.pag-next:hover { background-image: url(/forms/pagination/arrow-hover.png) }
.pagination a.pag-prev { background: transparent url(/forms/pagination/arrow-active-prev.png) no-repeat right center; padding-right: 25px; margin-right: 10px; }
.pagination a.pag-prev:hover { background-image: url(/forms/pagination/arrow-hover-prev.png) }
.pagination a.current { font-weight:bold; background-color:#bdcbe4; }