/* -------------------------------------------------------------- 
	Resets default browser CSS   
-------------------------------------------------------------- */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
/* remember to define focus styles! */
:focus {
	outline: 0;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
html {
	overflow: scroll;
}
/* -------------------------------------------------------------- 
   typography.css
-------------------------------------------------------------- */

body {
	font-size: 75%;
	color: #333;
	font-family: Arial, Helvetica, Verdana, sans-serif;
	line-height: 1.2;
}
h2 {
	font-size: 1.4em;
	margin: 5px 10px 10px 10px;
}
h3 {
	font-size: 1.3em;
	margin: 5px 10px;
}
h4 {
	font-size: 1em;
	margin:  5px 10px;
}
h5 {
	font-size: 1.1em;
	margin:  5px 10px;
}
h6 {
	font-size: 1em;
	margin:  5px 10px;
}
p, ul, dl {
	font-size: 1.1em;
	margin: 5px 10px 15px 10px;
}
img {
	vertical-align: bottom;
	margin: 5px 10px;
}
p img {
	float: left;
	margin-left: 0;
}
ul {
	list-style-type: disc;
}
ol {
	list-style-type: decimal;
}
a {
	color: #ff0000;
	text-decoration: underline;
}
a:focus, a:hover {
	color: #ff0000;
	text-decoration: none;
}
strong {
	font-weight: bold;
}
em {
	font-style: italic;
}
dt {
	font-weight: bold;
}
h3, h4 {
	color: #0B4FA1;
}
.message h3 {
	color: #fff;
}
/* Some default classes
-------------------------------------------------------------- */

.small {
	font-size: .8em;
}
.large {
	font-size: 1.2em;
	line-height: 2.5em;
	margin-bottom: 1.25em;
}
.top {
	margin-top:0;
	padding-top:0;
}
.bottom {
	margin-bottom:0;
	padding-bottom:0;
}
.clear {
	clear: both;
}
.padding {
	padding: 10px 0;
}
.hide {
	position:absolute;
	left:-9990px;
	top:0px;
	width:1px;
	height:1px;
	overflow:hidden;
}
.hide2 {
	visibility: hidden;
}
.sub {
	font-size: 50%;
}
.left {
	float: left;
}
.right {
	float: right;
}
.divider {
	background: #c8c7c7;
	height: 1px;
	clear: both;
	margin: 7px 0px 0px 0px;
}
.column {
	float: left;
}
.autowidth {
	width: auto;
}
.center {
	text-align: center;
}
.bigtext {
	font-size: 2.2em;
	font-weight: bold;
	text-align: center;
}
/* -------------------------------------------------------------- 
	=Layout 
-------------------------------------------------------------- */

body {
	background: #deedf9 url(/images/bg.gif) repeat-x;
	height: 100%;
}

body.realestate {
	background: #e8ecf4 url(/images/realestate/bg.gif) repeat-x;
}
body.contractor {
	background: #dfe8f3 url(/images/contractor/bg.gif) repeat-x;
}
.container {
	width: 750px;
	margin: 0px auto 0 auto;
}
.content {
	float: left;
	width: 100%;
	clear: both;
	margin-top: 13px;
	margin-bottom: 0px;
}
.maincontent {
	float: left;
	width: 572px;
}
.sidecontent {
	float: right;
	margin-top: 8px;
	width: 168px;
}
.explanation {
	float: left;
}
.explanation {
	background: #fff url(/images/divider.gif) repeat-y 370px 0;
	padding: 10px 0;
}
.section1 {
	width: 375px;
}
.section2 {
	width: 375px;
}
/* home layout */

/* =category layout */

/* footer */

#footer {
	clear: both;
	margin-bottom: 50px;
	font-size: .9em;
	overflow: hidden;
	min-height: 108px;
	width: 100%;
	background:url(/images/footer_bg2.gif) repeat-x;
}
#footer ul {
	margin: 0;
	padding: 6px 0;
	text-align: center;
	border-left: 1px solid #ae0808;
	border-right: 1px solid #ae0808;
}
#footer li {
	display: inline;
	list-style: none;
}
#footer a {
	padding-right: 5px;
	margin-right: 5px;
	line-height: 1;
	font-style: normal;
	color:#FDDEDE;
}
#footer .copyright a {
	color: #FF0000;
}
#footer .last a {
	padding: 0;
	margin: 0;
	border: none;
}
#footer .branding {
	margin: 25px 0;
	font-style: italic;
	font-weight: bold;
	color: #616161;
	text-align: center;
	line-height: 2;
}
#footer .branding img {
	margin: 0;
}
#footer .branding .logo1, #footer .branding span {
	float: left;
}
#footer .branding .logo1 {
	margin-right: 20px;
	visibility: hidden;
}
#footer .branding .logo2 {
	float: right;
}
#footer span.copyright {
	width: 475px;
	line-height: 1;
}
/* header
-------------------------------------------------------------- */

