html,
body {
	height: 100%;
	margin: 0;
}
body {
	color:#000;
	font:12px/14px "Helvetica", "Lucida Grande", Arial, sans-serif;
	background:#9dcfff url(../images/bg_222340.png);
	min-width:976px;
}
img {border-style:none;}
a {
	text-decoration:none;
	color:#000;
}
a:hover {text-decoration:underline;}
input,
textarea,
select {
	font:100% "Lucida Grande", Arial, sans-serif;
	vertical-align:middle;
	color:#333333;
}
form,
fieldset {
	margin:0;
	padding:0;
	border-style:none;
}
header,
footer,
article,
section,
hgroup,
nav,
figure { display: block; }
/* wrapper */
#wrapper {min-height: 100%;}
* html #wrapper {height: 100%;}
.w1 {
	padding-bottom: 66px;
	margin:0 auto;
	width:976px;
}
/* header */
#header {
	padding:6px 62px 4px 37px;
	overflow:hidden;
	width:877px;
}
.enter {
	float:right;
	font-size:10px;
	line-height:17px;
	margin:3px 0 0;
	word-spacing:1px;
}
/* logo */
#header .logo {
	float:left;
	margin:0;
	background: url(../images/logo.png) no-repeat;
	width: 138px;
	height: 23px;
	text-indent:-9999px;
	overflow:hidden;
}
#header .logo a {
	display:block;
	height:100%;
	position:relative;
}
/* start-block */
.start-block {
	background: url(../images/bg-start-blockA.png) no-repeat;
	width: 902px;
	height: 314px;
	padding:33px 32px 44px 42px;
}
/* start-form */
.start-form {
	background: url(../images/start-formA.jpg) no-repeat;
	width: 735px;
	height: 229px;
	padding:85px 0 0 167px;
	overflow:hidden;
}
.start-form .text {
	float:left;
	height: 35px;
	padding:0px 6px 3px;
	position:relative;
}
.start-form .text input {
	float:left;
	width: 85px;
	height: 35px;
	margin:0;
	padding:6px 5px 8px;
	border:0;
	line-height:normal;
	font-size:18px;
	outline:none;
    border-radius: 3px;
    -moz-border-radius: 15px;
}
.start-form .submit {
	margin:0;
	padding:0;
	border:0;
	background: url(../images/bg-submitSprite.gif) no-repeat;
	width: 127px;
	height: 47px;
	text-indent:-9999px;
	overflow:hidden;
	font-size:0;
	line-height:0;
	cursor:pointer;
	float:left;
	position:relative;
}

.start-form .submit:hover {
	background-position: 0px -47px;
}
/* main */
#main {
	background: url(../images/bg-main-c.png) repeat-y;
	width: 920px;
	padding:0 4px 0 15px;
	margin:0 0 0 18px;
}
.main-b {
	background: url(../images/fspo_sprite.png) no-repeat;
	width: 939px;
	height: 21px;
	overflow:hidden;
	margin:0 0 0 18px;
    background-position: 0px -69px
}
.inner1 .main-b {
	background: url(../images/fspo_sprite.png) no-repeat;
    background-position: 0px -90px;
	width: 939px;
	height: 26px;
	overflow:hidden;
	margin:0 0 0 18px;
}
.main-holder {
	width:880px;
	padding:10px 14px 35px 26px;
	position:relative;
}
.inner1 .main-holder {padding-bottom:10px;}
.main-frame {
	overflow:hidden;
	width:868px;
	padding:5px 0 0 12px;
}
/* content */
#content {
	float:left;
	width:270px;
}
#content.second {
margin: 0 0 0 18px;
}

