*{ margin: 0; padding: 0; }

/* =============================================================================
   HTML5 element display
   ========================================================================== */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio[controls], canvas, video { display: inline-block; *display: inline; *zoom: 1; }

html, body{ height: 100%; }

body{
   font: normal 14px/18px arial, verdana, sans-serif;
   color: #5e5e5e;
}

img.bg {
	/* Set rules to fill background */
	min-height: 100%;
	min-width: 1400px;

	/* Set up proportionate scaling */
	width: 100%;
	height: auto;

	/* Set up positioning */
	position: fixed;
	top: 0;
	left: 0;
}

@media screen and (max-width: 1024px) { /* Specific to this particular image */
	img.bg {
		left: 50%;
		margin-left: -700px;   /* 50% */
	}
}

h1{ padding: 0 0 10px 0; font: normal 22px/26px arial, verdana, sans-serif; color: #0f89ac; }
h2{ padding: 0 0 10px 0; font: normal 18px/22px arial, verdana, sans-serif; color: #0f89ac; }
h3{ padding: 0 0 10px 0; font: bold 16px/22px arial, verdana, sans-serif; color: #78a22f; }
h4, h5, h6{ padding: 0 0 10px 0; font: bold 14px/18px arial, verdana, sans-serif; color: #78a22f; }

a{ color: #0d83a7; text-decoration: underline; outline: none; }

p{ padding: 0 0 18px 0; }

hr{ border: 0; border-bottom: 1px solid #ccc; width: 100%; padding: 0; margin: 12px 0; height: 0px; }

ol, ul, dd{ margin: 0 0 10px 20px; }

pre, code, blockquote{ padding: 20px; }

input, select, textarea{ font: normal 12px/13px arial, verdana, sans-serif; }

#container{
    position: relative;
    width: 1004px;
    margin: 0 auto;
    -webkit-box-shadow: 0px 1px 5px 0px #696969;
    -moz-box-shadow: 0px 1px 5px 0px #696969;
    box-shadow: 0px 1px 5px 0px #696969; ; 
}

/***************
	HEADER
***************/
header{ 
    height: 169px; 
    background: url(../img/bg_header.jpg) 0 0 repeat-x;
    overflow: hidden; 
}
header h1#logo{ padding: 0; width: 247px; height: 132px; float: left; }
header h1#logo a{
    float: left;
    display: block;
    background: url(../img/logo.png) 0 0 no-repeat;
    width: 247px;
    height: 132px;
}
header h1#logo a span{ display: none; }

header #global{
    float: right;
    width: 705px;
    height: 52px;
    padding: 80px 15px 0 0;
    text-align: right;
}
#global h2{
    font: italic normal 19px/22px 'Centry Gothic', arial, sans-serif;
    color: #0f8aad;
    float: left;
}
header #global form{
    display: block;
    float: right;
    width: 229px;
    height: 28px;
    background: url(../img/input_search.png) 0 0 no-repeat;
}
header #global form input{
    float: left;
    width: 178px;
    height: 12px;
    padding: 8px;
    border: 0;
    font: normal 12px/12px arial, verdana, sans-serif;
    color: #616161;
    background: transparent;
}
header #global form input[type=submit]{
    display: block;
    width: 35px;
    height: 28px;
    padding: 0;
    cursor: pointer;
}
/***************
    NAVIGATION
*****************/
header nav {
    padding: 5px 27px;
    height: 27px;
    background: #016991 url(../img/bg_nav.jpg) 0 0 repeat-x;
}

header nav #mainNav, header nav #mainNav ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

header nav #mainNav a {
    display: block;
    padding: 6px 10px;
    font: normal 14px/14px arial, verdana, sans-serif;
    text-transform: uppercase;
    color: #fff;
    text-decoration: none;
}
header nav #mainNav a:hover,
header nav #mainNav a.active{ background: #3aaccd; }

header nav #mainNav li { float: left; }




/***************
	HOMEPAGE
****************/

#home_top{
	height: 332px;
	overflow: hidden;
	background: url(../img/bg_home_top.jpg) 0 0 no-repeat;
}

