body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;
	padding:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset,img { 
	border:0;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul {
	list-style:none;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym { 
	border-bottom:1px dashed #999998;cursor:help;
}

body {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	/*color: #005bab;*/
	color:#000;
}

strong {
	font-weight: bold;
}

a, a:visited{
color: #005BAB;
text-decoration: underline;
}

a:hover, a:active{
color: #005BAB;
text-decoration: none;
}

h1 {
	width: 1013px;
	height: 96px;
	position:relative;
	text-indent: -9999px;
}

h2 {
	height: 151px;
	position:relative;
	text-indent: -9999px;
	background: url(../images/header/h2_home_heating_calculator.jpg) no-repeat;
}

h2 a {
	top: 0px;
	left: 0px;
	width: 800px;
	height: 151px;
	position: absolute;
}

h3 {
	height: 40px;
	font-size: 24px;
}

#aurora img {
	border: 0;
	left: 0px;
	position: absolute;
}

#page {
	width: 1013px;
}

/*  Menu  */
#menu {
	margin-left: 2px;
}

#menu ul {
	float: left;
	width: 144px;
	list-style: none;
}

#menu .blank, #menu .blank a:active, #menu .blank a:hover, #menu .blank a:visited  {
padding: 0;
background: none;
}

#menu ul li {
	margin-bottom: 2px;
}

#menu ul li a {
	text-decoration: none;
    font-weight: bold;
  	height: 24px;
}

#menu ul li a:link,#menu ul li a:visited {
	color: #fff;
	display: block;
	background: url(../images/menu/single.jpg) no-repeat;
	padding: 8px 0 0 18px;
}

#menu ul .blank a:link,#menu ul .blank a:visited {
	color: #fff;
	display: block;
	background: none;
	padding: 0;
}
#menu ul li a:hover,#menu ul li a:active  {
	color: #fff;
	background-position: 0 -33px;
	padding: 8px 0 0 18px;
}

#menu ul li.double a {
	text-decoration: none;
    font-weight: bold;
  	height: 37px;
}

#menu ul li.double a:link,#menu ul li.double a:visited {
	color: #fff;
	display: block;
	background: url(../images/menu/double.jpg) no-repeat;
	padding: 8px 0 0 18px;
}

#menu ul li.double a:hover,#menu ul li.double a:active  {
	color: #fff;
	background-position: 0 -45px;
	padding: 8px 0 0 18px;
}

/*  Content  */

#content {
	margin-left: 160px;
	width: 786px;
}

#content p, #content h3{
	margin-left: 15px;
}

#content-footer {
	height: 12px;
	background: url(../images/forms/border_footer.jpg) no-repeat;
}

hr.footer {
	margin: 5px 68px 5px 157px; border: none; border-top: 1px solid #005BAB;
}

#footer {
	text-align: center;
}

#footer p {
	padding-bottom: 3px;
	color: #005BAB;
}

#footer p.notice {
	color: #000;
}

#footer a, #footer a:visited {
	color: #005BAB;
	text-decoration: none;
}

#footer a:hover, #footer a:active {
	text-decoration: underline;
}

/*    Forms    */
#hc {
	margin-left: 0px;
	border-left: 1px solid #3469ad !important;
	border-right: 1px solid #3469ad;	
	background-color: White;
}

form {
	padding-left: 15px;
	padding-right: 15px;

}

.steps fieldset{
	vertical-align: middle;
}

form fieldset input {
	padding-top: 2px;
}

form fieldset input, form fieldset select {
	border: solid 1px #000000;
	height: 20px;
	font-size: 1.1em;
}

form fieldset input, form fieldset select {
	background: url(../images/forms/input_bg.gif);
}

.feedback fieldset {
	padding: 3px 0;
	margin: 2px 0;
}

.feedback .radio_lbl table {
	margin-left: 163px;	
}

.feedback .radio_lbl input {
	border: none;
	background: none;
}

.feedback .radio_lbl label {
	vertical-align: top;
	height: 20px;
	width: 40px;
	text-align: left;
	padding: 3px 3px;
}

.feedback .radio_lbl2 table {
	padding: 4px;
}

.feedback .radio_lbl2 input {
	border: none;
	background: none;
}

.feedback .radio_lbl2 table label {
	width: 170px;
	vertical-align: top;
	height: 20px;
	text-align: left;
	padding: 3px 3px;
}

* html .feedback .radio_lbl label, * html .feedback .radio_lbl2 table label {
	vertical-align: bottom;
}


.steps fieldset label{
	display: inline-block;
	width: 450px;
	vertical-align: middle;
	height: 56px;
}

.feedback fieldset label{
	display: inline-block;
	width: 160px;
	text-align: right;
}

.steps fieldset label span {
	display: none;
}

.steps fieldset select {
	width: 250px;	
}

.steps fieldset .chk input {
	margin-left: 200px;
	background: none !important;
	border: none !important;	
}

