html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body { font: 12px/1.5 helvetica, verdana, sans-serif; color: #555555; background: #000 url(../images/body-background.jpg) top repeat-x; }

h1, h2, ol, ul, p, form{ margin: 0 0 18px 0; }
h2.section-title{ font-size: 15px; font-weight: normal; text-transform: uppercase; letter-spacing: 1px; }

ol, ul { list-style: none; margin: 0 0 18px 18px; }
ol{ list-style: decimal; }
ul{ list-style: disc; }

a:link, a:visited{ text-decoration: underline; }
a:hover, a:active{ text-decoration: none; }
a.video{
    background: #000;
    display: block;
    height: 300px;
    width: 400px;
}

blockquote, q { quotes: none; }

del { text-decoration: line-through; }

/* tables still need 'cellspacing="0"' in the markup */
table { border-collapse: collapse; border-spacing: 0; }


/* Home Page Popup */

#home-popup{
	background: #36699C;
	height: 210px;
	padding: 20px;
	color: #DDD;
}
#home-popup h1{
	margin: 0 0 20px 0;
	color: #FFF;
	font-size: 18px;
}
#home-popup a{ color: #FD9732; }



/* Layout */

#header-wrapper, #content-inner-wrapper, #sub-content-wrapper, #footer, #calendar-wrapper{
	margin: 0 auto;
	width: 902px;
}


/* Header */

#shadow{
	position: absolute;
	top: 153px;
	left: 0;
	width: 100%;
	height: 25px;
	background: transparent url(../images/header-shadow.png) top repeat-x;
	z-index: 10;
}

#header-wrapper{ position: relative; z-index: 11; }
#header{
	position: relative;
	height: 153px;
	z-index: 2;
}
	#logo{
		display: block;
		width: 375px;
		height: 153px;
		text-indent: -9999px;
		background: transparent url(../images/logo.jpg);
	}
	
	#primary-menu{
		position: absolute;
		bottom: 0;
		right: -20px;
		list-style: none;
		text-align: right;
		margin: 0;
	}
	body.home #primary-menu{ right: -17px; }
		#primary-menu li{
			float: left;
			position: relative;
		}
			#primary-menu a{
				cursor: pointer;
				display: block;
				padding: 0 20px;
				
				color: #FFF;				
				line-height: 36px;
				text-decoration: none;
				text-transform: uppercase;
			}
			#primary-menu > li:hover{
				background: transparent url(../images/primary-menu-item-background.jpg) bottom right no-repeat;
			}
				#primary-menu li:hover > ul{ display: block; }
			
			#primary-menu ul{
				display: none;
				position: absolute;
				right: 20px;
				top: 35px;
				margin: 0;
				width: 172px;
				border-top: 1px solid #FFF;		
				list-style: none;
			}
				#primary-menu ul a{
					padding: 9px 18px;
					width: 136px;
					background: #ff9933;
					opacity: 0.85;
					
					font-size: 12px;
					line-height: 18px;
					text-align: left;
					text-transform: none;
				}
					#primary-menu ul a:hover{ background: #d26e0b; opacity: 1; }
			
	#secondary-menu{
		position: absolute;
		top: 48px;
		right: 0;
		
		list-style: none;
		margin: 0;
		width: 51px;
		
		text-align: right;		
	}
		#secondary-menu li{
			display: inline;
		}
			#secondary-menu a{
				display: block;
				margin: 0 0 15px 0;
				
				color: #993300;
				font-size: 10px;
				line-height: 10px;
				text-decoration: none;
				text-transform: uppercase;				
			}
			#secondary-menu a:hover{ color: #FFF; }
			
	#header form{
		position: absolute;
		top: 12px;
		right: 0;
	}
		#header form input{ vertical-align: middle; }
		#search-input{ opacity: 0.7; }
		#search-input:hover{ opacity: 1; }
		

/* Content */

#content-wrapper{
	position: relative;
	z-index: 1;
	background: transparent url(../images/content-wrapper-background.png) top center repeat-y;
}

#content-inner-wrapper{ background: transparent url(../images/content-background.png) bottom right no-repeat; }
body.home #content-inner-wrapper{ background-image: none; } /* Fixes issue with home page banner images */
#content-inner-wrapper:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

