body {
	background: #f9f7ea url(../images/site/bg_body_home.gif) no-repeat top center;
	font-size: 75%;
	}
html>body {
	font-size: 12px;
	}
.hide {
	display: none;
	}
	
/* STRUCTURE
----------------------------------- */

#access { display:none; }
#wrapper {
	width: 940px;
	margin: 0 0 0 20px;
	padding: 0;
	text-align: left;
	}

/* HEADER
----------------------------------- */

#header {
	height: 204px;
	width: 910px;
	background: url(../images/site/bg_header_home.gif) no-repeat top center;
	}
#header h1 {
	text-indent: -9999px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	border: 0;
	height: 140px;
	width: 200px;
	}
#header h1 a:link, #header h1 a:visited	{
	display: block;	
	width: 200px;
	height: 204px;
	background: none;
	margin: 0;
	padding: 0;
	border: 0;
	cursor: pointer;
}
	
/* NAVIGATION
----------------------------------- */

#nav {
	float: left;
	width: 192px;
	height: auto;
	margin-top: 20px;
	padding: 50px 0 70px 55px;
	}
#nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
	}
#nav #primary_nav li a {
	display: block;
	margin: 0 0 10px 0;
	padding: 0;
	height: 29px;
	width: 192px;
	}
#nav #primary_nav ul li ul  {
	margin-bottom: 8px;
}
#nav #primary_nav ul li ul li a {
	font: 1em Futura, Arial, Helvetica, sans-serif; 
	margin: 0;
	padding-left: 40px;
}
#nav #secondary_nav li a {
	display: block;
	margin: 0;
	padding: 0;
	height: 29px;
	width: 172px;
	}
#nav #primary_nav li a, #nav #primary_nav li a:visited {
	
	}
#nav #primary_nav li a#about, #nav #primary_nav li a#about:visited {
	background: url(../images/site/bg_nav_about_off.gif) no-repeat top left;
	}
#nav #primary_nav li a#about:hover {
	background: url(../images/site/bg_nav_about_over.gif) no-repeat top left;
	}
#nav #primary_nav li a#about.current {
	background: url(../images/site/bg_nav_about_on.gif) no-repeat top left;
	}
		
#nav #primary_nav li a#projects, #nav #primary_nav li a#projects:visited {
	background: url(../images/site/bg_nav_projects_off.gif) no-repeat top left;
	}
#nav #primary_nav li a#projects:hover {
	background: url(../images/site/bg_nav_projects_over.gif) no-repeat top left;
	}
#nav #primary_nav li a#projects.current {
	background: url(../images/site/bg_nav_projects_on.gif) no-repeat top left;
	}
	
#nav #primary_nav li a#contact, #nav #primary_nav li a#contact:visited {
	background: url(../images/site/bg_nav_contact_off.gif) no-repeat top left;
	}
#nav #primary_nav li a#contact:hover {
	background: url(../images/site/bg_nav_contact_over.gif) no-repeat top left;
	}
#nav #primary_nav li a#contact.current {
	background: url(../images/site/bg_nav_contact_on.gif) no-repeat top left;
	}
	
#nav #primary_nav li a#news, #nav #primary_nav li a#news:visited {
	background: url(../images/site/bg_nav_news_off.gif) no-repeat top left;
	}
#nav #primary_nav li a#news:hover {
	background: url(../images/site/bg_nav_news_over.gif) no-repeat top left;
	}
#nav #primary_nav li a#news.current {
	background: url(../images/site/bg_nav_news_on.gif) no-repeat top left;
	}


/* CONTENT
----------------------------------- */

#main {
	float: left;
	width: 690px;
	margin: 22px 0 0 0;
	padding: 0;
	}
#main_nav {
	float: left;
	height: 30px;
	width: 680px;
	margin: 0;
	padding: 0 0 0 10px;
	}
#main_nav h3 {
	display: none;
	float: left;
	width: auto;
	margin: 5px 15px 0 0;
	padding: 0;
	text-transform: uppercase;
	}
#main_nav ul {
	list-style: none;
	margin: 0;
	padding: 3px 0 0 0;
	height: 30px;
	}
#main_nav li {
	float: left;
	font: 1.1em Futura, Arial, Helvetica, sans-serif;
	margin: 0;
	padding: 0 15px 0 15px;
	border-left: 1px solid #333;
	}
#content {
	float: left;
    width: 480px;
	min-height: 400px;
	height: 400px;
	margin: 0 0 0 0;
	padding: 20px 0 0 140px;
	}
html>body #content {
	height: auto;
	}