.inner1 #content {
	float:left;
	width:574px;
}
#content h1 {
	margin:0 0 1px;
	//font-size:22px;
	line-height:26px;
	//font-weight: bold;
	text-align:left;
    font: 18px/24px Arial, Helvetica, sans-serif;
    color: #222;
    font-weight: normal;
    letter-spacing: 1px;
}
#content h2 {
	margin:0 0 12px;
	font-size:13px;
	line-height:14px;
	font-weight: normal;
	text-align:left;
}
#content p {
    margin:0;

    font: 12px/16px Arial, Helvetica, sans-serif;
    color: #505050;
}
/* step-list */
.step-list {
	list-style:none;	margin:0 0 0 1px;	padding:0 0 0 12px;
	background: url(../images/fspo_sprite.png) no-repeat;
	width: 961px;
	height: 69px;
}
.step-list:after {
	content:"";	display:block;	clear:both;
}
.step-list li {
	float:left;
	position:relative;
	font-size:16px;
	line-height:18px;
}
.step-list .step1 {
	width: 276px;
	margin:-4px -47px 0 0;
	position:relative;
	z-index:10;
}
.step-list .step2 {
	width: 283px;
	position:relative;
	z-index:9;
	margin:-4px -47px 0 0;
}
.step-list .step3 {
	width: 284px;
	position:relative;
	z-index:8;
	margin:-4px -47px 0 0;
}
.step-list .step4 {
	width: 258px;
	position:relative;
	z-index:7;
	margin:-4px 0 0;
}
.step-list a {
	float:left;
	height: 58px;
	cursor:pointer;
}
.step-list a strong {
	display:block;
	font-weight:normal;
}
.step-list .step1 a {
	width:153px;
	padding:19px 50px 0 73px;
}
.step-list .step2 a {
	padding:19px 50px 0 86px;
	width: 147px;
}
.step-list .step3 a {
	width:134px;
	padding:19px 50px 0 100px;
}
.step-list .step4 a {
	padding:19px 50px 0 91px;
	width: 117px;
}
.step-list a:hover {text-decoration:none;}
.step-list .step1 a.active {background: url(../images/bg-step1.png) no-repeat;}
.step-list .step2 a.active {background: url(../images/bg-step2.png) no-repeat;}
.step-list .step3 a.active {background: url(../images/bg-step3.png) no-repeat;}
.step-list .step4 a.active {background: url(../images/bg-step4.png) no-repeat;}
/* step2-form */
.step2-form {
	color:#171717;
	font-size:15px;
	line-height:17px;
	overflow:hidden;
}
/* area */
.area {
	margin:0 0 13px;
	background: url(../images/fspo_sprite.png) no-repeat;
    background-position: 0px -233px;
	width: 573px;
	padding:6px 0 0;
}
.area-b {
	background: url(../images/fspo_sprite.png) no-repeat;
    background-position: 0px -122px;
	width: 573px;
	height: 6px;
	overflow:hidden;
}
.area-holder {
	position:relative;
	background:#f5f5f5;
	width:559px;
	padding:0 7px 1px;
	overflow:hidden;
}
#content .step2-form h2 {
	margin:0 0 1px 3px;
	font-size:15px;
	line-height:17px;
	font-weight:bold;
	text-align:left;
}
/* row */
.step2-form .row {
	width:100%;
	padding:1px 0 1px;
}
.step2-form .row:after {
	content:"";	display:block;	clear:both;
}
.step2-form .checkbox {
	float:left;
	width:16px;
	height:16px;
	margin:0;
	padding:0;
}

