/* ================================ BASE CSS (based on blueprintcss.org) ======================================== */
/* reset */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}
body {line-height:1.5;}
table {border-collapse:separate;border-spacing:0;}
caption, th, td {text-align:left;font-weight:normal;}
table, td, th {vertical-align:middle;}
blockquote:before, blockquote:after, q:before, q:after {content:"";}
blockquote, q {quotes:"" "";}
a img {border:none;}

/* typography */
body {font-size:75%;color:#686868;background:#fff;font-family: Arial, Helvetica, sans-serif;}
h1, h2, h3, h4, h5, h6 {font-weight:normal;color:#0383c7;}
h1 {font-size:3em;line-height:1;margin-bottom:0.5em;color:#7ab1df;}
h2 {font-size:2.5em;font-weight:bold;color:#0082c6;text-shadow:1px 1px 1px #bbb;margin-bottom:0.5em;}
h3 {font-size:1.42em; font-weight: bold; line-height: 1.25; margin: 0 0 0.5em; }
h4 {font-size:1.08em;font-weight: bold; line-height:1.25;margin-bottom:0.1em;}
h5 {font-size:1em;font-weight:bold;margin-bottom:1.5em;}
h6 {font-size:1em;font-weight:bold;}
h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {margin:0;}
p {margin:0 0 1.5em;}
p img.left {float:left;margin:1.5em 1.5em 1.5em 0;padding:0;}
p img.right {float:right;margin:1.5em 0 1.5em 1.5em;}
p.intro {color: #a34529; font-size: 1.33em;}
p.intro span {color: #462c28;font-weight: bold;}
a:focus, a:hover {color:#2b2b2b;}
a {color:#7ab1df;text-decoration:underline;}
blockquote {margin:1.5em;color:#686868;font-style:italic;}
strong {font-weight:bold;}
em, dfn {font-style:italic;}
dfn {font-weight:bold;}
sup, sub {line-height:0;}
abbr, acronym {border-bottom:1px dotted #686868;}
address {margin:0 0 1.5em;font-style:italic;}
del {color:#686868;}
pre {margin:1.5em 0;white-space:pre;}
pre, code, tt {font:1em 'andale mono', 'lucida console', monospace;line-height:1.5;}
li ul, li ol {margin:0 1.5em;}
ul, ol {margin:0 1.5em 1.5em 1.5em;}
ul {list-style-type:disc;}
ol {list-style-type:decimal;}
dl {margin:0 0 1.5em 0;}
dl dt {font-weight:bold;}
dd {margin-left:1.5em;}
table {margin-bottom:1.4em;width:100%;}
th {font-weight:bold;}
thead th {background:#c3d9ff;}
th, td, caption {padding:4px 10px 4px 5px;}
tr.even td {background:#e5ecf9;}
tfoot {font-style:italic;}
caption {background:#eee;}
.tiny {font-size:9px;line-height:1.2em;}
.small { font-size: 0.92em; }
.med { font-size: 1.08em; }
.large {font-size:1.2em;line-height:2.5em;margin-bottom:1.25em;}
.hide {display:none;}
.quiet {color:#686868;}
.loud {color:#000;}
.highlight {background:#ff0;}
.added {background:#060;color:#fff;}
.removed {background:#900;color:#fff;}
.first {margin-left:0;padding-left:0;}
.last {margin-right:0;padding-right:0;border-right:none;}
.top {margin-top:0;padding-top:0;}
.topmargin { margin-top: 4.5em; }
.bottom {margin-bottom:0;padding-bottom:0;}
.smallspace { margin-bottom: 8px; }
.green { color: #3d870b; }

.message, .form-error { background: #fdf5c9; padding: 10px; border: 2px solid #ffd800; color: #111; font-weight: bold; margin: 0 0 1em; }
.error, .form-error { border-color: #D31145; }

h2 span.sub { display: block; font-size: 60%; }

/* cssform */
form.cssform { width: 360px; }
.cssform input[type="text"],
.cssform textarea { border: 1px solid #ddd; color: #686868; float: left; padding: 4px; width: 350px; }
.cssform textarea { height: 75px; }
.cssform input[type="text"].textsm { width: 200px; float: right; }
.cssform input.required { color: #000; font-weight: bold; }
.cssform input[type="text"]:focus, 
.cssform textarea:focus { background-color: #faf9cc; }
.cssform select.state { float: left;}
.cssform input[type="submit"] 
{	
	background: #d90d64 url('../images/backgrounds/btn.png') repeat-x left bottom;
	border: none;
	color: #fff;
	font-weight: bold;
	margin: 10px 0 0; 
	padding: 5px 10px;
}
.cssform label { display: block; text-align: left; line-height: 2; color: #333; }
.cssform label.labelsm { width: 75px; }
.cssform div { overflow: hidden; margin: 0 0 1em; }

/* ================================ MAIN CSS ======================================== */
body
{
	background: url('../images/backgrounds/mainbg.png');
	text-align: center;
}

#wrapper
{
	background: transparent url('../images/backgrounds/colorband.png') repeat-x center top;
	padding: 10px 0 0;
}

/* header */
#header
{
	background: transparent url('../images/backgrounds/halftone.png') no-repeat left top;
	margin: 0 auto;
	overflow: hidden;
	padding: 15px 0 20px;
	text-align: left;
	width: 960px;
}

#header h1,
#header #logo
{
	float: left;
	font-size: 10px;
	line-height: 1;
	margin: 0;
}

#header #logo { outline: none; }
tt
#header #logo img
{
	display: block;
}

ul#nav,
ul#nav li
{
	list-style: none;
	margin: 0;
	padding: 0;
}

ul#nav
{
	float: right;
	margin: 15px 1px 0 0;
}

ul#nav li
{
	display: block;
	font-size: 14px;
	float: left;
	margin: 0 0 0 15px;
}

ul#nav a
{
	background: url('../images/misc/cropmarks.gif') no-repeat -9999px -9999px;
	color: #2b2b2b;
	cursor: pointer;
	display: block;
	font-weight: bold;
	height: 40px;
	line-height: 40px;
	padding: 0 0 0 15px;
	text-decoration: none;
}

ul#nav span
{
	background: url('../images/misc/cropmarks.gif') no-repeat -9999px -9999px;
	display: block;
	height: 40px;
	line-height: 40px;
	padding: 0 15px 0 0;
}

ul#nav a.current { background-position: left top; }
ul#nav a.current span { background-position: right bottom; }

ul#nav a:hover,
ul#nav a.current { color: #7ab1df; }


/* content */
#main
{
	background: transparent url('../images/backgrounds/papertop.png') no-repeat right top;
	margin: -12px auto;
	padding-top: 62px;
	width: 960px;
}

#feature
{
	background: transparent url('../images/backgrounds/line.png') no-repeat right bottom;
	margin-top: -52px;
	min-height: 210px;
	padding: 0 460px 0 0;
	position: relative;
	text-align: left;
}

#feature h2 { margin-bottom: 10px; }

#feature p { font-size: 1.25em; margin: 0; padding-right: 80px; }

#feature img
{
	bottom: 0;
	display: block;
	position: absolute;
	right: 0;
}

#about-feature
{
	background: #fff url('../images/backgrounds/bluegradient.png') no-repeat center top;
	padding-top: 24px;
}

#about-feature ul,
#about-feature li
{
	margin: 0;
	padding: 0;
	list-style: none;
}

#about-feature ul 
{ 
	margin: 0 0 32px;
	overflow: hidden; 
}

#about-feature li
{
	float: left;
	padding: 0 20px;
	width: 248px;
}

#about-feature p { margin: 0; }

#cggmap
{
	background: url("../images/backgrounds/line.png") no-repeat right bottom transparent;
	margin: 0 0 16px;
	overflow: hidden;
	padding: 0 0 32px;
	text-align: left;
}

#cggmap p
{
	color: #0383c7;
	float: left;
	font-size: 1.5em;
	line-height: 1.22;
	margin: 22px 0 0;
	width: 340px;
}

#cggmap img
{
	display: block;
	float: right;
}

.content
{
	background: #fff url('../images/backgrounds/dashes.png') no-repeat center bottom;
	padding: 20px 48px;
	text-align: left;
}

.content-half { width: 408px; }
.content-left { float: left; }
.content-right { float: right; }

#content-home { text-align: center; }

.top
{
	background: transparent url('../images/backgrounds/dashes.png') no-repeat center bottom;
	margin: -52px 0 0 -48px;
	padding: 0 48px 24px;
	text-align: left;
	width: 864px;
}

.top p:last-child { margin-bottom: 0; }

.top img
{
	display: block;
	float: right;
	margin: 0 0 20px 20px;
}

.maincontent
{
	padding-top: 24px;
	min-height: 200px;
}

.contentimage
{
	border: 1px solid #eeeeee;
	float: left;
	margin: 0 20px 1em 0;
	padding: 3px;
}

.contentimage img { display: block; }

/* green */
ul#greenlist,
ul#greenlist li
{
	list-style: none;
	margin: 0;
	padding: 0;
}

ul#greenlist 
{ 
	float: left;
	width: 390px; 
}

ul#greenlist li { margin-bottom: 1em; }

/* products */
h2#specialties { margin-bottom: 30px; }

ul#products,
ul#products li,
ul#staff,
ul#staff li
{
	list-style: none;
	margin: 0;
	padding: 0;
}

ul#products
{
	overflow: hidden;
	width: 893px;
}

ul#products li
{
	float: left;
	margin: 0 29px 40px 0;
	text-align: center;
	width: 194px;
}

ul#products li.firstproduct { margin-left: 97px; }

ul#products .imgcontainer
{
    display: table-cell;
    height: 134px;
    text-align: center;
    vertical-align: middle;
    width: 194px;
}

ul#products img
{
	display: block;
	max-height: 134px;
	max-width: 194px;
	margin: 0 auto;
    vertical-align: middle;
}

ul#products h3
{
	background: url('../images/backgrounds/shortline.png') no-repeat center bottom;
	font-size: 1.17em;
	padding: 0 0 14px;
}

ul#products h3 a
{
	color: #686868;
	text-decoration: none;
}

ul#products h3.highlight a,
ul#products h3 a:hover { color: #7ab1df; }


/* staff */
ul#staff li
{
	margin: 0 0 13px;
	overflow: hidden;
}

ul#staff .staffimage
{
	background: #fff;
	border: 1px solid #eeeeee;
	float: left;
	margin: 0 24px 0 0;
	padding: 3px;
}

ul#staff .staffinfo
{
	float: left;
	width: 740px;
}

.staffimage img { display: block; }

ul#staff h3
{
	color: #2b2b2b;
	font-size: 1.08em;
	margin: 0;
}

ul#staff h3 span
{
	color: #686868;
	font-style: italic;
	font-weight: normal;
}

ul#staff p 
{ 
	font-size: 0.92em; 
	line-height: 1.3;
}

ul#staff p.contact
{
	line-height: 1.5;
}

ul#staff strong { color: #444; }

/* capabilities */
#capabilities h4{font-size:14px; text-transform:uppercase; margin-top:20px;}
#capabilities h4:first-child{margin-top:0;}
#capabilities .cap-name { /*padding: 5px 0;*/list-style-type:circle; }
#capabilities a{text-decoration:none;}
#capabilities a:hover{text-decoration:underline;}
#capabilities h4 a{color:#0383C7;}
#capabilities .cap-name a{color:#686868;}
#capabilities .cap:last-child{margin-bottom:10px;}
#capabilities .cap-name{margin-bottom:3px;}
#capabilities .cap
{
	/*border-top: 1px solid #ddd;*/
	border-bottom: 1px solid #DDD;
	overflow: hidden;
	/*padding: 18px 0;*/
	padding:15px 0;
}
#capabilities #last{border-bottom:none;}
#capabilities .cap:first-child { border-top: none; }

#capabilities h3
{
	color: #2b2b2b;
	font-size: 1em;
}

#capabilities .cap-info
{
	float: left;
	width: 200px;
}

#capabilities .cap-images
{
	float: right;
	width: 590px;
}

#capabilities .cap-images img
{
	display: block;
	float: left;
	margin: 0 0 0 10px;
}

#capabilities .cap-images img:first-child { margin-left: 0; }

#capabilities table
{
	margin: 0 0 0 28px;
}

#capabilities td
{
	font-size: 0.92em;
	line-height: 1;
	margin: 0;
	padding: 5px 0 5px 10px;
}

#capabilities td.cap-name 
{ 
	padding: 5px 0; 
}

#capabilities td.cap-name span
{
	border-right: 1px solid #ccc;
	display: block;
	padding: 0 5px 0 0;
}

/* footer */
#footer
{
	background: transparent url('../images/backgrounds/paperbtm.png') no-repeat right bottom;
	clear: both;
	color: #a3a3a3;
	margin: 0; 
	text-align: center;

	
	min-height: 60px;
	overflow: hidden;
	/*padding: 15px 48px;*/
}

#footer ul,
#footer ul li
{
	list-style: none;
	margin: 0;
	padding: 0;
	
}

#footer ul
{
	/*float: left;*/
	/*margin: 0 0 18px;*/
	overflow: hidden;
	text-align: center;
	padding-top: 5px;	
	
}

#footer ul.address { 
	/*float: left;*/
	text-align: center;
	margin: 0 0 5px;
	padding: 5px 0 0;
}

#footer ul li
{
	background: url('../images/misc/plus.png') no-repeat left center;
	color: #7AB1DF;
	/*float: left; */
	line-height: 1;
	padding: 0 5px 0 10px;
	display: inline;

}

#footer ul li:first-child {background: none; padding-left: 0; }

#footer li a { text-decoration: none; }

#footer ul.address li { /*font-size: 1.25em; */}

p#copyright
{
	clear: both;
	font-size: 0.75em;
	text-align: center;
	margin: 5px 0 24px;
}

/* clear fix */
ul#nav:after,
#main:after,
.content:after,
.clearfix:after { 
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

/*///////////////////////////////////
TWEAKS
///////////////////////////////////*/
/*about us page*/
.pBMar5{margin-bottom:5px;}
#imageryLink{margin:0 0 40px 0;}
#imageryLink .imageryLink{color:#A3A3A3; text-decoration:none; font-size:10px;}
#imageryLink .imageryLink:hover{text-decoration:underline; color:#7AB1DF;}

/*capabilities page*/
/*.capTable{margin:0; padding:0;}
.capTable th{font-size:15px;color:#0383c7; padding: 0 0 5px 0; margin:0;}
.capTable td{margin:0; padding:0; vertical-align:top; width:50%;}
.capTable h3{color: #2b2b2b;font-size: 1em;}
.capTable li{list-style-type:none;font-size: 0.92em;line-height: 1;margin: 0; padding: 5px 0 5px 10px;}*/
