/* CLIENT NAME */

/* BASIC ELEMENTS
------------------------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, caption { margin: 0; padding: 0; }

table, th, td { margin: 0px; }

html { min-height:100%; } /* add: margin-bottom:1px if you want scrollbar to always appear (avoids page shifting) */

body { text-align:center; font-size:12px; font-family:arial, helvetica, sans-serif; color:#333; background:#fff; }
table, th, td, input, textarea, select { font-size:12px; font-family:arial, helvetica, sans-serif; color:#666; }

a img, :link img, :visited img { border:none; }

a:link { color:#336699; text-decoration:none; }
a:visited { color:#28527b; text-decoration:none; }
a:hover, a:active { color:#153d65; text-decoration:underline; }

abbr { border-bottom:1px dotted #ccc; cursor:help; }

h2 { margin:0 0 8px; color:#ba1232; font-size:20px; line-height:20px; }
.home h2 { margin:0 0 6px; }
h3 { margin:14px 0 3px; color:#333; font-size:14px; line-height:15px; }
.home h3 { margin:0; color:#ba1232; font-size:20px; line-height:20px; }
h4 { margin:0 0 10px; }
.home h4 { margin-bottom:2px; color:#336699; font-size:11px; text-transform:uppercase; }
h5 { margin:0 0 10px; }
h6 { margin:0 0 10px; }

#skip { display:none; }

#container { margin:0 auto; width:970px; text-align:left; }

#header { position:relative; height:87px; z-index:50; }

/* NAVIGATION
------------------------------------------------------------------------------------- */
.nav { position:absolute; top:0; left:0; width:970px; height:66px; overflow:hidden; border-bottom:1px solid #dc8898; background:#fff; }
#nav { margin:0; width:767px; position:absolute; top:29px; left:203px; min-height:25px; background:url(../images/bg_nav.gif) 0 1px;}
	#nav li { position:relative; height:25px; float:left; color:#336699; list-style:none; }
	#nav li a { cursor:pointer; }
	#nav li a, #nav li div { position:relative; height:25px; display:block; text-decoration:none; font-size:14px; }
	#nav li strong { position:absolute; top:0px; left:0px; height:25px; display:block; }
	#nav li a, #nav li strong, #nav li div { background-image:url(../images/nav.gif); }

.show { border-bottom:2px solid #ba1232; }
.show #nav { margin-bottom:10px; }
.show #nav li { min-height:25px; height:auto !important; }
	
#nav li.about, #nav li.about a, #nav li.about a strong			{ background-position:0px 0px; width:126px; }
#nav li.services, #nav li.services a, #nav li.services a strong			{ background-position:-126px 0px; width:126px; }
#nav li.contracts, #nav li.contracts a, #nav li.contracts a strong	{ background-position:-252px 0px; width:126px; }
#nav li.news, #nav li.news a, #nav li.news a strong		{ background-position:-378px 0px; width:126px; }
#nav li.careers, #nav li.careers a, #nav li.careers a strong		{ background-position:-504px 0px; width:126px; }
#nav li.contact, #nav li.contact a, #nav li.contact a strong			{ background-position:-630px 0px; width:137px; }

/* HOVER STATE */
#nav li.about:hover a, #nav li.about:hover a strong, #nav li.about a:hover, #nav li.about a:hover strong			{ background-position:0px -25px; width:126px; }
#nav li.services:hover a, #nav li.services:hover a strong, #nav li.services a:hover, #nav li.services a:hover strong			{ background-position:-126px -25px; width:126px; }
#nav li.contracts:hover a, #nav li.contracts:hover a strong, #nav li.contracts a:hover, #nav li.contracts a:hover strong	{ background-position:-252px -25px; width:126px; }
#nav li.news:hover a, #nav li.news:hover a strong, #nav li.news a:hover, #nav li.news a:hover strong 		{ background-position:-378px -25px; width:126px; }
#nav li.careers:hover a, #nav li.careers:hover a strong, #nav li.careers a:hover, #nav li.careers a:hover strong		{ background-position:-504px -25px; width:126px; }
#nav li.contact:hover a, #nav li.contact:hover a strong, #nav li.contact a:hover, #nav li.contact a:hover strong			{ background-position:-630px -25px; width:137px; }

/* ON STATE */
#nav li.abouton, #nav li.abouton strong, #nav li.abouton div		{ background-position:0px -25px; width:126px; }
#nav li.serviceson, #nav li.serviceson strong, #nav li.serviceson div		{ background-position:-126px -25px; width:126px; }
#nav li.contractson, #nav li.contractson strong, #nav li.contractson div	{ background-position:-252px -25px; width:126px; }
#nav li.newson, #nav li.newson strong, #nav li.newson div	{ background-position:-378px -25px; width:126px; }
#nav li.careerson, #nav li.careerson strong, #nav li.careerson div	{ background-position:-504px -25px; width:126px; }
#nav li.contacton, #nav li.contacton strong, #nav li.contacton div		{ background-position:-630px -25px; width:137px; }

/* FIRST LEVEL DROP DOWNS */
#nav li ul { padding-top:6px; width:126px; }
#nav li li { padding:1px 0; width:126px !important; height:auto; display:none; }
#nav li li a, #nav li li strong, #nav li li div { background:none; }
.show #nav li li { min-height:3px; display:block; }
.show #nav li li a, .show #nav li li span { margin:0 0 0 5px; padding:2px 5px 3px 7px; display:block; width:104px !important; height:auto; font-size:11px; text-align:left; }
.show #nav li li a {}
.show #nav li li a:hover { background:#dbe1f2 url(../images/bg_nav_arrow.gif) no-repeat 96% 50%; }
.show #nav li li span { color:#ba1232; background:#f1d0d6 url(../images/bg_nav_arrow_on.gif) no-repeat 96% 50%; visibility:visible }

/* MAKES THE HOVER 'STICK' IN FIREFOX */
/* CLASS 'drop' MUST BE ON THE 'href', NOT THE 'li' OR IT WILL NOT WORK */
#nav ul a.drop:hover, #nav ul :hover > a.drop{ color:#041527; background:white !important; }
/**************************************************************************************************************/

#logo { position:absolute; top:0; left:0; }

#content { color:#666; line-height:18px; }
#content p { margin:0 0 10px; }

a.arrow, a.more { padding-left:7px; background:url(../images/bg_link_arrow.gif) no-repeat 0 4px; }

/* HOME PAGE
------------------------------------------------------------------------------------- */
.row { margin-bottom:30px; }
#h_feature_cont { background:#f1efef; }
#h_row { margin-bottom:23px; background:url(../images/h_row_dots.gif) repeat-y 0 0; }
.col { float:left; display:inline; }

#flashContainer { width:661px; }
#h_feature { padding:9px; width:291px; min-height:312px; }
#h_feature .btn { margin:18px 0 3px; display:block; }
#h_feature a.arrow { padding-left:14px; font-size:11px; background:url(../images/bg_link_feat_arrow.gif) no-repeat 5px 3px; }

#h_services { padding:5px 10px 5px 0; width:650px; font-size:11px; line-height:15px; }
#h_services .col { padding-right:15px; width:201px; }
#h_services div { margin-top:17px; }

#h_customers { padding:5px 10px 0 8px; width:292px; }


/* SUBPAGE
------------------------------------------------------------------------------------- */
#pagetitle { margin:0 0 5px; padding:8px 0 11px; background:#f1efef; }
#pagetitle h1 { margin-right:15px; float:right; display:inline; color:#ba1232; font-size:30px; line-height:37px; text-align:right; }

#s_content { margin-bottom:5px; background:url(../images/bg_s_content.gif) repeat-y 0 0; }
#s_content table { border-collapse:collapse; }
#s_content th { padding-bottom:2px; border-bottom:1px solid #ba1232; }
#s_content td { padding:8px 20px 8px 0; }

#sidebar { width:174px; }

#subnav { margin-top:25px; }
#subnav li { padding:0 6px; width:162px; list-style:none; font-size:11px; font-weight:bold; }
#subnav li.on { color:#ba1232; background:#f1d0d6 url(../images/bg_subnav_arrowon.gif) no-repeat 97% 6px; }
#subnav li a { margin-left:-6px; padding-left:6px; width:168px; display:block; }
#subnav li a:hover { text-decoration:none; color:#153d65; background:#dbe1f2 url(../images/bg_subnav_arrow.gif) no-repeat 97% 6px; }
#subnav ul { margin-left:-6px; width:174px; padding:6px 0 10px; background:#eef0fb; }
#subnav li li { margin-left:5px; padding:0 5px 0 4px; width:155px; color:#ba1232; font-weight:normal; background:#f1d0d6 url(../images/bg_subnav_arrowon.gif) no-repeat 96% 6px; }
#subnav li li a { margin-left:-4px; padding-left:4px; width:160px; background:#eef0fb; }
#subnav li li a:hover { text-decoration:none; color:#153D65; background:#dbe1f2 url(../images/bg_subnav_arrow.gif) no-repeat 96% 6px; }

/* Normal subpage layout w/ sidebar */
#main { padding:24px 20px 24px 40px; width:736px; min-height:100px; background:#fff; }
/* Full-width layout w/o sidebar */
#full { padding:24px 10px; width:950px; min-height:100px; background:#fff; }

#main li	{ margin: 0px 10px 5px 20px; }
#main ul	{ margin-bottom: 15px; color: #666; }

#main ol	{ margin: 0px 10px 5px 20px; }
#main ol	{ margin-bottom: 15px; color: #666; }

hr	{ margin: 10px 0px 10px 0px; height: 1px;  background-color: #ccc; border: none; border-bottom: 1px solid #ccc; }

a:link.learnMore, a:visited.learnMore	{ display: block; width: 75px; height: 18px; font-size: 12px; line-height: 18px; padding-left: 8px; margin-top: 4px; background: #fff url(../images/bg_more_arrow.gif) no-repeat 0px 7px; }
a:link.submitResume, a:visited.submitResume	{ display: block; width: 130px; height: 18px; font-size: 12px; line-height: 18px; padding-left: 8px; margin-top: 4px; background: #fff url(../images/bg_more_arrow.gif) no-repeat 0px 7px; }

table.chart		{ margin-top: 10px; }
table.chart th	{ background-color: #ba1232; color: #fff; font-size: 12px; font-weight: bold; padding: 2px 5px 2px 5px; }
table.chart td	{ background-color: #fff; border-bottom: 1px solid #ccc;  color: #666; font-size: 12px; padding: 4px 5px 4px 5px !important; }
table.chart td.last	{ background-color: #fff; border-bottom: none;  color: #666; font-size: 12px; padding: 4px 5px 4px 5px !important; }

img.teamLogos	{ float: right; margin: 0px 0px 10px 30px; }

/* Management Styles */
.management { margin:20px 0 20px -2px; }
.management div { margin: 0 0 0 2px; width:121px; float:left; display:inline; }
.management span { margin: 6px 2px 0px 5px; display: block; font-size:13px; line-height: 14px; font-weight:bold; }
.management em { margin: 3px 2px 0px 5px; display: block; color:#ba1232; font-style:italic; line-height:14px; }

img.contentPhoto	{ float: right; margin: 0px 0px 10px 20px; }


table.sitemap td	{ padding: 0px !important; }

table.navList td	{ padding-right: 10px; }

a.backTop	{ display: block; width: 58px; font-size: 10px; background: #eef0fb; padding: 2px 5px; margin-top: 10px; }
a:hover.backTop	{ color: #fff; background: #336699; text-decoration: none; }

a:link.sitemapHome, a:visited.sitemapHome	{ display: block; width: 242px; height: 40px; font-size: 12px; color: #fff; line-height: 40px; text-align: center; padding: 2px; margin-right: 2px; background: #ba1232;}
a:hover.sitemapHome	{ background: #8b061f; text-decoration: none;}

a:link.sitemapSection, a:visited.sitemapSection	{ display: block; width: 120px; height: 30px; font-size: 11px; color: #fff; line-height: 30px; text-align: center; padding: 2px; margin-right: 2px; background: #336699;}
a:hover.sitemapSection	{ background: #1c4b79; text-decoration: none;}

a:link.sitemapPage, a:visited.sitemapPage	{ display: block; width: 110px; height: 16px; font-size: 11px; line-height: 16px; text-align: center; padding: 2px; margin: 5px 0px 0px 5px; background: #eaeff5;}
a:hover.sitemapPage	{ background: #c7d3e0; text-decoration: none;}

a:link.sitemapPage2, a:visited.sitemapPage2	{ display: block; width: 110px; height: 14px; font-size: 10px; line-height: 14px; text-align: left; padding: 2px 0px 2px 10px; margin: 5px 0px 0px 5px; background: #fff;}
a:hover.sitemapPage2	{ background: #eaeff5; text-decoration: none;}


/* FOOTER
------------------------------------------------------------------------------------- */
#footer { padding-top:7px; font-size:10px; color:#999; border-top:1px solid #dc8898; }
#footer ul { float:right; display:inline; }
#footer li { margin-left:8px; padding-right:8px; float:left; display:inline; background:url(../images/bg_footer.gif) no-repeat 100% 3px; }
#footer li.last { padding-right:0; background:none; }
#footer span { padding-left:10px; background:url(../images/bg_footer_arrow.gif) no-repeat 4px 3px; }


/* sIFR
------------------------------------------------------------------------------------- */
/* THESE ARE STANDARD sIFR STYLES... DO NOT MODIFY */
.sIFR-flash { margin:0; visibility:visible !important;	}
.sIFR-replaced { visibility:visible !important; }
span.sIFR-alternate { position:absolute; left:0; top:0; width:0; height:0; display:block; overflow:hidden; }

/* HIDE ADBLOCK OBJECT TAB:THE TEXT SHOULD SHOW UP JUST FINE, NOT POORLY WITH A TAB LAID OVER IT. */
.sIFR-flash + div[adblocktab=true] { display:none !important; }

/* THESE "DECOY" STYLES ARE USED TO HIDE THE BROWSER TEXT BEFORE IT IS REPLACED... 
NEGATIVE-LETTER SPACING IS USED TO MAKE THE BROWSER TEXT METRICS MATCH UP WITH
THE sIFR TEXT METRICS SINCE THE sIFR TEXT MAY NOT ALWAYS MATCH UP. YOUR OWN
SETTINGS MAY VARY... ANY WEIRD SIZING ISSUES YOU MAY RUN INTO ARE USUALLY
FIXED BY TWEAKING THESE DECOY STYLES. BE AS SPECIFIC AS NEEDED. */
.sIFR-hasFlash h2 { visibility:hidden; margin:0 0 8px; color:#ba1232; font-size:20px; line-height:20px;}
.sIFR-hasFlash .home h2 { visibility:visible; margin:0 0 6px; }
.sIFR-hasFlash .home h3 { visibility:hidden; letter-spacing:-9px; font-size:20px; }


/* MISC. CLASSES & IDS
------------------------------------------------------------------------------------- */
.show { display:block; }
.hide { display:none; }
.clear { clear:both; }
br.clear { line-height:0px; height:0; }

.clearfix:after, .nav div:after, #nav:after, .row:after, .col:after,
#pagetitle:after  { content:"."; display:block; height:0; clear:both; visibility:hidden; }
/* PLEASE LEAVE BOTH THESE LINES, FIX FOR IE7 */
.clearfix, .nav div, #nav, .row, .col, #pagetitle { display:inline-block; }
.clearfix, .nav div, #nav, .row, .col, #pagetitle { /*\*/display:block;/**/ }

/* FIX FOR PWP RETYPE PASSWORD STYLING  */
.PWPRetypePromptText { display:block; }

/* ADD THIS CLASS TO AN ELEMENT TO FIX THE IE ITALICS BUG,
MUST BE THE INNER-MOST BLOCK-LEVEL ELEMENT THAT CONTAINS THE TEXT LIKE p, blockquote OR li
MAY REQUIRE A MORE DIRECT PATH TO THE ELEMENT */
* html .italicsfix { /*\*/overflow:hidden; o\verflow:visible; width:100%; w\idth:auto; he\ight:1%;/**/ }

.floatleft { float:left; }
.floatright { float:right; }

img.floatleft { margin:0 10px 5px 0; position:relative; }
img.floatright { margin:0 0 5px 10px; position:relative; }

.alignleft { text-align:left; }
.alignright { text-align:right; }
.aligncenter { text-align:center; }
.aligntop { vertical-align:top; }
.alignbottom { vertical-align:bottom; }

.note { color:#ba1232; font-weight:bold; }