/* --------------------------------------------
   DEFAULTS
-------------------------------------------- */
body {
	margin: 0;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	color: #fff;
	font-size: 12px;
	background: #b6bfcc url(../images/page-bg.gif) repeat-y;
}
a {
	color: #d6dce5;
	text-decoration: underline;
}
a:hover {
	color: #fff;
}
/* --------------------------------------------
   WHOLE PAGE
-------------------------------------------- */
#pagearea {
	width: 780px;
}
#contentwrapper {
	background: url(../images/column-bg.gif) repeat-y;
}
.clear {
	clear: both;
	height: 0;
	overflow: hidden;
}
.clearfix:after {
     content: "."; 
     display: block; 
     height: 0; 
	 font-size: 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 */
/* --------------------------------------------
   HEADER
-------------------------------------------- */
#header {
	height: 171px;
	background: url(../images/header-bg.gif) no-repeat 0 0;
	position: relative;
}
#header h1.logo {
	width: 339px;
	height: 171px;
	clear: left;
	float: left;
	margin: 0;
}
#header h1.logo a {
	display: block;
	width: 339px;
	height: 171px;
	background: url(../images/logo.gif) no-repeat 0 0;
	text-indent: -9999px;
	overflow: hidden;
}
#header .phone-number {
	width: 333px;
	height: 39px;
	float: right;
	margin: 3px 55px 0 0;
	background: url(../images/phone-number.gif) no-repeat 0 0;
	text-indent: -9999px;
	overflow: hidden;
	display: inline;
}
#header .phone-numbers {
	font-weight: bold;
	position: absolute;
	top: 10px;
	line-height: 17px;
	right: 10px;
}
#header .phone-numbers .num-loc {
	float: left;
	width: 100px;
}
#header .phone-numbers .num-num {
	float: left;
}
#header .phone-numbers br {
	clear: both;
}
#header h3 {
	width: 315px;
	margin: 0;
	padding: 15px 120px 0 0;
	float: right;
	text-align: center;
	font-size: 12px;
	line-height: 17px;
	font-weight: bold;
}
#header h3 strong {
	display: block;
	margin-right: 120px;
	margin-bottom: 5px;
	font-size: 15px;
}
#header #skiplink {
	height: 1px;
	width: 1px;
	position: absolute;
	top: 0;
	right: 0;
	color: #525a62;
	overflow: hidden;
}
/* --------------------------------------------
   LEFT COLUMN / NAV
-------------------------------------------- */
#nav {
	width: 136px;
	float: left;
	padding: 0 0 20px 0;
	background: url(../images/nav-top.gif) no-repeat 0 0;
}
#nav ul {
	margin: 42px 0 0 0;
	padding: 0;
	list-style-type: none;
}
#nav li {
	margin: 8px 0;
}
#nav li a {
	display: block;
	width: 111px;
	padding: 3px 15px 3px 10px;
	color: #fff;
	text-decoration: none;
	background: url(../images/nav-bg.gif) repeat-y;
}
#nav li a:hover {
	background-image: url(../images/nav-bg-over.gif);
}
#nav .sidecontent {
	padding: 0 10px;
	margin: 20px 0 0 0;
}
#nav .sidecontent h3 {
	margin: 0;
	font-size: 14px;
}
#nav .sidecontent ul {
	margin: 12px 0;
	padding: 0 0 0 15px;
	list-style-type: disc;
}
#nav .photo {
	font-size: 10px;
	line-height: 15px;
}
#nav .photo img {
	border: 3px solid #fff;
	margin: 0 0 5px 0;
}
/* --------------------------------------------
   RIGHT COLUMN / CONTENT
-------------------------------------------- */
#content {
	width: 603px;
	float: right;
	padding: 20px;
	line-height: 150%;
}
#content h1 {
	margin-top: 0;
	font-size: 24px;
	line-height: 27px;
	font-weight: normal;
	color: #f0f1f2;
}
#content h2 {
	font-size: 18px;
	line-height: 21px;
}
#content h3 {
	font-size: 14px;
	line-height: 17px;
}
#content ul, #content ol {
	margin: 12px 0 12px 0;
	padding: 0 0 0 30px;
}
#content li {
	margin: 9px 0;
}
#content .leftcol {
	width: 290px;
	float: left;
}
#content .rightcol {
	width: 290px;
	float: right;
}
#content .center {
	text-align: center;
}

