@charset "utf-8";

/* Base Styles
************************************************************************** */
body  {
	font: 90% Arial, Helvetica, sans-serif;
	margin: 0; /* it's good practice to zero the margin and padding of the body element to account for differing browser defaults */
	padding: 0;
	text-align: center; /* this centers the container in IE 5* browsers. The text is then set to the left aligned default in the #container selector */
	color: #000000;
}
h1,h2,h3,h4,p{
	margin:0;
	padding:0;
}
a {
	text-decoration:none;
}
a:hover {
	text-decoration:underline;
}
img {
	border:none;
}

/* Layout
************************************************************************** */
#container { 
	width: 920px;  
	margin: 0 auto; /* the auto margins (in conjunction with a width) center the page */
	border: 1px solid #000000;
	text-align: left; /* this overrides the text-align: center on the body element. */
} 

/* header */
#header {
	height: 130px;
	margin: 0;
	padding: 0 50px;
	position: relative;
	background: url(../_images/background_header.gif) no-repeat top right;
}
#header img {
	position:absolute;
	bottom:20px;
	left:50px;
}
#tagline {
	position:absolute;
	bottom:0px;
	right:50px;
	text-align: right;
}

/* sidebar/navigation */
#sidebar {
	float: left; /* since this element is floated, a width must be given */
	width: 220px; 
	margin: 40px 0 0 0;
	padding: 0 0 0 50px;
}
ul#navigation {
	margin:0;
	padding:0;
	list-style-type:none;
}
ul#navigation li ul {
	margin-left:0;
	padding-left:0;
	list-style-type:none;
}

/* content area */
#mainContent {
	margin: 35px 0 0 300px; /* the left margin on this div element creates the column down the left side of the page*/
	padding: 0 50px 0 0;
	background-color: ;
} 

/* footer */
#footer { 
	padding: 0 10px 0 50px; /* this padding matches the left alignment of the elements in the divs that appear above it. */
	margin-top:20px;
	height: 300px;
	background:url(../_images/background_footer.gif) no-repeat top right;
} 
#footer ul#footerLinks {
	float:left;
	list-style-type: none;
	padding: 3px 0;
	margin: 0;
	width:100%;
}
#footer ul#footerLinks li {
	display:inline;
	float:left;
	padding: 0;
	margin: 0;
}
#footer ul#footerLinks li a {
	float: left;
	display: block;
	margin: 0;
	padding: 0 5px;
}

/* home page */
#mainImage{
	border:1px solid #666;
	border:1px solid #ccc;
/*	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; */
}
#blurbs {
	width:100%;
	margin-top:20px;
}
#blurbs div {
	float:left;
}
#blurbTwo {
	margin: 0 15px;
}
#blurbThree {
	margin: 0;
}
#blurbs div>div {
	height:148px;
	width: 148px;
	border:1px solid #ccc;
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
	padding:15px;
}
/* misc */
.column {
	width:275px;
	float:left;
}
.floatRight,
.floatRight300,
.floatRight200 { /* this class can be used to float an element right in your page. The floated element must precede the element it should be next to on the page. */
	float: right;
	margin-left: 8px;
}
.floatRight300 p,
.floatRight200 p{ /* 300px wide float for containing caption */
	color: #666;
	font-style:italic;
	margin-bottom: 15px;
}
.floatRight300 {
	width:300px;
}
.floatRight200 {
	width:200px;
}
.floatLeft { /* this class can be used to float an element left in your page */
	float: left;
	margin-right: 8px;
}
.clearFloat { /* this class should be placed on a div or break element and should be the final element before the close of a container that should fully contain a float */
	clear:both;
    height:0;
    font-size: 1px;
    line-height: 0px;
}

/* Typography
************************************************************************** */
h1, h2 {
	color: #4154c2;
}
h1 {
	font-size:1.75em;
}
h2 {
	font-size:1.2em;
	color:#4e65e9;
}
h3 {
	font-size:1em;
}
h4 {
	font-size:1em;
	font-weight:normal;
	font-style:italic;
}
p {
	margin-bottom: 20px;
	font-size:1em;
	line-height:1.4em;
}
ol,ul{
	line-height:1.3em;
}
h2+ol,
h2+ul,
h3+ol,
h3+ul{
	margin-top:5px;
	margin-bottom:10px;
}
.externalLink {
	padding-left:12px;
	background:url(../_images/Icon_External_Link.png) no-repeat center left;
}

/* header */
#tagline {
	font-family:Georgia, "Times New Roman", Times, serif;
	font-style:italic;
	letter-spacing:0.05em;
	font-size:1.1em;
	color: #4154c2;
}

