/* Copyright 2007 Delphic Sage */

* { margin: 0; padding: 0; }

body
{
	background-repeat: repeat-y;
	background-position: 725px 0;
}

.container {}

.header, .page-title-container, .logo
{
	position: relative;
	width: 900px;
	height: 142px;
	background: transparent url(../images/header.jpg) no-repeat;
}

.logo
{
	position: absolute;
	top: 63px;
	left: 42px;
	margin: 0;
	padding: 0;
	width: 126px;
	height: 56px;
	outline: 0;
	background: none;
}

.print-logo { display: none; }

.page-title-container
{
	position: absolute;
	top: 123px;
	left: 42px;
	z-index: 110;
	width: 680px;
	height: 15px;
	background: none;
}

h1.page-title
{
	position: absolute;
	margin: 0;
	padding: 0;
	font-size: 11px;
	font-weight: normal;
	text-transform: lowercase;
	line-height: 100%;
}

.side-top, .side-bottom
{
	position: absolute;
	top: 0;
	left: 725px;
	z-index: 90;
	width: 175px;
	height: 142px;
	background-repeat: no-repeat;
}

.side-bottom
{
	top: auto;
	bottom: 0;
	z-index: 50;
	height: 146px;
}

.main
{
	width: 725px;
	height: auto!important;
	height: 354px;           /* IE 6 */
	min-height: 354px;
	background-position: right top;
	background-repeat: no-repeat;
}

.body-txt
{
	padding: 27px 0 20px 42px;
	width: 520px;
}

.page-footer, .footer-fade
{
	position: relative;
	width: 900px;
	height: 146px;
	font-size: 11px;
	font-family: verdana, san-serif;
	color: #666;
	background: transparent url(../images/footer.jpg) no-repeat;
}