#content h3 {
	color: #971b1e;
	font-family: Georgia, "Times New Roman", Times, serif;
	font-size: 1.5em;
	margin: 0 0 8px 0;
	}
#content h4 {
	color: #971b1e;
	font: 1.3em Futura, Arial, Helvetica, sans-serif;
	margin: 0 0 10px 0;
	padding: 0 0 0 0;
	}
#content p {
	color: #000;
	font: 1.1em Futura, Arial, Helvetica, sans-serif;
	font-weight: normal;
	line-height: 1.5em;
	margin-bottom: 1.5em;
	}
#content p.headline {
	font-size: 1.5em;
	line-height: 1.5em;
	margin-bottom: 1em;
	}
#content p.no_job {
	background: transparent url(../images/site/bg_no_job_too_small.gif) no-repeat top left;
	margin-top: 30px;
	width: 456px;
	height: 37px;
	}
#content ul {
	list-style: none;
	margin: 0;
	padding: 0;
	}
#content ul li {
	color: #000;
	font: 1.1em Futura, Arial, Helvetica, sans-serif;
	line-height: 1.5em;
	padding-left: 15px;
	background: transparent url(../images/site/bg_bullet.gif) no-repeat 0px 5px;
	font-weight: normal;
	}
	
/* FOOTER
----------------------------------- */

#footer {
	clear: both;
	width: 630px;
	height: 60px;
	margin-left: 320px;
	padding: 0;
	}
#footer p {
	color: #666;
	font: .9em Futura, Arial, Helvetica, sans-serif;
	font-weight: normal;
	letter-spacing: .02em;
	margin-bottom: 3px;
	}
	
/* FORMS
--------------*/

div.form-container { 
	font: normal 1.1em Futura, Arial, Helvetica, sans-serif;
	margin: 10px; 
	padding: 0; 
	}
div.form-container form div { 
	padding: 0.25em 0; 
	}
div.form-container p {
	font-weight: bold;
	margin: 1em 0 .5em 0;
	padding: 5px 15px;
	}
div.form-container p.note { 
	width: 100%;
	margin: 0 0 0 155px; 
	font-size: .9em; 
	color: #333;
	font-weight: normal; 
	}
input {
	margin-bottom: 10px;
	}
label, input, select, .label, textarea {
	font: normal 1.1em Futura, Arial, Helvetica, sans-serif;
	}	
label, span.label {
	display: block;
	position: relative;
	float: left;
	margin-right: 10px;
	padding-right: 10px;
	width: 100px;
	text-align: right;
	}
label em, span.label em { 
	position: absolute; 
	right: 0; 
	font-size: 1.2em; 
	font-style: normal; 
	color: #C00; 
	}
.buttonrow {
	padding: 15px 0 0 117px;
	}
label.zemRequirederrorElement, span.zemRequired, label.zemRequired {
	color: #971b1e;
	}
	
/* LINKS
--------------*/

a, a:visited {
	color: #8aaead;
	text-decoration: none;
	}
a:hover, a.current_cat, a.rssAlt, a.current_article {
	color: #971b1e;
	text-decoration: underline;
	} 

/* sIFR 2
--------------*/

/* 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;
	}

/* 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... 
the negative-letter spacing in this case is used to make the browser text metrics 
match up with the sIFR text metrics since the sIFR text in this example is so much 
narrower... your own settings may vary... any weird sizing issues you may run into 
are usually fixed by tweaking these decoy styles */

.sIFR-hasFlash #content h3 {
	visibility: hidden;
	letter-spacing: -5px;
	font-size: 24px;
	margin-bottom: 15px;
	}
.sIFR-hasFlash #content h3.home {
	visibility: hidden;
	letter-spacing: -5px;
	font-size: 32px;
	margin-bottom: 15px;
	}
.sIFR-hasFlash #main_nav h3 {
	visibility: hidden;
	letter-spacing: -6px;
	font-size: 15px;
	width: 73px;
	}
	
/* SLIDESHOW
--------------*/
	
#content div.ike-slideshow {
	float: left;
	width: 240px;
	padding: 0;
	margin: 5px;
	}
#content div.ike-slideshow ul {
	list-style: none;
	margin: 0;
	padding: 0;
	}
#content div.ike-slideshow ul li {
	display: none;
	background-image: none;
	margin: 0;
	padding: 0;
	}
#content div.ike-slideshow img {
	border: 0px !important;
	padding: 0px !important;
	display: inline !important;
	margin: 0px !important;
	vertical-align: middle !important;
	max-width: 95%;
	}
#content div.project_specs {
	float: left;
	width: 190px;
	}
div.clear {
	clear: both;
	}