@charset utf-8;

/*
	general styles
 */

.sans-serif,
cite,
blockquote,
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: Calibri,Helvetica,Arial,sans-serif;
	font-weight: normal;
}

#title h1 {
    font-family: Syncopate, Arial, Verdana, Tahoma, "DejaVu Sans", "Liberation sans", "Bitstream Vera Sans", sans-serif;
}
#title h1 span.title-part1 {
    text-transform: uppercase;
    color: #9591f2;
}
#title h1 span.title-part2 {
    color: #3e3c73;
}
#title h2 {
    font-family: Helvetica, Arial, Verdana, Tahoma, "DejaVu Sans", "Liberation sans", "Bitstream Vera Sans", sans-serif;
}

#content {
	color: #525252;
	font-family: Calibri,Helvetica,Arial,sans-serif;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 5px;
	padding-right: 5px;
}

#content p {
	margin: 5px 0 15px 0;
	text-align: justify;
}

#content ul,
#content li {
	list-style-type: disc;
	list-style-image: url('images/bullet.gif');
	list-style-position: inside;
}
#content ul {
	margin: 5px 0 15px 0;
	/* HACK: Not sure why we need different padding indent values here, but works */
	padding-left: 2em;
	text-indent: -1.2em;
}

#content table td span {
	padding: 3px;
}

.post h2,
.post h3,
.post h4,
.post h5,
.post h6 {
	margin: 15px 0 5px 0;
}

#content .page h1,
#content .page h2,
#content .page h3,
#content .page h4 {
	margin: 15px 0 5px 0;
}

#content .page h1 {
	font-size: 1.5em;
}
#content .page h2 {
	font-size: 1.3em;
}
#content .page h3 {
	font-size: 1.2em;
}
#content .page h4 {
	font-size: 1.1em;
}

.monospace,
var,
.monospace,
var,
code {
	font-family: courier new, courier, monospace;
}

.amp {
	font-style: italic;
	font-family: baskerville,palatino,palatino linotype,book antiqua,georgia,times,times new roman,serif;
	font-weight: normal;
}

a:link {
    color: #3e3c73;
}
a:active {
    text-decoration: none;
}
a:visited {
	color: #3e3c73; 
}
a:hover,a:active {
    color: #9591f2;
}

#nav-primary {
	font-family: Helvetica, Arial, sans-serif;
}
#nav-primary a {
	float: left;
	display: block;
	text-align: center;
    text-transform: uppercase;
}
#main.home #nav-primary a {
	float: none;
}
#nav-primary a:link,
#nav-primary a:visited {
	color: #7b7b7b;
	background: url("images/off.png");
    border: 1px solid #f5f5f5;
    width: 230px;
}
#nav-primary a:hover,
#nav-primary a:active {
	color: #7b7b7b;
	background: url("images/rollover.png");
    border: 1px solid #858585;
    width: 230px;
}
#nav-primary li.current_page_item a,
#main.home #nav-primary a {
	color: #ffffff;
	background: url("images/on.png");
    border: none;
    width: 232px;
}
#main.home #nav-primary a:hover,
#main.home #nav-primary a:active {
	color: #7b7b7b;
	background: url("images/rollover.png");
    border: 1px solid #858585;
    width: 230px;
}

.post-content ul,
.post-content ol {
	padding-left: 24px;
}

input,
textarea { 
	border: 1px #aaa solid;
	padding: 5px;
	outline: none;
}
input:hover,
textarea:hover,
input:focus,
textarea:focus {
	border: 1px #444 solid;
}
input:focus,
textarea:focus {
	box-shadow:inset 0px 0px 10px rgba(0,0,0,.2);
	-webkit-box-shadow:inset 0px 0px 10px rgba(0,0,0,.2);
	-moz-box-shadow:inset 0px 0px 10px rgba(0,0,0,.2);
}
textarea {
	min-height: 150px;
	width: 100%;
}

blockquote {
	border-top: 1px #ccc dotted;
	border-bottom: 1px #ccc dotted;
	text-align: justify;
	margin: 20px;
	padding: 12px;
}
	blockquote:first-letter {
		font-size: 24px;
		padding-right: 1px;
	}
	blockquote:first-line {
		font-size: 20px;
}

.classtimes table {
    border-spacing: 0;
}
.classtimes td {
    padding: 0 12px 6px 0;
}

/*
	layout styles
 */

#if-logged-in .container {
	background: #000;
	margin-top: -24px;
}

body {
	background: #fff;
	color: #525252;
	padding: 24px 0;
}

