/* set defaults */
html, body {
	min-height:100%;
	background: #B5BBBF; 
}
body {
	position:relative;
	font-family: arial, helvetica, verdana, trebuchet, sans-serif;
	font-size: 62.5%;
	margin: 0;
	padding: 0;
	color: #455560;
	text-align: center;
}
form * {font-family: arial, helvetica, verdana, trebuchet, sans-serif;}
* { 
	font-size: 1em; 
}
div, form{
	margin:0;
	padding:0;
}
h1, h2, h3, h4, h5, h6, p, ul, ol, dl, li, dt, dd  {
	margin:0;
	padding:0;
}
h1, h2, h3, h4, h5, h6, p{
	line-height: 1.5em;
	padding: 0 0 .2em 0;
}	
p, ul, ol, dl { 
	padding: 0 0 1em 0;  
} 
ul, ol, dl, li, dt, dd {
	line-height:1em;
	list-style: none;
}
li, dt, dd {
	line-height: 1.5em;
	font-size: 1.2em;
	margin:0;
}
li li, li dt ,li dd,
dt li, dt dt ,dt dd,
dd li, dd dt ,dd dd, dd p {
	font-size: 1em;
	padding:0;
}

h1{
	font-size: 1.4em;
	text-transform:uppercase;
}
h2{
	font-size: 1.3em;
}
h3 {
	font-size: 1.3em;
}
h4 {
	font-size: 1.2em;
}
h5 {
	font-size: 1.2em;
}
h6 {
	font-size: 1.2em;
}
p{
	font-size: 1.2em;
}
input, label, legend, td, th{
	margin:0;
	padding:0;
	font-size: 1.1em;
}
label, legend, th {
	font-weight:bold;
}



a {
	color:#8C8C8C;
	text-decoration: none;
}
a:hover {
}
	#header a, #menu a{
		text-decoration:none;
	}
	#header a:hover, #menu a:hover{
		text-decoration:none;
		
	}
	a.skiplink {
		position:absolute;
		left:-20000em;
		font-size:8px;
	}
	
/*	a:active
{
  outline: none;
  overflow: hidden; 
}*/


/* here be dragons! - invalid code, but it stopped the dotted active borders in FF 

:focus
{
  -moz-outline-style: none;
}

/* dragon's gone */





img, a img {
	vertical-align:text-top;
	border: none;
}		



/* boxes */
#wrapper{
	width:768px;
	border:2px solid #fff;
	border-top:0px;
	margin: 0px auto;
	text-align: center;
	background: #3F3F3F url(../images/bgs/wrapper.jpg) 0px 0px repeat-x; 
}
	
#header, #footer {
	width:768px;
	text-align:left;
	position:relative;
}
#header {
	z-index:100;
	height:110px;
}
#footer {
	z-index:1;
	clear:both;
	text-align:center;
}
#content {
	position:relative;
	float:left;
	display:inline;
	z-index:50;
	width:751px;
	padding:122px 0 0 17px;
	text-align:left;
	margin-bottom:30px;
	background:  url(../images/bgs/content.jpg) 0px 0px no-repeat; 
}
	.profile #content {background:  url(../images/bgs/content/profile.jpg) 0px 0px no-repeat; }
	.staff #content {background:  url(../images/bgs/content/people.jpg) 0px 0px no-repeat; }
	.services #content {background:  url(../images/bgs/content/services.jpg) 0px 0px no-repeat; }
	/*.auto #content {background:  url(../images/bgs/content/services-auto.jpg) 0px 0px no-repeat; }
	.engineering #content {background:  url(../images/bgs/content/services-eng.jpg) 0px 0px no-repeat; }*/
	.products #content {background:  url(../images/bgs/content/products.jpg) 0px 0px no-repeat; }
	.contact #content {background:  url(../images/bgs/content/contact.jpg) 0px 0px no-repeat; }



