
/* default 0 paddings */
html, 
body, 
form {
	padding: 0px ;
	margin: 0px ; 
}

/* general font sizing */
body, 
input, 
select, 
textarea, 
button, 
h1, 
h2,
h3
h4,
h5, 
h6 {
	font-family: arial, sans-serif ;
	font-size: 12px ;
	line-height: 1.25; /* should never change */
}

/* general font color */
body {
	color: #000;
}

p {
	margin: 12px 0px; /* top and bottom padding should match font-size */
}

p:first-child {
	/*margin-top: 0px; */
}

p,
blockquote,
ul,
ol, 
menu,
.lh {
	line-height: 1.75; /* set general line height if different than standard (no units is multiplied by font size) */
}

/* set heading styles - always set top and bottom margins */
h1 {
	font-size: 2.8em ;
	font-weight: bold ;
	color: #3D083D;
	letter-spacing: -.03em ;
	margin-top: 0 ;
}

/*
h1:first-child {
	margin-top: 0px; 
}
*/

h2 {
	font-size: 13px ;
	font-weight: bold ;
}

h3 {
	font-size: 12px ; 
	font-weight: bold ;
}

h4 {
	font-size: 1.5em;
	margin-top: 11px; 
	margin-bottom: 0px; 
}

h5 {
	font-size: 1.25em;
	margin-top: 11px; 
	margin-bottom: 0px; 
}

h6 {
	margin-top: 11px; 
	margin-bottom: 0px; 
}

/* set anchor styles */
a:link {
	color: #3D083D;
}

a:active, 
a:visited {
	color: #6C446C;
}

a:hover {
	color: #F9CC00;
}

/* default table properties */
table {
	border-collapse: collapse ;
}

/* default image properties */
img {
	; 
}

/* hr styles */
hr {
	margin: 6px 0px; 
	padding: 0px;
	border: none; 
	border-top: solid 1px #000;
	border-bottom: solid 1px #fff;
	opacity: 0.4;
}

/*	template styles	*/

body {
	background: url(/images/page_bg.png) top center repeat-x #3D083D ;
	height: 100%; /* for iE6 */
}

.body {
	margin: 0px; /* never change cos of ie6 */
	padding: 0px; 
}
.page_top {
	background-color: #275781;
	margin: 0px; 
}

.page_top img {
	border: 0px !important; 
}

.info_bar {
	margin: 0px; 
	background: url(/images/button_bg.png) center ;
}

.info_bottom {
	margin: 0px; 
	padding: 12px ;
	font-size: 10px; 
	text-align: center; 
	color: #fff ;
	font-family: verdana; 
	background: url(/images/button_bg.png) center ;
	letter-spacing: 1px; 
}

.info_bottom, 
.info_bottom a:link {
	color: #fff;
	text-decoration: none; 
}

.navigation_bar {
	background-color: #3D083D;
	border: solid 0px #1A3A56;
}

.page_body_div {
	margin: 0px; 
}

.page_body_table {
	width: 100%;
}

.nav_cell {
	background: #F9CC00 ;
	color: #3D083D ;
	width: 234px;
	vertical-align: top;
	padding: 5px 0px; 
}

.nav_cell a:link,
.nav_cell a:active,
.nav_cell a:visited,
.nav_cell a:hover {
	color: #3D083D ;
}

.content_cell {
	background-color: #fff;
	vertical-align: top;
}

.content {
	padding: 10px ;
}


/* nav styles */

