* {
	margin: 0;
	padding: 0;
	}

/*
 * Page Structure
 *******************************************************************************/
	
body {
	font: 90% "Lucida Grande", Verdana, Arial, Helvetica, sans-serif;
	background: #fff;
	color: #000;
	text-align: center;
	}

#wrapper {
	margin: 0 auto 10px;
	width: 50em;
	border: 1px solid #000;
	border-top: 0;
	background: #4F4F4F;
	text-align: left;
	}
	
#header {
	height: 55px;
	padding-top: 5px;
	background: #fff;
	}
	
	#header #logoleft {
		background: #fff url(images/logo.jpg) no-repeat top left;
		margin-left: 40px;
		height: 45px;
		width: 245px;
		border-right: 1px solid #666;
		float: left;
		/* Fix IE6 'double margin' float bug 
		 * Details: http://www.positioniseverything.net/explorer/doubled-margin.html
		 */
		display: inline;
		}
	
	#header #logoright {
		margin: 11px 0 0 12px;
		float: left;
		}
	
		#header #logoright h2 {
			color: #900;
			font: 180%/100% "Times New Roman", Times, serif;
			font-weight: bold;
			font-style: italic;
			}
		
		#header #logoright h4 {
			margin: -4px 0 0 30%;
			font-weight: normal;
			font-size: 85%;
			color: #444;
			background: transparent;
			border: 0;
			padding: 0;
			}
	
	#header h1 {display:none}
	
#header2 {
	background: #fff url(images/imagebar.jpg) no-repeat 0 30%;
	height: 50px;
	border-top: 1px solid #666;
	}

/* #home #header2 */
#header2 {
	height: 130px;
	background: #fff url(images/imagebar.jpg) no-repeat top left;
}
	
#container {
	border-top: 1px solid #fff;
	}
	
	#sidebar {
		float: left;
		width: 27%;
		color: #fff;
		padding-top: 25px;
		}	
	
	#sub-container {
		float: right;
		width: 72%;
		background: #fff;
		color: #18007C;
		min-height: 450px;
		position: relative;
		}	
	
		#menu {
			list-style: none;
			float: right;
			width: 100%;
			font-size: 80%;
			background: #400;
			border-bottom: 1px solid #fff;
			}
			
		#contactinfo {
			padding: 0 40px 10px;
			font-size: 9px;
			text-align: center;
			clear: both;
			position: absolute;
			bottom: 0;
			left: 13%;
			}

	#footer {
		clear: both;
		height: 0;
		background: #999;
		}
		
/*
 * Main Menu
 **********************************************************************/
	
#menu li {
	display: inline;
	}

#menu li a {
	color: #fff;
	float: left;
	width: auto;
	text-decoration: none;
	padding: 0.6em 1.95em;
	border-right: 1px solid #fff;
	white-space: nowrap;
	text-align: center;
	}
#menu li a:focus,
#menu li a:hover,
#menu li a:active {
	color: #fff;
	background: #900;
	}

/*
 * 'Home' always has a background image
 */
#menu #nav-home a {
	padding-left: 2.3em;
	padding-right: 1.5em;
	background: #400 url(images/grayarrow.gif) no-repeat top left;
}

#menu #nav-home a:focus,
#menu #nav-home a:hover,
#menu #nav-home a:active {
	background: #900 url(images/grayarrow_on.gif) no-repeat top left;
}	

/*
 * Active Links
 */

#home #nav-home a,
#schedule #nav-schedule a,
#about #nav-about a,
#faq #nav-faq a,
#contact #nav-contact a {
	background: #900;
	}
	
#home #nav-home a {
	background: #900 url(images/grayarrow_on.gif) no-repeat top left;
}
	