.container-outer {
	background: #fff;
    width: 772px;
    padding: 0 40px;
    margin: auto;
}
.container {
	background: #fff;
    width: 772px;
}
	#header .container-outer {
	    background: #fff url('images/header_image.png') no-repeat 25px 5px;
	}
	#header .container {
        background: none;
		padding-top: 30px;
	}
		#title {
			position: relative;
			height: 100px;            
		}
        /* TODO vertically align logo and tagline padding-bottom is a hack */
			#logo,
			#tagline {
				position: absolute;
				bottom: 0;
			}
			#logo {
                padding-bottom: 5px;
            }
			#logo span.title-part1 {
                font-size: 1.1em;
            }
			#logo span.title-part2 {
                font-size: 2em;
                font-weight: bold;
                line-height: 80%;
            }
			#tagline {
				font-size: 0.9em;
				right: 0;
                text-align: right;
                padding-bottom: 10px;
			}
			#header-image.container {
				padding: 0 0 5px 0;
                height: 60px; /* Without explicitly setting height, Firefox adds extra pixels! */
			}
			#main.home #header-image.container {
                height: 308px; /* Without explicitly setting height, Firefox adds extra pixels! */
			}
			#header-image.container img {
				border: 1px solid #d7d7d7;
			}
	#nav-primary {
		clear: both;
		width: 100%;
	}
		#nav-primary ul,
		#nav-primary li {
			list-style: none;
		}
			#nav-primary a {
				padding: 8px 10px;
				margin-left: 8px;
			}
			#nav-primary li.menu-item-left a {
				margin-left: 0;
			}
            #nav-primary li.current_page_item a,
            #main.home #nav-primary a {
				padding: 9px 10px;
            }
            #main.home #nav-primary a:hover,
            #main.home #nav-primary a:active {
				padding: 8px 10px;
            }

	#main.home #nav-primary {
		clear: both;
		width: 100%;
		padding: 0;
	}
		#main.home #nav-primary .menu-item-description ul,
		#main.home #nav-primary .menu-item-description li {
			list-style-type: disc;
			list-style-image: url('images/bullet.gif');
			list-style-position: inside;
		}
		#main.home #nav-primary .menu-item-description ul {
			padding-left: 1.5em;
			text-indent: -1.5em;
		}
			#main.home #nav-primary a {
				float: none;
				text-align: centre;
				letter-spacing: 1px;
				margin: 0;
				/* padding: 0; */
			}
		#main.home #nav-primary .menu-item-summary-box {
			float: left;
			height: 200px;
			width: 252px;
			margin-left: 8px;
			background-color: #f9f9f9;
			-moz-border-radius: 0 0 15px 15px;;
			border-radius: 0 0 15px 15px;
		}
		#main.home #nav-primary .menu-item-left {
            		margin-left: 0;
        }
		#main.home #nav-primary .menu-item-title {
            		text-align: center;
        	}
		#main.home #nav-primary .menu-item-description {
            		padding: 10px;
            		font-size: 0.85em;
            		line-height: 1.5em;
        	}

	#widget-header {
		clear: both;
	}
	
	#content {
	}
		#widget-alert {
			background: #C6D8CD;
			border: 1px #5b816a solid;
			padding: 24px;
			margin-bottom: 24px;
		}
		.post-single {
			padding-bottom: 20px;
			margin-bottom: 20px;
			border-bottom: 1px #dedede solid;
		}
	#sidebar {
		border-top: 1px #ccc solid;
	}
		#sidebar .widget-area {
			padding-bottom: 20px;
			margin-bottom: 20px;
			border-bottom: 1px #dedede solid;
		}
			#siebar ul,
			#sidebar li {
				padding: 0;
				margin: 0;
				list-style: none;
			}
				#sidebar .children {
					padding-left: 10px;
				}
					#sidebar .children .children {
						padding-left: 10px;
					}
	#footer .container {
		padding-top: 20px;
		padding-bottom: 20px;
	}
		#footer-content {
		}
		#footer-attribution {
			font-size: 0.7em;
			text-align: right;
			width: 772px;
			margin: auto;
			padding-top: 5px;
            	}
		#footer-attribution a,
		#footer-attribution a:visited {
			color: #525252;
		}
		#footer-attribution a:hover {
			color: #7b7b7b;
		}
			#footer ul,
			#footer li {
				display: inline;
				list-style: none;
			}
				#footer li a {
					padding: 0 10px;
				}


/* Always remember to compress your live stylesheet and keep an uncompressed backup */
