/* ========= */
/* = Reset = */
/* ========= */

html,body,div,span,
h1,h2,h3,h4,h5,h6,p,blockquote,
a,abbr,acronym,address,big,cite,code,
del,dfn,em,font,img,ins,kbd,q,s,samp,
small,strike,strong,sub,sup,tt,var,
dd,dl,dt,li,ol,ul, fieldset,form,label,
legend,table,caption,tbody,tfoot,thead,
tr,th,td,button {
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
	}
	
/* ====================================================== */
/* = Setting up measurements for site                   = */
/* = 1em = 10px on the onset. Inheritance applies. YMMV = */
/* ====================================================== */

body {
	background: #8fb052; /* url('/img/content_background.png') repeat-y 50% top; */
	color: #6D6E71;
	font: normal normal normal 12px/20px Verdana, Arial, Helvetica, sans-serif;
	padding-bottom: 40px;
	}

.site {
	background: #fff;
	margin: auto;
	position: relative;
	}
	
p {
	margin: 14px 0;
	}
	
a {
	color: #6D6E71;
	/* color: #78A22F; */
	text-decoration: none;
	}
	
a:hover {
	text-decoration: underline;
	}
	
/* ===================== */
/* = Layout Containers = */
/* ===================== */

/* rows can be inserted within other rows normal usage will require a
/* clearfix class on the row, cols should have a specific width class 
/* 
/* <div class="row clearfix">
/*	<div class="col eight-col">
/*		<div class="row clearfix">
/*			<div class="col seven-col"></div>
/*			<div class="col"></div> <!-- one-col is optional -->
/*		</div>
/*	</div>
/*	<div class="col four-col"></div>
/* </div>
*/

.row {
	margin: auto;
	padding: 0 10px;
	position: relative;
	width: 940px;
	}
	
.site .row {
/*	background: url('/img/content_background.png') repeat-y left top; */
	}
	
	/* \_ */	

		.col {
			display: inline;
			float: left;
			position: relative;
			width: 304px;

			}

		.two-col {
			width: 622px;
			}
			
		.three-col {
			width: 940px;
			}
			
		.first-col {
			margin-right: 14px;
			}
		
		.last-col {
			margin-left: 14px;
			}
			
		

/* ============================ */
/* = MISC Positioning Classes = */
/* ============================ */

.left {
	float: left;
	}
	
.right {
	float: right;
	}
	
.no-margin {
	margin: 0 auto;
	}
	
.relavitize {
	position: relative;
	}
	
	.clearfix:after {
	    content: "."; 
	    display: block; 
	    height: 0; 
	    clear: both; 
	    visibility: hidden;
		}

		.clearfix {display: inline-block;}

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


h1 {
	left: -10px;
	position: absolute;
	top: 59px;
	width: 279px;
	}

	/* \_ */	
	
		h1 a {
			background: url('/img/logo.gif') no-repeat left top;
			display: block;
			height: 81px;
			text-indent: -9999px;
			}
			
h2 {
	font: normal 66px/95px verdana, sans-serif;
	left: 0;
	opacity: 0.50;
	-moz-opacity: 0.50;
	position: absolute;	
	top: 65px;
	z-index: 30;
	}
	
h2.land {
	font-size: 40px; 
	top: 77px;
	}

h2.gis {
	font-size: 35px; 
	top: 80px;
	}
	
h3 {
	font-size: 18px;
	margin-bottom: 5px;
	}
	
h3.side-header {
	font-size: 16px;
	font-weight: normal;
	}
	
h4 {
	background: url('/img/big_triangle.gif') no-repeat left 50%;
	color: #A7A9AC;
	font-size: 14px;
	margin: 0;
	padding-left: 20px;
	}
	
h3.heading {
	margin-bottom: 0;
	font-size: 30px;
	}

/* ======= */
/* = NAV = */
/* ======= */