#schedule #nav-schedule a:focus, #schedule #nav-schedule a:hover, #schedule #nav-schedule a:active,
#about #nav-about a:focus, #about #nav-about a:hover, #about #nav-about a:active,
#faq #nav-faq a:focus, #faq #nav-faq a:hover, #faq #nav-faq a:active,
#contact #nav-contact a:focus, #contact #nav-contact a:hover, #contact #nav-contact a:active 
	{background: #900; }

	
/*
 * Links
 ***********************/
 
 #text a {
 	color: #44b;
 	text-decoration: none;
 }
 
 #text a:focus,
 #text a:hover,
 #text a:active {
 	color: #039;
 	text-decoration: underline;
 }
	
/*
 * Home Page
 ******************************************************************************/	
	
#home #upcoming {
	background: #eee;
	float: left;
	width: 100%;
	border-bottom: 1px solid #bbb;
	}
#home #upcoming h2 {
	color: #18007C;
	font-size: 110%;
	padding: 7px 0 7px 20px;
	border-bottom: 1px solid #ccc;
	background: #ddd;
	}
	
#home #upcoming table {
	background: #eee;
	float: right;
	width: 99%;
	margin: 7px 3px 2px 0;
	}
	
#home #upcoming th {
	text-align: left;
	padding: 0 0 3px 20px;
	color: #18007c;
	font-size: 80%;
	width: 6em;
	}
	
#home #upcoming th.firstcol {
	width:14em;
	}
#home #upcoming table .secondcol {
	border-right: 1px solid #999;
	}

#home #upcoming td {
	border-top: 1px solid #999;
	padding: 5px 0 5px 20px;
	font-size: 70%;
	}
	
#text {
	padding: 25px 40px 10px;
	clear: both;
	margin-bottom: 4em;	
	}
#text p {
	margin: 0.33em 1em 0.66em;
	}
	
#home #text p  {margin: 1em;}
/*
 * Sidebar
 **********************/
	
#sidebar h3 {
	font-weight: normal;
	padding: 6px 20px 10px;
	background: transparent url(images/redarrow.gif) no-repeat top left;
	}
#sidebar h3.current {
	margin-top: 1.5em;
	}
	
#sidebar p {
	font-size: 80%;
	padding: 0.5em;
	}
	
#sidebar form {
	padding: 10px 20px;
	}
#sidebar form label {
	font-size: 80%;
	}
#sidebar form label span {
	font-size: 90%;
	}
#sidebar form input {
	margin-bottom: 4px;
	}
#sidebar form .submit {
	width: auto;
}
#sidebar form p {
	padding: 0;
	margin: 0.5em 0 1em;
	font-size: 70%;
	}
#sidebar form p.pp {
	}
#sidebar form input {
	margin: 0.5em 0;
	width: 98%;
	}
#sidebar a {
	font-size: 120%;
	color: #bbe;
	text-decoration: none;
	}
#sidebar form a {
	font-size: 9px;
}
#sidebar a:focus,
#sidebar a:hover,
#sidebar a:active {
	color: #eee;
}

/*
 * General
 ********************************************************************************/

h4 {
	color: #18007C;
	font-size: 110%;
	padding: 7px 0 7px 20px;
	border-bottom: 1px solid #ccc;
	background: #ddd;
	clear: both;
	}

p {
	margin: 0.5em 1.5em;
}	
	
/*
 * Sign Up
 ********************************************************************************/
 #signupform {
 	clear: both;
 	padding-bottom: 3em;
 }
 
#sub-container table {
	border-collapse: collapse;
	margin: 2em;
}

#sub-container th {
	width: 13em;
	text-align: right;
	padding: 0.5em;
	background: #f0f0f0;
}

#sub-container td {
	padding: 0.5em;
	background: #f4f4f4;
}

#sub-container input {
	float: left;
	margin-right: 1em;
}

#sub-container table p {
	margin: 0;
	font-size: 65%;
	width: 20em;
}

#sub-container #submit {
	float: none;
	margin-left: 20em;
	width: auto;
}

.invalid {
	color: #f00;
}

