@import url(print0309.css) print;

body
{
	font: 85%/1.5 'trebuchet ms', verdana, sans-serif;
	color: #444;
	text-align: center;
	margin: 0;
	padding: 0;
}

:focus { outline: 0; }

h1
{
	font-size: 2em;
	margin: 0;
	padding: 0;
}

h1 span
{
	font-size: .75em;
	color: #A29D8E;
}

h1 span a:link,
h1 span a:visited,
h1 span a:hover,
h1 span a:active
{
	text-decoration: none;
	color: #A29D8E;
}

h1 span a:hover { text-decoration: underline; }

h2
{
	font-size: 1.5em;
	color: #a29d8e;
}

h3
{
	display: block;
	font-size: 1.08em;
	margin-bottom: .17em;
	font-style: italic;
	font-weight: bold;
}

h4 { font-size: 1.08em; }

th, td
{
	text-align: left;
	vertical-align: top;
}

td h3 { margin-top: 0; }

h2 span
{
	padding-left: 1em;
	font-size: .75em;
	font-style: italic;
	font-weight: bold;
	color: #444;
}

a:link, a:visited, a:hover, a:active
{
	text-decoration: underline;
	color: #369;
}

noscript { color: #7d89b3; }
.clear-left { clear: left; }
p.first { margin-top: 0; }
.bold { font-weight: bold; }

#home_intro
{
	width: 70%;
	margin-top: 2em;
}

ul.nobullet
{
	list-style: none;
	margin: 0;
	padding: 0;
}

span.more_button { display: inline; }
table#safetystats td { color: #0078ae; }
table#joblist th, table#joblist td { padding-right: 2em; }

table#directory th h3
{
	padding-top: 1em;
	color: #a29d8e;
}

table#directory th, table#directory td { padding-right: 1em; }
#left h2 { padding: 0 3em 0 2.75em; }
img { border: none; }

span.attribute
{
	display: block;
	font-style: italic;
	padding-right: 10px;
	text-align: right;
}

span.block { display: block; }

#wrapper
{
	width: 908px;
	margin: 15px auto;
	text-align: left;
}

#header
{
	width: 908px;
	height: 93px;
	/* 

background: url(../images/topright_loaderman_x643.jpg) top right no-repeat;*/
	color: #fff;
}

#header_flash
{
	width: 643px;
	float: left;
	background-color: #3750a5;
}

#header.concrete { background: url(../images/topright_concrete.jpg) top right no-repeat; }
#header.earthwork { background: url(../images/topright_earthwork.jpg) top right no-repeat; }
#header.masonry { background: url(../images/topright_masonry.jpg) top right no-repeat; }
#header.home { background: url(../images/home_topstrip.jpg) top right no-repeat; }
#header.news { background: url(../images/news_topstrip.jpg) top right no-repeat; }
#header.contact { background: url(../images/contact_topstrip.jpg) top right no-repeat; }

#header_left
{
	float: left;
	width: 265px;
	height: 93px;
	cursor: pointer;
}

#header_left img { float: left; }

#container
{
	position: relative;
	width: 908px;
	min-height: 500px;
	color: #fff;
	background: #f5f1e3 url(../images/bg_menu.gif) bottom left no-repeat;
}

/* .deep required for long pages so #containerwrapper bg tile will show thru */
#container.deep { background-color: transparent; }
#containerwrapper { background: #F5F1E3 url(../images/bg_left_tile2.gif) left top repeat-y; }

#container .column
{
	position: relative;
	float: left;
}

#left
{
	/* position: relative; */
	width: 265px;
	min-height: 200px;
	background: url(../images/bg_left_tile2.gif) repeat-y;
}


#center
{
	width: 643px;
	color: #444;
	padding-bottom: 2em;
	background: #F5F1E3;
}

#center.column
{
	position: relative;
	float: left;
}

#center.column img
{
	float: left;
	margin: 0 20px 1px 0;
}

#center.column img.last { margin-bottom: 1em; }



#center.column .smallinset
{
	position: relative;
	float: right;
	width: 135px;
	margin-left: 1em;
	top: 4px;
}

span.photocaption.under
{
	display: block;
	width: 128px;
	margin: 0;
	padding: 0;
	text-align: center;
	text-indent: 0;
	line-height: 1.65em;
}


#center #maincontent
{
	width: 318px;
	float: left;
}

#center #maincontent.wide { width: 620px; min-height: 500px; }

#center #maincontentwrap { margin-right: 40px; }

#center #maincontent.home
{
	clear: both;
	padding: 1em 32px;
	background-color: #007fc4;
	width: 533px;
	color: #fff;
	voice-family: "\"}\"";
	voice-family: inherit;
	width: 469px;
}

#maincontent p { margin: .5em 0; }

#maincontentwrap h1,
#maincontent h1
{
	margin-top: 0;
	padding-top: .85em;
	margin-bottom: .85em;
}

#maincontent ul
{
	list-style-position: inside;
	padding-left: 0px;
}

.nomargin { margin: 0; }
.nopad { padding:0; }

.mainimagebottom { padding-bottom: 1.5em; }
.hasbottommargin { margin-bottom: 1.2em; }

.plusleftpad
{
	padding-left: 270px;
	padding-right: 20px;
}

#left_center_img
{
	/* position: relative; */
	position: relative;
	z-index: 1200;
	left: 228px;
	/* top: 189px; */
	top: 177px;
}

#rightcolumntext
{
	width: 318px;
	float: left;
}

#rightcolumntext ul { padding-left: 0; }

#center_pics
{
	width: 280px;
	float: left;
	margin-bottom: .85em;
	border-top: 1px solid #f5f1e3;
}

#center_pics.no_bottom_margin { margin-bottom: 0; }

#bottom
{
	width: 908px;
	height: 29px;
	color: #fff;
}

#bottom_left
{
	float: left;
	width: 265px;
	height: 29px;
}

#bottom_right
{
	float: left;
	width: 643px;
	background: url(../images/bottom_center_tile.gif) repeat-x;
}

#bottom_right img { float: right; }

#footer
{
	font-family: verdana, helvetica, sans-serif;
	font-size: .9em;
	/*color: #a29d8e;*/
	color: #807c70;
	text-align: left;
	padding: 1em 4em;
}

#nav #descriptor
{
	display: block;
	font-size: 10px;
	line-height: 14px;
	padding-left: 32px;
	padding-bottom: 60px;
	color: #444;
	letter-spacing: .5px;
}

#nav
{
	position: relative;
	top: 20px;
	left: 6px;
	width: 265px;
	background: transparent;
	white-space: nowrap;
	line-height: 1.5em;
	font-weight: bold;
	overflow: auto;
	min-height: 420px;
	height: auto !important;
	font-size: .85em;
}

#nav .menu .menuNode a,
#nav .menu .firstMenuNode a
{
	font-weight: bold;
	text-decoration: none;
	display: block;
	width: 152px;
	/* minus 36px left pad. */
}

#nav .menu .menuNode a:link,
#nav .menu .firstMenuNode a:link { color: #fff; }
#nav .menu .menuNode a:visited,
#nav .menu .firstMenuNode a:visited { color: #fff; }
#nav .menu .menuNode a:hover,
#nav .menu .firstMenuNode a:hover { color: #fff; }
#nav .menu .menuNode a:active,
#nav .menu .firstMenuNode a:active { color: #fff; }
#nav img { display: block; }

/* @group menu */
/* menu */
.menu a
{
	display: block;
	padding-left: 36px;
	color: #f8f5eb;
}

.menu a:hover { color: #fff; }

.menu .menu, .menu .menu .menu
{
	/* submenus and submenus' submenus  */
	padding-left: 10px;
}

.menu .menu .menu
{
	/* submenus' submenus  */
	height: 1%;
}

/* menu Nodes */
.menuNode
{
	width: 189px;
	height: 18px;
	color: #f8f5eb;
	background: url(../images/submenu.gif) no-repeat;
}

.menuNode.active { background: url(../images/submenu_active.gif) no-repeat; }
.menuNode a, .menuItem a, .firstMenuNode a { width: auto; }
.menuNodeOver { background: url(../images/submenu_over.gif) no-repeat; }
.menuNodeOver.active { background: url(../images/submenu_active_over.gif) no-repeat; }

.firstMenuNode
{
	width: 189px;
	height: 21px;
	color: #f8f5eb;
	padding-top: 3px;
	background: url(../images/submenu_first.gif) no-repeat;
	voice-family: "\"}\"";
	voice-family: inherit;
	height: 18px;
}

.firstMenuNode.active { background: url(../images/submenu_first_active.gif) no-repeat; }
.firstMenuNodeOver { background: url(../images/submenu_first_over.gif) no-repeat; }
.firstMenuNodeOver.active { background: url(../images/submenu_first_active_over.gif) no-repeat; }
.lastMenuNode { border-bottom: 1px solid #f5f1e3; }
.firstMenuNode, 
.lastMenuNode, 
.menuNode, 
.menuNodeOver, 
.button { cursor: pointer; }

#nav .menu
{
	width: 189px;
	background-color: #bfbbaf;
}

/* @end */
#local_menu
{
	padding: 12px 20px 0 0;
	text-align: right;
	font-size: .85em;
	text-transform: uppercase;
	color: #918d80;
}

#local_menu a:link,
#local_menu a:visited,
#local_menu a:hover,
#local_menu a:active
{
	color: #918d80;
	text-decoration: none;
}

#local_menu a:hover { text-decoration: underline; }

#local_menu .local_active
{
	font-weight: bold;
	color: #1f7499;
}

.pullbox
{
	width: 140px;
	float: right;
	margin: .25em 0 .25em .75em;
}

.pullbox span
{
	display: block;
	padding: 0 .5em;
	color: #0069A2;
	font-weight: bold;
	background-color: transparent;
	border-left: 1px solid #86a0bf;
}

.pullbox span h2
{
	margin: 0;
	padding: 0;
}

.hothead a:link,
.hothead a:visited,
.hothead a:hover,
.hothead a:active
{
	text-decoration: none;
	color: #a29d8e;
}


table#customer-comments { width: 600px; padding:0; margin:0; }
table#customer-comments td { padding: 0 0 1em 0; }

table#customer-comments td.comment-images{ width:280px; padding:0; margin:0; }
table#customer-comments td.comment-images img { float: none; margin: 0; padding-bottom: 1px; }
table#customer-comments td.comment-text { width: 320px; }	
table#customer-comments td p.first { margin-top: 0; }


.clearfix:after
{
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}

.clearfix { }
html[xmlns] .clearfix { display: block; }
* html .clearfix { height: 1%; }

table.project
{
	width: 80%;
	margin: 0 0 1em 0;
	border-bottom: 1px dotted #c0bcb0;
}

table.project th.title
{
	background-color: #d9d4c5;
	padding: .5em 0 .15em 1em;
}

th.title a:link
{
	text-decoration: none;
	color: #369;
}

th.title a:visited
{
	text-decoration: none;
	color: #369;
}

th.title a:hover
{
	text-decoration: underline;
	color: #369;
}

th.title a:active
{
	text-decoration: none;
	color: #369;
}

table.project td.more { padding-top: 1em; }

table.project td
{
	text-align: left;
	vertical-align: top;
}

table.project td.pic { width: 165px; }
table.project td.pic_med { width: 230px; }
table.project td.pic_lg { width: 500px; }
table.project td.description { padding: 1em 0; }

table.project td.description ul
{
	padding: 0;
	margin: 0;
	list-style: none;
	font-weight: bold;
}

table.project td.description ul li span { color: rgb(162, 157, 142); }
table.project td.specs { color: #a29d8e; }
.positiononly img { background-color: #99968d; }

ul#projectstats
{
	padding: 0;
	margin: 0 0 1em 0;
	list-style-position: outside;
}

span.morestuff
{
	font-size: .65em;
	color: #369;
	padding-left: 1em;
}

span.moredetail { display: block; }
.righttextenclosure { padding-left: 268px; }

.righttextbottom
{
	padding-right: 120px;
	clear: left;
}

.breakleft { clear: left; }
table#officelocations td { padding-bottom: 1em; }

div.location
{
	width: 70%;
	padding-bottom: 1em;
}

div.location_pic
{
	width: 240px;
	float: right;
}

div.location_pic
{
	width: 268px;
	float: left;
}

div.location_inf ul
{
	list-style: none;
	padding: 0;
	margin: 0;
}

#projectsbutton
{
	width: 116px;
	padding: 1em 0;
}

.photocaption
{
	font-family: verdana, "trebuchet ms", sans-serif;
	padding: .5em 0 1em 1.50em;
	margin: 0;
	display: block;
	width: 100%;
	background: url(../images/leftarrow.gif) 0px 7px no-repeat;
	color: #A29D8F;
	font-size: .83em;
	text-align: left;
	line-height: 1em;
}

.photocaption.noarrow
{
	background-image: none;
	padding-left: 0;
}

.photocaption.under
{
	background-image: none;
	text-indent: 0;
	text-align: center;
	padding-top: 4px;
}


/* news page styles */
div.newsitem
{
	font-weight: normal;
	color: #666;
	padding-bottom: 1.0em;
}

div.newsitem span
{
	font-weight: normal;
	padding-right: 1em;
	color: #A29D8F;
}

div.newsitem ul
{
	list-style-type: none;
	text-indent: 0;
	margin: 0;
	padding: 0;
}

h2 + div.newsitem { padding-top: .5em; }
div.newsitem.last { padding-bottom: 5em; }

div.newsitem h3
{
	margin: 0;
	padding: 0;
	color: #444;
}

#maincontent div.newsitem ul { list-style-position: outside; }

/* employment page-specific */
#joblist { margin-top: 2em; }
#joblist h2 { margin:0; padding:0; }
#joblist p { margin-left:0; padding-left: 0; }
.jobposition { font-size: 1.17em; font-weight: bold;  }
.jobdescription { font-size: 1em; padding-bottom: 1em; }
.deck { width: 75%; }