html, body {
  margin: 0;
  padding: 0;  
}
body {
  background: #344f64 url(2009/bg-body.jpg) repeat-x 0 0;
  font-size: 12px;
  font-family: Arial, Helvetica, sans-serif;
  color: #333;
}
  
a {
  color: #006794;
}

a:hover,
a:focus {
  color: #0e506c;
}

#header,
#container,
#footer {
  position: relative;
  width: 980px;
  background: url(2009/main_shadow.png) repeat-y 0 0;
  margin: 0 auto;
  padding-left: 10px;
}

#header {
  padding-top: 80px;
  height: 175px;
}
#header h1 {
  margin: 0;
  padding: 0;
  background: url(2009/banner.jpg) no-repeat 0 0;
  height: 175px;
  width: 100%; 
}
#header h1 a {
  position: absolute;
  width: 153px;
  height: 82px;
  display: block;
  text-indent: -1000em;
  top: 97px;
  left: 25px;
  overflow: hidden;
}

h2 { margin-top: 0; }
h5 { font-size: 1em; }

#container {  
  padding: 0 0 10px 10px;
  z-index: 5;
}

/** =main layout
************************************************************/

#content {
  float: left;
  width: 830px;
  padding: 20px 70px 20px 70px;
}

#alpha {
  padding-top: 20px;
  width: 254px;
}
#beta {
  width: 284px;
  padding: 20px;
  font-size: 12px;
}

/* home page */

#home #content {
  float: right;
  width: 600px;
  padding: 20px 40px 20px 0;
}


/* home quote form */
#home #beta {
  float: left;
  width: 254px;
  padding: 20px 40px 20px 20px;
}

/** =main nav
************************************************************/
#alpha {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  margin-top: -39px;
  padding-top: 0;
}
#alpha ul {
  list-style-type: none;
  padding-left: 0;
  margin: 0 0 0 10px;
}

/* home top nav */

#alpha li {
  float: left;  
  margin: 3px 2px 3px 0;
}

#alpha a {
  background:  url(2009/nav-main.png) no-repeat 0 0;
  display: block;
  height: 34px;
  padding: 0;
  text-indent: -1000em;
  border: 1px solid #bbb;
  overflow: hidden;
}
#m-covered a {
  width: 298px;
}
#m-guarantee a {
  width: 173px;
  background-position: -300px 0;
}
#m-call a {
  width: 193px;
  background-position: -474px 0;
}
#m-faq a {
  width: 126px;
  background-position: -674px 0;
}
#m-chat a {
  background-position: -808px 0;
  width: 152px;
}

#m-covered a:hover { background-position: 0 -50px; }
#m-guarantee a:hover { background-position: -300px -50px; }
#m-call a:hover { background-position: -474px -50px; }
#m-faq a:hover { background-position: -674px -50px; }
#m-chat a:hover { background-position: -808px -50px; }

#m-covered a:active,
#m-covered a.active { background-position: 0 -100px; }
#m-guarantee a:active,
#m-guarantee a.active { background-position: -300px -100px; }
#m-call a:active,
#m-call a.active { background-position: -474px -100px; }
#m-faq a:active,
#m-faq a.active { background-position: -674px -100px; }
#m-chat a:active,
#m-chat a.active { background-position: -808px -100px; }

/** =left-hand nav
***********************************************************

#alpha ul {
  list-style-type: none;
  padding-left: 0;
  margin: 0 0 0 10px;
}
#alpha li {
  margin: 3px 0;
}
#alpha li a {
  background: url(2009/nav-main.png) no-repeat 0 -150px;
  background-color: #e1e1e1;
  display: block;
  width: 220px;
  height: 14px;
  padding: 6px 0;
  text-decoration: none;
  text-indent: -1000em;
  overflow: hidden;
}

li#m-covered a { background-position: 0 -150px; }
li#m-guarantee a { background-position: -220px -150px; }
li#m-call a { background-position: -440px -150px; }
li#m-faq a { background-position: -660px -150px; }
li#m-chat a { background-position: -880px -150px; }

li#m-covered a:hover { background-position: 0 -200px; }
li#m-guarantee a:hover { background-position: -220px -200px; }
li#m-call a:hover { background-position: -440px -200px; }
li#m-faq a:hover { background-position: -660px -200px; }
li#m-chat a:hover { background-position: -880px -200px; }

li#m-covered a:active,
li#m-covered a.active { background-position: 0 -250px; }
li#m-guarantee a:active,
li#m-guarantee a.active { background-position: -220px -250px; }
li#m-call a:active,
li#m-call a.active { background-position: -440px -250px; }
li#m-faq a:active,
li#m-faq a.active { background-position: -660px -250px; }
li#m-chat a:active,
li#m-chat a.active { background-position: -880px -250px; }
*/