#home_top #slide_container{ 
	width: 704px; 
	height: 304px; 
	float: left;
	padding: 20px 19px 8px 18px;
	overflow: hidden; 
}
#home_content ul#hero{
    width: 704px;
    height: 304px;
    margin: 0;
    padding: 0;
    list-style-type: none;
}
#home_top ul#hero li{ 
	display: block; 
	width: 679px; 
	height: 255px; 
	padding: 20px 0 29px 25px;
	background: url(../img/bg_hero.png) 0 0 no-repeat; 
}

#home_top ul#hero li img.hero_img{
    float: left;
    width: 449px;
    height: 255px;
}
#home_top ul#hero li .hero_text{
    float: right;
    width: 200px;
    height: 195px;
	overflow: hidden;
    padding: 30px 10px 0 20px;
	color: #686868;
    font: normal 12px/16px arial, verdana, sans-serif;
}

#home_top ul#hero li .hero_text h2{ color: #0081ab; font: normal 18px/22px arial, verdana, sans-serif; }
#home_top ul#hero li .hero_text .hero_btn{
    display: block;
    width: 126px;
	height: 27px;
	cursor: pointer;
	overflow: hidden;
	text-indent: -999em;
    background: url(../img/btn_learnmore.jpg) 0 0 no-repeat;
}
#home_top ul#hero li .hero_text .rtecontent{ max-height: 95px; overflow: hidden; margin-bottom: 10px; }

#home_top .bx-pager{
    width: 105px;
    position: absolute;
    bottom: 30px;
    right: 60px;
    text-align: center;
    z-index: 100;
}
#home_top .bx-pager a.pager-link, #home_top .bx-prev, #home_top .bx-next{
    padding: 2px 5px;
    font: normal 12px/12px arial, verdana, sans-serif;
    color: #0f8aad;
    text-decoration: none;
}
#home_top .bx-pager a.pager-active{ background: #0f8aad; color: #fff; }

#home_top .bx-prev, #home_top .bx-next{
	position: absolute;
	bottom: 30px;
	z-index: 100;
	text-decoration: none;
}
#home_top .bx-prev{ right: 165px; }
#home_top .bx-next{ right: 45px; }

#home_top #right{
    width: 215px;
    height: 288px;
    padding: 15px 24px 29px 24px;
    float: right;
    overflow: hidden;
    position: relative;
}
#home_top #right .list_item{ padding: 0 0 15px 0; color: #fff; }
#home_top #right .list_item .date{ font-weight: bold; color: #87e1fb; }
#home_top #right .list_item a{ display: block; color: #eadfbc; }

#home_top #right h2{ color: #fff; }
#home_top #right a.viewall{
    display: block;
    text-align: right;
    font-size: 12px;
    color: #fff;
    position: absolute;
    bottom: 15px;
    right: 24px;
}

/*News */
#news_listings{
    width: 215px; 
    height: 245px;
    overflow:hidden;
}

#home_content{ 
	padding: 16px; 
	background: url(../img/bg_home_content.png) 0 0 repeat;
}
#home_content .col{
	width: 314px;
	min-height: 240px;
	margin-left: 15px;
	float: left;
	background: url(../img/bg_home_col.png) 0 0 no-repeat;
}
#home_content .col:first-child{ background: url(../img/bg_home_col1.png) 0 0 no-repeat; margin-left: 0; font-size: 12px; line-height: 16px; }

#home_content .col h2{
	padding: 6px 65px 12px 20px;
	height: 18px;
	position: relative;
	color: #fff;
	overflow: hidden;
}
#home_content .col h2 a{
	position: absolute;
	top: 13px;
	right: 15px;
	font: normal 12px/12px arial, verdana, sans-serif;
	color: #fff;
	text-decoration: none;
}
#home_content .col .rtecontent{
	padding: 10px 25px;
}