.header,
#header {
	background-color: #80b6bd;
	/*background-color: #8bbcc3;*/
	position: relative;
	z-index: 40;
	}

.primary-nav {
	float: right;
	padding-right: 115px;
	}

	.primary-nav li {
		float: left;
		position: relative;
		z-index: 40;
		}
	
		/* \_ */	
	
			.primary-nav li a,
			.primary-nav li span {
				color: #fff;
				display: block;
				float: left;
				font: bold 11px verdana, sans-serif;
				height: 67px;
				line-height: 70px;
				padding: 73px 12px 0 12px;
				text-decoration: none;
				}
				
			.primary-nav li.active a,
			.primary-nav li:hover,
			.primary-nav li.sfhover {
				background-color: #b2d2d8;
				}
				
			.primary-nav li.active li a {
				background: none;
				}
				
				/* \_ */	
				
					.primary-nav li ul {
						background-color: #8bbcc3;
						opacity: 0.95;
						-moz-opacity: 0.95;
						filter:alpha(opacity=95);
						position: absolute;
						left: -9999px;
						top: 140px;
						z-index: 100;
						}
						
					.primary-nav li:hover ul,
					.primary-nav li.sfhover ul {
						left: 0;
						}
						
						/* \_ */	
						
							.primary-nav ul li {
								float: none;
								}
								
							.primary-nav ul li a,
							.primary-nav ul li span {
								height: auto;
								float: none;
								line-height: 14px;
								padding: 10px;
								width: 200px;
								}
								
							.primary-nav li.active li a:hover {
								background-color: #b2d2d8;
								}
								
.utility-nav {
	position: absolute;
	right: 0;
	top: 0;
	z-index: 50;
	}
	
	/* \_ */	
	
		.utility-nav li {
			display: block;
			width: 115px;
			position: relative;
			z-index: 20;
			}
			
		.utility-nav li.bid-info {
			z-index: 25;
			}
			
			/* \_ */	
			
				.utility-nav li a {
					background-image: url('/img/triangle.png');
					background-position: right 50%;
					background-repeat: no-repeat;
					color: #fff;
					display: block;
					font-size: 11px;
					padding: 0 12px;
					text-decoration: none;
					}
					
				.utility-nav li.bid-info a {
					background-color: #72afb6;
					line-height: 75px;
					z-index: 19;
					}
					
				.utility-nav li.whats-new a {
					background-color: #9cb866;
					line-height: 65px;
					}
					
					/* \_ */	
						
						.utility-nav li div {
							position: absolute;
							left: -9999px;
							right: auto;
							top: auto;
							width: 318px;
							z-index: 100;
							}
							
							/* \_ */	
								
								.utility-nav li ul {
									height: 440px;
									overflow: auto;
									padding-top: 65px;
									}
							
								.utility-nav li.bid-info ul {
									background-color: #72afb6;
									visibility: hidden; /* LK temp hide this to make editing bids needed on only one page */
									}
							
								.utility-nav li.whats-new ul {
									background-color: #9cb866;
									height: 375px;
									}
						
								.utility-nav li:hover div,
								.utility-nav li.sfhover div {
									left: auto;
									right: 0;
									}
						
									/* \_ */	
						
										#utility-nav ul li {
											float: none;
											width: auto;
											}
								
										#utility-nav li ul a {
											background: url('/img/blank.gif') repeat top left;
											display: block;
											height: auto;
											float: none;
											line-height: 14px;
											padding: 20px;
											zoom: 1;
											}
									
										#utility-nav li.bid-info ul a:hover {
											background-color: #b2d2d8;
											}
									
										#utility-nav li.whats-new ul a:hover {
											background-color: #ccdbb0;
											}
						
	
.masthead {
	padding-top: 140px;
	zoom: 1;
	}
	
.mastheadproj {
	padding-top: 100px;
	}	
	
.projtitle {
	padding-top: 100px;
	font-size: 18px;
	font-weight: bold;
	}
	
