/* CSS Document */
/*
 * DEFAULT STYLES
 * 
 */
body {
	color: #333333;
	font-weight: normal;
	font-family: sans-serif;
}
/*removes horizontal overflow on certain devices*/
body div#wrap {
	width: 100%;
	overflow: hidden;
	position: absolute;
	left: 0;
	padding: 0;
}
/*
 * HEADER
 * 
 */
body div#header {
	height: 36px;
	background: #D8D8D8 url(../images/sprite-header.png) repeat-x top;
	margin-bottom: .5em;
	text-align: center;
}
/*
 * FOOTER
 * 
 */
body div#footer {
	background: #F6F6F6 url(../images/sprite-footer.png) repeat-x top;
	padding: .7em 0em;
	clear: both;
	height: auto;
	display: block;
	text-align: center;
}
/*
 * BASIC ELEMENTS
 * 
 */
 
/*body required as early browsers don't understand p by itself */
body p {
	margin-top: 0;
	margin-bottom: 0;
	padding: 0.2em 0.5em 0.4em 10px;
}
strong {
	font-weight: bold;
}
em {
	font-style: italic;
}
/*
 * LINK STATES
 * 
 */
a:link {
	color: #46a546;
	text-decoration: none;
}
a:visited {
	color: #46a546;
	text-decoration: none;
}
a:hover {
	color: #46a546;
	text-decoration: underline;
}
a:active {
	color: #46a546;
	text-decoration: none;
}
/*
 * HEADERS
 * 
 */
body h1 {
	padding-left: 10px;
	padding-right: 10px;
	color: white;
	background: #0038E1 url(../images/sprite-h1.png) repeat-x bottom;
	border-top: 1px solid #0081CA;
	border-bottom: 1px solid #0081CA;
	margin-top: .1em;
	margin-bottom: .1em;
	line-height: normal;
	clear: both;
}
body h2 {
	padding-left: 10px;
	padding-right: 10px;
	color: white;
	background: #55B02B url(../images/sprite-h2.png) repeat-x bottom;
	border-top: 1px solid #67DD30;
	border-bottom: 1px solid #67DD30;
	margin-top: 0.1em;
	margin-bottom: 0.1em;
	line-height: normal;
	clear: both;
}
body h3 {
	padding-left: 10px;
	color: #000077;
	margin-top: 0.1em;
	margin-bottom: 0.3em;
}
body h4 {
	padding-left: 10px;
	color: #CC0066;
	margin-bottom: 0.3em;
	margin-top: 0.1em;
	font-weight: bold;
}
body h5 {
	padding-left: 10px;
	color: #333333;
	margin-bottom: 0.2em;
	margin-top: 0.1em;
}
body h6 {
	background-color: #F6F6F6;
	border-bottom: 1px solid #D8D8D8;
	border-top: 1px solid #D8D8D8;
	padding-left: 10px;
	padding-top: .3em;
	padding-bottom: .3em;
	margin-bottom: 0.1em;
	margin-top: 0.1em;
}
/*
 * IMAGE WITH BORDER AND (OPTIONAL) CAPTION
 * 
 */
body img.image-border {
	margin: 0 0 0 4px;
	border: 1px solid #333333;
	padding: 4px;
}
body p.caption-image {
	font-size: small;
	margin-top: 0;
	padding-left: 4px;
	padding-top: .3em;
}
/*
 * BLOCKQUOTE
 * 
 */
blockquote {
	margin: .3em 1em .6em 1em;
	padding: .6em 0em;
	font-style: italic;
	border-top: 1px solid #D8D8D8;
	border-bottom: 1px solid #D8D8D8;
}
blockquote p {
	margin: .0;
	padding: 0 0 .3em 0;
	border-bottom: 1px solid #D8D8D8;
}
/*
 * LISTS
 * 
 */
/* compensates for smaller Opera Mini margins */
ol, ul, dl {
	margin-left: .5em;
}
/* compensates for small margins on very early devices */
ol ol, ul ul, dt dd {
	margin-left: .5em;
}
dd {
	margin-left: 1em;
}
/*forces native margin*/
body ul {
	margin-bottom: 0.4em;
}
/*
 * BREADCRUMBS
 * 
 */
body ul.breadcrumbs {
	padding-top: 0;
	padding-bottom: .5em;
	padding-left: 0;
	padding-right: .5em;
	font-size: small;
	list-style-type: none;
	margin-bottom: 0;
	margin-top: 0;
}
body ul.breadcrumbs li {
	display: inline;
	line-height: 1.5em;
}
/*
 * FORMS
 * 
 */
body fieldset {
	margin: 0;
	padding: 0;
	border: none;
}
body form {
	margin: 0;
	color: #333333;
}
body form label {
	font-size: .9em;
	margin-bottom: .5em;
	margin-top: .5em;	
}	
body input[type='text'] { 
	border: 1px solid #D8D8D8;
	background: #FFF url(../images/img-form-input-shadow.png) repeat-x top;
	display: block;
	padding: 0.2em;		
	margin-bottom: .5em;
}
body textarea { 
	border: 1px solid #D8D8D8;
	background: #FFF url(../images/img-form-input-shadow.png) repeat-x top;
	display: block;
	padding: 0.2em;
	margin-bottom: .7em;
}
body form input[type='radio'], body form input[type='checkbox'] { 
	margin: 0.1em 0em;
	padding: 0;
}
body select {
	margin-bottom: 0;
}
body input[type='button'] {
	padding: 1em 1.3em;
	color: #666666;
	margin: 1em 0em;
}
/*
 * TABLE
 * 
 */
body table {
	border: 1px solid #D8D8D8;
	margin: 0;
	width: 100%;
	color: #333333;
	font-size: 90%;
}
body td {
	padding-left: .3em;
	padding-right: .3em;
	padding-top: .2em;
	padding-bottom: .2em;
	line-height: 1.5em;
	border: 1px solid #D8D8D8;
}
body tr {
	height: 1.5em;
}
body th, tfoot {
	text-align: left;
	padding-left: .3em;
	padding-right: .2em;
	padding-top: .2em;
	padding-bottom: .2em;
	font-weight: bold;
	border: 1px solid #D8D8D8;
	color: #0033CC;
	background-color: #F6F6F6;
}
body caption {
	caption-side: bottom;
	text-align: left;
	font-style: normal;
	padding-top: 0.3em;
	padding-bottom: 0.3em;
	font-size: small;
	margin-left: 5px;
}
body table td.odd {
	background-color: #F6F6F6;
}
/*
 * CONTAINER BOXES
 * 
 */
body div.box p.box-text {
	border: 1px solid #D8D8D8;
	width: 90%;
	margin: 0.3em auto;
	padding: 0.4em 0.4em;
	background-color: #F6F6F6;
}
body div.header-box p {
	border: 1px solid #D8D8D8;
	width: 90%;
	margin: 0em auto;
	padding: 0.4em 0.4em;
	background-color: #F6F6F6;
}
/* 2px border is required to ensure header is flush with the box */
body div.header-box h3 {
	border: 2px solid #0033CC;
	width: 90%;
	margin: 0em auto;
	padding: 0.3em 0.3em;
	background-color: #0033CC;
	color: white;
}