@import url('text-style.css');
@import url('alignment.css');
@import url('attributes.span.css');
@import url('xform.main.css');
/*
@import url('ez-scroller.css');
@import url('ez-carousel.css');
*/
body {
	margin : 0px;
}

.layout {
	box-sizing : border-box;
	position : relative;
	width : 985px;
	height : inherit;
	margin : 0px auto;
}

.layout:after {
	clear : both;
	float : none;
	display : block;
	content : ' ';
	height : 0px;
	overflow : hidden;
}

#masthead div.layout {
	height : 106px;
	line-height : 106px;
}

#intro h1 { color:#ffffff; }

#site-logo {
	display : inline-block;
	vertical-align : middle;
	margin-left : 25px;
}

#scaffolding {
	display:block;
	position:absolute;
	left:40%;
	top:20px;
}

#masthead address {
	float : right;
	text-align : right;
	display : inline-block;
	vertical-align : middle;
	line-height : 15px;
	color : #000000;
	text-transform : uppercase;
	margin : 5px 0px 0px;
	font-style : normal;
}

#masthead address span {
	display : block;
}

#masthead address a {
	color : inherit;
	text-decoration : inherit;
}

#masthead address span:last-child a {
	color : #ffffff;
	display:inline-block;
	border-radius:3px;
	background:#3b5998;
	margin-top:5px;
	transition:background-color 0.2s;
	text-align:center;
	line-height:29px;
	width:30px;
	margin-left:5px;
	padding:0 0 1px;
	vertical-align:top;
}

#masthead address span:last-child a:hover { background:#4066b0; }
#masthead address span:last-child a:active { padding:1px 0 0; box-shadow:0px 1px 1px 2px rgba(0,0,0,0.25) inset; }

#masthead address span:last-child a i {
	display:inline-block;
	line-height:1;
	vertical-align:middle;
	font-size:20px;
	text-align:center;
	margin-top:0px;
}

#mainnav {
	text-align : center;
	background : #262626;
	position : relative;
	z-index : 3;
}

#mainnav div.layout {
	white-space : nowrap;
}

#mainnav div.layout {
	display : table;
	height : 100%;
	border-spacing : 0px;
	border-collapse : collapse;
	margin-top : -4px;
}

#mainnav div.layout > ul {
	list-style-type : none;
	display : table-row;
	padding : 0px;
	margin : 0px;
}

#mainnav li {
	transition : background-color 0.2s;
}

#mainnav div.layout > ul > li {
	position : relative;
	display : table-cell;
	padding : 0px;
	margin : 0px;
}

#mainnav div.layout > ul > li > a {
	display : block;
	line-height : 94px;
	color : #ffffff;
	text-decoration : none;
	font-weight : bold;
	text-align : center;
	padding : 0px 15px;
}

#mainnav div.layout > ul > li.activeLink,
#mainnav div.layout > ul > li:hover {
	background : #444444;
}

#mainnav div.layout > ul > li > a > span {
	display : inline-block;
	vertical-align : middle;
	line-height : 1;
	font-size : 15px;
}

#mainnav div.layout > ul ul {
	display : block;
	position : absolute;
	left : 100%;
	top : 0%;
	max-width : 0px;
	transition : max-height 0.2s, max-width 0.2s;
	overflow : hidden;
	list-style-type : none;
	padding : 0px;
	margin : 0px;
}

#mainnav div.layout ul ul ul {
	min-height : 100%;
}

#mainnav div.layout > ul > li > ul {
	left : 0%;
	top : 100%;
	max-width : 10000px;
	min-width : 100%;
	max-height : 0px;
}

#mainnav div.layout ul ul li {
	display : block;
	padding : 0px;
	margin : 0px;
}

#mainnav div.layout ul ul li a {
	display : block;
	padding : 10px 25px;
	color : #ffffff;
	text-decoration : none;
	font-weight : bold;
	font-size : 14px;
	text-align : left;
}