.projlist {
	list-style-image: none;
	list-style-position: inside;
	}	
	
.projwrap {
	padding: 20px 30px 50px 0px;
	}	

.projtitle2 {
	font-size: 14px;
	}
	
.flash {
	padding-top: 40px;
	}
	
	/* \_ */	
	
		.phone {
			background: url('/img/big_triangle.gif') no-repeat right 19px;
			font-size: 14px;
			font-weight: bold;
			line-height: 11px;
			margin-top: 2px;
			padding: 20px 20px 20px 20px;
			text-align: right;
			}
			
			/* \_ */	
			
				.phone a {
					color: #6D6E71;
					}
					
				.phone .numbers {
					color: #9d9f9f;
					padding-top: 9px;
					}
				
		
		.wrap {
			padding: 20px 10px 50px 0;
			}
			
			/* \_ */	
			
				.wrap li {
					list-style: disc outside;
					margin-left: 18px;
					padding-left: 25px;
					}
			
		.main-content .wrap {
			padding-top: 0;
			}
			
.main-content {
	background: url('/img/split.gif') repeat-y left top;
	}
	
.footer {
	font-size: 12px;
	font-weight: bold;
	}
	
	/* \_ */		
	
		.footer .wrap {
			padding: 10px 0px;
			}
			
		.footer a {
			color: #6D6E71;
		}
			
/* ===================== */
/* = PROJECTS CAROUSEL = */
/* ===================== */
#projects ul {
	background: #000;
	}

#projects a {
	color: #6D6E71;
	display: block;
	height: 75px;
	padding: 0px 40px;
	text-decoration: none;
	}
	
#projects a:hover {
	background: #fff;
}
	
	/* \_ */	
	
		#projects img {
			border: none;
			}

/* ============ */
/* = Location = */
/* ============ */
.locations {
	padding-left: 225px;
	}
	
	.locations .phone {
		position: absolute;
		left: -15px;
		top: 0;
		}
		
	
.location {
	border-left: 1px solid #73AFB6;
	float: left;
	font-size: 11px;
	padding-left: 20px;
	width: 204px;
	}
	
.bottom-row .location {
	padding-top: 40px;
	}
	
	/* \_ */	
	
			.location h4 {
				background: none;
				color: #73AFB6;
				font: normal 12px helvetica, arial, sans-serif;
				padding: 0;
				}
				
			.location a {
				color: #78A22F;
				line-height: 1.8;
				}
				
.prompt {
	float: left;
	width: 63px;
	}
	
.numbers .clearfix {
	margin: 2px 0;
}
	
.numbers .prompt {
	font-size: 9px;
	font-weight: normal;
	padding-left: 89px;
	text-align: left;
	width: 95px;
	}
	
.numbers .value {
	font-size: 9px;
	font-weight: normal;
	}
	
/* =========== */
/* = Careers = */
/* =========== */

.careers .title,
.bids .title {
	background: #8fb052;
	color: #6D6E71;
	margin-bottom: 4px;
	padding: 0;
	zoom: 1;
	}
	
	.bids .title {
		color: #fff;
		}
		
	.light-title {
		background: #B4C98B;
		color: #414042;
		}
	
	.light-title em {
		display: block;
		font-style: normal;
		padding: 15px 0 5px 158px;
	}
	
	/* \_ */	
	
		.careers .title h3,
		.bids .title h3 {
			font-size: 18px;
			line-height: 30px;
			margin: auto;
			margin-bottom: 0;
			margin-top: 0;
			padding: 0;
			width: 940px;
			}
			
		.bids .title h3 {
			font-weight: normal;
			}

