/* ## corrects possible view port issues in browsers that do not recognize the viewport meta tag ## */
/* http://timkadlec.com/2013/01/windows-phone-8-and-device-width/ */
@-webkit-viewport   { width: device-width; }
@-moz-viewport      { width: device-width; }
@-ms-viewport       { width: device-width; }
@-o-viewport        { width: device-width; }
@viewport           { width: device-width; }


/* FONTS
font-family: 'Open Sans', sans-serif; font-weight: 400 / 600 / 700;
font-family: 'Quicksand', sans-serif; font-weight: 300 / 400;

 */

/*! normalize.css v2.0.1 | MIT License | git.io/normalize */

/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */

/*
 * Corrects `block` display not defined in IE 8/9.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
    display: block;
}

/*
 * Corrects `inline-block` display not defined in IE 8/9.
 */

audio,
canvas,
video {
    display: inline-block;
}

/*
 * Prevents modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
    display: none;
    height: 0;
}

/*
 * Addresses styling for `hidden` attribute not present in IE 8/9.
 */

[hidden] {
    display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */

/*
 * 1. Sets default font family to sans-serif.
 * 2. Prevents iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html {
    font-family: sans-serif; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
    -ms-text-size-adjust: 100%; /* 2 */
}

/*
 * Removes default margin.
 */

body {
    margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */

/*
 * Addresses `outline` inconsistency between Chrome and other browsers.
 */

a:focus {
    outline: thin dotted;
}

/*
 * Improves readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover {
    outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */

/*
 * Addresses `h1` font sizes within `section` and `article` in Firefox 4+,
 * Safari 5, and Chrome.
 */

h1 {
    font-size: 2em;
}

/*
 * Addresses styling not present in IE 8/9, Safari 5, and Chrome.
 */

abbr[title] {
    border-bottom: 1px dotted;
}

/*
 * Addresses style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */

b,
strong {
    font-weight: bold;
}

/*
 * Addresses styling not present in Safari 5 and Chrome.
 */

dfn {
    font-style: italic;
}

/*
 * Addresses styling not present in IE 8/9.
 */

mark {
    background: #ff0;
    color: #000;
}


/*
 * Corrects font family set oddly in Safari 5 and Chrome.
 */

code,
kbd,
pre,
samp {
    font-family: monospace, serif;
    font-size: 1em;
}

/*
 * Improves readability of pre-formatted text in all browsers.
 */

pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/*
 * Sets consistent quote types.
 */

q {
    quotes: "\201C" "\201D" "\2018" "\2019";
}

/*
 * Addresses inconsistent and variable font size in all browsers.
 */

small {
    font-size: 80%;
}

/*
 * Prevents `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */

/*
 * Removes border when inside `a` element in IE 8/9.
 */

img {
    border: 0;
}

/*
 * Corrects overflow displayed oddly in IE 9.
 */

svg:not(:root) {
    overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */

/*
 * Addresses margin not present in IE 8/9 and Safari 5.
 */

figure {
    margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */

/*
 * Define consistent border, margin, and padding.
 */

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

/*
 * 1. Corrects color not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
    border: 0; /* 1 */
    padding: 0; /* 2 */
}

/*
 * 1. Corrects font family not being inherited in all browsers.
 * 2. Corrects font size not being inherited in all browsers.
 * 3. Addresses margins set differently in Firefox 4+, Safari 5, and Chrome
 */

button,
input,
select,
textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 2 */
    margin: 0; /* 3 */
}

/*
 * Addresses Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

button,
input {
    line-height: normal;
}

/*
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Corrects inability to style clickable `input` types in iOS.
 * 3. Improves usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button; /* 2 */
    cursor: pointer; /* 3 */
}

/*
 * Re-set default cursor for disabled elements.
 */

button[disabled],
input[disabled] {
    cursor: default;
}

/*
 * 1. Addresses box sizing set to `content-box` in IE 8/9.
 * 2. Removes excess padding in IE 8/9.
 */

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
}

/*
 * 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
    -webkit-appearance: textfield; /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box; /* 2 */
    box-sizing: content-box;
}

/*
 * Removes inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/*
 * Removes inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

/*
 * 1. Removes default vertical scrollbar in IE 8/9.
 * 2. Improves readability and alignment in all browsers.
 */

textarea {
    overflow: auto; /* 1 */
    vertical-align: top; /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */

/*
 * Remove most spacing between table cells.
 */

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* ===============  Default Adjustments  =============== */

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;}