#mainnav div.layout > ul > li:hover > ul {
	max-height : 100000px;
}

#mainnav div.layout > ul > li > ul > li > ul > li:hover,
#mainnav div.layout > ul > li > ul > li > ul > li.activeLink
#mainnav div.layout > ul > li > ul > li > ul > li > ul > li > ul > li:hover,
#mainnav div.layout > ul > li > ul > li > ul > li > ul > li > ul > li.activeLink,
#mainnav div.layout > ul > li > ul > li > ul > li > ul > li > ul > li > ul > li > ul > li:hover,
#mainnav div.layout > ul > li > ul > li > ul > li > ul > li > ul > li > ul > li > ul > li.activeLink,
#mainnav div.layout > ul > li > ul,
#mainnav div.layout > ul > li > ul > li > ul > li > ul,
#mainnav div.layout > ul > li > ul > li > ul > li > ul > li > ul > li > ul {
	background : #444444;
}

#mainnav div.layout > ul > li > ul > li > ul > ul > li > li:hover,
#mainnav div.layout > ul > li > ul > li > ul > ul > li > li.activeLink
#mainnav div.layout > ul > li > ul > li > ul > ul > li > li > ul > li > ul > li:hover,
#mainnav div.layout > ul > li > ul > li > ul > ul > li > li > ul > li > ul > li.activeLink,
#mainnav div.layout > ul > li > ul > li > ul > ul > li > li > ul > li > ul > li > ul > li > ul > li:hover,
#mainnav div.layout > ul > li > ul > li > ul > ul > li > li > ul > li > ul > li > ul > li > ul > li.activeLink,
#mainnav div.layout > ul > li > ul > li > ul,
#mainnav div.layout > ul > li > ul > li > ul > li > ul > li > ul,
#mainnav div.layout > ul > li > ul > li > ul > li > ul > li > ul > li > ul > li > ul {
	background : #555555;
}

#promo {
	background : #333333;
	position:relative;
	z-index:2;
}

#promo div.layout {
	line-height : 379px;
	background : #9b2330;
	background : rgb(0, 87, 166);
}

#intro {
	display : inline-block;
	vertical-align : middle;
	box-sizing : border-box;
	width : 324px;
	color : #ffffff;
	padding : 0px 25px;
}

#intro h1 {
	font-size : 32px;
	line-height : 32px;
	font-weight : bold;
	text-transform : uppercase;
	margin-top : 0px;
}

#intro h1 span {
	font-size : 22px;
	line-height : 18px;
}

#intro p {
	font-size : 14px;
	color : inherit;
}

#intro p:last-child {
	margin-bottom : 0px;
}

#carousel {
	display:block;
	position : absolute;
	top : 0px;
	bottom : 0px;
	right : 0px;
	width : 661px;
	height:0%;
	padding:0 0 38.5%;
	margin : 0px;
	overflow:hidden;
}

#carousel > li { position:absolute; left:200%; right:-200%; z-index:0; transition:all 0.5s; width:100%; height:100%; background:#000000; }
#carousel > li:first-child { left:-100%; right:100%; z-index:1; }
#carousel > li:nth-child(0n+2) { left:0%; right:0%; z-index:2; }
#carousel > li:nth-child(0n+3) { left:100%; right:-100%; z-index:1; }

#carousel > li img {
	display:block;
	position : absolute;
	left : 0px;
	right : 0px;
	top : 0px;
	bottom : 0px;
	width : 100%;
	height : 100%;
}

#carousel > li span.caption {
	position : absolute;
	left : 0px;
	right : 0px;
	bottom : 0px;
	height : auto;
	padding : 20px;
	font-size : 18px;
	color : #ffffff;
	background : rgba(0,0,0,0.5);
	text-shadow : 1px 1px 1px #000000;
	text-align : center;
}

#carousel > li span.caption:empty { display:none; }