p.invalid {
	color: #f00;
	font-weight: bold;
	background: #ffc url(images/attention.gif) no-repeat  0.7em 0.4em;
	padding: 0.33em 0 0.33em 2em;
	border: 1px solid #f00;
}

label span {
	font-size: 70%;
}

/*
 * FAQ
 *****************************************/
 
#faqlist li {
 	margin: 1em 3em 0;
 	list-style: none;
}

#faqlist {
	margin-bottom: 3em;
}
 
/*
 * About
 ***************/
 
h5 {
 	margin: 0 1em;
 	font-size: 100%;
 }

 .bottombuffer {
 	margin-bottom: 3em;
 }
 
 .top {
 	font-size: 70%;
	padding-right: 2em;
 	text-align: right;
 }
 
/*
 * Schedule
 *******************/
 
table.schedule {
	font-size: 90%;
	border: 1px solid #ddd;
	margin-top: 1em !important;
	margin-bottom: 1em !important;
	width: 30em;
}

table.schedule th {
	width: 23% !important;
	border-right: 1px solid #ccc;
	vertical-align: top;
}

table.schedule td {
}

table.schedule label {
	float: left;
	width: 7em;
}

table.schedule p {
	font-size: 85% !important;
	margin: 0.33em !important;
}

#text h5 {
	margin-top: 2em;
}

h5 a,
.schedule td a {
	font-size: 75%;
}

p.register {
	font-size: 80%;
	margin: 0.5em 0 0 1.5em !important;
}

.messagebuttons {	
	background: #ddd;
	border-top: 1px solid #ccc;
	padding-top: 1em;
}

#register .messagebuttons th,
#register .messagebuttons td  {
	background: #e9e9e9 !important;
	padding: 1em;
	text-align: right !important;
}

.button { 
	margin: 0 2em;
	padding: 0 0.33em;
}

.infonav {
	font-size: 90%;
	border: 1px solid #ddd;
}

.infonav td {
	padding: 0.25em 0.5em !important;
}

form table {
	border: 1px solid #bbb;
}

form p {
	font-size: 90%;
}

#sidebar ul {
	margin: 1em 2em;
	list-style: none;
	font-size: 80%;
}

#sidebar table {
	margin: 1em 1em 1em 1.5em;
	background: #eee;
	color: #025;
	padding: 0 0.5em;
	border: 1px solid #999;
	border-collapse: collapse;
}

#sidebar table a,
#upcoming a {
	font-size: 100%;
	color: #025;
	font-weight: normal;
	text-decoration: none;
}

#sidebar table a:hover {
	color: #039;
}

#sidebar th {
	background: #ccc;
	border-bottom: 1px solid #999;
}

#sidebar td,
#sidebar th {
	font-size: 80%;
	padding: 0.5em;
}

.stripe {
	background: #ddd;
	border: 1px solid #bbb;
	border-width: 1px 0;
}

h3 span {
	font-size: 70%;
}

.right {
	float: right !important;

}
#student_form {
margin-left: 0 !important;
}
#studentform {
margin-left: 0 !important;
}

#student_form input {
}

#user #studentform th {
	border-right: 1px solid #bbb;
	background: #e3e3e3;
}

.notice {
	color: #f00; 
	padding-left: 1em;
	font-size: 90%;
}

.hilite {
	border: 1px solid #ddd;
	background: #ffd;
	padding: 0.5em;
}

#text a, #upcoming a:hover {
	text-decoration: underline;
	}

#payment ul {list-style: none;}
#payment li {margin: 0.5em 0;}
#payment h5 {margin-top: 0; margin-bottom: 0;}
#payment form { margin-left: 1em; }

#sidebar td { font-size: 75%; }

#contact p, 
#privacy p,
#courses p	 {
	margin-bottom: 1.2em;
	}
	
#contact .schedule {
	margin-left: 1.1em;
	}
	
#signup .hilite,
#signup .invalid {
	margin-left: 0;
	}	