/* BASE FORMS */
		form{ width:364px; padding:0 0 1.5em 0;}
		form input,
		form select,
		form textarea,
		form fieldset{
			font-size: 1.1em;
			margin:0;
			padding:2px;
			background:#fff;
			border:1px solid #A2AAAF;
			font-family: arial, helvetica, verdana, trebuchet, sans-serif;
		} 
		form input{ width:200px; }
		form select {width:auto;}
		form textarea{ 
			height: 60px;
			width:220px;
		} 
		form fieldset{ 
			clear:both;
			background:#fff;
			padding:5px 10px;
			width: 340px; 
			margin:0 0 .5em 0; 
		} 
		form label, 
		form legend {
			color:#000;
			font-size: 1.2em;
			font-weight:bold;
		}
		form label{
			float:left;
			width:100px; 
			margin:2px 0;
		}
		form fieldset label{ 
			width:90px; 
		} 
	
		form .row,
		form ul.multi{
			width:364px; 
			float:left;
			padding:2px 0;
		}
		form fieldset .row,
		form fieldset ul.multi{
			width:330px; 
		}
	
		form .loginbutton,
		form .submitbutton,
		form input#submitbutton{ 
			color:#BB1B4F;
			margin:3px 0 0 100px; 
			width:auto; 
			font-weight:bold;
			cursor:pointer;
			background:#BEC3C7;
		}
		form input.gobutton,
		form input.loginbutton{
			width:auto;
			padding:0;
			background:none;
			border:0px solid #DA1105 ;
			vertical-align: bottom;
	}
		form h2.warning{ font-size:1.6em;color:#DE041D; }
		form .inputError{ margin:6px 0 0 3px;line-height:1em;font-size:11px;color:#DE041D; }




/* header stuff */

	#header h1.logo{	
		position:absolute;
		padding:30px 0 0 30px;
	}
	#header #loginBox{	
		right:0;
		position:absolute;
		text-align:right;
		height:20px;
		padding: 3px 10px 3px 25px;
		background: #A2AAAF url(../images/bgs/login-bg.gif) left bottom no-repeat;
		z-index:100;
	}
	
	#header #loginBox h2{
		padding:0;
		font-weight:normal;
		line-height:1em;
		font-size: .9em;
	}
	#header #loginBox h2 a{
		color:#e8e9ed;
	}
	#header #loginBox img{
		margin-top:-1px;
		vertical-align:middle;
	}


/* menu & userpanel styles */
	#menu {
		position:absolute;
		top:59px;
		margin-left:310px;
	}
	#mainNav{
		position:relative;
		z-index:0;
	}

	#mainNav li {
		font-size:1em;
		float:left;
		display:inline;
		position:relative;
		text-transform:uppercase;
		padding:0px 12px 8px 12px;
		color:#fff;
	}
	#mainNav li a,
	#mainNav li.active li a {
		color:#fff;
	}
	#mainNav li a:hover,
	#mainNav li.active li a:hover{
		color:#939BA2;
	}

	#mainNav li.active a{ color:#FFFF00; }


	#mainNav ul.menuTree {/* second-level lists */
		position:absolute;
		text-align:left;
		width: 100px;
		top:16px;
		background:#CFD4D8;
		padding: 7px;
		left: -999em; /* using left instead of display to hide menus because display: none isn't read by screen readers */
	}
	#mainNav .contactNav ul.menuTree {
		width: 76px;
	}
	#mainNav ul.menuTree li{
		font-size: 1em;
		text-transform:none;
		display:block;
		float:none;
		margin-top: 5px;
		padding:0 !important;
		}

	
	#mainNav li.sfhover ul, #mainNav li:hover ul { /* lists nested under hovered list items */
		left:12px;
	}