.step2-form select {width:268px;}
.step2-form .textarea {
	display:block;
	overflow:hidden;
	width: 540px;
	height: 65px;
	padding:5px;
	margin:5px 0 0 -1px;
	position:relative;
}
.step2-form .textarea textarea {
	float:left;
	padding:0;
	margin:0;
	border: 1px #ccc solid;
	width: 540px;
	height: 60px;
	max-width: 540px;
	max-height: 60px;
	min-width: 540px;
	min-height: 60px;
	outline:none;
	overflow:auto;
}
/* submit */
.step2-form .submit {width:573px;}
.step3-form .submit {
	width:561px;
	padding:50px 0 0;
}
.step2-form .submit:after,
.step3-form .submit:after {
	content:"";	display:block;	clear:both;
}
.step2-form .submit input,
.step3-form .submit input {
	float:right;
	margin:-4px 0 0;
	position:relative;
	padding:0;
	border:0;
	background: url(../images/fspo_sprite.png) no-repeat;
    background-position: -573px -211px;
	width: 188px;
	height: 35px;
	text-indent:-9999px;
	overflow:hidden;
	font-size:0;
	line-height:0;
	cursor:pointer;
}
.step3-form .submit input {margin:0;}
/* step3-form */
.step3-form {
	padding:0 0 63px 6px;
	width:562px;
	color:#171717;
	font-size:15px;
	line-height:18px;
	overflow:hidden;
}
/* info */
.step3-form .info {padding:0 30px 10px 11px;}
#content .step3-form h1 {
	margin:0 0 12px;
	font-size:35px;
	line-height:37px;
	font-weight:bold;
	text-align:left;
}
.step3-form p {margin:0;}
/* row */
.step3-form .row {
	overflow:hidden;
	width:592px;
	margin:0 -30px 0 0;
	padding:0 0 23px;
}
.step3-form .text {
	float:left;
	width: 425px;
	height: 29px;
	padding:3px 12px;
	margin:0 24px 0 0;
	font-size: 13px;
}
.step3-form .text2 {
	width: 538px;
}
.step3-form .text input {
	width: 425px;
	height: 17px;
	float:left;
	margin:0;
	padding:5px 0 7px 3px;
	color:#333;
	line-height:normal;
	border:2px solid #DCDCDC;
	outline:none;
	font-size:17px;
}
.step3-form .text2 input {width: 538px;}
/* button */
.step3-form .button {
	width: 153px;
	height: 25px;
	padding:8px 0 0 10px;
	margin:1px 0 0 -8px;
	position:relative;
	overflow:hidden;
	text-align:center;
	color:#fff;
	float:left;
	font-weight:bold;
	display:none;
}
/* error */
.step3-form .error .button {display:block;}
/* sidebar */
#sidebar {
	float:right;
	width:278px;
	padding:0 11px 0 0;
}
#sidebar-form {
	float:right;
	width:246px;
	padding:25px 0 0;
	color:#171717;
}
/* addnav */
.addnav {
	list-style:none;
	margin:0;
	padding:0;
}
.addnav li {padding:0 0 14px;}
.addnav a {
	display:block;
	width: 242px;
	font-weight:bold;
	cursor:pointer;
    border: 2px dotted #DCDCDC;
}
.addnav span {
	background: url(images/bg-addnav-b.gif) no-repeat 0 100%;
	width: 254px;
	padding:12px 12px 14px;
	display:block;
	font-size:16px;
	line-height:25px;
	color: #222;
	font-weight:100;
	text-decoration: underline;
}
.addnav strong {
	display:block;
	font-size:24px;
	line-height:25px;
	padding:0 0 4px;
}
/* box */
.box {
	width: 246px;
	margin:0 0 26px;
}
.box .t {
	background:url(../images/fspo_sprite.png) no-repeat;
    background-position: -550px -184px;
	width: 246px;
	height: 12px;
	overflow:hidden;
}
.box .b {
	background:url(../images/fspo_sprite.png) no-repeat;
    background-position: -550px -199px;
	width: 246px;
	height: 12px;
	overflow:hidden;
}
.box .c {
	width: 240px;
	background:url(../images/bg-box-c.png) repeat-y;
	padding:0 3px;
}
.box .c:after {
	content:'';
	display:block;
	clear:both;
}
.box-holder {
	width: 100%;
	position: relative;
}
.gradient {
	top: 0;
	left: 0;
	position: absolute;
	z-index:1;
	width:100%;
	height:100%;
}
* html .gradient {height:auto;}
*+html .gradient {height:auto;}
.box-frame {
	height:1%;
	overflow: hidden;
	position: relative;
	z-index:2;
	padding:2px 5px 0 15px;
}
/* slogan */
.slogan {
	font-size:18px;
	line-height:20px;
}
.slogan p {margin:0;}
.slogan .box-frame {
	padding-top:8px;
	padding-bottom:12px;
}
/* rating */
.rating {
	font-weight:bold;
	line-height:15px;
	margin-bottom:30px;
}
.rating .box-frame {padding-bottom:7px;}
.rating h2 {
	margin:0 0 11px;
	font-size:15px;
	line-height:18px;
	font-weight:bold;
}
.rating p {margin:0;}
/* rating-box */
.rating-box {
	overflow:hidden;
	width:185px;
	padding:0 0 16px 12px;
}
.rating-box span {
	float:left;
	font-size:18px;
	line-height:29px;
	margin: 0 5px 0 0;
}
.rating-box img {display:block;}
/* visual */
.rating-box .visual {
	float:right;
	width:137px;
}
/* details */
.details .box-frame {
	padding:2px 8px 0 9px;
}
.details h2 {
	margin:0 0 14px 1px;
	padding:0 0 6px;
	font-size:18px;
	line-height:20px;
	font-weight:normal;
	border-bottom:2px solid #eaeaea;
	text-align:center;
}
.details ul {
	list-style:none;	margin:0;	padding:0;
	font-size:11px;
	line-height:13px;
}
.details li {
	width:222px;
	margin:0 0 2px;
	background: url(../images/bg-details.gif) repeat-y 100% 0;
	min-height:26px;
	padding:2px 0;
	vertical-align:top;
}
* html .details li {height:26px;}
.details li:after {
	content:"";	display:block;	clear:both;
}
.details .title {
	float:left;
	width:100px;
	padding:0 2px 0 0;
	font-weight:normal;
}
.details .info {
	float:right;
	width:108px;
	font-weight:normal;
}
/* guarantee */
.guarantee {
	font-size:11px;
	line-height:13px;
	margin-bottom:29px;
}
.guarantee .box-frame {padding:5px 8px 23px 9px;}
.guarantee h2 {
	font-size:13px;
	line-height:16px;
	font-style:italic;
	font-weight:normal;
	margin:0 0 14px 1px;
	padding:0 0 9px;
	border-bottom:2px solid #eaeaea;
	text-align:center;
}
.guarantee p {margin:0 0 14px;}
.guarantee .more {
	color:#21618d;
	text-decoration:underline;
}
.guarantee .more:hover {text-decoration:none;}
/* logo */
#sidebar .logo {
	display:block;
	background: url(../images/logo2.png) no-repeat;
	width: 94px;
	height: 52px;
	overflow:hidden;
	text-indent:-9999px;
	margin:0 0 0 15px;
}
#sidebar .logo a {
	display:block;
	height:100%;
	position:relative;
}
/* footer */
#footer {
	position:relative;
	width: 866px;
	margin:-66px auto 0;
	height: 58px;
	padding:8px 55px 0;
	text-align:right;
	color:#171717;
	font-size:11px;
}
#footer a {color:#171717;}
#footer ul {
	list-style:none;	margin:0;	padding:0;
}
#footer li {
	display:inline;
	padding:0 0 0 10px;
	margin:0 0 0 5px;
}
#footer li:first-child,
#footer li.first-child {background:none;}
#footer p {margin:0;}
/* skip */
.skip a{
	position:absolute;
	left:-10000px;
	top:auto;
	width:1px;
	height:1px;
	overflow:hidden;
}
.skip a:focus{
	position:static;
	width:auto;
	height:auto;
}
.hidden {
	position:absolute;
	left:-9999px;
	top:auto;
	width:1px;
	height:1px;
	overflow:hidden;
	line-height:0;
	font-size:0;
}