form .buttonNext, form .buttonCalculate {
	overflow: hidden;
	text-indent: -9999px;
	font-size: 0px;
	display:block;
	line-height: 0px;
	border: 0px solid;
	width: 152px;
	height: 36px;
	background: url(../images/forms/next.jpg) no-repeat;
	float: right;
}
form .buttonBack {
	overflow: hidden;
	text-indent: -9999px;
	font-size: 0px;
	display:block;
	line-height: 0px;
	border: 0px solid;
	width: 101px;
	height: 36px;
	background: url(../images/forms/back.jpg) no-repeat;
}

form .buttonStartAgain {
	overflow: hidden;
	text-indent: -9999px;
	font-size: 0px;
	display:block;
	line-height: 0px;
	border: 0px solid;
	width: 210px;
	height: 40px;
	background: url(../images/forms/startagain.jpg) no-repeat;
}

form .buttonPrint {
	float: right;
	overflow: hidden;
	text-indent: -9999px;
	font-size: 0px;
	display:block;
	line-height: 0px;
	margin-right: 30px;
	margin-bottom: 5px;
	border: 1px solid #005BAB;
	width: 34px;
	height: 32px;
	background: url(../images/forms/print.jpg) no-repeat;
}

.steps .buttonNext:active, form .buttonCalculate:active, form .buttonBack:active, form .buttonStartAgain:active, form .buttonPrint:active  {
	background-position: 3px 2px;
}

.clear{
	clear: both;
}

form .q1 {
	background: url(../images/forms/qs/q1.jpg) no-repeat;
}
form .q2 {
	background: url(../images/forms/qs/q2.jpg) no-repeat;
}
form .q3 {
	background: url(../images/forms/qs/q3.jpg) no-repeat;
}
form .q4 {
	background: url(../images/forms/qs/q4.jpg) no-repeat;
}
form .q5 {
	background: url(../images/forms/qs/q5.jpg) no-repeat;
}
form .q6 {
	background: url(../images/forms/qs/q6.jpg) no-repeat;
}
form .q7 {
	background: url(../images/forms/qs/q7.jpg) no-repeat;
}
/* step 2 */
form .q8 {
	background: url(../images/forms/qs/q8.jpg) no-repeat;
}
form .q9 {
	background: url(../images/forms/qs/q9.jpg) no-repeat;
}
form .q10 {
	background: url(../images/forms/qs/q10.jpg) no-repeat;
}
form .q11 {
	background: url(../images/forms/qs/q11.jpg) no-repeat;
}
form .q12 {
	background: url(../images/forms/qs/q12.jpg) no-repeat;
}
form .q13 {
	background: url(../images/forms/qs/q13.jpg) no-repeat;
}
form .q14 {
	background: url(../images/forms/qs/q14.jpg) no-repeat;
}
form .q15 {
	background: url(../images/forms/qs/q15.jpg) no-repeat;
}
/* step 3 */
form .q16 {
	background: url(../images/forms/qs/q16.jpg) no-repeat;
	height: 68px;
}
form .q17 {
	background: url(../images/forms/qs/q17.jpg) no-repeat;
	height: 68px;
}
form .q18 {
	background: url(../images/forms/qs/q18.jpg) no-repeat;
	height: 68px;
}
form .q19 {
	background: url(../images/forms/qs/q19.jpg) no-repeat;
	height: 68px;
}
form .q20 {
	background: url(../images/forms/qs/q20.jpg) no-repeat;
	height: 68px;
}



/*    sFIR    */
/* These are standard sIFR styles... do not modify */

.sIFR-flash {
	visibility: visible !important;
	margin: 0;
}

.sIFR-replaced {
	visibility: visible !important;
}

span.sIFR-alternate {
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	display: block;
	overflow: hidden;
}

/* Hide Adblock Object tab: the text should show up just fine, not poorly with a tab laid over it. */
.sIFR-flash + div[adblocktab=true] {
  display: none !important;
}

/* These "decoy" styles are used to hide the browser text before it is replaced... the negative-letter spacing in this case is used to make the browser text metrics match up with the sIFR text metrics since the sIFR text in this example is so much narrower... your own settings may vary... any weird sizing issues you may run into are usually fixed by tweaking these decoy styles */


.sIFR-hasFlash h3 {
	visibility: hidden;
	letter-spacing: -6px;
	font-size: 25px;
}

.note {
	visibility: hidden;
	letter-spacing: -6px;
	font-size: 18px;
}


.hc .note_results{
	height: 100px;
	padding-top: 10px;
	width: 720px;
	font-size: 17px;
	color: #005BAB;
}



#results td{
	width: 213px;
	height: 196px;
	background: url(../images/results/border.jpg);
	margin-right: 30px;
}

.results_details {
	width: 750px;
	border-collapse: collapse;
}

.results_details tr {
	border: 1px solid #005BAB;
}

* html .results_details td {
	border:1px solid #005BAB;
}


.results_details td {
	padding: 4px;
	
}
.results_details .header {
	background: #005BAB;
	color: #FFF;
}

.form-error {
	background-color:#FFE0E0;
	margin-bottom:15px;
}

fieldset label.error {
	width: 300px;
	text-align: left;
	padding-left: 10px;
	padding-right: 10px;
}

#errorsfound {
background-color:#FFE0E0;
border:1px solid red;
display:none;
padding:10px !important;
}