.page-footer .page-footer-content a       { color: #666; text-decoration: none; }
.page-footer .page-footer-content a:hover { text-decoration: underline; }

.page-footer-content
{
	position: absolute;
	bottom: 5px;
	left: 42px;
	z-index: 75;
}

.page-footer .copyright a { color: #666; }

.breadcrumb-trail { display: none; }


/* MES: no longer hiding because bwater wanted to have the LP/Inc. suffix show up on their footers.
.associates-text, 
*/
.footer-address { display: none; }

.sidebar-image
{
	position: absolute;
	top: 142px;
	left: 688px;
	z-index: 75;
	width: 212px;
	height: 146px;
}


/* ----------------------------- =Nav ------------------------------ */

.main-nav
{
	position: absolute;
	top: 82px;
	left: 182px;
	z-index: 120;
	width: 600px;
	height: 30px;
}

.main-nav a, .main-nav img { float: left; }

.subnav, .side-subnav, .strategies-side-nav
{
	position: absolute;
	top: 218px;
	left: 595px;
	z-index: 10;
	width: 130px;
	height: 300px;
	font-size: 11px;
	line-height: 120%;
}

.subnav ul, .subnav li, .side-subnav ul, .side-subnav li, .strategies-side-nav ul, .strategies-side-nav li
{
	margin: 0;
	padding: 0;
	list-style-type:none;
	background: none;
}

.subnav li { margin: 0 0 18px 0; }
.subnav a, .side-subnav a  { text-decoration: none; }


div.strategies-side-nav   { top: 215px; left: 725px; width: 175px; text-align: center; }
.strategies-side-nav li a { display: block; margin: 0 0 10px 0; text-decoration: none; color: #fff; }


.side-subnav, .strategies-side-nav
{
	top: 202px;
	left: 749px;
}

.side-subnav li    { margin: 0 0 17px 0; }
.side-subnav .expanded-nav { margin: -15px 0 0 13px; }
.side-subnav .expanded-nav li { margin: 0 0 5px 0; }



/* ----------------------------- =Filters -------------------------------- */

.filters    { margin: 30px 0 0 30px; }
.filters ul { display: inline; margin: 0; }

.filters li
{
	display: inline;
	margin: 0;
	padding: 0;
	background-image: none;
}

ul.list-filter
{
	display: block;
	margin-left: 20px;
}

.list-filter li a
{
	display: block;
	margin: 0;
	padding: 2px 0 2px 11px;
	line-height: 1.2em;
	font-size: 11px;
	text-decoration: none;
	background: url(../images/bullet_dash.gif) no-repeat;
	background-position: -2px 3px;
}

.list ul.data-list li, .list-cols ul li
{
	display: inline;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.careers .list a      { color: #666; }
ul.data-list .current a, ul.data-list a.current { font-weight: bold; background-color: #fff; }



/* ----------------------------- =List Pages ------------------------------ */

.list
{
	overflow: auto;
	padding: 27px 0 20px 12px;
	width: 713px;
}

.list-instructions
{
	float: left;
	margin: 55px 76px 0 28px!important;  /* Real */
	margin: 55px 76px 0 13px;            /*IE 6 */
}

.list-right-col div
{
	padding: 40px 10px 10px 10px;
	text-align: center;
}

div.list-head
{
	padding: 6px 0;
	text-align: center;
	background: #bcbcbc;
}

.list-cols
{
	float: left;
}

.list-cols table
{
	height: 305px;
	min-height: 305px;
}

.list-left-col, .list-right-col
{
	padding: 0 0 20px;
	width: 151px;
	vertical-align: top;
	background: #e5e5e5;
	border: 1px solid #ccc;
}

.list-spacer-col
{
	width: 7px;
}

.list-right-col
{
	width: 195px;	
}

.list-left-col a, .list-right-col a
{
	display: block;
	padding: 3px 6px;
	text-decoration: none;	
	border-bottom: 1px solid #ccc;
}

.list-right-col .current { font-weight: bold; background-color: #fff; }

.list-left-col a:hover, .list-right-col a:hover { background: #fff; }

.list-description
{
	float: left;
	margin: 0 7px 0 0;
	width: 344px;
}

.list-description .list-head { width: 150px; }

.description-text
{
	padding: 10px 20px;
	height: auto!important; /* Real */
	height: 270px;          /* IE 6 */
	min-height: 270px;
	font-size: 11px;
	line-height: 130%;
	background: #f1f1f1;
	border: 1px solid #bcbcbc;
}

.description-text h1, .description-text h2, .description-text h3, .description-text h4, .description-text h5, .description-text h6
{
	font-size: 11px;	
}

.list .date { font-style: oblique; }

.careers a.jobs-print-description,  .careers a.jobs-send-to-friend
{
	display: block;
	position: absolute;
	top: 173px;
	left: 250px;
	padding: 0 0 0 12px;
	width: 200px;
	font-family: Arial, Sans-Serif;
	font-size: 11px;
	color: #85A639;
	background: url(../images/square_bullet.gif) 0 50% no-repeat;
}

.careers a.jobs-send-to-friend
{
	left: 167px;
}

.form-div div.school { margin: 0 0 10px; padding: 10px; background: #eee; }
.line-above { margin-top: 15px; padding-top: 5px;  border-top: 1px solid #888; }



/* ----------------------------- =Profiles ------------------------------ */


body .profiles { padding: 17px 0 20px 25px; }

.profiles-left-col, .profiles-right-col
{
	float: left;
	width: 450px;
}

.profiles-right-col
{
	margin: 0;
	width: 240px;
}

.pile
{
	margin: 25px 0 0 50px;
}


.pile img  { visibility: hidden; } /* hide thumbs until they load */

.thumbnail, .thumbnail-spacer
{
	overflow: hidden;
	float: left;
	margin: 2px 5px 2px 2px;
	width: 52px;
	height: 44px;
	background-repeat: no-repeat;
	border:1px solid #999;
}

.thumbnail div
{
	width: 52px;
	height: 44px;	
}

.thumbnail-spacer { border-color: #fff; }

.tooltip { display: none; }

#dhtmltooltip
{
	visibility: hidden;
	position: absolute;
	left: -300px;
	z-index: 1000;
	padding: 10px;
	width: 300px;
	font-size: 10px;
	background: #fff;
	border: 1px solid #000;
}

#dhtmltooltip img    { border: 1px solid #E8E8E8; }
#dhtmltooltip div strong { font-size: 1.2em; }

#dhtmlpointer
{
	visibility: hidden;
	position:absolute;
	left: -300px;
	z-index: 1001;
}

.inactive
{
	opacity: .5;
	filter: alpha(opacity=50);
}

.group-head { display: block; }

body div.profile-detail
{
	padding: 21px 0 20px 72px;
	width: 705px;
}

.profiles h2.profile-name
{
	position: absolute;
	top: 163px;
	left: 40px;
	margin: 0;
	font-size: 18px;
}

.detail-info
{
	float: left;
	margin: 0 60px 0 0;
	width: 406px;
}

.detail-info-box
{
	margin: 21px 0 0 0;
	padding: 4px;
	font-size: 10px;
	line-height: 1.4em;
	background: #F5F4F2;
	border: 1px solid #E8E8E8;	
}

.detail-info-box img
{
	float: left;
	margin: -5px 4px -5px -5px;
	border: 1px solid #E8E8E8;
}

.profile-title { font-size: 11px; }

.profile-questions
{
	float: left;
	width: 185px;
	font-size: 10px;	
}

.profile-questions .data-list a.current, .profiles .data-list a.current
{
	
	padding: 1px 0 1px 10px;
	font-weight: normal;
	background: #ECE8E5;
	border: 1px solid #DCDADB;
}

.profile-questions ul li { list-style-type: none; }

.profile-questions ul.list-filter { margin-left: 0; }

.profile-answer
{
	margin: 27px 0 0 0;
	width: 600px;
	line-height: 1.8em;
}

.profile-answer h2, .profile-questions h2 { margin: 0; font-size: 13px; }

.profile-links
{
	margin: 0 auto;
	width: 600px;
}

.prev-link, .back-link, .next-link
{
	float: left;
	padding: 25px;	
}

.job-details-for-print { display: none; }





/* ----------------------------- =Culture Slideshow ------------------------------ */


#slide_show
{
	position: absolute;
	overflow: visible;
	top: 167px;
	left: 250px;
	height: 300px;
	width: 300px;
}

.img1 { margin-bottom: -4px; }

#img-wrapper
{
	overflow: hidden;
	height: 275px;
	width: 300px;
}
.rightBar {	width: 175px; }

#controller_bar 
{
	position: absolute;
	left: 0px;
	top: 274px;
	width: 300px;
	height: 27px;
	background-color: #666;
}

.control-button
{
	display: block;
	margin: 3px;
	width: 40px;
	height: 20px;
	cursor: pointer;
	text-align: center;
	background-color: #666;
}

#controller_bar a
{
	font-size: 18px;
	font-weight: bold;
}

#paused
{
	display: none;
	position: absolute;
	top: 147px;
	left: 380px;
	z-index: 999;
	width: 316px;
	height: 290px;
	text-align: center;
	background-color: #333;
	border: 1px solid black;
}

#counter
{
	padding-right: 3px;
	font-size: 18px;
	font-weight: bold;
	color: #fff;
}




/* ----------------------------- =Misc ------------------------------------ */


.email-page
{
	display: block;
	margin: -20px 0 30px 45px;	
}


.body-text-paging
{
	padding: 0 20px 0 0;
	text-align: right;	
}

.apply-button { margin: 0 0 5px; text-align: right; }



/* ----------------------------- =Forms ------------------------------------ */

.form-div div
{
	margin: 0;
	padding: 5px 0;
}

.form-table td    { padding: 4px 0; }
.form-table td.a  { width: 100px; }
div.form-buttons  { margin: 15px 0 0; } 
/* Spacing above and below the Submit, Reset, etc. at the bottom of a form */

input, select, textbox, textarea
{
	margin: 0;
	padding: 0;
	text-transform: none;
	font-weight: normal;
	font-size: 11px;
	font-family: Verdana, Arial, Sans-Serif;
}

input.two, input.four, input.five,
input.date, input.small,
input.medium, input.large,
input.text-search, input.text-filter, input.text-contact, input.text-zip
{
	padding: 2px 0 0 3px;
	width: 80px;
	height: 15px;
	vertical-align: middle;
	font-size: 11px;
	font-family: Verdana, Arial, Sans-Serif;
	/*border: 1px solid #666;*/
}

input.two   { width: 20px; }
input.four   { width: 40px; }
input.five   { width: 50px; }
input.date   { width: 80px; }
input.small  { width: 80px; }
input.medium { width: 180px; }
input.large  { width: 330px; }

textarea, textarea.medium, textarea.large
{
	padding-left: 3px;
	width: 305px;
	height: 80px;
	font-size: 11px;
	font-family: Verdana, Arial, Sans-Serif;
	/*border: 1px solid #666;*/
}
textarea.medium {width: 400px; height: 130px; }
textarea.large { width: 400px; height: 200px; }

select.small, select.medium,
select.large, select.filter,
select.state, select.country,
select.contact, select.date-time, select.filter
{
	width: 160px;
	height: 17px;
	vertical-align: middle;
	font-size: 11px;
	font-family: Verdana, Arial, Sans-Serif;
	border: 1px solid #7f9db9;
}

select.medium    { width: 185px; }
select.large     { width: 335px; }
select.state     { width: 158px; } /* Fits side by side w/ zip in a table */
select.country   { width: 305px; }
select.date-time { width: 60px; }

select.combo-box       { width: 220px; }
select.combo-box-small { width: 180px; }
select.combo-box-large { width: 330px; }

.large-button, .small-button
{
	padding: 2px;
	vertical-align: middle;
	font-size: 11px;
	font-family: Verdana, Arial, Sans-Serif;
}

.small-button
{
	margin: 0;
	padding: 0 3px;
	font-size: 10.5px;
}

input.text-search  { width: 166px; }
input.text-filter  { width: 170px; margin-top: 5px;}
input.text-login   { width: 150px; }
input.text-contact { width: 300px; }
input.text-zip     { width: 130px; } /* Fits side by side w/ state in a table */

.textbox-contact   { width: 305px; height: 100px; }
select.contact     { width: 305px; }
select.filter      { width: 170px; font-size: 10px; }




/* ------------------------------ =Messages ------------------------------- */


div.msg-negative, div.msg-positive, div.msg-neutral
{
	margin: 5px 0 10px 0;
	padding: 10px; 
	color: #b30006;
	background-color: #fed;
}

div.msg-positive { color: #196d17; background-color: #dcffdb; }
div.msg-neutral  { color: #666600; background-color: #ffc; }

.validation-summary
{
	margin: 5px 0 10px 0;
	padding: 10px;
	font-size: 11px;
	color: #f00;
	background-color: #fed;
}

.validation-summary ul, .validation-summary ul li
{
	margin: 0;
	padding: 0;
	color: #f00;
}

.validation-summary ul li
{
	margin: 2px 0 2px 20px;
	list-style-type: square;
	background-image: none;	
}

.failed-validation { color: #f00; }

.hide { display: none; }


/* ----------------------------- =Clear ------------------------------------- */
/* this class makes floats streach to the footer */
.clear
{
	margin: 0;
	padding: 0;
	font-size: 0;
	clear: both;
}



/* ----------------------------- =Sections ------------------------------------- */

.our-company                 { background-image: url(../images/body_our_company.gif); }
.our-company .side-top       { background-image: url(../images/side_top_our_company.jpg); }
.our-company .side-bottom    { background-image: url(../images/side_bottom_our_company.jpg); }
.our-company .page-title     { color: #b1a42f; }
.our-company .subnav         { width: 92px; }

.culture-slideshow .body-txt { width: 190px; }

.philosophy                  { background-image: url(../images/body_philosophy.gif); }
.philosophy .side-top        { background-image: url(../images/side_top_philosophy.jpg); }
.philosophy .side-bottom     { background-image: url(../images/side_bottom_philosophy.jpg); }
.philosophy .page-title      { color: #3366cc; }
.philosophy .body-txt        { width: 574px; }

.strategies                  { background-image: url(../images/body_strategies.gif); }
.strategies .side-top        { background-image: url(../images/side_top_strategies.jpg); }
.strategies .side-bottom     { background-image: url(../images/side_bottom_strategies.jpg); }
.strategies .page-title      { color: #d6883c; }

.careers                     { background-image: url(../images/body_careers.gif); }
.careers .side-top           { background-image: url(../images/side_top_careers.jpg); }
.careers .side-bottom        { background-image: url(../images/side_bottom_careers.jpg); }
.careers .page-title         { color: #7a9835; }
.careers .body-txt           { padding-bottom: 0; width: 345px; }
.careers .wide .body-txt     { width: 574px; }
.careers a                   { color: #85A639; text-decoration: none; }
.careers a:hover             { color: #929292; }
.careers .side-subnav a      { color: #666; }
.careers .note				 { color: #CC0000; font-weight: bold; }

.client-access               { background-image: url(../images/body_client_access.gif); }
.client-access .side-top     { background-image: url(../images/side_top_client_access.jpg); }
.client-access .side-bottom  { background-image: url(../images/side_bottom_client_access.jpg); }
.client-access .page-title   { color: #4da8c7; }
.client-access .body-txt     { width: 574px; }

body.contact                  { background-image: url(../images/body_contact.gif); }
.contact .side-top           { background-image: url(../images/side_top_contact.jpg); }
.contact .side-bottom        { background-image: url(../images/side_bottom_contact.jpg); }
.contact .page-title         { color: #d5503f; }
.contact .body-txt           { width: 630px; }
.contact .body-txt a         { color: #D5503E; text-decoration: none; }

/*---------------------------- =MoDal --------------------------------------*/
.modal-overlay
{
	position:fixed;
	top:0;
	right:0;
	bottom:0;
	left:0;
	height:100%;
	width:100%;
	margin:0;
	padding:0;
	background:#000;
	opacity:.3;
	filter: alpha(opacity=30);
	-moz-opacity: 0.3;
	z-index:121;
}

* html .modal-overlay
{   
	position: absolute;
	height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
}
.modal-window
{
	position:fixed;
	top:50%;
	left:50%;
	margin:0;
	padding: 20px 0 0;
	z-index:122;
	background: url(../images/bkg_email_top.gif) no-repeat;
}
.modal-bottom	
{
    display: block;
    width: 473px;
    height: 20px;
    background: url(../images/bkg_email_bottom.gif) no-repeat;
}
* html .modal-window
{
	position:absolute;
	top: expression(( (ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop)) + 'px'); 
	right: expression(( (ignoreMe2 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft)) + 'px');
}
.close-window
{
	position:absolute;
	display: block;
	width: 14px;
	height: 14px;
	right: 50px;
	top: 40px;
	background: url('../images/btn_email_close.jpg') no-repeat 0 0;
	text-indent:-99999px;
	overflow:hidden;
	cursor:pointer;
	border: none;
}

* html .modal-overlay
{
	position: absolute;
	height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
}

* html .modal-window
{
	position:absolute;
}

.send-to-a-friend label         { color: #767676; }
.form-div div.page-url          { padding: 10px 15px; font-size: 11px; }
.send-to-a-friend input         { width: 370px; height: 17px; padding-top: 2px; background: #fff; border: 1px solid #acb2b8; }
.send-to-a-friend .medium       { width: 370px; height: 75px; border: 1px solid #acb2b8; background: #fff; }
.send-to-a-friend .large-button 
{ 
    display: block;
    width: 84px;
    height: 24px;
    text-indent: -9999px;
    cursor: pointer;
    background: url('../images/btn_send_email.jpg') no-repeat 0 0;
    border: none;
}

/* ----------------------------- =Sifr ------------------------------------- */

/* These are standard sIFR styles... do not modify */

.sIFR-flash         { visibility: visible !important; margin: 0; }
.sIFR-replaced      { visibility: visible !important; }
span.sIFR-alternate { position: absolute; left: 0; top: 0; width: 0; height: 0; display: block; overflow: hidden; }

/* "decoy" styles*/

.sIFR-hasFlash h1.page-title
{
	visibility: hidden;
	font-size: 15px;
}

.sIFR-hasFlash .side-subnav .expanded-nav { margin: -20px 0 0 13px; }
.sIFR-hasFlash .side-subnav .expanded-nav li { margin: 0 0 4px 0; }

.sIFR-hasFlash .subnav li, .sIFR-hasFlash .side-subnav li
{
	visibility: hidden;
	padding: 0;
	font-size: 10px;
	line-height: 1.3em;
}

/* -------------------------- =autocomplete --------------------------- */

.ac_results {
	padding: 0px;
	border: 1px solid black;
	background-color: white;
	overflow: hidden;
	z-index: 99999;
}

.ac_results ul {
	width: 100%;
	list-style-position: outside;
	list-style: none;
	padding: 0;
	margin: 0;
}

.ac_results li {
	margin: 0px;
	padding: 2px 5px;
	cursor: default;
	display: block;
	/* 
	if width will be 100% horizontal scrollbar will apear 
	when scroll mode will be used
	*/
	/*width: 100%;*/
	font: menu;
	font-size: 12px;
	/* 
	it is very important, if line-height not setted or setted 
	in relative units scroll will be broken in firefox
	*/
	line-height: 16px;
	overflow: hidden;
}

.ac_loading {
	background: white url('indicator.gif') right center no-repeat;
}

.ac_odd {
	background-color: #eee;
}

.ac_over {
	background-color: #0A246A;
	color: white;
}