.careers .header,
.bids .header {
	background: #A5CBCF;
	margin-top: 2px;
	zoom:1;
	z-index: 2;
	}			
	
	/* \_ */	
	
		.careers .header .opening-locations,
		.bids .header .type {
			margin: auto;
			width: 940px;
			}
	
			/* \_ */	
	
				.opening-locations div,
				.bids .type div {
					color: #fff;
					font-size: 12px;
					font-weight: bold;
					float: left;
					line-height: 30px;
					padding: 20px 0 0 20px;
					text-transform: uppercase;
					width: 293.3px;
					}
					
				.bids .type div {
					width: 215px;
					}
					
				.opening-locations div.first,
				.bids .type div.first {
					padding-left: 0;
					width: 313.3px;
					}
					
				.bids .type div.first {
					width: 235px;
					}

.careers .opening-wrap,
.bids .opening-wrap {
	background: #CDE1E3;
	margin-top: 2px;
	zoom: 1;
	}
	
	.careers .openings,
	.bids .openings {
		margin: auto;
		width: 940px;
		}
		
	.careers .openings table,
	.bids .openings table {
		border-collapse: collapse;
		}
		
	.careers .openings td,
	.bids .openings td {
		border-left: 2px solid #fff;
		vertical-align: top;
		}
		
	.bids .openings td {
		padding: 15px 0 15px 20px;
		width: 213px;
		}
		
	.careers .openings td.first,
	.bids .openings td.first {
		border: none;
		}
		
	.bids .openings td.first {
		width: 235px;
		padding-left: 0;
		}
	
	.careers .openings ul,
	.bids .openings ul {
		float: left;
		padding: 15px 0 15px 0;
		width: 311px;
		}
		
	.bids .openings ul {
		padding: 0;
		width: auto;
		}
		
	.careers .openings li {
		padding: 5px 0 5px 20px;
		}
		
	.bids .openings li {
		padding-left: 0;
		}
		
	.careers .openings .first li {
		padding-left: 0;
		}
		
.job {
	margin-top: 60px;
	}
	
	.job .openings ul {
		float: none;
		padding: 0;
		width: auto;
		}
		
	.job .openings li {
		list-style: disc outside;
		padding: 5px 10px 5px 10px;
		}
	
	
	.job .opening-locations div {
		font-size: 14px;
		font-weight: normal;
		width: auto;
		zoom: 1;
		}
	
	.job .opening-wrap	{
		padding: 10px 0;
		}
		
	.job .openings {
		background: url('/img/big_triangle_green.gif') no-repeat left top;
		font-size: 12px;
		line-height: 20px;
		margin: auto;
		padding-left: 25px;
		width: 650px;
	}
	
.apply {
	font-size: 11px;
	line-height: 14px;
	margin: auto;
	padding-left: 25px;
	width: 650px;
}

.apply em {
	font-size: 12px;
	font-style:	normal;
	}

/* ============== */
/* = Newsletter = */
/* ============== */

.photo img {
	display: block;
	}
	
.newsletter-cover {
	float: right;
	margin: 0 65px 35px 50px;
	}
	
.signup-link {
	padding: 65px 50px 0 80px;
	}
	
	/* \_ */	
		
		.signup-link h4 {
			background: none;
			color: #6d6e71;
			padding: 0;
			}
			
/* ============== */
/* = What's New = */
/* ============== */

.whats-new-header {
	background: #E6E7E8;
	color: #6D6E71;
	font-size: 15px;
	font-weight: bold;
	}
	
	/* \_ */	
	
		.whats-new-header .description {
			padding-top: 90px;
			}
			
		.photo div {
			background: #d1d3d4; 
			float: left;
			height: 180px;
			position: relative;
			width: 190px;
			}
			
		.photo cite {
			bottom: -30px;
			font-size: 10px;
			font-style: normal;
			font-weight: normal;
			position: absolute;
			right: 0;
			}

.whats-new-text .col {
	margin: 30px 0;
	}
	
.whats-new-text .photo {
	padding-top: 1.5em;
}

.bid-info-header {
	background: #B2D2D6;
	}
	
	/* \_ */	
	
		.bid-info-header .description {
			padding-top: 15px;
		}