#home_content .col .event_item{ padding: 17px 18px 7px 18px; }
#home_content .col .event_item .date{
	width: 42px;
	height: 36px;
	padding: 3px 0;
	float: left;
	font: bold 14px/18px arial, verdana, sans-serif;
	color: #fff;
	text-align: center;
	text-transform: uppercase;
	background: url(../img/bg_home_date.jpg) 0 0 no-repeat;
}
#home_content .col .event_item .date .month{ font: bold 12px/16px arial, verdana, sans-serif; }
#home_content .col .event_item .text{
	width: 221px;
	padding: 0 0 0 15px;
	float: left;
}
#home_content .col .event_item .text a{ display: block; }

#home_content .col label{ display: block; margin: 10px 0 3px 0; font: bold 12px/16px arial, verdana, sans-serif; }
#home_content .col input{
	display: block;
	width: 248px;
	height: 12px;
	padding: 7px;
	border: 1px solid #b7b7b7;
}


/***************
	INTERIOR
****************/
#interior_content{ 
    padding: 20px;
    min-height: 400px;
    background: #f6f6f6 url(../img/bg_interior.jpg) 0 0 repeat-x;
}

#interior_content nav{
    width: 230px;
    min-height: 500px;
    float: left;
    background: url(../img/bg_sidenav.jpg) 0 0 no-repeat;
}
#interior_content nav h2{
	padding: 10px 13px 10px 13px;
	color: #fff;
	text-transform: uppercase;
	background: #5b871e url(../img/bg_sidenav_title.jpg) 0 0 repeat-x;
}

#interior_content nav #sideNav{
    list-style-type: none;
    margin: 10px 8px 0 8px;
}

#interior_content nav #sideNav li a{
    display: block;
    padding: 5px 7px;
    color: #5e5e5e;
    font: normal 14px/18px arial, verdana, sans-serif;
    text-decoration: none;
    text-transform: uppercase;
}
#interior_content nav #sideNav li a:hover,
#interior_content nav #sideNav li a.active{
	color: #fff;
	background: #3aaccd;
}

/** next level **/
#interior_content nav #sideNav li ul{ list-style-type: none; margin: 0 0 0 20px; }
#interior_content nav #sideNav li ul li a{
	font: normal 12px/16px arial, verdana, sans-serif;
}
#interior_content nav #sideNav li ul li a:hover,
#interior_content nav #sideNav li ul li a.active{
	background: none;
	color: #5e5e5e;
	text-decoration: underline;
}

#interior_content #content{
    width: 700px;
    float: right;
    padding: 0 9px 0 25px;
}

#interior_content #content .feature_img{
	display: block;
	float: left;
	margin: 0 27px 20px 0;
	padding: 5px;
	background: #fff;
	border: 1px solid #bbb;
}

/**** table template ***/
#interior_content #content h2.bar_title{
	margin: 0;
	padding: 10px 20px 0 20px;
	height: 32px;
	background: url(../img/bg_title.jpg) 0 0 repeat-x;
	color: #fff;
	text-transform: uppercase;
}
#interior_content #content .feature_img2{
	display: block;
	margin: 0;
	padding: 5px;
	background: #fff;
	border: 1px solid #bbb;
}
#interior_content #content .lower_text{
	padding: 20px 0 0 0;
}
#interior_content #content .table_container{ width: 248px; float: right; margin: 0 0 15px 15px; }
#interior_content #content .table_container .tableLayout{
	width: 100%;
	background: #e4e4e4;
	border: 1px solid #bdbdbd;
}
#interior_content #content .table_container .tableLayout th{
	padding: 10px 15px;
	background: #1e95bd url(../img/bg_bluefade.jpg) 0 0 repeat-x;
	color: #fff;
	text-align: left;
	text-transform: uppercase;
	font: normal 14px/18px arial, verdana, sans-serif;
}
#interior_content #content .table_container .tableLayout td{ vertical-align: top; padding: 0 10px 15px 10px; font: normal 12px/16px arial, verdana, sans-serif; }
#interior_content #content .table_container .tableLayout td:first-child{ padding-left: 10px; }
#interior_content #content .table_container .tableLayout tr.top td{ padding-top: 15px; }
#interior_content #content .table_container .tableLayout td.label{ width: 50px; border-right: 1px solid #bdbdbd; }
#interior_content #content .table_container .tableLayout td.label span{ 
	display: block; 
	/*padding: 5px; */
	/*background: #888; */
	color: #888; 
	font-weight: bold;
	text-transform: uppercase; 
}