#carousel-arrows { position:absolute; top:0; bottom:0; right:0; width:661px; display:block; margin:0; padding:0; z-index:1000; }
#carousel-arrows > li { position:absolute; top:50%; margin-top:-15px; font-size:0; line-height:30px; width:30px; border-radius:50%; color:#ffffff; text-shadow:0px 0px 1px #000000; background:rgba(0,0,0,0); transition:all 0.2s; text-align:center; }
#carousel-arrows > li > i { display : inline-block; vertical-align:middle; font-size:20px; line-height:1; }
#carousel-arrows > li:first-child { left:5px; }
#carousel-arrows > li:last-child { right:5px; }
#carousel-arrows > li:first-child > i { margin:1px 0 0 -4px; }
#carousel-arrows > li:last-child > i { margin:1px -4px 0 0; }
#carousel-arrows > li:hover { background:rgba(0,0,0,1); }

#main {
	background : #f3f3f3;
	padding : 25px 0px;
}

#featured-project {
	display:block;
	float:left;
	width:270px;
	margin : 0px -290px 40px 20px;
	text-decoration:none;
	background:#ffffff;
	padding:10px 5px;
	color:inherit;
	box-sizing:border-box;
	border-radius:5px;
	box-shadow:0px 0px 4px 3px rgba(0,0,0,0.25);
}

#featured-project h2 { margin-top:0; margin-bottom:0; text-align:center; text-transform:uppercase; }
#featured-project img { display:block; width:95%; border:1px rgba(0,0,0,0.5) solid; margin:0 auto; }
#featured-project span { display:block; text-align:center; font-weight:bold; font-size:15px; }

#services {
	float : left;
	clear:left;
	width : 270px;
	list-style-type : none;
	display : block;
	padding : 0px;
	margin : 0px -290px 0px 20px;
}

#services li {
	display : block;
	border-radius : 5px;
	background : linear-gradient(#ffffff,#f3f3f3);
	background : linear-gradient(rgb(0, 87, 166),rgb(0,0,0));
	box-shadow : 0px 0px 2px 1px rgba(0,0,0,0.25);
	margin : 4px 0px 11px;
	padding : 10px;
	font-size : 16px;
	letter-spacing : 1px;
	text-shadow : 1px 1px 1px #ffffff;
}

#services li a { color:#ffffff; text-decoration:inherit; text-shadow:-1px -1px 0px rgba(0,0,0,0.5),1px 1px 0px rgba(255,255,255,0.5); }

#services li i {
	display : inline-block;
	margin-right : 10px;
	font-weight : normal;
}

#homecontent {
	margin-right : 25px;
	margin-left : 320px;
}

#homecontent ul.topimages {
	display : block;
	list-style-type : none;
	text-align : center;
	padding : 0px;
}

#homecontent ul.topimages li {
	display : inline-block;
	background : #ffffff;
	padding : 3px;
	margin : 0px 2px;
}

#homecontent ul.topimages li img {
	display : block;
}

#features {
	background : #cccccc;
	padding : 40px 0px;
}

#features div.layout ul {
	display : block;
	list-style-type : none;
	margin : 0px;
	padding : 0px;
	text-align : center;
	font-size : 0px;
}

#features div.layout ul li {
	display : inline-block;
	vertical-align : top;
	margin : 0 0 20px;
	padding : 0px;
	width : 33%;
	text-align:center;
}

#features div.layout ul li a {
	display : inline-block;
	color : #000000;
	font-weight : bold;
	text-decoration : none;
	text-align : center;
	font-size : 15px;
	line-height : 88px;
	position : relative;
	width:90%;
}

#features div.layout ul li:nth-child(3n+1) {
	text-align:left;
}
#features div.layout ul li:nth-child(3n+0) {
	text-align:right;
}

#features div.layout ul li span {
	display : block;
	line-height : 15px;
}

#features div.layout ul li img {
	display:block;
	width:100%;
	margin : 10px auto 0px;
	max-width:100%;
	border:1px rgba(0,0,0,0.5) solid;
}