#content{
	float: right;
	width: 668px;
}
body.home #content{ line-height: 0; } /* Fixes issue with home page banner images */
	#content-body{
		display: inline;
		float: left;
		width: 400px;
		margin: 0 0 30px 0;
		padding: 30px 30px 0 30px;
		border-right: 1px solid #6699cc;
	}
	#content.full #content-body{
		border: none;
		width: 608px;
	}

		#content-body td { padding: 2px; }

	#content-sidebar{
		display: inline;
		width: 203px;
		float: right;
		
		color: #6699cc;
		font-family: times, serif;
		font-size: 14px;
		font-style: italic;
		line-height: 24px;
		padding: 0 0 190px 0;
	}
		#content-sidebar-image{ line-height: 0; width: 202px; overflow: hidden; }
		#content-sidebar-image img{ margin: 0 0 18px 0; }
		#content-sidebar p{
			padding: 0 18px 18px 18px;
		}
		#content-sidebar p img{ margin-left: -18px; }

.generated-inline-form label { float: left; clear: left; width: 150px; margin: 0 10px 15px 0; line-height: 24px; text-align: right; }
.generated-inline-form input.text, .generated-inline-form select { float: left; width: 220px; border: 1px solid #aaa; line-height: 20px; }

/* Sidebar */

#sidebar{
	float: left;
	width: 234px;
	padding: 30px 0 41px 0;
}
body.home #sidebar{ height: 386px; padding: 31px 0 0 0; }
		
	
	#sidebar #nav, #sidebar #nav ul{
        float: left;
		margin: 0;
		list-style: none;
		width: 234px;
	}
		#sidebar #nav li{ float: left; position: relative; }
			#sidebar #nav a{
				display: block;
				padding: 6px 18px;
				width: 198px;
				color: #FFF;
				font-size: 12px;
				line-height: 17px;
				text-decoration: none;
				text-transform: uppercase;
			}
			#sidebar #nav li:hover > a, #sidebar >  #nav > li > a:hover{ background: transparent url(../images/sidebar-menu-item-bg-up.jpg) top left no-repeat; }	
			#sidebar #nav li.up:hover > a, #sidebar > #nav > li.up > a:hover, #sidebar #nav a.current, #sidebar #nav li:hover a.current { background: transparent url(../images/sidebar-menu-item-background.jpg) bottom left no-repeat; }	
			#sidebar ul ul{
				display: none;
				margin: 0;
				position: absolute;
				left: 234px;
				top: 1px;
			}
			#sidebar #nav li.up ul {
                top: auto;
                bottom: 1px;
			}
			#sidebar #nav ul.current{
				position: relative;
				left: 0;
				top: 0;
				margin: 1px 0 0 64px;
				width: 170px;
				display: block;
			}
				#sidebar #nav ul a{
					width: 134px;
					background: #396c9f;
					text-transform: none;
					opacity: 0.85;
				}
				#sidebar ul ul a.active{ background: #005b8b !important; opacity: 1 !important; }
				#sidebar #nav ul a:hover{ background: #083b6e !important; opacity: 1 !important; }
				#sidebar #nav ul a.blank{ cursor: default; background: transparent !important; border-bottom: 1px solid #FFF; text-indent: -9999px; }

	#quick-links{
	    position: relative;
	    clear: both;
	    width: 100%;
	}
        
		#quick-links ul {
            position: absolute;
    	    right: 0;
    		height: 34px;
    		width: 800px;
			list-style: none;
    		background: #4a7db0 url(../images/quick-links-background.png) right no-repeat;
		}
		#quick-links ul li {
			width: 100%;
			height: 100%;
			display: block;
            position: relative;
			margin: 0;
			padding: 0;
			list-style: none;
		}		
			#quick-links ul li a{ display: block; text-indent: -9999px; }
			#quick-links ul ul{
				background: transparent;
				display: none;
				position: absolute;
				left: 100%;
				bottom: 0;
				top: auto;
				width: 200px;
				height: auto;
			}
			#quick-links ul li:hover > ul{ display: block; }
				#quick-links ul ul li{ height: auto; }
				#quick-links ul ul li a{				
					width: 164px;
					padding: 7px 18px;
					background: #396c9f;
					opacity: 0.85;

					color: #FFF;
					font-size: 12px;
					line-height: 18px;
					text-decoration: none;
					text-indent: 0;
				}
				#quick-links ul ul li a:hover{ background-color: #093a6c; opacity: 1; }


