body {
	font-family: Arial, sans-serif;
	color: #515151;
	background: url('../images/body_bg.gif') top left repeat-x #FFF;
}

h1 {
	margin: 0 0 5px 0;
	font-size: 150%;
	color: #2A4793;
}

h2 {
	margin: 0 0 10px 0;
	font-size: 110%;
	color: #515151;
	font-weight: normal;
}

h3 {
	margin: 0 0 10px 0;
	font-size: 105%;
	color: #2A4793;
}

p {
	margin: 0 0 10px 0;
	font-size: 95%;
}

p span {
	color: #2A4793;
	font-weight: bold;
}

a {
	color: #515151;
}

hr {
	margin: 20px 0 20px 0;
	padding: 0;
	color: #2A4793;
	border: #2A4793 solid 2px;
	clear: both;
}

/*---------------------- Main Nav ----------------------*/

ul#mainNav {
	margin: 5px 0 0 0;
	list-style: none;
}

ul#mainNav li {
	margin: 0 0 5px 0;
}

ul#mainNav li a {
	display: block;
	width: 200px;
	height: 20px;
	padding: 5px 0 0 10px;
	color: #FFF;
	text-decoration: none;
	background: url('../images/main_nav_li_bg.gif') top left repeat-y;
}

ul#mainNav li a:hover {
	color: #2A4793;
	background-color: #FFF;
	background-image: none;
}

ul#mainNav li ul {
	margin: 5px 0 0 0;
	font-size: 90%;
	list-style: none;
}

ul#mainNav li ul li a {
	background-color: none;
	background-image: none;
}

ul#mainNav li ul li a:hover {
	color: #2A4793;
}

/*---------------------- Structure ----------------------*/

#headerContainer {
	width: 900px;
	margin: 0 auto;
	text-align: right;
	background: url('../images/header_bg.gif') top left no-repeat #C1CADC;
	overflow: hidden;
}

#headerContainer img {
	margin: 0 35px 0 0;
}

#pageContainer {
	width: 900px;
	margin: 0 auto;
	background: url('../images/page_container_bg.gif') top left repeat-y;
	overflow: hidden;
}

#leftContent {
	float: left;
	width: 210px;
	background: #5E77B7;
}

#rightContent {
	float: left;
	width: 670px;
	padding: 20px 0 10px 20px;
	background: #FFF;
}

ul#home-thumbNails {
	clear: both;
	margin: 0 0 10px 0;
	list-style: none;
	overflow: hidden;
}

ul#home-thumbNails li {
	float: left;
	width: 96px;
	height: 96px;
	margin: 0 10px 10px 0;
	border: 2px solid #445CA9;
}

ul#current-thumbNails {
	clear: both;
	margin: 0 0 10px 0;
	list-style: none;
	overflow: hidden;
}

ul#current-thumbNails li {
	float: left;
	width: 150px;
	height: 150px;
	margin: 0 10px 10px 0;
	border: 2px solid #445CA9;
}

ul#additional-thumbNails {
	clear: both;
	margin: 0 0 10px 0;
	list-style: none;
	overflow: hidden;
}

ul#additional-thumbNails li {
	float: left;
	width: 206px;
	height: 206px;
	margin: 0 10px 10px 0;
	border: 2px solid #445CA9;
}

#leftColumn {
	clear: both;
	float: left;
	width: 430px;
	margin: 0 10px 0 0;
	overflow: hidden;
}

#leftColumn ul {
	font-weight: bold;
	margin-left: 20px;
}

#rightColumn {
	float: left;
	width: 210px;
}

.featureBox {
	width: 206px;
	margin: 0 0 10px 0;
	background: #CDD4E0;
	border: 2px solid #445CA9;
}

.featureBox h3 {
	display: block;
	width: 196px;
	height: 20px;
	padding: 5px 0 0 10px;
	color: #FFF;
	font-size: 105%;
	background: url('../images/feature_box_h3_bg.gif') top left repeat-x;
}

.featureBox p {
	margin: 10px;
	font-size: 90%;
	color: #2A4793;
}

.featureBox p span {
	font-weight: bold;
}

.featureBox a {
	color: #2A4793;
}

#footerContainer {
	width: 900px;
	margin: 0 auto;
	color: #2A4793;
	letter-spacing: 0.05em;
	border-top: 5px solid #CDD4E0;
	overflow: hidden;
}

#footerContainer a {
	color: #2A4793;
}

#footerContainer p#bookMark {
	float: left;
	width: 180px;
	padding: 10px 0 0 20px;
}

#footerContainer p#contactInfo {
	float: left;
	width: 670px;
	margin: 0 0 0 10px;
	padding: 10px 0 0 20px;
	font-size: 90%;
}

#footerContainer p#contactInfo span {
	font-weight: bold;
}

/*---------------------- Product/Services Pages ----------------------*/

.beforeAfter {
	clear: both;
	margin: 0 0 10px 0;
	overflow: hidden;
}

.beforeAfter img {
	float: left;
	border: 2px solid #445CA9;
	margin: 0 10px 0 0;
}

.beforeAfter .descriptText {
	float: left;
	width: 205px;
}

body#bodyCarpentry h3,
body#bodyDesign h3,
body#bodyRenovation h3 {
	float: left;
	width: 205px;
	margin: 0 10px 10px 0;
}

/*---------------------- Contact Pages ----------------------*/

#map {
	width: 650px;
	height: 205px;
	margin: 0 0 20px 0;
}

form#contactForm {
	width: 380px;
	padding: 20px;
	margin: 0 0 10px 0;
	background: #CDD4E0;
	overflow: hidden;
}

form#contactForm dl {
	margin: 0 0 10px 0;
}

form#contactForm dl dt {
	margin: 0 0 5px 0;
}

form#contactForm dl dt label {
	font-size: 90%;
	color: #2A4793;
	font-weight: bold;
}

form#contactForm dl dd input {
	width: 200px;
	height: 20px;
	border: none;
}

form#contactForm dl dd textarea {
	font-size: 100%;
	width: 380px;
	height: 200px;
	border: none;
}

body#bodyNews #rightContent hr {
    margin: 20px 0;
}

.newsPhoto {
    float: left;
    margin: 0 10px 10px 0;
}

form#contactForm .invalid {
    color: red;
}
