/* CSS Document */

html {
	background: url(/images/bg_html.png) repeat-x left top;
}

body, td, th{
	font-family: "Trebuchet MS", Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-size: 14px;
	padding: 0;
	margin: 0;
	}

a {color: #336699;}
a:hover {
	text-decoration: underline;
	}
a:active {}
img{border: 0;}
/*base margin/padding rule*/
address,dl,ol,ul,h1, h2, h3, h4, h5,h6,h7,p,table,caption {padding:0; margin:0.7em 20px; position:relative; text-align:left; }

h1 {font-size: 1.35em;}
h2 {font-size: 1.3em;}
h3 {
	font-size: 1.15em;
	font-weight:normal;
	color:#065a8e;
	}
h4 {font-size: 1.1em;}
h5 {font-size: 1.1em;}

br {line-height: 0.2em;padding: 0;margin: 0;}
table {vertical-align: bottom;}
td {text-align: left;padding: 2px;margin: 0;vertical-align: bottom;}
th {text-align: left;padding: 2px;}
td p {margin: 0.1em 1px;padding: 0;}
li {padding: 0;margin: 0.2em 0 0 2em;}
ul li {}
ol li {	list-style-type:decimal;	display: list-item; vertical-align:top; zoom:1; }
em {}
address {font-style: normal;}

.fr {float: right;display: inline;}
.fl {float: left;display: inline;}
.ar{text-align: right;}
.ac{text-align: center;}
.al{text-align: left;}


body {
	/*default background*/
	position: relative;
	width:808px;
	margin: 0px auto;	
	}
	
	/*other stuff*/
#header,
#container,
#footer {
	padding: 0;
	position: relative;
	display: block;
	margin: 0 auto;
	zoom:1;
}


/*////////////////
*	Header stuff
////////////////*/
#header{
	/*187 total height including nav*/
	background: url(/images/banner_default.jpg) no-repeat left top;
	padding: 70px 0 0 0;
	margin-top:20px;
}
body.home #header{
	/*305 total height including nav*/
	background: url(/images/banner_home.jpg) no-repeat left top;
	padding:190px 0 0 0;
	margin-top:20px;
}
#header h1{
	/*155px total height*/
	margin: 0px 0 6px 30px;
	padding: 1px;
	zoom:1; /*IE6 hack*/
	display:block;
	}
#header h1 a {
	width: 300px;
	height: 50px;
	display: block;
	margin: 0;
	padding: 0;
	background: url(/images/logo_default.png) no-repeat left top;
}
#header h1 a span {display: none;visibility: hidden;}

.about #header{ 	background-image: url(/images/banners/about.jpg);}
.info #header{ 	background-image: url(/images/banners/info.jpg);}
.faq #header{ 	background-image: url(/images/banners/faq.jpg);}
.benefits #header{ 	background-image: url(/images/banners/benefits.jpg);}
.contact #header{ 	background-image: url(/images/banners/contact.jpg);}




/*////////////////
*	Main nav
////////////////*/
#navigation {
	position: relative;
	text-transform: uppercase;
	padding-top:1px;
	padding-bottom:0px;
	font-size: 12px;
	zoom:1;
}
#navigation ul {
	padding: 0;
	margin: 0 0 0 20px;
	overflow: hidden;
	position: relative;
	zoom:1;
}
#navigation li {
	float: left;
	display: inline;
	margin: 0 1px 0 0;
	padding: 0;
	position: relative;
	list-style-type: none;
	list-style-image: none;
	zoom: 1;
}
#navigation li a {
	/*Overall height should be 30px*/
	float: left;
	display: inline; /*IE6 Hack*/
	text-decoration: none;
	padding: 0 10px 0 0;
	color: #fff;
	background-position: right top;
	background-repeat: no-repeat;
}
#navigation li a span {
	/*Overall height should be 30px*/
	float: left;
	display: inline; /*IE6 Hack*/
	text-decoration: none;
	height: 20px;
	padding: 6px 0 0 10px;
	background-position: left top;
	background-repeat: no-repeat;
}

#navigation li a span.end {
	/*This is here so that IE6 has something to use for PNG background : Modern browsers don't use it.*/
	background: none;
	display: none;
}

#navigation li.sel a,
#navigation li a:hover {
	background-image: url(/images/tabs/tab_sel_r.png) !important;
	color: #333;
	cursor: pointer;
}

#navigation li.sel a span,
#navigation li a:hover span {
	background-image: url(/images/tabs/tab_sel_l.png) !important;
}