/** =home form
************************************************************/

#beta form {
  background-color:#eee;
  border:1px solid #d0d0d0;
  padding: 0 0 12px;
}
#beta form div {
  padding: 0 10px;
}
#beta form h3 {
  background-color: #3b4851;
  margin: 0 0 1em;
  padding: 6px 10px;
  color: #fff;
  font-size: 12px;
}

/** =footer
************************************************************/

#footer {
  position: relative;
  padding: 40px 0 0 0;
  width: 990px;
  text-align: center;
  color: #999;
}
#footer #legal {
  position: absolute;
  padding: 0 0 20px 0;
  width: 980px;
  background: transparent url(2009/footer_shadow.png) no-repeat 0 100%;
}

#footer .pages {
	padding: 1em 50px;
}
#footer .pages a {
	white-space: nowrap;
	line-height: 1.6em;
	padding: 2px 4px;
	text-decoration: none;
}
#footer .pages a:hover {
	text-decoration: underline;
}
#main-image,
#schome {
  display: none;
}

div.media {
  position: absolute;
  left: -1000em;
}

#main-logo {
  position: absolute;
  display: block;
  width: 140px;
  height: 40px;
  top: 20px;
  left: 50%;
  margin-left: -460px;
  text-decoration: none;
}
a img {
  border-width: 0;
}
/** =faq
************************************************************/
#questions a {
  display: block;
  margin-bottom: 1em;
  padding-bottom: .5em;
  border-bottom: 1px solid #ccc;
  text-decoration: none;
}

/** =forms
************************************************************/
td .msg { vertical-align: top; }
.msg {
  color: #c00;
}

.actions {
  margin-top: 1em;
}
button {
  display:-moz-inline-stack;/* Firefox need this to simulate display:inline-block */
  display:inline-block;/* IE does not apply this to Block Element,and Firefox does not render this,too */
  zoom:1;/* trigger hasLayout */
  *display:inline;/* once hasLayout is true,set display:inline to block element will make display:inline behave like display:inline-block */
}
* html button { display: inline; }

button {
  border: 0;
  cursor: pointer; 
  font-weight: bold; 
  padding: 0 16px 0 0; 
  text-align: center;
  font-size: 13px;
  background: none;
  position: relative;
  overflow: visible;
}

button span { 
  position: relative; 
  display: block; 
  white-space: nowrap; 
  padding: 0 0 0 16px;
  height: 26px; 
  line-height: 24px;
  color: #fff;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
	/* Safari and Google Chrome only - fix margins */
	button span {
		margin-top: -1px;
		left: 3px;
	}
}
/* removes 1px border in FF */
button::-moz-focus-inner { border: none; padding: 0;} 

/* using a sprite instead of four separate images... */
button,
button span {
  background-image: url(2009/buttons.png);
  background-repeat: no-repeat;
}
button {background-position:  100% 0;}
button span { background-position: 0 -50px; }
button:hover,
button:focus { background-position: 100% -100px; }
button:hover span,
button:focus span { background-position: 0 -150px; }
button:active { background-position: 100% -200px; }
button:active span { background-position: 0 -250px; }
button:active{
  top:1px;
}

/** =clearfix
************************************************************/

/* we need this for IE 5.01  */
#container {
/* Normally a Holly-style hack height: 1% would suffice but that causes 
IE 5.01 to completely collapse the container - instead we float it */
  float: left;
  float/**/: none;
}
/* easy clearing */
#container:after {
  content: '.'; 
  display: block; 
  height: 0; 
  clear: both; 
  visibility: hidden;
}
#container {
  display: inline-block;
}
/*\*/
#container {
  display: block;
}