/* Sub Content */

#sub-content-wrapper{
	padding: 30px 0;
}
#sub-content-wrapper:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

	#sub-content-wrapper h2{
		color: #999;
		font-family: "Times New Roman",times,serif;
		font-size: 18px;
		font-weight: normal;
		line-height: 1em;
		text-transform: uppercase;
	}
	
	#sub-content{
		float: left;
		width: 630px;
		padding: 0 20px;
		border-right: 1px solid #4d7194;
	}
	#sub-content:after {
	    content: ".";
	    display: block;
	    height: 0;
	    clear: both;
	    visibility: hidden;
	}
		#sub-content p{
			color: #ff9933;
			font-family: times, serif;
			font-size: 18px;
			font-style: italic;
			line-height: 30px;
			margin: 0 0 25px 0;
		}
		#sub-content-calendar{
			float: left;
			width: 355px;
		}
			#sub-content-calendar table{
				float: left;
				color: #FFF;
				width: 200px;
			}
				#sub-content-calendar table th{ text-align: left; }
				#sub-content-calendar table td{ position: relative; vertical-align: top; text-align: left; padding: 0 0 12px 0; color: #777; }
				
			#calendar-legend{
				float: left;
				margin: 0;
				padding: 0 0 0 10px;
				list-style: none;
				
				color: #6699cc;
				font-size: 10px;
				line-height: 20px;
				text-transform: uppercase;
			}
				#calendar-legend li{ cursor: pointer; }
				.swatch{
					display: block;
					width: 10px;
					height: 10px;
					float: left;
					margin: 3px 9px 0 0;
				}
					.white .swatch{ background-color: #FFF; }
					.orange .swatch{ background-color: #ff9900; }
					.blue .swatch{ background-color: #3399ff; }
					.green .swatch{ background-color: #66cc00; }
					.red .swatch{ background-color: #ff0000; }
					.yellow .swatch{ background-color: #ffff00; }
					.purple .swatch{ background-color: #cc00cc; }
					.teal .swatch{ background-color: #007B7B; }
			
			#mini-calendar-events{
				display: none;
				clear: left;
			}
				#mini-calendar-events a{
					color: #FFF;
				}
			
		#sub-content-videos{
			float: right;
			width: 275px;
		}
			#player{
				display: block;
				float: left;
				width: 216px;
				height: 178px;
			}
			#player-playlist{ float: left; margin: 0; padding: 0 0 0 10px; list-style: none; }
				#player-playlist li{ display: block; margin: 0 0 6px 0; }
				
	#sub-sidebar{
		float: right;
		width: 190px;
		padding: 0 20px;
	}
		#sub-sidebar ul{
			list-style: none;
			margin: 0;
		}
			#sub-sidebar li{
				color: #FFF;
				display: block;
				margin: 0 0 18px 0;
			}
				#sub-sidebar li a{ color: #FFF; }
				#sub-sidebar li .date{ color: #6699cc; }


/* Calendar */

#calendar-wrapper{
	float: right;
	width: 648px;
	margin: 30px 10px 150px;
}
#calendar-wrapper:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
	#calendar-header{
		position: relative;
		height: 80px;
	}
		#calendar-wrapper h1{
			margin: 0;
			font-family: "Times New Roman",times,serif;
			font-size: 24px;
		}
	
		#large-calendar-legend{
			position: absolute;
			top: 0;
			right: 0;
			margin: 0;
			list-style: none;
			width: 300px;
			
			color: #6699cc;
			font-size: 10px;
			line-height: 20px;
			text-transform: uppercase;
		}
			#large-calendar-legend li{
				float: left;
				width: 150px;
				cursor: pointer;
			}
		
	#calendar table{ width: 100%; margin: 0 0 30px 0; }
	#calendar table thead th{ font-weight: bold; text-align: center; }
		#calendar table tbody td{
			vertical-align: top;
			text-align: left;
			background: #26527C;
			border: 1px solid #ACB0B4;
			width: 14%;
		}
			#calendar table tbody td .date{ display: block; padding: 3px 6px; color: #bbe; }
				#calendar table tbody td a {
					display: block;
					margin: 0 2px 2px 2px;
					padding: 2px 5px;
					border-radius: 3px;
					-webkit-border-radius: 3px;
					-moz-border-radius: 3px;
					
					color: #FFF;
					font-size: 10px;
					font-weight: bold;
					text-decoration: underline !important;
				}
				#calendar table tbody td a.white{ background-color: #FFF; }
				#calendar table tbody td a.orange{ background-color: #ff9900; }
				#calendar table tbody td a.blue{ background-color: #3399ff; }
				#calendar table tbody td a.green{ background-color: #66cc00; }
				#calendar table tbody td a.red{ background-color: #ff0000; }
				#calendar table tbody td a.yellow{ background-color: #ffff00; }
				#calendar table tbody td a.purple{ background-color: #cc00cc; }