::-moz-selection { background: #3197fc; text-shadow: none; }
::selection { background: #3197fc; text-shadow: none; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #216093; margin: 1em 0; padding: 0;}
img { max-width:100%; height:auto !important; vertical-align: middle; }
fieldset {border: 0;margin: 0; padding: 0; }
textarea { resize: vertical; }

p { margin:0 0 1em 0; }

.ir { background-color: transparent; border: 0; overflow: hidden; *text-indent: -9999px; }
.ir:before { content: ""; display: block; width: 0; height: 100%; }
.hidden { display: none; visibility: hidden; }
.visuallyHidden, .visually-hidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyHidden.focusable:active, .visuallyHidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }

.hide       { display:none; }
.smallest   { font-size:.8em; }
.smaller    { font-size:.9em; }
.larger     { font-size:1.1em; }
.largest    { font-size:1.2em; }
.bold       { font-weight:bold; }
.italic     { font-style:italic !important; }
.strike     {text-decoration:line-through !important;}

.red, .red:visited          { color:#f00 !important; }
.green, .green:visited      { color:#390 !important; }
.lgreen, .lgreen:visited    { color:#97937d !important; }

.bg-blue {background:#216093; color:#fff;}
.bg-green {background:#0ca860; color:#fff;}
.bg-red {background:#b63647; color:#fff;}
.bgYellow { background:yellow; }
.bgGreen { background:lime; }
.vtop { vertical-align:top; }
.center { text-align:center; }
.left { text-align:left; }
.right { text-align:right; }
.floatLeft { float:left; }
.floatRight { float:right; }
.imgLeft { float:left; margin-right:5px; padding:5px; border:1px solid #c4c4c4; }
.imgRight { float:right; margin-left:5px; padding:5px; border:1px solid #c4c4c4; }
.nowrap { white-space:nowrap; }
.borderless { border:0; border-collapse:collapse; }
.breakforprint { page-break-after:always; }
.clear { overflow:hidden; clear:both; height:0; margin:0; font-size:1px; line-height:0; }
.skip { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.important { color:red; font-weight:bold; text-transform:uppercase; }

.padding-mod {padding: 60px 0;}

.quicksand {font-family: 'Quicksand', sans-serif;}


/* ## Base List styles ## */
ul, ol { margin:0 0 1em; }
.noBullet { padding:0 0 0 1em; list-style-type:none; }
.noIndent { padding:0; list-style-type:none; }
.bulletSquare { list-style-type:square; }

/* ## Note/hint text or link ## */
.note { margin:0 7px; font-size:.8em; color:#4e4e4e; }
.note a, .note a:link, .note a:visited { text-decoration:underline; }


/* ================================================================
   PRIMARY LAYOUT STYLES
   ================================================================ */

/* Enter unique styles for site here */

/* ## Disabled Form Fields ## */
input[disabled=true]    { background-color: #F0F0F0; }
textarea[disabled=true] { background-color: #F0F0F0; }
select[disabled=true]   { background-color: #F0F0F0; }
input[readonly=true]    { background-color: #F0F0F0; }
textarea[readonly=true] { background-color: #F0F0F0; }
select[readonly=true]   { background-color: #F0F0F0; }

h1, h2, h3, h4, h5, h6 {line-height: 1.25em; margin:0 0 0.8em 0; font-weight: 600;}
h1 {font-size: 38px; }
h2 {font-size: 25px; }
h3 {font-size: 19px; }
h4 {font-size: 18px; }
h5 {font-size: 1em; }
h6 {font-size: .9em; }

/* Removed :link from the list to help cut down on writing time and prevent the need for extra specificity for classes */
a, a:visited { color:#216093; text-decoration:none; }
a:hover, a:active, a:focus { text-decoration: underline; }
a:active, a:focus { outline:0; }

.btnText { margin:0; padding:0; color:#6D6D6D; text-decoration:underline; border:0; background:none; }
.btnText:hover { color:#6D6D6D; text-decoration:none; }


/* ## Link Modifiers ## */
a .text { text-decoration:underline; }
a:hover .text, a:active .text, a:focus .text { text-decoration:none; }
a [class^="icon-"] { text-decoration:none; }
a.removeLink { color:#f00; font-size:0.9em; }


/* ## Link Lists ## */
/* We use '<ul class="linkList">' when setting a list of organized links. */
ul.linkList {margin:0 0 15px 0; padding:0; list-style-type:none;}
ul.linkList li {margin-bottom:8px;}
ul.linkList a,
ul.linkList a:link,
ul.linkList a:visited { text-decoration:none;}
ul.linkList a:hover,
ul.linkList a:active {text-decoration:underline;}


/* ## Start Up Layout - Use, modify, or delete as need be ## */
body {background:#fff; font-family: 'Open Sans', sans-serif; color:#595959; }
.siteBody { min-height:300px; background:#ebeced;  line-height: 1.7em; padding-bottom: 30px; }
.home .siteBody { padding-bottom: 0px; }
#main-content, .mainContent {outline: 0;}

/* ## Site Header ## */
.header-hold {width:100%; z-index:100000;}
.stuck {  position:fixed;  top:0;  min-height: 100px;}
.extraNavWrpr {background:#216093; color:#fff; text-align:right; }
.extraNavWrpr a { color:#fff; }
.extraNavWrpr .grid_12 > span, .extraNav > div > span {margin-left: 75px;}
.extraNavWrpr .address {font-size:14px;}

.headerWrpr {background:#fff; border-bottom:1px solid #5d8bb1;}
.siteHeader {position:relative; display:table; width:100%; z-index:1000;}
.siteHeader p {margin:0;}
.siteHeader a.sitelogo,
.siteHeader a.sitelogo:link,
.siteHeader a.sitelogo:visited { display:block;}

.siteHeader > div{display:table-cell; vertical-align:middle;}
.siteHeader > div:first-child {width:117px; padding: 0 10px;}
.siteHeader > div:last-child {width:182px;}
.navigation-hold {float:right; margin-right:20px;}

.siteHeader .icon-linkedin2 {background:#d2d2d4; color:#fff; padding:10px; font-size: 17px;}
.siteHeader .careers-btn {background:#216093; color:#fff; font-size:17px; padding: 7px 25px 6px 25px; margin-left: 10px; font-weight: 600; text-transform:uppercase;}

.mobile-items {border-top:1px solid #cccccd; }
.mobile-items .phone { margin-right: 20px;}
.mobile-items .phone a { color: #595959}
.mobile-items .icon-phone { color: #205f92}

.siteHeader .icon-linkedin2:hover, .siteHeader .icon-linkedin2:focus, .siteHeader .careers-btn:hover, .siteHeader .careers-btn:focus {text-decoration:none; opacity: 0.7;}

/* ## Disabled Form Fields ## */

.siteSearch {
    color: #FFFFFF;
    margin: 0;
}
.siteSearch label {
    display: none;
}

/* ## Homepage ## */
.slideshowHome .btnWrapper .btn {color:#fff; border:2px solid #fff;}
.sswControls {display:none;}

.home-mission {font-size:17px; max-width:980px; margin:0 auto;}
.home-mission h2 {font-size:35px; font-weight:400;}

.callout-item {position:relative; font-size:24px; font-weight:600; max-width:380px; margin: 0 auto;}
.callout-item > img {display:block;}
.callout-item .callout-text {position:absolute; top:50%; left:50%; margin-top:-90px; margin-left:-90px; display:table; width:180px; height:180px; text-align:center;}
.callout-item a {font-size:24px; font-weight:600; color:#fff; display:table-cell; vertical-align:middle;
-webkit-transition: all 0.5s ease;
   -moz-transition: all 0.5s ease;
     -o-transition: all 0.5s ease;
        transition: all 0.5s ease;
}
.callout-item a:hover, .callout-item a:focus {text-decoration:none; background: #000; opacity: 0.8;}
.callout-overlay {display:block; width:100%; height:100%; position:absolute; top:0; left:0; background:url(/cms/images/callout-overlay.png) no-repeat;  background-size: cover; }

/* ## Interiors ## */
.interior-main-img {position:relative; overflow:hidden;}
.interior-main-img p {margin:0;}
.interior-main-img img {min-width:1130px; display:block;  margin: 0 auto;}
.page-heading {background:#216093;}
.page-heading h1 {color:#fff; margin: 25px 0 30px 0; line-height: 1em;}

/* SERVICES */
.items-list {list-style:none; margin:0 -12px 0 -12px; padding:0;}
.items-list li {float:left; width:33.333%; margin-bottom:60px; padding:0 12px;}
.items-list li > div {position:relative; padding-bottom:70px; box-sizing:content-box;}
.items-list li:nth-child(3n+1) {clear:left;}
.items-list .item-text {margin:20px 0 0 0;}
.items-list .item-text h3, .items-list .item-text p {margin: 0;}
.items-list .item-btn {position:absolute; bottom:0; width:100%; text-align:center;}

/* CAREERS */
.careers-rail {max-width: 280px; margin:0 auto 30px auto; background:#216093 url(/cms/images/careers-rail-overlay.png) no-repeat 50% 50%; color:#fff; text-align:center; padding: 18px 28px 1px 28px; font-size:20px;}
.careers-rail .btn {color:#fff; border:1px solid #fff; padding: 5px 10px; font-size:14px; }
.careers-rail .btn:hover, .careers-rail .btn:focus { border:1px solid #fff; }
.careers-rail h3 { font-size:20px; line-height: 28px; border-bottom: 1px solid #fff; padding-bottom: 0.8em; }
.careers-rail h3 span { font-size:35px; display:block; }
.careers-rail p { line-height: 24px;  margin-bottom: 15px; }

.careersMainWrpr .filter {margin-bottom:30px;}
.careersSearchTable {width:100%; text-align:left; display:table;}
.careersSearchTable input.btn {  margin-top: 23px; padding: 5px 30px;}
.careersSearchTable > div {display:table-cell; vertical-align:middle; width:18%;  font-weight: normal; padding-right:12px;}
.careersSearchTable > div:nth-child(1) {width:23%;}
.careersSearchTable > div:nth-child(3) {width:23%;}
.careersSearchTable > div:nth-child(5) {position:relative; text-align:right; padding-right:0;}
.careersSearchTable span {display:block; font-size:13px;}
.careersSearchTable input[type="text"], .careersSearchTable select {width:100%;}
.careersSearchTable input {padding: 0 5px;}
.careersSearchTable .reset {position:absolute; top:0; right:0; background:none; border:none; color:#fff; font-size:12px; font-style:italic;}
.careers-results .a-left { float:left; width: 70%;}
.careers-results .a-right { float:right; width: 30%; text-align:right;}
.careers-item {background:#fff;  padding: 20px;     margin-bottom: 26px;}
.j-title {color:#216093;}
.j-title .a-left {font-size:20px; font-weight:600;}
.j-location {margin-bottom: 10px;}
.j-short-info {font-size:14px; }
.j-short-info .btn {font-size:14px; padding:5px 10px; }

.careersApplicantWrpr input, .careersApplicantWrpr select {max-width:100%;}
.careerDescLabel {font-weight:600;}


/* ==========================================================================
   Global Modules
   ========================================================================== */

.mod { position: relative; margin:0 0 1em; }
.moreLink {text-align:right;}
.moreLink a {text-decoration:none;}
.moreLink a:after {
	content:'\3e';
	font-family: 'Basic-Icons';
	font-size:12px;
	font-weight:bold;
}

.moreLink a:hover,
.moreLink a:focus {text-decoration:none; color:#000;}

.title { position: relative; margin: 0 0 1em; }
.titleAlt { margin:0 0 0.1em; font-size:1.2em; }
.titleAlt2 {  }

.news-featured .title { margin: 0; }
.news-featured .time { margin-bottom: 10px; }

.title .more {
	position: absolute;
	top:0;
	right: 0;
	font-size: 0.6em;
}

.modContent{
	padding: 0 0 15px 0;
}



/* Item Lists Content
   ========================================================================== */

.itemList {
	margin:0;
	padding:0;
	list-style:none;
}

.item {
	display: table;
	padding: 20px;
	margin-bottom:26px;
	width: 100%;
	background:#fff;
}
.item:last-child { margin-bottom:0; }
.newsSummary .item { background: none;   padding: 0; }


.item .content {
	display: table-cell;
	width: 100%;
	vertical-align: top;
}
.item .content h2 {font-size:20px; margin-bottom:0;}
.item .content h4 {font-size:17px;}

.item .contentExtra {
	display: table-cell;
	vertical-align: top;
}

.content .title { margin:0; }
.itemList .content p { margin: 0; }
.content .date { font-size:0.85em; }


/* Item Media
   ========================================================================== */

.aside {
    display: table-cell;
    padding: 0 20px 0 0;
    text-align: center;
    min-width: 220px !important;
    max-width: 220px !important;
}
.newsDetail .aside {
    min-width: 290px !important;
    max-width: 290px !important;
}
.newsSummary .aside {
	display:none;
}

.aside img {
    width: 100% !important;
    max-height: 150px !important;
}
.newsDetail .aside img {
    max-height: 500px !important;
}
.caption {
	display: block;
	font-size: 0.8em;
	line-height: 1.2em;
}

/* Modules
   ========================================================================== */
.modHead {position:relative;}
.modHead a {position:absolute; top: 0; right:0; font-weight:600;}
.modHead a span {font-size: 0.8em;}
.modHead .hdng, .modHead h3 {padding-right: 130px;}

.faq-answer { background: #fff; padding: 20px; margin-bottom: 26px;}

/* Media Queries for Item Lists
  ========================================================================== */


@media (max-width : 400px) {

	.item { display: block; }
	.item > .content { display: block;}
	.item > .aside { display: block;}

}


/* News
   ========================================================================== */

.article > .aside {
	float:right;
	margin: 1em;
}

.meta{
	margin:0.5em 0;
}

.meta .date {
	margin-right:20px;
}
.meta > div {
	float: left;
}

.meta > div:last-child > div:nth-child(2), #CT_Main_0_ctl03_divTwitter {
    margin: 7px 0 0 10px;
}
	
.meta .social-tools{
	float: right;
}


/* ==========================================================================
   Filters
   ========================================================================== */

.filter{
	padding: 10px 20px;
	border: none;
    background: #216093;
    color: #fff;
}
.filter a {color:#fff;}
.filter .btn {color:#fff; border:2px solid #fff;     margin-top: 14px;}

.filter label {font-size:13px; display:block;}

.filter-options{
	float: left;
}

.filter-actions{
	float: right;
}

/* Pagination
   ========================================================================== */

.paging {
	padding: 20px 0;
}

.paging-results {
	float: left;
}

.paging-list {
	float: right;
}

.paging-list ul {
	display: block;
	padding: 0;
	margin: 0;
}

.paging-list li{
	display: block;
	padding: 0;
	margin: 0;
	border: 1px solid #002B40;
	border-left-width: 0;
	float: left;
}

.paging-list li:first-child{
	border-left-width: 1px;
}

.paging-list li a,
.paging-list li span {
	display: block;
	min-width: 30px;
	padding: 2px 5px;
	text-align: center;
}

.paging-list li a {
	/* Link State */
}

.paging-list li span {
	/* Current Page State */
}

.paging-list li.disabled {
	display: none;
}

.paging-list li.disabled+li {
	border-left-width: 1px;
}

.paging-list li.disabled+.all {
	border-left-width: 0;
}


/* pagination and filters */

.filters {float:left; display:inline; margin:0 0 5px 0;}
.filters .filterList {float:left; display:inline; margin-bottom:5px;}
.filters label { display:inline; margin:0 5px 0 0; font-weight:bold; font-size:0.8em; }
.filters .sortList {float:left; display:inline;  padding:3px 10px 0;}
.filters .sortList label {margin:0 5px 0 0;}
.filters select {margin-right:10px;}


.filters .sortList .last {border-right:0;}
.filters .sortItem {display:inline; margin:0; padding:2px 4px; font-size:0.8em; border-right:1px solid #999999;}
.filters .sortItem a, .filters .sortItem a:link, .filters .sortItem a:visited {padding-right:12px; text-decoration:none; background:url(/cms/images/layout/arrow_sortorder.gif) no-repeat 100% 2px;}
.filters .sortItem a.down, .filters .sortItem a.down:link, .filters .sortItem a.down:visited {font-weight:bold; background-position:100% -18px;}
.filters .sortItem a.up, .filters .sortItem a.up:link, .filters .sortItem a.up:visited {font-weight:bold; background-position:100% -38px;}

.pagination {float:right; width:400px; margin:0 0 10px 0; text-align:right;}
.pagination .view {float:right; display:inline; padding:0 0 0 10px;}
.pagination .view a,.pagination .view a:link, .pagination .view a:visited { display:inline-block; text-decoration:none; padding:2px 6px;}
.pagination .paging {float:right; display:inline; padding:0 10px; border-right:1px solid #999999;}
.pagination .paging a,.pagination .paging a:link,.pagination .paging a:visited {float:left; display:inline; margin:0 3px; padding:2px 6px; text-align:center; text-decoration:none; }
.pagination .paging .active {float:left; display:inline; margin:0 4px; padding:2px 6px; text-align:center; color:#000; background-color:#d2d2d2; text-decoration:none; border:1px solid #969696;}
.pagination .paging .total { float:left; display:block; padding-top:2px; color:#999999;}
.pagination a.arrowRight,.pagination a.arrowRight:link,.pagination a.arrowRight:visited {float:left; display:inline; background:url(/cms/images/layout/arrow_right_gray.gif) no-repeat 50% 50%; text-indent:-9999em;}
.pagination a.arrowLeft,.pagination a.arrowLeft:link,.pagination a.arrowLeft:visited {float:left; display:inline; background:url(/cms/images/layout/arrow_left_gray.gif) no-repeat 50% 50%; text-indent:-9999em;}



/* ==============================================================
   GLOBAL STYLES
   ============================================================== */
.alert {
	overflow:hidden;
	border: 1px solid #ff6666;
	margin: 1em 0;
	padding: 10px;
	min-height: 50px;
	color: #fff;
	background-color: #ff0000;}
.alertSign {float:left;}
.alertItem {padding:10px 0; margin:0 0 0 50px;}
.alert a, .alert .date {color:#fff;}

.bdr        { border:1px solid #ccc; padding:1px; }
.bdrTop     { border-top:1px solid #999; }
.bdrRight   { border-right:1px solid #999; }
.bdrBottom  { border-bottom:1px solid #999; }
.bdrLeft    { border-left:1px solid #999; }

.bdrDash        { border:1px dashed #555244; }
.bdrDashTop     { border-top:1px dashed #999; }
.bdrDashRight   { border-right:1px dashed #999; }
.bdrDashBottom  { border-bottom:1px dashed #999; }
.bdrDashLeft    { border-left:1px dashed #999; }

.alternate	{background-color: rgba(0,0,0,0.03);}
.row		{background-color: #ffffff;}


/* ##  Error Markers  ## */

.fieldlbl {padding:4px 2px 0 0; text-align:right;}
.field {padding-left:2px;}
.fieldpad {padding-bottom:2px;}

.fieldtext {color:#000000;}
.fielderror {color:#cc0000;}
.fieldnorm {width:16px; height:20px;}
.fieldreq {width:16px; height:20px; background:transparent url(/cms/images/global/field-req.gif) no-repeat center right;}
 span.fieldreq {padding:0 6px; background-position:center center;}
 span.fieldnorm {padding:0 6px; background-position:center center;}
.fieldred {width:16px; height:20px; background:transparent url(/cms/images/global/field-error.gif) no-repeat center right;}
 span.fieldred {padding:0 6px; background-position:center center;}


/* ##  Tooltip Classes  ## */

.toolTipWrpr {display:none;width:340px;z-index:99;}
.toolTipShadow {background: url(/cms/images/core/tooltipbacktop.png) no-repeat top left;padding: 10px 13px 1px 13px;color:#666666;}
.toolTopShadowBottom {background: url(/cms/images/core/tooltipbackbottom.png) no-repeat top left;width:340px;height:16px;}
.toolTipDate {font-size:11px;color:#999999;font-weight:bold;}
.toolTipName {font-size:14px;color:#666666;font-weight:bold;margin-bottom:14px;}


/* ##  Generic Pager  ## */

.sortStatus {float:left; font-size:15px; font-weight:600; color:#216093;}
.genericPager {float:right;}
.genericPager ul {list-style-type: none; margin:0; padding:0;}
.genericPager li {float:left; display:block; font-size:14px; font-weight: 600; margin:0 5px 5px 0; text-transform:uppercase;}
.genericPager li a {float:left; color:#216093; padding: 2px 6px; border:2px solid #7298b7; text-decoration:none; }
.genericPager li a:hover, .genericPager li a:focus { color:#fff; background-color:#3f77a3; border: 2px solid #7298b7; text-decoration:none; }
.genericPager li.nolink { color:#216093; border:2px solid #7298b7; padding:2px 4px;}
.genericPager li.active {color:#fff; border:2px solid #7298b7; padding:2px 4px; background-color:#3f77a3;}


/* ##  Smart Bug  ## */

.smartbug ul { list-style-type:none; background-color:#ccc; font-size:10px; border-left:1px solid #000; border-right:1px solid #000; border-top:1px solid #000; padding:0px; }
.smartbug li { border-bottom:1px solid #000; }
.smartbug a, .smartbug a:link, .smartbug a:visited { text-decoration:none; display:block; color:#000; padding:5px; }
.smartbug a:hover { background-color:#999; text-decoration:underline; }


/* ##  Master Overlay Styles ## */

.siteOverlay {
    display:none;
    position:relative;
    width:550px;
    max-width:95%;
    min-height:1px;
    background-color:#fff;
    z-index:1000;
    -webkit-border-radius:5px;
       -moz-border-radius:5px;
            border-radius:5px;
    -webkit-box-shadow:0 0 15px #333;
       -moz-box-shadow:0 0 15px #333;
            box-shadow:0 0 15px #333;
}
.siteOverlay .overlayBar {position:relative; padding:7px 10px; text-align:right; border-bottom:1px solid #e6e6e6;}
.siteOverlay .overlayClose {display:inline-block; cursor:pointer; z-index:5;}
.siteOverlay .overlayContent {padding:15px;}


/* =================================================================
                           MODULE STYLES
===================================================================*/

.bar {margin:10px 0 15px 0; font-size:14px; font-weight:normal;}

/* ##  Breadcrumb  ## */

.breadcrumbs a, .breadcrumbs a:visited { text-decoration:none; color:#595959;}
.breadcrumbs a:hover, .breadcrumbs a:focus, .breadcrumbs a:active { text-decoration:underline; }
.breadcrumbs span { margin:0 2px; font-weight:normal; color:#595959; }
.breadcrumbs span.icon-bracket-right { font-size:10px; margin: 0 14px; }
.breadcrumbs span:last-child { color:#216093; font-weight:bold;}


/* ##  PAGE TOOLS  ## */
/* Print and Email icons and wrapper */

.pageToolsWrapper {float:right; display:inline; text-align:right;}

.pageTool { margin:0 10px 0; font-size:0.938em; color:#686868; font-weight:normal; text-decoration:none; cursor:pointer; }

.pageToolsWrapper a {display:inline; margin-left:10px; text-decoration:none;}
.pageToolsWrapper a:hover,
.pageToolsWrapper a:active {color:#1C4E87; text-decoration:none;}

.pageToolsWrapper a.bookmark,
.pageToolsWrapper a.bookmark:link,
.pageToolsWrapper a.bookmark:visited {padding:0 0 0 18px; margin-left:7px; background-position:0 -39px;}
.pageToolsWrapper a.bookmark:hover,
.pageToolsWrapper a.bookmark:active {background-position:0 -119px;}

.pageToolsWrapper .addthis_toolbox { float:right; display:inline; }
.pageToolsWrapper .addthis_toolbox a,
.pageToolsWrapper .addthis_toolbox a:link,
.pageToolsWrapper .addthis_toolbox a:visited {background:none; padding:0; margin:0 0 0 5px; }

.addthis_toolbox { display:inline; }


/* ## Email a Friend ## */

.emailFriendWrapper {}
.emailFriendWrapper .inner { padding:10px; }
.emailFriendWrapper .emailFriendSender { margin:10px 0 20px; border-bottom:1px dashed #ccc; }
.emailFriendWrapper .emailFriendAdditional { margin:10px 0 0; padding:20px 0 0; border-top:1px dashed #ccc; }

/* =================================================================
                        THIRD PARTY STYLES
===================================================================*/



/* =================================================================
                        PRINT STYLES
===================================================================*/

.hd  {padding:10px; border-bottom:3px solid #ccc; margin:0 0 10px 0;}
.ftr {padding:10px; border-top:3px solid #ccc; font-size:11px; text-align:center;}

.printBody {margin:0; padding:0; color:#333; background:#fff; width:100%;}
.printWrpr {width:660px; text-align:left; margin:0 auto; z-index:1;}

.emailBody {margin:0; padding:0; background:#fff; width:100%;}
.emailWrpr {width:680px; text-align:left; margin:0 auto; z-index:1;}

@media print {
	* { background: transparent !important; color: #000 !important; box-shadow:none !important; text-shadow: none !important; }
	a, a:visited { text-decoration: underline; }
	abbr[title]:after { content: " (" attr(title) ")"; }
	.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }
	pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
	thead { display: table-header-group; }
	tr, img { page-break-inside: avoid; }
	img { max-width: 100% !important; }
	@page { margin: 0.5cm; }
	p, h2, h3 { orphans: 3; widows: 3; }
	h2, h3 { page-break-after: avoid; }
}

/* ## Button Styles ## */
/*
    <span class="btnWrapper"><input class="btn" value="Submit" /></span>
	or
	<a href="#" class="btnWrapper"><span class="btn">Submit</a></a>
*/

.btnWrapper { display:inline-block; text-decoration:none !important; }
.btn { white-space: normal; display:inline-block; margin:2px 0; padding:5px 30px; font-size:17px; font-weight:600; color:#216093; background:none; border:2px solid #497ca5; text-align:center; text-decoration:none !important; cursor:pointer; overflow:visible; text-transform:uppercase;
-webkit-transition: all 0.5s ease;
   -moz-transition: all 0.5s ease;
     -o-transition: all 0.5s ease;
        transition: all 0.5s ease;
 }
.btn:hover, .btn:focus {background:#216093; color:#fff; border:2px solid #fff;}

.btnLarge .btn {padding:5px 10px; font-size:1.4em;}

.btnFullWidth {display:block;}
.btnFullWidth .btn {display:block; padding-left:0; padding-right:0; }
.btnFullWidth input.btn { width:100%; }

/* ## modifier for icon fonts (IcoMoon) embedded within button wrapper ## */

.btnWrapper [class^="icon-"] { margin:0 3px; font-size:0.7em; }

/* ## Site Icons ## */

.iconImage { position:relative; display:inline-block; bottom:1px; width:10px; height:10px;  vertical-align:middle; text-indent:-9999em; background:url(/cms/images/layout/icons_default.png) no-repeat 0 0; overflow:hidden; }
.iconCart { width:22px; height:22px; background-position:0 0; }
.iconRefresh { width:22px; height:22px; background-position:0 -27px; }
.iconContinueArrow { width:22px; height:16px; background-position:0 -57px; }
.iconCheckbox { width: 18px; height: 14px; background-position: -23px -112px; }
.iconXSquareRed { width: 12px; height: 12px; background-position: 0 -112px; }
.iconSearch { width: 14px; height: 14px; background-position: -55px 0; }
.iconQuestion { width: 22px; height: 22px; background-position: 0 -75px; }


/* ## truncate styling ## */

.truncateLink {}
.truncateLink a, .truncateLink a:link, .truncateLink a:visited { margin-left:5px; }
.truncateLink a.truncateMore, .truncateLink a.truncateMore:link, .truncateLink a.truncateMore:visited {}
.truncateLink a.truncateLess, .truncateLink a.truncateLess:link, .truncateLink a.truncateLess:visited {}

 
/* ## footer ## */
.footer-wrpr {background:#384047; color:#fff; padding: 65px 0 0px 0;  overflow: hidden;}
.footer-wrpr a {color:#fff;}

footer {position:relative; padding-bottom:40px; }
footer > p {margin:0;}
footer > p > img, footer > img {position:absolute; bottom:25px; right:-60px;}
footer .btn {color:#fff !important; border:2px solid #fff !important;}

.ftr-top { padding-bottom: 50px; line-height:1.8em;}
.ftr-top p {margin: 0 0 1.8em 0;}

.ftr-address { padding: 10px 0;   margin-bottom: 35px; border-top:1px solid #747474; border-bottom:1px solid #747474;}
.ftr-address a { padding: 10px; display: inline-block;}
.ftr-address a.icon-linkedin2 {background: #d2d2d4; color:#4c535a; }
.ftr-address a.icon-linkedin2:hover {background: #fff; text-decoration:none; }

.ftr-address > div:first-child {float:left; max-width: 20%; padding: 0 10px;}
.ftr-address > div:last-child {float:right; max-width: 80%; padding: 10px; font-size: 15px; font-weight:300;}

.ftr-links {font-size:14px; line-height: 1.8em;}
.ftr-links h3, .ftr-links .links-main a {font-size:17px; font-weight:600; margin-bottom:10px; display:block;}
.ftr-links ul {list-style:none; margin: 0; padding:0;}

.copyright {font-size:14px; line-height: 1.8em; }
.copyright > div {margin:1rem 0;}
@media only screen and (min-width:48em){
	.copyright > div {margin:0 0 60px 0;}	
}
.copyright > p {margin-bottom:0;}

.welcomeMessage {position:absolute; bottom:5px; right:0; width:50%; padding:20px; font-size:12px; background-color:#ECF1F8; border:1px solid #9BAAB7;}
.welcomeMessage .iconClose {position:absolute; top:3px; right:3px; width:13px; height:13px; background:url(/cms/images/layout/icon_x.gif) no-repeat 0 0; cursor:pointer;}

.sub-footer { padding:15px 0; background:#30373b; color:#94a5b3;}
.sub-footer a { color:#94a5b3;}
.sub-footer .grid_12 > a { float:left; line-height:2em; display:block;}
.sub-footer .grid_12 > div { float:right;  line-height:2em; font-size: 13px; margin-top: 6px;}
.ftr-links h3 > span {display:none;}



/* ## Footer Email Signup ## */

.emailSignup {margin:0 0 15px;}
.emailSignup p { margin:0 0 2px 0; }
.emailSignup .imgLabel {float:left; margin:5px 7px 0 0;}
.emailSignup .text {float:left; width:165px; margin:0 5px 0 0;}


/* ## Footer Social Follow ## */

.social-icons a {font-size:2em; text-decoration:none; display:inline-block; margin:0 3px;}
.social-icons a:hover,
.social-icons a:focus {color:#000; text-decoration:none; }


/* ## Table Wrapper to allow for overflow/scroll on smaller screens ## */
.tableWrapper { overflow:auto; }
table.dataTbl {
	widtH:100%;
	display: table;
	border-collapse:collapse;
	margin-bottom:20px;}
table.dataTbl th {background:#478c26; padding:6px 15px; font-size:1em; border:1px solid #478c26; border-bottom:2px solid #fdd539; color:#fff;}
table.dataTbl th a {color:#fff; text-decoration:underline;}
table.dataTbl td {vertical-align:top; padding:6px 15px; border:1px solid #E1E1E1;}
table.dataTbl td td {border-style:none;}

/* ## NEW Limit Text Box ## */

.limitTextBox {}
.limitTextBox span { display:none; }
.limitTextBoxBar { width:100%; margin:0px 0 15px 0; }
.limitTextBoxBarWrpr {
	width:100%;
	border:0px solid #000;
	overflow:hidden;
	font-size:9px;
	color:#000;
	white-space:nowrap;
	height:5px;
	background-color:#FDFBBE;}
.limitTextBoxBarInner { width:0%; background-color:#FF0000; }
.limitTextBoxInputWrpr { display:table-cell; width:100%; vertical-align:top; }
.limitTextBoxInputWrpr textarea { box-sizing:border-box; vertical-align:top; }
.limitTextBoxSpellWrpr { display:table-cell; padding-left:5px; vertical-align:top; }
.limitTextBoxSpellWrpr img { max-width:16px !important; cursor: pointer; }

.vd {padding:0 5px;}
.topOfPage {text-align:right;}
.topOfPage a {background:transparent url(/cms/images/arrow.gif) no-repeat 100% 50%; padding-right:13px;}

.figure-right {display:table; max-width:100%; float:right; margin:0 0 15px 20px;  border-top:3px solid #000; border-bottom:3px solid #000; padding:5px 0;}
.figure-left  {display:table; max-width:100%; float:left; margin:0 20px 15px 0; border-top:3px solid #000; border-bottom:3px solid #000; padding:5px 0;}
.figure-right figcaption,
.figure-left figcaption {margin-top:5px; display:table-caption; caption-side:bottom; font-size:0.9em;}

.figure-right img,
.figure-left img {
    display: block;
    width: 100%;}

/* Projects in the Rail */
.corlnav .filter, .corlnav .paging, .corlnav .itemList .content p, .corlnav .btnWrapper, .corlnav .aside, .corlnav .item .content h4 {display:none;}
.corlnav .railNavHeading { display:block !important;}
.corlnav .itemList {background: #216093;}
.corlnav .item { background: #216093; margin-bottom: 0; padding: 0 20px 0px 20px;}
.corlnav .item > div { border-bottom: 1px solid #d3dfe9;     padding: 10px 0;}
.corlnav .item:last-child > div { border-bottom: none;}
.corlnav .item .content h2 {font-size: 14px; font-weight: normal;}
.corlnav .item a { color:#fff;}
.corlnav .item > div:hover { background: #3c73a0 !important;  text-decoration: none;}
.corlnav .item a:hover { background: #3c73a0 !important;  text-decoration: none;}
	
/* =================================================================
                        Media Queries
===================================================================*/

.mobile-items {display:none;  background: #f1f1f2; padding: 20px 10px;  margin-top: 20px;}

/* MOBILE */
@media only screen and (max-width:767px) {
	.headerWrpr { padding: 10px 0;}

	.siteHeader a.sitelogo,
	.siteHeader a.sitelogo:link,
	.siteHeader a.sitelogo:visited {float:none; display:block; width:100%; text-align:center;}	

	.pageTools {display:none;}
	
	.mobile-hidden {display: none !important;}
	
	.cm-js-menu-active .mobile-items {display:block;}
	
	.callout-item {margin-bottom: 20px;}
	
	.items-list {margin:0 -10px;}
	.items-list li {width:50%;}
	.items-list li:nth-child(2n+1) {clear:left;}
	.items-list li:nth-child(3n+1) {clear:none;}
	
	footer > img, footer > p {display:none; }
	.ftr-address > div {float:none !important; max-width: 100% !important; line-height: 1.8em;}
	.ftr-links .hidden-content {display: none;}
	.ftr-links .view-more-trigger {position:relative; cursor:pointer;}
	.ftr-links .view-more-trigger:after {
		content: " ";
		display: inline-block;
		position: absolute;
		top: 10px;
		right: 10px;
		vertical-align: middle;
		border: 6px solid transparent;
		border: 6px solid rgba(0,0,0,0);
		border-left-color: #fff;
		-wekbit-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
		-webkit-transform: scale(0.98) translate(50%, 0);
		-ms-transform: scale(0.98) translate(50%, 0);
		transform: scale(0.98) translate(50%, 0);
	}
	.ftr-links .collapsed-content-opened .view-more-trigger:after {
		-webkit-transform: rotate(90deg);
		   -moz-transform: rotate(90deg);
			-ms-transform: rotate(90deg);
			 -o-transform: rotate(90deg);
	}
	.ftr-links h3 > span.view-more-trigger {display:block;}
	
	.sub-footer .grid_12 > a,
	.sub-footer .grid_12 > div { float:none; text-align:center;}
}
@media only screen and (max-width:639px) {
	.ftr-address > div:last-child span, .ftr-address > div:last-child strong {display:block;}
	.ftr-address > div:last-child span.devider {display:none;}
	.article > .aside {float: none;}
	
	.careersSearchTable > div { width:100% !important; display:block; text-align:left !important;}
	.careersSearchTable .reset {position:static;}
	.careers-results .a-left, .careers-results .a-right  { float:none; display:block; width: 100%; text-align:left;}
	
	.aside { display: block;  padding: 0 20px 20px 0;}
}
@media only screen and (max-width:479px) {
	.items-list li {width:100%;}
}


/* 16px baseline (768px +) */
@media only screen and (min-width:768px){	
	.desktop-hidden {display: none !important;}
	.ftr-links h3 > span.mob-hide {display: block;}
	
	.extraNavWrpr { padding: 3px 0;}
}

/* TABLETS */
@media only screen and (min-width:768px) and (max-width:1200px){	
	.callout-item .callout-text {margin-top:-80px; margin-left:-80px; width:160px; height:160px;}
	footer > img, footer > p {display:none; }
	
	.modHead a {position:static;}
	.modHead .hdng, .modHead h3 {padding-right: 20px; margin-bottom:0px;}
}
@media only screen and (min-width:768px) and (max-width:900px){	
	.callout-item .callout-text {margin-top:-60px; margin-left:-60px; width:120px; height:120px;}
	.extraNavWrpr .grid_12 > span, .extraNav > div > span { margin-left: 25px;}
	.siteHeader > div:first-child {width: 12%;}
	.siteHeader > div:last-child {width: 22%;}
	.siteHeader .icon-linkedin2, .siteHeader .careers-btn { font-size: 15px;}
	
	.items-list {margin:0 -10px;}
	.items-list li {width:50%;}
	.items-list li:nth-child(2n+1) {clear:left;}	
	.items-list li:nth-child(3n+1) {clear:none;}	
	
	.ftr-links {font-size: 13px;}
	.ftr-links h3, .ftr-links .links-main a {font-size: 15px;}
	.copyright { font-size: 12px;}
	.copyright a { display: block;}
	.copyright > span { display: none;}
	
	.careers-rail { padding-left:20px; padding-right:20px; }
	.careers-rail .btn { padding: 5px 5px; }
	.careers-rail h3 { font-size:18px; line-height: 26px; border-bottom: 1px solid #fff; padding-bottom: 0.8em; }
	.careers-rail h3 span { font-size:30px; display:block; }
	.careers-rail p { line-height: 22px;  margin-bottom: 15px; }
	
}

/* DESKTOP */
@media only screen and (min-width:1200px){
	h1 {font-size: 45px; }
}

.sitemap td {
	display:block;
	vertical-align:top;
}

@media only screen and (min-width:30em){
	.sitemap td {
		display:table-cell;
	}
}