/* main layout classes */
html {
	background-color: #FDFDFF;
}

body { 
	margin: 0;
	padding: 0;
	font-family: verdana;
	font-size: 12px;
	color: #2F305B;
}

#main_navigation {
	margin: 0;
	width: 100%;
	font-family: arial;
	font-size: 13px;
	background-color: #3C3D81;
	height: 26px;
}
#main_navigation a,
#main_navigation a:link,
#main_navigation a:visited {
	text-decoration: none;
	color: #2F305B;
	background-color: #E3E8EE;
	padding: 2px 10px 2px 10px;
	border: 1px outset #E3E8EE;
	display: block;
	float: left;
	margin: 2px 5px 2px 5px;
}
#main_navigation a:hover {
	text-decoration: none;
	border: 1px inset #dddddd;
	background-color: #2F305B;
	color: #E3E8EE;
}

#main_page {
	margin: 20px 10px 20px 10px;
}

/* default styles by tag */
legend {
	font-weight: bold;
	background: #eeeeee;
	color: #444444;
	border: 1px solid #444444;
	padding: 4px;
}
label {
	width: 200px;
	display: block;
	margin-top: 3px;
	margin-bottom: 2px;
	float: left;
	clear: left;
}
fieldset{
	width: 520px;
	padding: 5px;
	background-color: #f6f6f6;
	margin-top: 6px;
	margin-bottom: 6px;
}
input {
	background: #eeeeee;
	margin-top: 3px;
	margin-bottom: 2px;
}
input.text {
	width: 300px;
}
select {
	background: #eeeeee;
	margin-top: 3px;
	margin-bottom: 2px;
}
textarea {
	background: #eeeeee;
	width: 300px;
	height: 300px;
	margin-top: 3px;
	margin-bottom: 2px;
}
div {
	margin-top: 2px;
	margin-bottom: 2px;
}
p {
	margin-top: 5px;
	margin-bottom: 5px;
}
table {
	font-family: verdana;
	font-size: 12px;
	margin-top: 5px;
	margin-bottom: 5px;
	border-top: 1px solid #999999;
	border-left: 1px solid #999999;
}
th {
	font-weight: bold;
	padding: 3px;
	border-right: 1px solid #999999;
	border-bottom: 1px solid #999999;
	color: #000000;
}
tr {
	vertical-align: bottom;
}
td {
	border-right: 1px solid #999999;
	border-bottom: 1px solid #999999;
	padding: 3px;
}
a, a:link, a:visited {
	text-decoration: none;
	color: #C71E26;
}
a:hover {
	text-decoration: underline;
}
img {
	border: 0px;
}
h1 {
	font: 20px verdana;
	margin: 2px;
	color: #990000;
	clear: both;
}
h2 {
	font: 18px verdana;
	margin: 15px 0px 5px 0px;
	padding-bottom: 4px;
	border-bottom: 1px dotted #000000;
}
h3 {
	font: 12px verdana;
	font-weight: bold;
	margin: 3px 0px 3px 0px;
	color: #000000;
}

/* required fields and error message classes */
.error {
	color: #1903BE;
	font-weight: bold;
	border: 1px solid #887CE3;
	padding: 4px;
	background: #F1F1F1;
}
p.required,
label.required {
	color: #FF283C;
	font-weight: bold;
}
input.required,
textarea.required,
select.required {
	background: #EF9AA2;
}
p.optional,
label.optional {
	color: #008080;
	font-weight: bold;
}
input.optional,
textarea.optional,
select.optional {
	background: #93D2D2;
}

/* useful secondary classes */
.dim {
	color: #999999;
	font-size: 11px;
}

/* navigation */
a.btn {
	text-decoration: none;
	color: #444444;
	display: block;
	float: left;
	border: 1px #444444 outset;
	background: #dddddd;
	padding: 2px;
	margin-right: 3px;
}
a:hover.btn {
	color: #dddddd;
	background: #444444;
	border: 1px #dddddd inset;
}

.section {
	background-color: #f9f9ff;
	color: #222222;
	border: 1px solid #000000;
	padding: 5px;
	height: 100%;
	margin: 5px 0px 5px 0px;
}

.section h2 {
	margin: -5px -5px 0px -5px;
	padding: 5px;
	background-color: #990000;
	color: #ffffff;
}

.h450 {
	min-height: 450px;
}

.gap_after {
	margin-bottom: 20px;
}

.thumb {
	float: left;
	padding: 1px;
	margin: 2px;
	border: 1px solid #000000;
}

h3.portfolio_site {
	border-top: 1px solid #000000;
	width: 90%;
	margin-top: 10px;
	padding-top: 10px;
}

#secondary_links {
	margin: -15px 0px 15px 0px;
}

.page_links a, .page_links a:link, .page_links a:visited, .page_links a:active {
	float: left;
	border: 1px solid #990000;
	padding: 3px;
	margin: 2px;
	color:	#990000;
	text-decoration: none;
}

.page_links a:hover {
	float: left;
	border: 1px solid #3C3D81;
	color: #3C3D81;
	background-color: #f6f6f6;
	padding: 3px;
	margin: 2px;
}

.page_links b {
	float: left;
	border: 1px solid #000000;
	padding: 3px;
	margin: 2px;
}