/****************
    EVENTS
*****************/
#interior_content nav.events_side h2{ text-align: center; position: relative; }
#interior_content nav.events_side h2 a{ color: #fff; text-decoration: none; }
#interior_content nav h2 .arrowl{ position: absolute; top: 10px; left: 13px; cursor: pointer; display: block; width: 19px; height: 16px; }
#interior_content nav h2 .arrowr{ position: absolute; top: 10px; right: 13px; cursor: pointer; display: block; width: 19px; height: 16px; }
#interior_content nav h2 .arrowl img, #interior_content nav h2 .arrowr img{ border: 0; }

#interior_content nav #caltable {
    margin: 10px auto;
    text-align: center;
    width: 90%;
    text-transform: uppercase;
    color: #5f6062;
}

#interior_content nav #caltable tr.week {
    background: #f5f5f5;
	color: #797979;
    font: normal 10px/10px arial, verdana, sans-serif;
}
#interior_content nav #caltable tr.week th {
    padding: 5px 0;
}

#interior_content nav #caltable tr.body td {
    padding: 6px 0;
    border-top: 1px solid #bbb;
	border-right: 1px solid #bbb;
	background: #ebebe9;
	font: normal 12px/12px arial, verdana, sans-serif;
}
#interior_content nav #caltable tr.body td.other{ background: #f1f1f1; color: #bbb; }
#interior_content nav #caltable tr.body td.link{ background: #0d85a8; }
#interior_content nav #caltable tr.body td.link a{ color: #fff; text-decoration: none; }
#interior_content nav #caltable tr.body td.today{ background: #709c29; color: #fff; }

#interior_content nav #event_cat_form h3{ color: #5e5e5e; text-transform: uppercase; }
#interior_content nav #event_cat_form{ width: 90%; margin: 20px auto; }
#interior_content nav #event_cat_form table td{ padding: 0 15px 10px 0; font: normal 12px/16px arial, verdana, san-serif; }

#interior_content nav #event_cat_form .btn_filter{
	width: 101px;
	height: 27px;
	display: block;
	margin: 10px 0 0 0;
	border: 0;
	cursor: pointer;
	background: url(../img/btn_filter.jpg) 0 0 no-repeat;
}

#interior_content #content .event_item{
    padding: 0 0 20px 0;
}
#interior_content #content .event_item h2,
#interior_content #content .event_article h2{ font: normal 22px/26px arial, verdana, sans-serif; }

#interior_content #content .event_item .img{
	display: block;
	float: left;
	border: 1px solid #c0c2c1;
	width: 96px;
	height: 83px;
	overflow: hidden;
	padding: 3px;
	background: #fff;
	margin: 0 10px 5px 0;
}
#interior_content #content .event_item h3{ padding: 0; }

#interior_content #content .event_article h3{ padding: 0; }

#interior_content #content .event_article .event_img{
	display: block;
	float: left;
	border: 1px solid #c0c2c1;
	overflow: hidden;
	padding: 3px;
	background: #fff;
	margin: 0 20px 5px 0;
}

.pagination{
    padding: 10px 0;
    text-align: center;
}
.pagination .arrow_left{
    display: inline-block;
    width: 19px;
    height: 16px;
    margin: 0 0 -3px 0;
    background: url(../img/arrow_green_left.png) 0 0 no-repeat;
}
.pagination .arrow_right{
    display: inline-block;
    width: 19px;
    height: 16px;
    margin: 0 0 -3px 0;
    background: url(../img/arrow_green_right.png) 0 0 no-repeat;
}

.search_result{ padding: 0 0 20px 0; }
.search_result h3{ padding: 0; }
.search_result h3 a{ text-decoration: none; }