a.freeestimates {
	display: block;
	width: 176px;
	padding: 10px;
	margin: 30px 0 30px 50px;
	text-align: center;
	font-size: 17px;
	line-height: 25px;
	color: #bf2a1d;
	text-decoration: none;
	background-color: #dfe4eb;
	border: 2px solid #fff;
}
a.freeestimates:hover {
	background-color: #c8d1de;
	color: #bf2a1d;
}
a.freeestimates .click {
	font-weight: bold;
}
a.freeestimates .free {
	font-weight: bold;
}
/* --------------------------------------------
   FOOTER
-------------------------------------------- */
#footer {
	padding: 240px 15px 15px 15px;
	background: #b6c7d7 url(../images/footer.jpg) no-repeat;
	border-top: 2px solid #fff;
	color: #000;
}
#footer .call {
	float: left;
	padding: 0 30px 0 0;
	font-weight: bold;
	font-size: 15px;
	line-height: 20px;
}
#footer .call .num-loc {
	font-size: 13px;
	float: left;
	width: 100px;
}
#footer .call .num-num {
	float: left;
	font-size: 13px;
}
#footer .call br {
	clear: both;
}
#footer .call small {
	font-size: 12px;
}
#footer .license {
	float: left;
	font-weight: bold;
}
#footer img.cards {
	float: right;
	margin: 0 0 0 20px;
}
#footer img.scd {
	float: right;
}

/* --------------------------------------------
   PAGE-SPECIFIC
-------------------------------------------- */

/* ------------ HOME PAGE ------------ */
#content h1.homepage {
	font-size: 19px;
}
.homephoto {
	float: right;
	width: 160px;
	margin: 0 0 20px 20px;
	font-size: 10px;
	line-height: 15px;
}
.homephoto img {
	border: 5px solid #fff;
	margin: 0 0 5px 0;
}
p.ourservices {
	margin-bottom: 20px;
	padding-right: 180px;
	text-align: center;
	font-weight: bold;
	font-style: italic;
	font-size: 14px;
}
a.freeestimates.home {
	width: 289px;
}

/* ------------ BACKFLOW ------------ */
a.faq {
	float: right;
	padding: 3px 10px;
	margin: 0;
	color: #bf2a1d;
	text-decoration: none;
	font-weight: bold;
	background-color: #dfe4eb;
	border: 2px solid #fff;
}
a.faq:hover {
	background-color: #c8d1de;
}

/* ------------ CONTACT ------------ */
form.contactform {
	margin: 0;
}
.contactform td {
	vertical-align: top;
}
.contactform td.input {
	padding: 5px 0;
}
.contactform td.label {
	padding: 3px 10px 0 0;
	text-align: right;
}
.contactform td.label label:after {
	content: ":";
}
.contactform sup {
	color: #ff1500;
	font-size: 10px;
	line-height: 8px;
}
.contactform .textbox {
	width: 200px;
	padding: 2px;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 12px;
	border: 1px solid #161f2c;
	background-color: #ecf0f5;
}
.contactform textarea.textbox {
	width: 300px;
	height: 150px;
}
.contactform .button {
	padding: 2px 10px;
	background: #b4c7e2;
	border: 1px solid #ecf0f5;
	color: #1f2834;
	font-weight: bold;
	cursor: pointer;
}
.error-messages {
	margin: 15px 0;
	padding: 5px 15px;
	color: #78241d;
	background-color: #dfe4eb;
}