/* content styles */

	/* boxes - rounded corners & such */
		#content .subMenu,
		#content .feature,
		#content .sectionImages{
			float:left;
			display:inline;
			z-index:60;
		}


	/* subMenu/sectionMenu styles */
		#content .subMenu{
			width:174px;
			position:relative;
		}
		#content .subseaButton{margin-top:-10px;}

		#content #userpanel{
			position:relative;
			z-index:-1;
		}
		#content .sectionMenu,
		#content #userpanel{
			background: url(../images/bgs/sectionMenu.gif) top left repeat-y;
			margin-bottom:25px;
		}
		#content .subMenu h2{
			color:#FFFF00;
			height:30px;
			padding:5px 20px 0 10px;
			font-size: 1.4em;
			font-weight:normal;
			text-transform:uppercase;
			background: url(../images/bgs/sectionMenu-head.gif) top left no-repeat;
		}
		#content #userpanel h2{ padding:6px 20px 0px 5px;font-size:1.2em;text-transform:none;	}
		#content .subMenu ul,
		#content .subMenu dl,
		#content .subMenu .stepThrough span{
			top:5px;
			display:block;
			position:relative;
			padding:0px 20px 15px 10px;
			background: url(../images/bgs/sectionMenu-base.gif) bottom left no-repeat;
		}
		#content .subMenu .stepThrough span{margin: 0;}
		#content .subMenu .stepThrough{
			padding:0;
			position:relative;
			background: url(../images/bgs/sectionMenu.gif) top left repeat-y;
		}
		#content .subMenu .newButton{
			position:absolute;margin:-1em 0 0 10px;
		}
		
		#content .subMenu ul li{
			padding-left:10px;
			background: url(../images/icons/arrow-bullet.gif) 0px 3px no-repeat;
		}
		#content .subMenu  a{
		}
		#content .subMenu ul a:hover{
			text-decoration:underline;
		}


	/* feature styles */
		#content .feature{
			width:396px;
		}
		#content .feature .pad{
			float:left;
			width:364px;
			padding:0 10px 10px 10px;
			border:1px solid #869097;
			background: #fff url(../images/bgs/feature.gif) top left no-repeat;
		}
		#content .feature h1.pageHeader{
			height:30px;
			padding-top:4px;
			font-weight:normal;
		}
		#content .feature ul li{
			padding-left:10px;
			background: url(../images/icons/arrow-bullet.gif) 0px 3px no-repeat;
		}
		#content .feature .item .captionBox{
			float:left;
			width:340px;
			padding:0 10px 10px 0;
		}


	/* index page newsList */

	
		#content .subMenu .newsList dl{
		}
		#content .subMenu .newsList .date{
			line-height:1em;
			font-size:1.1em;
			font-weight:bold;
		}
		#content .subMenu .newsList dd{
			padding-bottom:.5em;
		}


	/* staff page staffList */
		#content .feature .staffList dt{
			font-size:1.4em;
		}
		#content .feature .staffList dt,
		#content .feature .staffList dd.position{
			display:inline;
			color:#455560;
			font-weight:bold;
			padding:0;
		}
		#content .feature .staffList dd{
			padding-left:2em;
		}
		#content .feature .staffList dd.contactInf{
			padding-bottom:1em;
		}

		/* staff page staffList */
			.staff #content .feature .photo{
				width:auto;
				float:left;
				padding:0 10px 10px 0;
			}


		/* products pages */
			.products #content .feature .headerImg{
				position:absolute;
				top:0px;
				left:0;
			}
			.products #content .feature .productList {
				width:374px;
				margin-right:-10px;
			}
			.products #content .feature .productList li{
				border:1px solid #D1D5D8;
				border-right:0px;
				position:relative;
				z-index:50;
				height:86px;
				padding-left:75px;
				margin-bottom:10px;
				background-image: none ;
			}
			.products #content .feature .productList li .mainPic{
				position:absolute;
				left:-1px;top:-1px;
				height:88px;
				width:67px;
				background-position:center center;
			}
			.products #content .feature .productList li .mainPic a{
				background: url(../images/bgs/content/products/mainPic-a-bg.gif) left top no-repeat;
				display:block;
				height:88px;
				font-size:1px;
				width:67px;
				color:#fff;
			}
			.products #content .feature .productList li p,
			.products #content .feature .productList li h3{
				font-size:1em;
				line-height:1.3em;
				font-weight:normal;
			}
			.products #content .feature .productList li h3{
				padding:12px 0 0 0;
			}
			.products #content .feature .productList li h3.dgActiveElement{
				position:absolute;
			}
			.products #content .feature .productList li p{
				padding:0 10px 0 0;
			}

			.products #content .feature .productDetail {padding-top:5px;}
			.products #content .feature .productDetail .mainPic{
				float:left;
				display:inline;
				margin:0 10px 10px 0;
			}




	/* sectionImages styles */
		#content .sectionImages,
		#content .sectionImages li{
			z-index:0;
		}
		#content .sectionImages{
			width:164px;
			margin-top:5px;
		}
		#content .sectionImages li{
			width:164px;
			font-size:1.1em;
			background:#CFD4D8 url(../images/bgs/sectionImages-li.gif) top left repeat-y;
			margin-bottom:15px;
		}
		#content .sectionImages li .inlinepic{
			top:-5px;
			position:relative;
			background: url(../images/bgs/sectionImages-img.gif) top left no-repeat;
		}
		#content .sectionImages li .caption{
			top:4px;
			display:block;
			position:relative;
			width:148px;
			padding:0 8px 8px 8px;
			background: url(../images/bgs/sectionImages-span.gif) bottom left no-repeat;
		}







	/* management tweaks */
		.feature .manage dl {
			border: 1px dashed #ccc;
			padding-bottom:0;
		}
		.feature .manage dd {
			margin-left: 20px;
		}
		.feature .manage dt {
			margin-right: 100px;
		}
		.feature .manage .newButton {
			display:block;
			padding-bottom: 12px;
		}	