.newsletters td {
    border-bottom: 1px solid #DDDDDD;
}
.newsletters .year {
    padding: 10px 0 0;
}
.newsletters .year h3 {
    margin: 0;
    padding: 0;
}
.newsletters .issues {
    color: #999;
    vertical-align: bottom !important;
}
.newsletters .month {
    padding: 10px 20px 10px 0;
}
.newsletters .issue {
    padding: 10px 20px 10px 0;
}
.newsletters .titles {
    padding: 10px 0;
}
/***************
	FOOTER
****************/
footer{
   padding: 20px 25px;
   color: #878787;
   font: normal 12px/16px arial, verdana, sans-serif;
   text-align: right;
   background: #dee2e3;
}
footer a{ color: #878787; text-decoration: none; }
footer a:hover{ text-decoration: underline; }


/***************
	GENERAL
****************/

.rtecontent img{ 
	border: 1px solid #c0c2c1;
	background: #fff;
	padding: 3px;
}
.rtecontent table{ }
.rtecontent table td{ }

.cleaner{ clear: both; }
.formLayout table td{ padding: 0 10px 10px 0; }
.formLayout label{
    display: block;
    font: bold 12px/16px arial,verdana,sans-serif;
    margin: 10px 0 3px;
}
input.field, textarea.field{
    border: 1px solid #B7B7B7;
    display: block;
    padding: 7px;
}

#home_content .col input.btn_submit,
input.btn_submit{
    width: 101px;
    height: 27px;
    border: 0;
    padding: 0;
    margin: 10px 0;
    background: url(../img/btn_submit.jpg) 0 0 no-repeat;
    cursor: pointer;
}

input.button{
    border: 0;
    padding: 10px;
    margin: 10px 0;
    color: #fff;
    text-transform: uppercase;
    font: bold 12px/16px arial,verdana,sans-serif;
    cursor: pointer;
    background: #78A22F;
}

.no_padding{ padding: 0 !important; }
.no_margin{ margin: 0 !important; }
.no_borders{ border: 0 !important; }
.hidden{ display: none !important; }

div.messages {
	border-width: 1px;
	border-style: solid;
	border-color: #ccc;
	margin: 0 0 20px 0;
	padding: 10px 10px 0 10px;

	background: #eee;
	font-size: 12px;
	line-height: 1.5em;
	-moz-border-radius: 10px;
	border-radius: 10px;
	-moz-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.4), 1px 0 1px rgba(255, 255, 255, 0.4), -1px 0 1px rgba(255, 255, 255, 0.4), 0 -1px 1px rgba(255, 255, 255, 0.4), 0 1px 1px rgba(255, 255, 255, 1), 0 1px 1px rgba(0, 0, 0, 0.07) inset;
	-webkit-box-shadow: 0 1px 1px rgba(255, 255, 255, 0.4), 1px 0 1px rgba(255, 255, 255, 0.4), -1px 0 1px rgba(255, 255, 255, 0.4), 0 -1px 1px rgba(255, 255, 255, 0.4), 0 1px 1px rgba(255, 255, 255, 1), 0 1px 1px rgba(0, 0, 0, 0.07) inset;
	box-shadow: 0 1px 1px rgba(255, 255, 255, 0.4), 1px 0 1px rgba(255, 255, 255, 0.4), -1px 0 1px rgba(255, 255, 255, 0.4), 0 -1px 1px rgba(255, 255, 255, 0.4), 0 1px 1px rgba(255, 255, 255, 1), 0 1px 1px rgba(0, 0, 0, 0.07) inset;
}
div.messages p { margin-bottom: 10px; padding: 0; }
div.messages b { text-shadow: 0 1px 0 rgba(255, 255, 255, .65); }
div.messages.error { border-color: rgba(204, 128, 128, 0.32) rgba(204, 128, 128, 0.24) rgba(204, 128, 128, 0.16); background: #fcc; }
div.messages.success { border-color: rgba(128, 204, 128, 0.32) rgba(128, 204, 128, 0.24) rgba(128, 204, 128, 0.16); background: #cfc; }
div.messages.warning { border-color: rgba(204, 204, 128, 0.32) rgba(204, 204, 128, 0.24) rgba(204, 204, 128, 0.16); background: #ffc; }

div.messages.error b { color: #a00; }
div.messages.success b { color: #080; }
div.messages.warning b { color: #880; }