/*
////////////////
*	Main menu image replacements : Cropped hard left and right
*	Need to set the background-image:, width:
*	Each item has three rules, default, selected, hover
*	Note : There is a rule [#navbase .menu li a] that adds some left and right padding.
////////////////
*/
#navigation li a.home {
	background-image: url(/images/tabs/tab_01_r.png);
}
#navigation li a.home span {
	background-image: url(/images/tabs/tab_01_l.png);
}

#navigation li a.about {
	background-image: url(/images/tabs/tab_02_r.png);
}
#navigation li a.about span {
	background-image: url(/images/tabs/tab_02_l.png);
}

#navigation li a.guide {
	background-image: url(/images/tabs/tab_03_r.png);
}
#navigation li a.guide span {
	background-image: url(/images/tabs/tab_03_l.png);
}

#navigation li a.benefit {
	background-image: url(/images/tabs/tab_04_r.png);
}
#navigation li a.benefit span {
	background-image: url(/images/tabs/tab_04_l.png);
}

#navigation li a.info {
	background-image: url(/images/tabs/tab_05_r.png);
}
#navigation li a.info span {
	background-image: url(/images/tabs/tab_05_l.png);
}

#navigation li a.contact {
	background-image: url(/images/tabs/tab_06_r.png);
}
#navigation li a.contact span {
	background-image: url(/images/tabs/tab_06_l.png);
}



/*
////////////////
	Container element
////////////////
*/

#container {
	zoom:1;
	position: relative;
	background: none;
	z-index:1;
}

/*
////////////////
	Content
////////////////
*/


#content {
	padding: 0 176px 1px 20px;
	margin-right: 20px;
	background: url(/images/bg_body_default.png) repeat-y left top;
	zoom:1;
	line-height: 140%;
/*	padding-top: 1px;*/
}
X.home #content {
	background: url(/images/bg_body_home.png) repeat-y left top;
	padding-top: 1px;
}

#content h1 {
	margin: 0;
	padding:1em 21px 0.5em 21px;
	background: #f5f9fa;
}
#content p.first {
	margin: 0;
	font-size: 16px;
	font-weight: light;
	padding:0.5em 21px 1em 21px;
	background: #f5f9fa url(/images/bg_firstpara.gif) no-repeat left bottom;
	line-height: 135%;
}

dt {
	/*faq question*/
	font-weight: bold;
	font-style:italic;
}
dd {
	/*faq answer*/
	margin-bottom: 1em;
}

/*
////////////////
	Call to action
////////////////
*/

div.calltoaction {
	margin: 2em 20px 1em 20px;
	width: 550px;
	padding: 10px 0 1px 0 ;
	background: url(/images/bg_calltoaction_top.gif) no-repeat left top;
}
div.calltoaction div {
	background: #e2f4fc url(/images/bg_calltoaction_bot.gif) no-repeat left bottom;
	padding: 1px 0 10px 0;
}
div.calltoaction p {
	margin: 0.3em 20px 0.3em 10px;
}

div.calltoaction p a {
	/*Telephone graphic*/
	background: url(/images/calltoaction_phone.gif) no-repeat left center;
	display: block;
	padding-left: 90px;
	text-decoration: none;
	color: #336699;
}
div.calltoaction p a:hover {
	text-decoration: underline;
}

/*
////////////////
	Side
////////////////
*/
#side {
	width: 198px;
	position: absolute;
	right: 0;
	top: -85px;
	z-index:1;
}

#side .block {
	margin: 0 0 4px 0;
	padding: 0;
	position: relative;
	zoom: 1;
}

#side .block div.inner {
	margin: 0;
	padding: 13px 6px 0px 2px;
	background: url(/images/bg_side_top.png) no-repeat left top;
	zoom:1; /*IE7*/
}
#side .block div.end {
	margin: 0;
	height:17px;
	background: url(/images/bg_side_bot.png) no-repeat left bottom;
	zoom: 1;
}

#side .block div.plain {
	font-size: 0.9em;
	padding: 1px 0;
	background: url(/images/bg_side_plain.gif) no-repeat left bottom;
}

#side .block p.action {
	margin: 0 11px;
	color: #336699;
	padding: 0px;
}
#side p.action a {
	text-decoration: none;
}
#side a:hover {
	text-decoration: underline;
}