#accuracy div {
height: 32px;
background-image: url(../images/accuracy_rating.png);
width: 196px;
background-repeat: no-repeat;
overflow: hidden;
}

#accuracy div span {
position:relative;
}

#accuracy div.poor {
color: #E10A0A;
background-position:  33px 0px;
}
#accuracy div.poor2 {
background-position:  33px -32px;
color: #E18C0A;
}
#accuracy div.fair {
background-position:  33px -64px;
color: #3E71A0;
}
#accuracy div.good {
color: #86C504;
background-position:  33px -96px;
}
#accuracy div.excellent {
color: #86C504;
background-position:  33px -128px;
}

#zip_search {
width:239px;
height: 18px;
background-image: url(../images/fspo_sprite.png);
background-position: -550px -157px;
background-repeat: no-repeat;
padding: 10px 0 0 4px;
visibility: hidden;
position:relative;
left:112px;
}

#CompanyState {
width:171px;
}
#formsubtext {
font-size:10px;
}
#rsvErrors {
color:#AB3700;
padding:10px;
font-size:11px;
}

.submit {
text-align:right;
position:relative;
right:10px;
}

.error {
	color:red;
	margin: 0 0 0 5px;
}

#zipIntro label.error {
	display: inline-block;
	background-color: white;
	border: 2px solid red;
	top: 4px;
	position: relative;
}

.contractorP {
font-size: 18px;
line-height: 20px;
color: #555;
font-weight: 100;
}

#contractor .contractorRow {
	text-align: right;
}

#contractor label {
width: 125px;
text-align: right;
margin: 5px 10px 0 0;
}

.contractorRow input {
width: 191px;
color: black;
}