/* Footer */

#footer{
	color: #FFF;
	font-size: 10px;
	text-align: center;
	text-transform: uppercase;
	background: transparent url(../images/footer-logo.png) 0 20px no-repeat;
	padding: 70px 0 0 0;
}
	#footer p#emblem{
		display: block;
		width: 875px;
		height: 38px;
	}
	
	#footer p#emblem a{color:#fff;}
#news-header{position:relative;}	
#news-header a.rss{
	background: url(../images/icon-rss.png) no-repeat;
	display:block;
	position:absolute;
	top:0;
	right:-25px;
	width:16px;
	height:16px;
	text-indent:-9999px;
}
#news-header a.facebook{
	background: url(../images/icon-facebook.png) no-repeat;
	display:block;
	position:absolute;
	top:0;
	right:15px;
	width:16px;
	height:16px;
	text-indent:-9999px;
}
#news-header a.twitter{
	background: url(../images/icon-twitter.png) no-repeat;
	display:block;
	position:absolute;
	top:0;
	right:-5px;
	width:16px;
	height:16px;
	text-indent:-9999px;
}


#gallery-images{list-style:none; margin:0; padding:0;}
#gallery-images li{float:left; margin:0 12px 12px 0;}
#gallery-images li div{width:120px; height:80px; overflow:hidden; text-align:center; }
#gallery-images li div img {width:130px; height:auto;}

/*
    ColorBox Core Style
    The following rules are the styles that are consistant between themes.
    Avoid changing this area to maintain compatability with future versions of ColorBox.
*/
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative; overflow:visible;}
#cboxLoadedContent{overflow:auto; position:absolute; left:0;}
#cboxLoadedContent iframe{display:block; width:100%; height:100%; border:0;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}

/* 
    ColorBox example user style
    The following rules are ordered and tabbed in a way that represents the
    order/nesting of the generated HTML, so that the structure easier to understand.
*/
#cboxOverlay{background:#000;}
#cboxContent{margin-top:32px;}
#cboxLoadedContent{background:#fff; padding:20px 20px 60px 20px;}
#cboxLoadingGraphic{background:url(../images/loading-white.gif) center center no-repeat;}
#cboxLoadingOverlay{background:#fff;}
#cboxTitle{position:absolute; bottom:36px; left:20px; color:#000;}
#cboxCurrent{position:absolute; top:-22px; right:205px; text-indent:-9999px;}
#cboxSlideshow, #cboxPrevious, #cboxNext, #cboxClose{text-indent:-9999px; font-size:11px; width:20px; height:20px; position:absolute; background:url(../images/controls.png) 0 0 no-repeat;}
#cboxPrevious{background-position:0px 0px; left:20px; top:100px;}
#cboxPrevious.hover{background-position:0px -25px; color:#000;}
#cboxNext{background-position:-25px 0px; right:16px; top:100px;}
#cboxNext.hover{background-position:-25px -25px; color:#000;}
#cboxClose{background-position:-50px 0px; right:0; top:0;}
#cboxClose.hover{background-position:-50px -25px; color:#000;}
.cboxSlideshow_on #cboxPrevious, .cboxSlideshow_off #cboxPrevious{right:66px;}
.cboxSlideshow_on #cboxSlideshow{background-position:-75px -25px; right:44px;}
.cboxSlideshow_on #cboxSlideshow.hover{background-position:-100px -25px;}
.cboxSlideshow_off #cboxSlideshow{background-position:-100px 0px; right:44px;}
.cboxSlideshow_off #cboxSlideshow.hover{background-position:-75px -25px;}