.sf-menu {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.sf-menu li {
	flex: auto;
}

.sf-menu li ul {
	width: 250px; 
}

/* nav button styles */

a.button_a, 
a.button_a:link, 
a.button_a:active, 
a.button_a:visited {
	font-family: verdana, arial, sans-serif; 
	font-size: 18px; 
	font-weight: bold ;
	letter-spacing: -.03em; 
	color: #3D083D ;
	text-align: center ;
	text-decoration: none ;
	padding: 6px 12px ;
	border-left: 1px solid #FBE5A2 ;
	border-right: 1px solid #F9CC00 ;
}

a.button_a:hover {
	background: url(/images/button_up.png) center top no-repeat ;
}

/* nav sub */

.nav li ul li a {
	width: 250px; 
}

a.button_b, 
a.button_b:link, 
a.button_b:active, 
a.button_b:visited {
	font-family: verdana, arial, sans-serif; 
	font-size: 11px; 
	font-weight: normal ;
	line-height: 16px ;
	text-decoration: none ;
	color: #3D083D ;
	background-color: #F9CC00 ;
	padding: 6px 12px ;
}

a.button_b:hover {
	background: url(/images/button_up.png) center top no-repeat #3D083D ;
	color: #fff ;
}

/* booklet */

.booklet {
}

.booklet p {
	margin: 0 ;
	padding: 0 ;
	font-size: 0 ;
	line-height: 0 ;
}

.booklet img {
	width: 100% ;
	height: auto; 
}

.booklet a:link,
.booklet a:active,
.booklet a:visited,
.booklet a:hover {
	display: block ;
	background: #3D083D ;
	color: white; 
	font-size: 14px ;
	line-height: 30px ;
	text-align: center ;
	text-decoration: none ;
}

.booklet a:link img,
.booklet a:active img,
.booklet a:visited img,
.booklet a:hover img {
	border: 0 ;
}

/* newsletter */

.newsletter {
	border-top: solid 1px white; 
	border-bottom: solid 1px white; 
}

.newsletter p {
	margin: 0px;
	padding: 0px; 
}

.newsletter img {
	border: 0px !important; 
}

.newsletter a:link img {
	max-width: 234px !important; 
}

/* share this */

.shareThis, .addThis {
	float: right ;
	margin-left: 20px ;
	margin-bottom: 10px; 
}

.shareThis a:link,
.shareThis a:active,
.shareThis a:visited,
.addThis a:link,
.addThis a:active,
.addThis a:visited {
	text-decoration: none ;
	color: #1C6E35 ;
	font-size: 12px ;
}

.addThis a:hover,
.shareThis a:hover {
	text-decoration: underline ;
}

.addThis a:link, 
.addThis a:active,
.addThis a:hover,
.addThis a:visited {
	color: #FE6D4C ;
}

/* footer styles */

div.foot {
	text-align: center ; 
	font-size: 12px ; 
	padding: 20px 0px; 
}

.foot, 
.foot a:link, 
.foot a:active, 
.foot a:visited, 
.foot a:hover {
	color: #fff ;
	text-decoration: none ;
}
.foot a:hover {
	text-decoration: underline ;
}
/* link_white */

a.link_white:link, 
a.link_white:active, 
a.link_white:visited {
	color: #fff ;
	text-decoration: none ;
}

a.link_white:hover {
	text-decoration: underline ;
}

/* misc standard styles */

.main_div {
	border: 1px solid #3D083D ;
	padding: 1px ;
	clear: both ;
	margin-bottom: 10px ;
}

.main_divTitle {
	background: #3D083D ;
	color: #ffffff ;
	font-size: 14px ;
	font-weight: bold ;
	padding: 5px ;
	font-style: italic ;
}

.main_div2 {
	border: 1px solid #3D083D ;
	padding: 1px ;
	clear: both ;
	margin-bottom: 10px ;
}

.main_divTitle2 {
	background: #3D083D ;
	color: #ffffff ;
	font-size: 14px ;
	font-weight: bold ;
	padding: 5px ;
	font-style: italic ;
}

img.img_float {
	clear: right; 
	float: right;
	border: solid 1px #275781;
	margin: 0px 0px 10px 10px; 
}

.box {
	border: solid 1px #1A3A56; 
}

.box_h {
	border: solid 1px #fff; 
	background-color: #1A3A56;
	color: #fff; 
	font-weight: bold; 
	padding: 5px; 
}

.box_c {
	padding: 5px; 
}

.action_end {
	text-align: center; 
	border: solid 1px #1A3A56;
	background-color: #fafafa;
	padding: 10px; 
	color: #3D083D;
	margin: 10px 0px; 
}

.gb {
	font-weight: bold; 
	color: #666;
}

/* _table default styles */

table.list_cont {
	width: 100%; 
}

table.list_cont td {
	padding: 5px; 
	vertical-align: top;
	border-top: dotted 1px #666;
}

table.list_cont tr:first-child td {
	border-top: 0px; 
}

td.img_cont {
	text-align: center; 
}

div.list_item {
	margin: 10px 0px ; 
	border: solid 1px #eee; 
	padding: 10px; 
	clear: both;
}

div.list_item:first-child {
	
}

table.hor_list_cont {
	width: 100%; 
}

td.hor_list_item {
	text-align: center; 
	vertical-align: top; 
	padding: 6px; 
	padding-bottom: 12px; 
}

table.hor_list_item {
	margin: auto; 
}

table.hor_list_item td {
	text-align: center; 
}

.view_all {
	font-size: 14px; 
	font-weight: bold; 
	text-align: right; 
	margin-top: 6px; 
}

.name {
	font-size: 1.2em; 
	font-weight: bold; 
}

.date {
	font-style: italic;	
	line-height: 1.75; 
	margin-bottom: 12px; 
}

div.img_cont {
	clear: right;
	float: right; 
	margin: 0px 0px 10px 10px; 
}

.link {
	text-align: right; 
	clear: right; 
}

.teaser {
	
}

.google_info_win {
	font-size: 12px ;
	margin-top: 10px ;
	line-height: 1.5 ;
}

/* nav */

.nav {
	margin: 0px;
	padding: 0px;
	overflow: visible;
	list-style: none;
	list-style-image: none;
	clear: both;
}

.nav li {
	display: inline-block;
}


.nav li a {
	display: block ;
}

.nav li {
	width: 100%; 
	margin: 0px;
	padding: 0px;
	position: relative;
}

/* sub nav */
.nav li ul {
	display: none;
	margin: 0px ;
	padding: 0px ;
	position: absolute;
	list-style: none;
	list-style-image: none;
}
.nav_hor li ul {
	left: 0;
	top: 100%;
}
.nav_ver li ul {
	left: 100%;
	top: 0;
}

.nav li:hover > ul {
	display: block;
	z-index: 2;
}
.nav li ul li a {
	display: block;
}

/* sub-sub nav */
.nav li ul li ul {
	display: none;
}
.nav li ul li:hover ul {
	left: 100%;
	top: 0;
}

/*	COMMON STYLES	/*

/* TinyMCE specific rules */


body.mceContentBody {
   background: #fff;
}

.mceContentBody a {
	color: #3D083D !important; /* Should match standard anchors; FF requires a important here for mceContentBody */
}

a:link img, 
a:active img, 
a:visited img {
	border-style: solid;
	border-width: 1px; 
	border-color: #3D083D;
}

a:hover img {
	border-color: #F9CC00;
}

input {
	margin: 2px; 
	margin-left: 0px; 
}

label, 
input[type="radio"], 
input[type="checkbox"] {
	vertical-align: middle; 
}

/*Misc Standard Styles*/

.w100 {
	width: 100%; 
}

.vat,
table.vat td,
tr.vat td {
	vertical-align: top; 
}

.vabl,
table.vabl td,
tr.vabl td {
	vertical-align: baseline; 
}

.vam,
table.vam td,
tr.vam td {
	vertical-align: middle; 
}

.tar {
	text-align: right; 
}

.important {
	color: #3D083D;
}

.required {
	text-align: center;
	color: #3D083D;
}

.even_row, 
.row_0 {
	background-color: #eee;
}

.odd_row, 
.row_1 {
	background-color: #fff;
}

.good, 
.status1 {
	color: #F2D99E;
}

.bad, 
.status0 {
	color: #3D083D;
}

table.form td {
	vertical-align: baseline; 
}

table.form td.label {
	text-align: right; 
}


/* BLOGS STYLES */

/* generic */

.blg.aut {
	font-weight: bold;
}

/* list */


/* detail */


/* module */


/* comments */

table.bc.list_cont {
	width: 100%; 
}

table.bc.list_cont td {
	vertical-align: top;
}

td.bc.comment_form {
	text-align: right;
	width: 300px; 
}

div.bc.comment_box {
	margin-left: 10px; 
	background-color: #1A3A56;
	padding: 0px 10px; 
	border: solid 1px #999;
}

.bc.comments_result {
	text-align: center;
	font-weight: bold;
	color: #3D083D ;
}

textarea.bc.icontent {
	width: 98%; 
	height: 6em; 
}

div.bc.comment {
	border: solid 1px #999;
	border-width: 1px 0px 0px 0px;
	padding: 10px; 
}

div.bc.comment.row0 {
	background-color: #eee;
}

div.bc.comment.row1 {
	background-color: #fff;
}

div.bc.comment_date {
	font-size: .8em; 
}

div.bc.comment_name {
	font-size: .8em;
}

div.bc.comment_content {
	margin-top: 10px; 
}


/* EVENTS STYLES */

/* generic */


/* list */


/* detail */

table.ev.detail.img_add_cont {
	width: 100%; 
}

td.ev.detail.img_add_item {
	text-align: center; 
	vertical-align: top; 
	padding: 6px; 
}

table.ev.detail.img_add_item {
	width: 100%; 
}

table.ev.detail.img_add_item td {
	text-align: center; 
}

/* module */

.ev.mod.list_item {
	padding: 0px 5px; 
	border: 0px; 
	margin: 0px; 
}

.ev.mod.list_item.n_0 {
	background-color: #eee;
}

.ev.mod.list_item.n_1 {
	background-color: #fff;
}

.ev.mod.name {
	font-weight: normal; 
}

.ev.mod.date {
	font-style: normal; 
	font-weight: bold; 
}

/* calendar */

.ev.cal.month {
	margin-bottom: 15px; 
	border: 1px solid #1A3A56 ;
	padding: 5px ;
}

.ev.cal.month_name {
	background-color: #275781; 
	text-align: center; 
	color: #ffffff ;
	font-size: 20px ;
	letter-spacing: -1px ;
	font-weight: bold ;
	font-style: italic ;
	padding: 5px ;
}

table.ev.cal.month_days {
	width: 100%; 
}

table.ev.cal.month_days td {
	padding: 0px; 
}

.ev.cal.day_name {
	text-align: center; 
}

.ev.cal.name {
	font-size: 1em;
	font-weight: normal;
	padding: 2px 5px;  
}

td.ev.cal.day {
	font-size: .9em; 
	border: solid 1px #666; 
	vertical-align: top; 
	height: 100px; 
	width: 14.28%; 
}

.ev.cal.day_num {
	float: right; 
	background-color: #eee; 
	width: 15px; 
	text-align: right; 
	border-bottom: solid 1px #666; 
	border-left: solid 1px #666; 
	padding: 2px; 
}

.ev.cal.today {
	background-color: #ddd; 
}

.ev.cal.name + .ev.cal.name {
	border-top: dashed 1px #ccc; 
}

/* PROGRAMS STYLES */

/* generic */


/* list */

.catCell {
	padding: 5px ;
	vertical-align: top ;
}

.catDiv {
	border: 1px solid #cccccc ;
	padding: 5px ;
}

/* detail */


/* module */


.print_only {
	display: none; 
}

@media print {
	
	.print_only {
		display: block;
	}
	
	.no_print {
		display: none; 
	}
	
	.content {
		width: 100%; 
		margin: 0px; 
		float: none;
	}
	
}
a.link_purple:link,
a.link_purple:active,
a.link_purple:visited {
	color: #3D083D ;
	text-decoration: none ;
}
a.link_purple:hover {
	text-decoration: underline ;
}

a.link_yellow:link,
a.link_yellow:active,
a.link_yellow:visited {
	color: #F9CC00 ;
	text-decoration: none ;
}
a.link_yellow:hover {
	text-decoration: underline ;
}



a img {
	border: 0 !important ;
}

.container {
	width: 100% ;
	max-width: 1180px ;
	margin: auto ;
}

.texture {
	background-image: url(/images/texture.png) ;
	background-position: top center;
}

.top_container {
	background-color: #3D083D ;
	padding-top: 1px ;
}

.logo {
	float: left ;
	margin: 20px ;
}

.logo img {
	height: 120px ;
}

.nav_container {
	background-image: url(/images/nav-bg.png) ;
	background-size: auto 100% ;
}

.content_container {
	/*background: #FBE5A2 ;*/
	background-image: url(/images/content-bg.png) ;
	background-position: center ;
	background-size: auto 100% ;
}

.content_bg {
	background-image: url(/images/shadow-bottom.png) ;
	background-position: top center ;
	background-repeat: repeat-x ;
}

.bottom_container {
	background: url(/images/shadow-bottom.png) top repeat-x ;
}

.top_photo_sized {
	height: 300px ;
}

.content_padding {
	padding: 20px 20px ;
}

.content_float {
	float: right ;
	width: 75%
}

.side_float {
	float: left ;
	width: 25% ;
}

.side_container {
	margin: 20px ;
}

.side_program {
	margin: 10px 0 ;
}

.side_program_photo {
	background-position: center center ;
	background-size: cover ;
}

.side_program_photo img {
	width: 100% ;
	height: 100px ;
}

.side_program_title a {
	display: block ;
	color: #F9CC00 ;
	background: #3D083D ;
	text-align: center ;
	padding: 5px ;
	font-size: 1.4em ;
	font-weight: bold ;
	letter-spacing: -.05em ;
	text-decoration: none ;
}

.side_program_title a:hover {
	text-decoration: underline ;
}

.top_info {
	float: right ;
	margin: 20px ;
	margin-top: 50px ;
}

.top_social img {
	height: 60px ;
	margin: 0 5px ;
}

img {
	max-width: 100% ;
	height: auto ;
}

.col_l {
	width: 48% ;
	float: left ;
}

.col_r {
	width: 48% ;
	float: right ;
}

.col_l_L {
	width: 63% ;
	float: left ;
}

.col_r_S {
	width: 35% ;
	float: right ;
}

.age_head {
	color: #3D083D ;
	font-size: 1.8em ;
	font-weight: bold ;
	letter-spacing: -.03em ;
}

.key_box,
.program_box {
	display: inline-block ;
	width: 31% ;
	vertical-align: top ;
	margin: 12px 1% ;
}

.city_map_key {
}

.top_name {
	color: #F9CC00 ;
	display: inline-block ;
	width: 90% ;
	max-width: 480px ;
	margin: auto ;
	margin-top: 40px ;
	font-style: italic ;
}

.top_name_1 {
	font-size: 3.8em ;
}

.top_name_2 {
	font-size: 1.8em ;
}

.row {
	display: flex ;
}

.col_1 {
	flex: 1 ;
}

.content_border {
}









@media (max-width: 980px) {
	
	.key_box,
	.program_box {
		display: block ;
		width: auto ;
		margin: 12px 0 ;
	}
	
	.row {
		display: inherit ;
	}
	
	.col_l_L,
	.col_r_S,
	.col_l,
	.col_r {
		width: auto ;
		float: none ;
	}
	
	.side_float,
	.content_float {
		display: block ;
		float: none ;
		width: auto ;
	}
	
	.logo,
	.top_name,
	.top_info {
		display: block ;
		float: none ;
		margin: 20px ;
		text-align: center ;
		margin-top: 20px ;
	}
	
	.sf-menu {
		display: block;
	}
	
	.sf-menu ul {
		position: static !important;
		width: auto !important;
	}
	
	.sf-menu li {
		/*float: none !important;*/
		display: block !important;
	}
	
	.sf-menu li ul li a {
		/*width: auto !important; */
	}
	
	a.button_a {
		padding: 4px !important ;
		border-top: 1px solid #FBE5A2 ;
		border-bottom: 1px solid #F9CC00 ;
	}
	
	a.button_b {
		font-size: 14px !important ;
		text-align: center; 
	}
}
