/*--------------------------------------------------------------------------------------------------
  Base Stylesheet, Mass reset for HTML tag preferences and main layout DIVs.
--------------------------------------------------------------------------------------------------*/

/* Mass Reset
================================================================================================================ */
html,body,div,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,pre,form,p,blockquote,fieldset,input,textarea,select { margin: 0; padding: 0; }
h1,h2,h3,h4,h5,h6,pre,code,address,caption,cite,code,th { font-size: 1em; font-weight: normal; font-style: normal; }
ul,ol { list-style: none; }
input, textarea, select { padding: 1px; font-size: 100%; font-family: inherit }
a img,fieldset,iframe,img { border: none; }
a,a:link,a:hover,a:visited,a:active,fieldset,legend { background-color: transparent } 
table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }
caption,th { text-align: left; }
body, html { background-color:transparent } 
html { font-size:100%; margin-bottom: 1px; min-height: 100%; } /* ensures inclusion of vertical scroll bar */
body { font-size: 62.5%; } /* Type size equalizer */
* html body { font-size: 63%; height: 100%; } /* @ IE Type size equalizer tweak */

body { 
	font-family: Helvetica, Verdana, Arial, sans-serif;
	font-size: 11px;
	line-height: 150%;
	text-align: center;
} 


/* Default Typography
================================================================================================================ */
p, ul {
	font-size: .8em; line-height: 1.8em;
	margin: 0 0 1.5em 0;
}

h1 {
	border-bottom: 1px solid #999;
	color: #1058c8;
	font-size: 1.6em; line-height: 1.3em;
	font-weight: bold;
	margin: 10px 0 20px 0;
	padding: 0 0 5px 0;
}

h2 {
	color: #275583;
	font-size: 1.1em;
	font-weight: bold;
	line-height: 140%;
	margin: 0;
	padding: 0;
}


h3 {
	color: #275583;
	font-size: 1.2em;
	font-weight: bold;
	margin: 30px 0 0; padding: 0;
}

h4 {
	border-top: 1px solid #e7e7e7;
	color: #1d596a;
	font-size: 1.1em;
	font-weight: bold;
	margin: 30px 0 -5px 0; padding: 5px 0 0 0;
	text-transform: uppercase;
}





/* Lists
================================================================================================================ */
ul {
	margin:10px 0 20px 0; padding:0;
	margin-left: 20px;
}
ul li {
	 line-height: 1.6em;
	list-style-type: disc;
	margin:0 0 8px 0; padding:0; 
}
ol {
	margin:0;
	padding:0;
	padding-left:4em;
	margin-bottom:1em;
}
ol li {
	margin:0;
	padding:0;
}
ol ol {
	margin-bottom:0;
	list-style:lower-roman;
}
ol ol	li {
	list-style-type:lower-roman;
}



/* Links
================================================================================================================ */

a:link, a:hover, a:visited, a:active {
	color: #275583;
	text-decoration: none;
}

a:hover {
	color: #568C9C;
}



/* Images
================================================================================================================ */
img, a:link img, a:hover img, a:visited img, a:active img {
	border: none;
	margin: 0; padding: 0;
	text-decoration: none;
}






/* Tables
================================================================================================================ */
td {
	text-align: left;
}


input,textarea,select {
	border:1px solid #aaa;
	font-family:verdana, sans-serif;
	font-size:1em;
	padding: 2px 2px 2px 5px;
}



/* Forms
================================================================================================================ */
form div.input {
	float: left;
	margin: 0 20px 20px 0;
	width: 190px;
}

form div.inputWrapper {
	float: left;
	margin: 0 20px 20px 0;
}
div.inputShort {
	width: 75px;
}
div.inputMed {
	width: 180px;
}
div.inputLong {
	width: 390px;
}
form div.required {
	color: #333;
	font-weight: bold;
}
label {
	color: #333;
	display: block;
	font-weight: bold;
	font-size: 12px;
	padding-right: 20px;
}
form div.error label {
	background-color: #900;
	color: #fff;
	font-size: 10px;
	padding: 3px;
}
div.errorMessage {
	color: red;
	font-size: 12px;
	font-weight: bold;
	line-height: 120%;
	margin: 20px 0px;
	padding: 10px;
}
form div.submit {
	clear: both;
}
input, textarea {
	clear: both;
	display: block;
	font-size: 80%;
	font-family: "frutiger linotype", "lucida grande", "verdana", sans-serif;
	padding: 2px;
	width: 100%;
}
select {
	clear: both;
	font-size: 80%;
	vertical-align: text-bottom;
	width: 100%;
}
select[multiple=multiple] {
	width: 100%;
}
option {
	font-size: 80%;
	padding: 0 3px;
}
input[type=checkbox] {
	border: none;
	clear: left;
	float: left;
	margin: 0px 6px 7px 2px;
	width: auto;
}
input[type=submit] {
	display: inline;
	font-size: 80%;
	padding: 2px 5px;
	width: auto;
	vertical-align: bottom;
}
input[type=hidden] {
	display: none;
	visibility: hidden;
}


/* Notices and Errors
================================================================================================================ */
div.message {
	clear: both;
	color: #900;
	font-size: 140%;
	font-weight: bold;
	margin: 1em 0;
}
div.error-message {
	clear: both;
	color: #900;
	font-size: 80%;
	font-weight: bold;
}
p.error {
	background-color: #e32;
	color: #fff;
	font-family: Courier, monospace;
	font-size: 120%;
	line-height: 140%;
	padding: 0.8em;
	margin: 1em 0;
}
p.error em {
	color: #000;
	font-weight: normal;
	line-height: 140%;
}
.notice {
	background: #ffcc00;
	color: #000;
	display: block;
	font-family: Courier, monospace;
	font-size: 120%;
	line-height: 140%;
	padding: 0.8em;
	margin: 1em 0;
}
.success {
	background: green;
	color: #fff;
}


/* Utility Classes
================================================================================================================ */
.clear {
	clear: both;
}
.clearLeft {
	clear: left;
}
.clearRight {
	clear: right;
}
.padder {
	padding: 0 20px 20px 20px;
}
