@charset "utf-8";
/* CSS Document */

/* Begin Clearfix Styles */
.clear {
	clear: both;
}
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}		 
.clearfix {
	display: inline-block;
}
html[xmlns] .clearfix {
	display: block;
}			 
* html .clearfix {
	height: 1%;
}
/* End Clearfix Styles */


/* Begin Generic and Layout Styles */
body { /*see typography.css for font styles */
	width: 100%;
	background-color: #eee;
}

body #ie6_message {
	display: none;
}
body.ie6 {
	background-image: none !important;
	background: none;
	background-color: #fff;
}
body.ie6 #ie6_message {
	width: 980px;
	margin: 0 auto;
	padding-top: 100px;
	text-align: center;
	display: block;
	font-size: 18px;
}
body.ie6 #container {
	display: none;	
}

#container {
	width: 1002px;
	margin: 0 auto;
	padding: 0;	
}

#main_container {
	display: block;
	z-index: 10;
}

div.wrapper {
	width: 1002px;
	position: relative;
	background: url('../images/layout/wrapper-bg.png') center top repeat-y #eeeeee;
}

div.wrapper_section {
	width: 1002px;
	height: 22px;
	position: absolute;
	z-index: 1;
	left: 0;
}

div.wrapper_section.top {
	background: url('../images/layout/wrapper-top-bg.png') center top no-repeat #eeeeee;
	top: 0;
}

div.wrapper_section.bottom {
	background: url('../images/layout/wrapper-bottom-bg.png') center top no-repeat #eeeeee;
	bottom: 0;
}

#main, #footer {
	width: 980px;
	margin: 0 auto;
	padding: 0;
	position: relative;
}

#main {
	z-index: 10;
	padding-bottom: 12px;
}

/* !footer */
#footer_container {
	z-index: 1;
	top: -1px;
}
#footer_container.hidden {
	display: none;	
}

#footer {
	background: transparent url('../images/layout/green-triangle.png') no-repeat bottom left;
	font-size: 11px;
	padding-top: 11px;
	z-index: 1;
}
#footer a {
	font-family: 'Oswald', sans-serif;
}

#footer #copyright {
	line-height: 19px;
	min-height: 88px;
	padding: 35px 30px 0 0;
	text-align: right;
}
#footer #copyright a {
	font-size: 13px;
	letter-spacing: 0.11em;	
}

/* !header */
#main_header {
	margin-bottom: 18px;
	position: static;
}
#main_header #logo {
	border-bottom: 1px dotted #aaa;
	height: 56px;
	margin: 0 30px;
	padding: 37px 0 0;
	position: static;
	width: auto;
}
#main_header #logo a {
	display: inline-block;
	margin-left: 41px;
}
#main_header #logo a:first-child {
	margin-left: 6px;
}

#main_header #nav {
	height: 72px;
	padding: 24px 0 18px;
	position:relative;
	top: 0;
	width: auto;
}

/* !nav */
#nav a {
	text-decoration: none;
}

#nav ul {
	list-style: none;	
}

#nav > ul > li {
	border-right: 1px dotted #aaa;
	display: block;
	float: right;
	height: 79px;
	position: relative;
	text-align: right;
	z-index: 999;
}
#nav > ul > li > a {
	display: block;
	height: auto;
	padding: 0 25px;
}

#nav > ul > li > a span {
	display: block;	
}

#nav > ul > li > a span.title {
	display: block;
	height: 12px;
	margin-bottom: 31px;
	/* in case images don't load, use these font settings */
	color: #333;
	font-family: 'Oswald', sans-serif;
	font-size: 16px;
	text-transform: uppercase;
	font-weight: bold;
}

#nav > ul > li > a span.description {
	color: #00a5d9;
	font-size: 11px;
	font-style: italic;
	letter-spacing: -0.035em;
	line-height: 18px;
	word-spacing: -0.03em;
}

/* !Main Navigation Mega Nav */
#nav > ul > li > ul {
	display: none;
	position: absolute;
	right: -13px;
	top: 80px;
	width: 240px;
	padding: 25px 29px;
	background-color: #fdfdfd;
	z-index: 999;
}