#features li:nth-child(0n+1) img { box-shadow:2px 1px 1px rgba(0,0,0,0.5); }
#features li:nth-child(0n+2) img { box-shadow:1px 1px 1px rgba(0,0,0,0.5); }
#features li:nth-child(0n+3) img { box-shadow:0px 1px 1px rgba(0,0,0,0.5); }
#features li:nth-child(0n+4) img { box-shadow:-1px 1px 1px rgba(0,0,0,0.5); }
#features li:nth-child(0n+5) img { box-shadow:-2px 1px 1px rgba(0,0,0,0.5); }

#partners {}

#partners div.layout {
	display : table;
}

#partners {
	background : #ffffff;
	padding : 10px 0px;
}

#partners div.layout ul {
	display : table-row;
	margin : 0px;
	padding : 0px;
	list-style-type : none;
}

#partners div.layout ul li {
	display : table-cell;
	margin : 0px;
	padding : 10px;
	text-align : center;
	vertical-align : middle;
}

#maincontent > blockquote:first-child { border-bottom:2px #efefef solid; padding-bottom:20px; }
#sidebar + #maincontent { margin-left:240px; }
#sidebar { width:220px; float:left; margin-right:-240px; }
#sidebar > nav { }
#sidebar > nav > ul { }
#sidebar > nav ul { display:block; list-style-type:none; padding:0; margin:0; }
#sidebar > nav > ul > li { display:none; }
#sidebar > nav > ul > li.activeLink { display:block; }
#sidebar > nav > ul > li > a { display:block; text-decoration:none; font-weight:bold; text-transform:uppercase; font-size:20px; padding:5px; color:inherit; }
#sidebar > nav > ul > li li a { display:block; text-decoration:none; font-size:16px;  padding:5px 10px; color:inherit; }
#sidebar > nav > ul > li li a::before { display:inline-block; font-family:FontAwesome; content:'» '; font-weight:bold; margin-right:5px; }
#sidebar > nav > ul ul, #sidebar > nav > ul ul li { display:block; }
#sidebar > nav > ul > li li.activeLink,
#sidebar > nav > ul > li li:hover { background:rgba(0,0,0,0.1); color:#131313; }


ul.projects {
    display: block;
    list-style-type:none;
    padding:0;
    margin:0;
    font-size:0;
	text-align : center;
}

ul.projects > li {
    display:inline-block;
    width:33.3333%;
	margin-bottom:20px;
}

ul.projects > li:nth-child(3n+0) { text-align:left; }
ul.projects > li:nth-child(3n+1) { text-align:center; }
ul.projects > li:nth-child(3n+2) { text-align:right; }

ul.projects > li > a {
    display:inline-block;
    width:95%;
    text-decoration:none;
    text-align:center;
    font-weight:bold;
    color:#777777;
}

ul.projects > li > a > img { display:block; max-width:100%; max-height:100%; margin:0 auto; }

ul.projects > li > a > div:first-child {
    display:block;
    position:relative;
    width:100%;
    height:0;
    padding-bottom:66%;
    margin-bottom:5px;
}

ul.projects > li > a > div:last-child {
    display:block;
    height:30px;
}

ul.projects > li > a > div > img {
    position:absolute;
    left:0;
    right:0;
    top:0;
    bottom:0;
    width:100%;
    height:100%;
}

ul.projects > li > a > div > span {
    display:inline-block;
    font-size:14px;
    line-height:1;
    vertical-align:middle;
}   

ul.ez-scroller > li > a {
	display:block;
	font-size:15px;
	line-height:1.2;

	font-weight:bold;
	padding:5px 10px;
}

ul.job-listings {
	display:block;
	list-style-type:none;
	padding:0;
	margin:0;
}

ul.job-listings > li {
	display:block;
	padding:10px 0px;
	margin:0;
}

ul.job-listings > li > h2 { margin:0; font-size:1.2em; }