.header {
	height: 98px;
}
.logo {
	float: left;
	padding-top: 10px;
}
.logo img {
	margin: 0;
}
.logo .tagline {
	display: block;
	margin-top: 4px;
	color: #666;
}
#dashboard {
	float: right;
	width: 525px;
	background: url(/images/form_bg.gif) right top no-repeat;
	height: 88px;
}
#utilitynav {
	margin: 10px 0 0 0;
	list-style: none;
	float: right;
}
#dashboard #utilitynav {
	margin: 0px 0 0 0;
	float: left;
	padding-top: 10px;
}
#utilitynav li {
	float: left;
	font-weight: bold;
	font-size:12px;
	background: url(/images/divider2.gif) right top repeat-y;
	padding-right: 10px;
}
#utilitynav li.last {
	background: none;
	padding-right: 0px;
}
.greeting {
	margin-right: 0;
}
#toplogin {
	text-align: right;
	color: #fff;
}
#toplogin a {
	color: #fff;
}
#loginform {
	margin: 0 6px 0 0;
	float: right;
	text-align: right;
	display: inline;
	width: 247px;
}
#loginform ol {
	margin: 0;
}
#loginform li {
	margin-bottom: 6px;
}
#loginform input {
	margin-left: 2px;
}
#loginform input.text {
	width: 154px;
	border: none;
}
#loginform input.checkbox {
	margin: 0;
	border: none;
}
#loginform input.submit {
	float: right;
	text-align: left;
}
#loginform span {
	float: left;
	text-align: left;
	font-size: .9em;
	line-height: 10px;
}
#loginform span.notmember {
	width:93px;
}
#loginform span.forgot {
	margin-left: 110px;
	font-size: .85em;
	margin-top: 3px;
}
a.arrow {
	padding-left: 10px;
	background: url(/images/alt_arrow.gif) left 3px no-repeat;
}
.loggedin {
	background: url(/images/divider3.gif) left 28px repeat-x;
	width: 170px;
	float: right;
	padding-right: 40px;
	margin-right: 10px;
}
.loggedin a {
	margin-left: 10px;
}
/* =nav
--------------------------------------------------------------- */
#navcontainer {
	clear: both;
	background:url(/images/nav.gif) no-repeat;
	height:36px;
	margin-top: -22px;
	float: left;
	width: 100%;
}
#nav {
	float:left;
	position:relative;
	margin: 0;
}
#nav li {
	float:left;
	list-style: none;
}
#nav li a {
	position: absolute;
	top:0;
	display:block;
	height:36px;
	background:url(/images/nav.gif);
	text-indent:-9999px;
	overflow:hidden;
	font-size:1%;
}
li#homeowners a {
	left:0;
	width:126px;
}
li#professionals a {
	left:126px;
	width:224px;
	background-position:-126px 0;
}
li#contractors a {
	left:350px;
	width:131px;
	background-position:-350px 0;
}
/* hover states */
li#homeowners a:hover {
	background-position:0 100%;
}
li#professionals a:hover {
	background-position:-126px 100%;
}
li#contractors a:hover {
	background-position:-350px 100%;
}
/* you-are-here navigation marker */
li#homeowners.current a {
	background-position:0 -36px;
}
li#professionals.current a {
	background-position:-126px -36px;
}
li#contractors.current a {
	background-position:-350px -36px;
}
.toplinks {
	float: right;
	position: relative;
	z-index: 2;
	top: 8px;
	font-size: 1.1em;
	margin: 8px 0 0 0;
}
.toplinks a {
	color: #fff;
	background: url(/images/alt_arrow.gif) left 3px no-repeat;
	padding-left: 10px;
	margin-left: 10px;
}
/* forms
-------------------------------------------------------------- */