#nav > ul > li:hover ul {
	display: block;
}

#nav > ul > li > ul > li {
	border-bottom: 1px dotted #aaa;
	color: #555555;
	font-family: 'Merriweather Sans', sans-serif;
	font-size: 14px;
	letter-spacing: -0.035em;
	text-align: right;
	text-transform: uppercase;
	position: relative;
	width: 240px; /* for ie7 so that display block for it's child <a> tag fills the entire block */
	z-index: 999;
}

#nav > ul > li > ul > li span {
	cursor: pointer;
	display: block;
	overflow: hidden;
	position: absolute;
}

#nav > ul > li > ul > li > a,
#nav > ul > li > ul > li > div {
	color: #555;
	display: block;
	padding: 10px 0;
}

#nav > ul > li > ul > li > a:hover {
	color: #00a6dd;
}

/* !nav social media */
#nav > ul > li#nav_social_media {
	border: none;
	width: 28px;
	padding-left: 16px;
}
#nav > ul > li#nav_social_media ol {
	bottom: 0;
	display: block;
	height: 48px;
	list-style: none;
	position: absolute;
	top: 29px;
	right: 0;
	width: 23px;
}
#nav > ul > li#nav_social_media ol li {
	float: left;
	height: 23px;
	margin: 2px 0 0;
	width: 23px;
}
#nav > ul > li#nav_social_media ol li.first_col {
	margin-left: 0;
}
#nav > ul > li#nav_social_media ol li.first_row {
	margin-top: 0;	
}
#nav > ul > li#nav_social_media ol li a {
	background: url('../images/layout/social-icons.png') 0 0 no-repeat transparent;
	display: block;
	height: 23px;
	overflow: hidden;
	width: 23px;
}
#nav > ul > li#nav_social_media ol li a.rss {
	background-position: 0 -23px;	
}#nav > ul > li#nav_social_media ol li a.linked_in {
	background-position: -23px -23px;	
}

/* !nav contact */
#nav > ul > li#nav_contact a {
	padding: 0 29px 0 5px;
	width: 175px;
}

/* !nav careers */
#nav > ul > li#nav_careers a {
	padding: 0 29px 0 30px;
	width: 130px;
}

/* !nav companies */
#nav > ul > li#nav_companies a {
	padding: 0 29px 0 30px;
	width: 130px;
}
#nav > ul > li#nav_companies ul {
	width: 290px;
}
#nav > ul > li#nav_companies ul li {
	width: 290px;
}
#nav > ul > li#nav_companies ul li a {
	padding: 10px 0 10px 29px;
	width: 230px;
}

/* !nav about */
#nav > ul > li#nav-about a {
	padding-right: 29px;
}


/* !content */
#content {
	background-color: #fdfdfd;
	font-size: 14px;
	line-height: 1.3;
	overflow: hidden;
	padding: 0 30px 33px;
	width: 920px;
}

#content.full {
	padding: 0 0 40px;
	width: 980px;
}

#content.short {
	width: 730px;
}

#main div#banner_sliders,
#main div.banner {
	margin-bottom: 38px;	
}
#main div#banner_sliders {
	clear: both;
}

#content div.horizontalDottedLine {
	margin: 0 0 15px 0;
	height: 1px;
	border-top: 1px dotted #aaa;
}

div.intro {
	width: auto;
	margin-bottom: 1em;
}
div.intro.short {
	width: 750px;
}
div.intro p {
	font-style: italic;
}

.columnNarrow {
	margin-right: 30px;
	width: 350px;
}
.columnWide {
	width: 540px;
}

figure {
	padding-bottom: 2em;
}
figcaption {
  color: #00a5d9;
  display: block;
  font-family: "Crimson Text",serif;
  font-size: 0.92em;
  font-style: italic;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1.4;
  margin-top: 8px;
  text-align: left;
}

/* !helpers */
div.left,
.column {
	float: left;	
}
div.right {
	float: right;
}
.centered {
	display: block;
	margin: 0 auto;
	text-align: center;
}