/* footer styles */
	#footer {
	}
	#footer a{ color:#FFFFFF;}
	#footer a:hover{ text-decoration:underline;}

	#footer #footerNav  {
		clear:both;
		text-align:center;
	}
		#footer #footerNav li  {
			display:inline;
			font-size: 1em;
			padding:0 3px;
		}
		#footer #footerNav a{
			text-decoration:underline;
		}
	#footer .subFoot{
		width:722px;
		padding:10px 23px;
		margin-bottom:10px;
		text-align:left;
		color:#fff;
	}
		#footer .testimony{
			width:535px;
			padding-bottom:8px;
		}
		#footer .testimony p{
			font-size:1.5em;
			line-height:1.6em;
			font-style:italic;
			padding:0;
		}
	#footer .address{
		width:155px;
		float:right;
		display:inline;
		font-size:.8em;
	}

	.credits {
		z-index:0;
		clear:both;
		width:758px;
		color:#586670;
		padding:15px;
		margin: 0px auto;
		text-align: center;
	}
	.credits img{
		vertical-align:text-bottom;
		margin-bottom:-5px;
	}









	
.clearfix:after {
	content: "."; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden;
	}

* html>body .clearfix {
	display: inline-block; 
	width: 100%;
	}

* html .clearfix {
	/* Hides from IE-mac \*/
	height: 1%;
	/* End hide from IE-mac */
	}	


        



	/* dreamgirl CMS styles*/

	.editmode #feature .contentItem{border-bottom:1px solid #eee;padding-bottom:5px;}

	.buttonContainer
	{
			display: inline;
	        overflow: visible;
	}

	#dgInlineFeedback {
	        width: 259px;
	        height: 242px;
	        color: #000;
	        background: url(../dreamgirl/images/success.png)!important;
	        background: url(../dreamgirl/images/success.gif);
	        }

			#dgProgressDiv
			{
			        position: absolute;
			        bottom: 0px;
			        left: 10px;
			        width: 241px;
			        height: 241px;
			z-index: 2000;
				background-image: url(../dreamgirl/images/dreaming.gif);
			}

	.dgInlineForm {
	        width: 500px;
	        border: 0px;
	       /* margin:12px 0 0 -200px; */
	        margin:12px 0 0 0;
			left:0;
	        position: absolute;
	        visibility: visible;
	        overflow: hidden;
			z-index:100;

	}

	iframe {
			position:absolute;
	        width: 500px;
	        border: 0px;
	        padding: 0px;
	        margin: 0px;
	}
	.dgInlineButton {
	        border: 0px;
	        background-color: transparent;
	}

	.dgInlineButtonActivated {
			opacity: 0.5;
	}

	.dgActiveElement {
			border: 1px dashed #eebddc;
			z-index:100 !important;
	}

	.dgInactiveElement {
	        background-color: transparent;
	}

	.dgButtonLink {
	        border: 0px;
	        margin-right: 3px;
	}


	.swfupload {
		padding: 10px;
		border: 1px solid #c69d2a;
		background-color: #edbb31;
	}



/* IMPORTANT! sIFR import styles for screen & print media */
/*=:project
    scalable Inman Flash Replacement (sIFR) version 3.

  =:file
    Copyright: 2006 Mark Wubben.
    Author: Mark Wubben, <http://novemberborn.net/>

  =:history
    * IFR: Shaun Inman
    * sIFR 1: Mike Davidson, Shaun Inman and Tomas Jogin
    * sIFR 2: Mike Davidson, Shaun Inman, Tomas Jogin and Mark Wubben

  =:license
    This software is licensed and provided under the CC-GNU LGPL.
    See <http://creativecommons.org/licenses/LGPL/2.1/>    
*/

@media screen {
/* These are standard sIFR styles... do not modify */

/*---- sIFR ---*/
.sIFR-flash {
	visibility: visible !important;
	margin: 0;
	padding: 0;
}

.sIFR-replaced, .sIFR-ignore {
	visibility: visible !important;
}

.sIFR-alternate {
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	display: block;
	overflow: hidden;
}


/* These "decoy" styles are used to hide the browser text before it is replaced... add and alter as necessary for individual site */
/* Letter spacing can be used to make the browser text metrics match up with the sIFR text metrics... settings may vary... any weird sizing issues you may run into are usually fixed by tweaking these decoy styles */

.sIFR-active #mainNav li{
	letter-spacing:3px;
}
.sIFR-active #mainNav li .navitem{
	visibility: hidden;
	line-height: 1em;
}
.sIFR-active #mainNav li ul li{
	letter-spacing:0px;
}



}

@media print {
/* This is the print stylesheet to hide the Flash headlines from the browser... regular browser text headlines will now print as normal */

.sIFR-flash {
	display: none !important;
	height: 0;
	width: 0;
	position: absolute;
	overflow: hidden;
}

.sIFR-alternate {
	visibility: visible !important;
	display: block !important;
	position: static !important;
	left: auto !important;
	top: auto !important;
}

}