form ol {
	list-style: none;
	margin: 0 0px 0 20px;
}
form li {
	margin-bottom: 15px;
}
input.text {
	width: 210px;
	border: 1px solid #7d7d7d;
}
input.largetext {
	width: 360px;
}
input.mediumtext {
	width: 180px;
}
input.smalltext {
	width: 68px;
}
.textarea {
	width: 210px;
	height: 120px;
	border: 1px solid #7d7d7d;
}
.select {
	border: 1px solid #7d7d7d;
	width: 125px;
}
.largeselect {
	width: 360px;
}
.label {
	display: block;
}
label.checkboxlabel, label.radiolabel {
	display: inline;
}

.quoteform {
	background: url(/images/form_bg_3.png) left bottom no-repeat;
	min-height: 301px;
	width: 329px;
	margin-top: 7px;
	font-weight: bold;
	margin: 15px auto 7px auto;
}

form.quoteform li {
	list-style: decimal;
	font-size: 1.3em;
	margin-bottom: 10px;
}
#yearbuilt {
	margin-top: 10px;
	list-style: none;
}
form.quoteform li.submit {
	list-style: none;
}
form.quoteform li .label {
	font-size: .9em;
	margin-bottom: 2px;
}
form.quoteform li .smlabel {
	font-size: 80%;
	font-weight: normal;
}
form.quoteform ol {
	margin-left: 34px;
}
form.quoteform li li {
	list-style: none;
	font-size: .9em;
	margin-bottom: 0px;
	font-weight: normal;
}
form.quoteform ol ol {
	margin-left: 0;
}
form.quoteform input.text {
	width: 125px;
	background: url(/images/input_bg.gif) repeat-x;
	margin-right: 5px;
}
form.quoteform input.smtext {
	width: 47px;
}
form.quoteform .smallselect {
	width: 55px;
}
form.quoteform input.mediumtext {
	width: 90px;
}
form.quoteform input.largetext {
	width: 206px;
}
form.quoteform .select {
	margin-right: 5px;
}
form.quoteform span.small {
	display: block;
}
img.legend {
	margin: 0;
	padding: 10px 95px 8px 15px;
	background: url(/images/form_bg_3.png) left top no-repeat;
	margin-top: -8px;
}
form.location ol {
	margin-left: 10px;
	margin-top: 10px;
	margin-bottom: 0;
}
form.location li {
	float: left;
	margin-bottom: 0;
	background: none;
	padding-left: 0;
	margin-left: 0;
}
form.location input.text {
	width: 100px;
	background: url(/images/input_bg.gif) repeat-x;
	margin-right: 5px;
	margin-top: 2px;
	padding-left: 6px;
}

/* get a quote error treatment */

form.quoteform .errormessage {
	background: #FE0000 url(/images/error_bg_2_bottom.gif) left bottom no-repeat;
}
form.quoteform .errormessage .top {
	background: #FE0000 url(/images/error_bg_2.gif) left top no-repeat;
}
form.quoteform span.error {
	margin-top: 0px;
	float: none;
	padding: 3px;
}
form.quoteform .error input.text, form.quoteform .error .select {
	margin-right: 0;
}
form.quoteform .errormessage p {
	font-size: 90%;
}
/* end get a quote error treatment */


.moreinfo {
	background:url(/images/arrow.gif) left top no-repeat;
	padding-left: 15px;
}
ul.moreinfo {
	padding-left: 0;
	margin-top: 15px;
	background: none;
}
ul.moreinfo li {
	background:url(/images/arrow.gif) left center no-repeat;
	padding-left: 13px;
	list-style: none;
	margin-bottom: 3px;
	font-size: .85em;
}