/* sidebar navigation */
/* top-level page links */
ul#navigation {
	border-bottom:1px solid #777;
	margin-top:0;
	margin-bottom:0;
}
ul#navigation li {
	border-top:1px solid #777;
}
ul#navigation li a {
	line-height:1.5em;
	display:block;
	padding-left:10px;
	padding: 3px 0 3px 10px;
	width:210px;
	color:#777;
	text-transform:uppercase;
	letter-spacing:0.05em;
}
ul#navigation li a:hover {
	color:#4154c2;
	text-decoration:none;
}
body.home li#home>a,
body.services li#services>a,
body.projects li#projects>a,
body.about li#about>a,
body.contact li#contact>a {
	color:#fff;
	background-color:#4154c2;
}

/* subpage links */
ul#navigation li ul {
	margin-top:0;
	margin-bottom:0;
}
ul#navigation li li+li { /* gives a top border to the 2nd+ li item */
	border-top:1px dotted #666;
}
ul#navigation li li a {
	color:#4154c2;
	text-transform:capitalize;
	letter-spacing:0;
	padding-left: 30px;
	width:190px;
}
ul#navigation li li a:hover {
	background:url(../_images/nav_bullet.gif) no-repeat 20px center;
}
body#litigationSupport li#litigationSupport a,
body#investigations li#investigations a,
body#stuccoDistress li#stuccoDistress a,
body#flagpoles li#flagpoles a,
body#clients li#clients a,
body#principal li#principal a{
	background:url(../_images/nav_bullet.gif) no-repeat 20px center;
}

/* footer */
#footer {
	position:relative;
	font-size:0.8em;
	color:#777;
	padding-top:5px;
}
#footer ul {
	margin: 0; /* zeroing the margins of the first element in the footer will avoid the possibility of margin collapse - a space between divs */
}

#footer a:visited {
	color:#777;
}
#footer a {
	color:#777;
}
#footer a:hover{
	color:#333;
}
#footer #credits {
	text-align:right;
	position:absolute;
	top:5px;
	right:50px;
}

/* home page */
#blurbs h2 {
	text-transform:uppercase;
	font-weight:normal;
	font-size:1.2em;
}

/* contact page */
#contactForm { 
	display: block; 
	width: 500px; 
	margin-top:10px;
	padding: 25px; 
	border: 1px solid #cbcbcb; 
	background-color: #FFF; 
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
	color: #666;
	font-family:Arial, Helvetica, sans-serif;
	}
label,legend {
}
#contactForm p {
	margin-bottom:0px;
}
hr { 
	color: inherit; 
	height: 0; 
	margin: 6px 0 6px 0; 
	padding: 0; 
	border: 1px solid #d9d9d9; 
	border-style: none none solid; 
}
label { 
	display: inline-block; 
	float: left; 
	height: 26px; 
	line-height: 1.5em; 
	width: 125px; 
}
input, textarea { 
	margin: 0; 
	padding: 5px; 
	color: #333; 
	background: #f5f5f5; 
	border: 1px solid #ccc; 
	margin: 5px 0; 
	font-family: Arial, Helvetica, sans-serif; 
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
}   
input#name,
input#email {
	width:250px;
}
input#subject,
textarea#comments{
	width:350px;
}
input:focus, textarea:focus, select:focus { 
	border: 1px solid #999; 
	background-color: #fff; 
	color:#333; 
	}
input.submit { 
	cursor: pointer; 
	border: 1px solid #222; 
	background:#333; 
	color:#fff; 
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
	}
input.submit:hover { 
	background:#444; 
	}
fieldset { 
	padding:20px; 
	border:1px solid #eee; 
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
	}
legend { 
	padding:7px 10px; 
	font-weight:bold; 
	color:#000; 
	border:1px solid #eee; 
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
	}
span.required{ /* Select the colour of the * if the field is required. */
	font-size: 13px; 
	color: #ff0000; 
	} 
.error_message { 
	display: block; 
	height: 22px; 
	line-height: 22px; 
	background: #FBE3E4 url('../_images/error.gif') no-repeat 10px center; 
	padding: 3px 10px 3px 35px; 
	margin: 10px 0; 
	color:#8a1f11;
	border: 1px solid #FBC2C4; 
	-moz-border-radius: 5px; 
	-webkit-border-radius:5px; 
	}
.errorHighlight {
	border:1px solid #fa757a;
}
#succsess_page h1 { 
	background: url('../_images/success.gif') left no-repeat; 
	padding-left:22px; 
	}

/* Borders & Background
************************************************************************** */
body{
	background: #1f285c url(../_images/background.jpg) repeat-x top left;
}
#container {
	background:#fff;
}
#header{
	border-bottom:1px solid #999;
}
#header h3 span {
	background:url(../_images/logo.gif) no-repeat top left;
	width:220px;
	height: 74px;
}
#sidebar {
	background:#fff;
}
#footer { 
	border-top:1px solid #999; 
} 