#side a.bookacall {
	display:block;
	padding: 10px 10px 140px 10px;
	background: url(/images/feature_bookacall.jpg) no-repeat left bottom;
}
#side a.newsletter {
	display:block;
	padding: 10px 10px 140px 10px;
	background: url(/images/feature_newsletter.jpg) no-repeat left bottom;
}


/*
////////////////
	Footer
////////////////
*/

#footer {
	padding: 40px 40px 0 20px;
	background: url(/images/bg_end_default.png) no-repeat left top;
}
X.home #footer {
	background: url(/images/bg_end_home.png) no-repeat left top;
}

/*////////////////
*	Contact Form
////////////////*/

div.contactform {
	margin: 1em 20px;
	width: 550px;
	padding: 10px 0 0 0 ;
	background: #e2f4fc url(/images/bg_calltoaction_top.gif) no-repeat left top;
}
div.contactform form {
	background: #e2f4fc url(/images/bg_calltoaction_bot.gif) no-repeat left bottom;
	padding: 1px 0 10px 0;
	margin: 0;
}


button {
	background: #e2f4fc;
	border-top: 1px #fff solid;
	border-right: 1px #336699 solid;
	border-bottom: 1px #336699 solid;
	border-left: 1px #fff solid;
	color: #000;
	cursor: pointer;
	font-size: 1.25em;
}
button:hover {
	background: #336699;
	color: #fff;
}

input, select, textarea{
	border: 1px #336699 solid;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	padding: 1px 2px;
}
input{
	width: 26em;
}
textarea{
	width: 40em;
}
input.chbx {width: auto;border: none;}
input.var {
	width: auto;
}


div.formElement {
	position: relative;
	clear: both;
	padding: 1px 2px 0.5em 2px;
	margin: 0px 0px 2px 0px;
	width: 546px;
	zoom: 1;
	overflow: hidden;
	border-bottom: 1px silver dotted;
	}
div.formElement p {
	margin: 0.4em 20px;
}
	
p.buttons {
	position: relative;
	clear: both;
	padding: 1px 0;
	zoom: 1;
	overflow: hidden;
	}
p.footnote {
	text-align: center;
	font-size: 0.9em;
}

div.formElement.invalid {
	position: relative;
	border: 2px #336699 solid;
	padding: 2px 0px 4px 0px;
	background: #8ad3f5;
	vertical-align: top;
	display: block;
	white-space: nowrap;
	}

div.formElement.valid {
	position: relative;
	display: block;
	/*white-space: nowrap;*/
	}
	
div.formElement.invalid.required input {background-color: #fce8e9;}
div.formElement.invalid.required option {background-color: #fce8e9;}

div.formElement.valid.required input,
div.formElement.valid.required option,
div.formElement.valid.required textarea {
	background-color: #f5f9fa;
	}
div.formElement.valid.required input,
div.formElement.valid.required textarea {
	border: 2px #336699 solid;
	}

div.formElement.required label {
	color: black;
}

div.label,
label.blk {
	display: inline;
	float: left;
	clear: none;
	color: #333;
	margin-top: 2px;
	margin-right: 0.2em;
	text-align: right;
	vertical-align: top;
	width: 10em;
	}
div.input,
span.blk {
	display: inline;
	margin-right: 0.1em;
	float: left;
	clear: none;
	}

label.free {
	display: inline;
	color: #333;
	margin-top: 2px;
	vertical-align: top;
	}

span.free {
	/*input block with a full width label*/
	display: inline;
	float: left;
	clear: none;
	margin-right: 2px;
	margin-left: 10.2em;
	}



label {
	display: inline;	
}

div#invalidFormHeader {
	position: relative;
	/*height: 1%;*/
	/*border: 2px #ff0000 dashed;*/
	padding: 4px 20px 4px 20px;
	font-size: 13px;
	background: gold url("/admin/images/bg_errorheader.gif") top left repeat-x;
	color: black;
	font-weight: bold;}

div.errTxt {
	margin-top: 3px;
	padding: 2px 2px 0px 1em;
	color: #0000a0;
	font-weight: bold;
	vertical-align: top;}

div.hintreq:first-letter {
	color: red;
	margin-left: -1em;}
	
div.hintreq {
	float: left;
	clear: none;
	display: inline;
	margin-top: 3px;
	padding: 2px 2px 0px 1em;
	color: #0000a0;
	font-size: 11px;
	vertical-align: top;}

div.outputtext {
	float: left;
	clear: none;
	margin-top: 3px;
	padding: 2px 2px 0px 2px;
	font-size: 11px;
	vertical-align: top;
}

span.hint {
	color: #333;
}

