/* ---------------Global Styles--------------- */
#editAnywhere {display:none;}

a {}
a:hover {}
a:visited {}

h1 {}
h2 {}
h3 {}
h4 {}
h5 {}
h6 {}

img {max-width:100%;}

.leftAlign { float:left; margin: 0px 1em 0.5em 0px; }
.rightAlign { float:right; margin: 0px 0px 0.5em 1em; }

/* Button */

	input[type="submit"],
	input[type="reset"],
	input[type="button"],
	a.button,
	a .button,
	.button a {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		-moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		-webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		-ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		background-color: #003E7B;
		border-radius: 6px;
		border: 0;
		color: #ffffff;
		cursor: pointer;
		display: inline-block;
		font-weight: 400;
		height: 3em;
		line-height: 3em;
		padding: 0 2em;
		text-align: center;
		text-decoration: none;
		white-space: nowrap;
	}

		input[type="submit"]:hover,
		input[type="reset"]:hover,
		input[type="button"]:hover,
		a.button:hover,
    	a .button:hover,
    	.button a:hover {
			background-color: #0051A1;
		}

		input[type="submit"]:active,
		input[type="reset"]:active,
		input[type="button"]:active,
		a.button,
    	a .button,
    	.button a:active {
			background-color: #0051A1;
		}

		input[type="submit"].icon,
		input[type="reset"].icon,
		input[type="button"].icon,
		.button.icon {
			padding-left: 1.35em;
		}

			input[type="submit"].icon:before,
			input[type="reset"].icon:before,
			input[type="button"].icon:before,
			.button.icon:before {
				margin-right: 0.5em;
			}

		input[type="submit"].fit,
		input[type="reset"].fit,
		input[type="button"].fit,
		.button.fit {
			display: block;
			margin: 0 0 1em 0;
			width: 100%;
		}

		input[type="submit"].small,
		input[type="reset"].small,
		input[type="button"].small,
		.button.small {
			font-size: 0.8em;
			height: 2.7em;
			line-height: 2.7em;
		}

		input[type="submit"].big,
		input[type="reset"].big,
		input[type="button"].big,
		.button.big {
			font-size: 1.25em;
			height: 2.7em;
			line-height: 2.7em;
		}

		input[type="submit"].alt,
		input[type="reset"].alt,
		input[type="button"].alt,
		.button.alt {
			background-color: transparent;
			box-shadow: inset 0 0 0 2px #e5e5e5;
			color: #777;
		}

			input[type="submit"].alt:hover,
			input[type="reset"].alt:hover,
			input[type="button"].alt:hover,
			.button.alt:hover {
				background-color: #f8f8f8;
			}

			input[type="submit"].alt:active,
			input[type="reset"].alt:active,
			input[type="button"].alt:active,
			.button.alt:active {
				background-color: #f0f0f0;
			}

			input[type="submit"].alt.icon:before,
			input[type="reset"].alt.icon:before,
			input[type="button"].alt.icon:before,
			.button.alt.icon:before {
				color: #999;
			}

		input[type="submit"].special,
		input[type="reset"].special,
		input[type="button"].special,
		.button.special {
			background-color: #FDAB4A;
			color: #ffffff !important;
		}

			input[type="submit"].special:hover,
			input[type="reset"].special:hover,
			input[type="button"].special:hover,
			.button.special:hover {
				background-color: #FFBE71;
			}

			input[type="submit"].special:active,
			input[type="reset"].special:active,
			input[type="button"].special:active,
			.button.special:active {
				background-color: #FFBE71;
			}

		input[type="submit"].disabled, input[type="submit"]:disabled,
		input[type="reset"].disabled,
		input[type="reset"]:disabled,
		input[type="button"].disabled,
		input[type="button"]:disabled,
		.button.disabled,
		.button:disabled {
			background-color: #777 !important;
			box-shadow: inset 0 -0.15em 0 0 rgba(0, 0, 0, 0.15);
			color: #f5f5f5 !important;
			cursor: default;
			opacity: 0.25;
		}

/* List */

	ol {
		list-style: decimal;
		margin: 0 0 2em 0;
		padding-left: 1.25em;
	}

		ol li {
			padding-left: 0.25em;
		}

	ul {
		list-style: disc;
		margin: 0 0 2em 0;
		padding-left: 1em;
	}

		ul li {
			padding-left: 0.5em;
		}

		ul.alt {
			list-style: none;
			padding-left: 0;
		}

			ul.alt li {
				border-top: solid 1px #e5e5e5;
				padding: 0.5em 0;
			}

				ul.alt li:first-child {
					border-top: 0;
					padding-top: 0;
				}

		ul.icons {
			cursor: default;
			list-style: none;
			padding-left: 0;
		}

			ul.icons li {
				display: inline-block;
				padding: 0 1.25em 0 0;
			}

				ul.icons li:last-child {
					padding-right: 0;
				}

				ul.icons li .icon {
					color: inherit;
				}

					ul.icons li .icon:before {
						font-size: 1.75em;
					}
        
			ul.icons.bulleted li {
				padding-left: 2em;
				position: relative;
				display: block;
			}

				ul.icons.bulleted li.icon:before {
					left: 0;
					position: absolute;
					top: 0;
				}

				ul.icons.bulleted li > :last-child {
					margin-bottom: 1em;
				}
        
		ul.actions {
			cursor: default;
			list-style: none;
			padding-left: 0;
		}

			ul.actions li {
				display: inline-block;
				padding: 0 1em 0 0;
				vertical-align: middle;
			}

				ul.actions li:last-child {
					padding-right: 0;
				}

			ul.actions.small li {
				padding: 0 0.5em 0 0;
			}

			ul.actions.vertical li {
				display: block;
				padding: 1em 0 0 0;
			}

				ul.actions.vertical li:first-child {
					padding-top: 0;
				}

				ul.actions.vertical li > * {
					margin-bottom: 0;
				}

			ul.actions.vertical.small li {
				padding: 0.5em 0 0 0;
			}

				ul.actions.vertical.small li:first-child {
					padding-top: 0;
				}

			ul.actions.fit {
				display: table;
				margin-left: -1em;
				padding: 0;
				table-layout: fixed;
				width: calc(100% + 1em);
			}

				ul.actions.fit li {
					display: table-cell;
					padding: 0 0 0 1em;
				}

					ul.actions.fit li > * {
						margin-bottom: 0;
					}

				ul.actions.fit.small {
					margin-left: -0.5em;
					width: calc(100% + 0.5em);
				}

					ul.actions.fit.small li {
						padding: 0 0 0 0.5em;
					}

	dl {
		margin: 0 0 2em 0;
	}

/* Table */

	.table-wrapper {
		-webkit-overflow-scrolling: touch;
		overflow-x: auto;
	}

	table {
		margin: 0 0 2em 0;
		width: 100%;
	}

		table tbody tr {
			border: solid 1px #e5e5e5;
			border-left: 0;
			border-right: 0;
		}

			table tbody tr:nth-child(2n + 1) {
				background-color: #f8f8f8;
			}

		table td {
			padding: 0.75em 0.75em;
		}

		table th {
			color: #646464;
			font-size: 0.9em;
			font-weight: 300;
			padding: 0 0.75em 0.75em 0.75em;
			text-align: left;
		}

		table thead {
			border-bottom: solid 2px #e5e5e5;
		}

		table tfoot {
			border-top: solid 2px #e5e5e5;
		}

		table.alt {
			border-collapse: separate;
		}

			table.alt tbody tr td {
				border: solid 1px #e5e5e5;
				border-left-width: 0;
				border-top-width: 0;
			}

				table.alt tbody tr td:first-child {
					border-left-width: 1px;
				}

			table.alt tbody tr:first-child td {
				border-top-width: 1px;
			}

			table.alt thead {
				border-bottom: 0;
			}

			table.alt tfoot {
				border-top: 0;
			}

/* ---------------General Module Styles--------------- */

#homepageSlideshow { position:relative; padding-bottom:36%; height:0; }
.slideshow { position:absolute; }
.slideshow
, .slideshow .slides { z-index:1; width:100% !important; height:100% !important; }
.slideshow .slides { position:relative; font-size:100px; }
.slideshow .slide { display:block; width:100% !important; height:100% !important; background-repeat:no-repeat; background-position: center top; background-size:cover; color:#fff; text-decoration:none; overflow:hidden; }
#homepageSlideshow .overlay { position:absolute; top:0; left:0; right:0; bottom:0; background-color: rgba(0,0,0,0.1); }
#homepageSlideshow .text { position:absolute; top:35%; left:0; right:0; padding: 0 1em; text-align:center; }
#homepageSlideshow .title { font-size:60%; font-weight:bold; }
#homepageSlideshow .slideshowPrev
, #homepageSlideshow .slideshowNext { position:absolute; top:50%; transform: translateY(-50%); z-index:2; color:#fff; width:40px; line-height:40px; height:40px; text-align:center; font-size:48px; cursor:pointer; text-decoration:none; opacity:0.5; }
#homepageSlideshow .slideshowPrev { left:0; }
#homepageSlideshow .slideshowNext { right:0; }

/* Interior Header */
#mainHeader { display: block; position: relative; z-index: 0; background: #022954; margin: 0 0 -115px 0; padding: 85px 0; box-sizing: border-box; }
#mainHeader header { text-align: center; color: #fff; }
#mainHeader h1, #mainHeader h2 { font-family: TimesNewRoman, "Times New Roman", Times; text-transform: uppercase; font-weight: normal; font-size: 28px !important; }
#mainHeader h1 { background: #feaa4a; color: #022954; display: inline-block; margin: 0 0 1.5em 0; padding: 10px; box-sizing: border-box; }
#mainHeader h2 { color: #fff; display: block; margin: 0 0 5px 0; padding: 0; }
#mainHeader h2 > a { text-decoration: none; border-bottom: none; }
#mainHeader h2 > a > img { height: 35px; opacity: 0.8; }

.moduleDetail {}
.moduleLister {}
div.listerItem { clear: both; margin: 1.0em 0 1.5em 0; padding-bottom: 1.5em;border-bottom: 2px solid rgba(0, 0, 0, 0.1); }
div.listerItem:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }

/* common elements across modules */
.label { font-weight: bold; margin-right:10px; } /* form required vs form optional*/
.title {}
.description {}
.blurb {}
.thumbnail {}
.info {}
.author {}
.date {}
.time {}
.filter {float:right;}
.imageLink {float:left;}
.tags {background: #eee; display: block; margin-bottom: 10px; text-indent: 8px;}
.utilityLinks {}

.moduleLister .thumbnail { width: 200px; float: left; margin-right: 20px; }

.errorMessage{ font-weight:bold; color:#f00; }

/* End General Module Styles */

/* Pagination */
.pagination { clear: both; display: block; }
.pagination a, .pagination a:link, .pagination a:visited { text-decoration:none; }
.pagination .prevnextCurrent, .pagination .prevnextWindow, .pagination .prevnextWindowArrow { border:solid 1px #ccc; margin:0; padding:4px 6px; font-size:11px; margin-right:2px; display:inline; display:inline-block; }
.pagination a.prevnextWindow:hover, .pagination a.prevnextLink:hover, .pagination .prevnextWindowArrow:hover { border:solid 1px #000; color:#000; }
.pagination .prevnextCurrent {background:#ccc; color:#000; font-weight:bold; padding:4px 6px; }
.pagination a.prevnextLink { border:1px solid #ccc; padding:4px 6px 4px; margin-right:2px; font-size:11px; display:block; }
/* End Pagination */

/* Send Page Styles */
.sendpage { clear:both; }
.sendpageBody div, .sendpageBody td { padding: 2px 0px; }
/* End Send Page Styles */

/* ModuleBegin::gendocs */
.webpageModule.moduleDetail { }
/* ModuleEnd::gendocs */



/* ModuleBegin::events */
/* ---- Events Lister ---- */
.eventsModule.moduleLister {}

/* ---- Events Detail ---- */
.eventsModule.moduleDetail {}
	.eventsModule .date {}
	.eventsModule .label {}
	.eventsModule .time {}
	.eventsModule .location { margin: 1em 0; }
	.eventsModule .map {}
	.eventsModule .address {}
	.eventsModule .directions {}
	.eventsModule .contactInfo {}
	.eventsModule .name {}
	.eventsModule .phone {}
	.eventsModule .email {}
	.eventsModule .rsvp {}
	.eventsModule .ticketsWrapper {}
	.eventsModule .ticket {}
	.eventsModule .description {}
	.eventsModule .utilityLinks {}
    .eventsModule.moduleDetail .thumbnail {width:300px; float:right; margin-left: 20px;}


/* ---- Events Small Calendar ---- */
body#calendarIframe { font-size: 12px; background: transparent; }
.cal { padding: 5px; text-align: center; position:relative; background: transparent;}
#calendarIframe .cal { width: 275px; }
.calPrev { position: absolute; top: 4px; left: 15px; }
.calNext { position: absolute; top: 4px; right: 15px; }
.calMonth { position: relative; top: 0; left: 0; text-align: center; font-weight: bold; margin-left: 20px; margin-right: 20px; }
.calPrev a, .calNext a, .calMonth a { text-decoration: none; }
.calPrev a:hover, .calNext a:hover, .calMonth a:hover { text-decoration: underline; }
.calGrid { margin-top: 10px; clear: both; width: 100%; text-align: center; margin-left: auto; margin-right: auto; }
.calGrid td { font-size: 8pt; padding: 6px 0; text-align: center; border-bottom:1px solid #ddd; }
.calGrid tr.calWeek { font-weight: bold; text-align: center; }
.calDayOn a { font-weight: bold; text-decoration: underline; }
.calDayOn a:hover { text-decoration: none; }
.calGrid td.calTodayOff, .calGrid td.calTodayOn { background-color: #eee; color: #000; font-weight: bold; }
.calGrid td.calTodayOn a { text-decoration: underline; color: white; font-weight: bold; }
.calBottom { text-align: left;  }
.calMonthGlance { padding: 5px 0px 3px 0px; }
.calBottom a {  }


/* ---- Events Month at a Glance ---- */
#calendarDetail {margin-top: 7px; ; padding-bottom: 30px; width:100%; }
#calendarDetail table { width: 100%; table-layout: fixed;  text-align: center; }
#calendarDetail .calendarMonths { vertical-align: middle; padding-top: 3px; padding-left: 12px; width:100%; }
#calendarDetail a { text-decoration: none; }
#calendarDetail a:hover { text-decoration: underline; }
#calendarDetail .calendarMonths a { display: block; font-weight: bold; font-size: small; padding: 5px 0px 5px 0px; }
#calendarDetail .calendarMonths a:hover { color: #000; }
#calendarDetail .calendarDays { table-layout: fixed; background: #fff; width:100%; }
#calendarDetail .calendarDays td { background:none; border-bottom:1px solid rgba(0,0,0,.05); }
#calendarDetail .calendarDays .title { font-size: medium; font-weight: bold; color: #fff; padding: 10px 0px 10px 0px; background: #333; }
#calendarDetail .calendarDays .prevLink, #calendarDetail .calendarDays .nextLink { background: #333; color:#fff; }
#calendarDetail .title a { font-size: small; }
#calendarDetail .calendarDays .prevLink a, #calendarDetail .calendarDays .nextLink a{ font-size: small; color: #fff; }
#calendarDetail .calendarDays td { font-size:small; line-height:  1.1em; }
#calendarDetail .calendarDays .weekdays { height: 30px; line-height: 30px;background-color: #E8E8E8; }
#calendarDetail .calendarDays .emptyDay { height: 100px; text-align: left; vertical-align: top; background-color: #eee; background-color: rgba(0,0,0,.02); }
#calendarDetail .calendarDays .eventToday { height: 100px; text-align: left; vertical-align: top;background-color:#eee; background-color: rgba(0,0,0,.05); padding-left: 5px; padding:5px;}
#calendarDetail .calendarDays .eventOff { height: 100px; text-align: left; vertical-align: top; padding-left: 5px;  padding:5px;}
#calendarDetail .calendarDays .eventOn { height: 100px; text-align: left; vertical-align: top; padding-left: 5px; padding:5px; }

/* ---- Events Box ---- */
.eventsModule.moduleLister.box { }
.eventsModule.moduleLister.box .listItem { padding-bottom: 10px; }
.eventsModule.moduleLister.box .date { color: #777; }

/* ---- Events Registration ----- */
#registrationSummary td { padding:1px 10px; }
/* ModuleEnd::events */



/* ModuleBegin::news */
.newsModule.moduleDetail {}
.newsModule.moduleLister {}
.newsModule .copyright { padding: 1em 0em; text-align: center; font-size: smaller; }
.newsModule .blurb {}
.newsModule .thumbnail {}
/* ModuleEnd::news */

/* Media Library */
#mediaLibrary { display: block; box-sizing: border-box; width: 100%; }
#mediaLibrary .mediaFilter { display: flex; width: 100%; flex-direction: row; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; }
#mediaLibrary .mediaFilter h2 { flex: 0 0 25%; margin: 0; padding: 0; }
#mediaLibrary .mediaFilter select { flex: 1 0; }
#mediaLibrary .mediaFilter:after { display: block; content: ''; background-color: #e2e2e2; width: 100%; height: 1px; margin: 20px 0; }

#mediaLibrary .categoryTitle { display: block; width: 100%; }
#mediaLibrary .library { display: flex; flex-wrap: wrap; justify-content: space-around; align-items: flex-start; }
#mediaLibrary .mediaItem { display: block; opacity: 0; height: auto; position: relative; flex: 0 0 31%; margin: 4% 0; transition: all 0.3s; -webkit-transition: all 0.3s; }
#mediaLibrary .mediaItem.isVisible { opacity: 1; animation: all 300ms ease-in forwards; }
#mediaLibrary .mediaItem .mediaThumbnail {  }
#mediaLibrary .mediaItem .mediaThumbnail a { border-bottom: none; text-decoration: none; }
#mediaLibrary .mediaItem >.mediaThumbnail > .media { display: block; width: 100%; height: 200px; background-size: cover; background-repeat: no-repeat; background-position: center 25%; }
#mediaLibrary .mediaItem >.mediaThumbnail > .media > .type { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-end; flex-wrap: nowrap; position: absolute; z-index: 1; top: 0; left: 0; right: 0; width: 100%; height: 200px; background: rgba(0,0,0, 0.3); color: #fff; font-size: 30px; box-sizing: border-box; padding: 10px; transition: all 0.3s; -webkit-transition: all 0.3s; opacity: 0; }
#mediaLibrary .mediaItem >.mediaThumbnail > .media > .type > i { opacity: 1; transition: all 0.3s; -webkit-transition: all 0.3s; }
#mediaLibrary .mediaItem:hover >.mediaThumbnail > .media > .type { opacity: 0.9; }
#mediaLibrary .mediaItem .title { font-size: 22px; margin: 10px 0 20px 0; }
#mediaLibrary .mediaItem .description {  }
.zoombox_content, .zoombox_content:before, .zoombox_content:after { box-sizing: unset; -webkit-box-sizing: unset; }

/* Tablet ---------------------------------------------------*/
@media screen and (min-width: 750px) and (max-width: 1024px) {
    #mediaLibrary .mediaItem { flex: 0 0 45%; }
}

/* Phone ---------------------------------------------------*/
@media screen and (min-width: 20px) and (max-width: 749px) {
    #mediaLibrary .mediaItem { flex: 1 1 100%; }
    #mediaLibrary .mediaFilter { flex-direction: column; align-items: flex-start; }
    #mediaLibrary .mediaFilter h2 { margin-bottom: 10px; }
}

/* Phone Landscape -----------------------------------------*/
@media screen and (min-width: 530px) and (max-width: 749px) { 
    #mediaLibrary .mediaItem >.mediaThumbnail > .media { height: 275px; }
    #mediaLibrary .mediaItem { flex: 0 0 45%; }    
}

/* ModuleBegin::blog */
.blogModule {}
.blogModule .info {margin-bottom: 20px; }
.blogModule .author {}
.blogModule .date {}
.blogModule .thumbnail img { width:350px; max-width:100%; }
.blogModule .tags {} 
.blogModule .comment { padding: 10px; background: #f4f4f4; margin-bottom: 15px; border: 1px solid #ccc; }
.blogModule .comment .info { color: #333; font-weight: 600; margin-bottom: 10px; }

/* ---- Blog Lister ----- */
.blogModule.moduleLister {}
.blogModule.moduleLister h2 { margin-bottom:5px; }
.blogModule .listerItem {}
.blogModule .blurb {}

/* ---- Blog Detail ------- */
.blogModule.moduleDetail {}
.blogModule.moduleDetail h1 { margin-bottom: 5px; }
.blogModule.moduleDetail .fullText {}

/* ---- Blog Archives ------ */
.blogModule.archive .month { padding-left:10px; }
.blogModule.archive .year { font-weight: bold; }
/* ModuleEnd::blog */

/* ModuleBegin::broadcastemail */
.enewsWrapper div { }
.enewsWrapper span { display: block; }
.enewsText { }
.enewsEmail { }
/* ModuleEnd::broadcastemail */

/* ModuleBegin::forms */
.formFieldWrapper { margin-bottom: 15px;}
.formFieldWrapper label.formLabel { display:block;font-weight: 500; font-size: 14px;}
label.formLabel.primaryLabel.formAlign_split { margin-bottom: 12px;}
.formFieldWrapper .flex_item label.formLabel {font-size: 15px; font-weight: normal;}

.formFieldWrapper .formField { }

.formLabel.formAlign_align { }

.formField.formAlign_align {  }

.formLabel.formAlign_split,
.formField.formAlign_split { }

label.formLabel.formAlign_none, .formField.formAlign_none { display: inline-block; vertical-align: middle;}
.formLabel.formAlign_none:not(.checkRadioLabel) {margin-right: 30px;}
.formLabel.formAlign_none.checkRadioLabel {margin-left: 10px;}
.formField.formAlign_none input:not([type='radio']):not([type='checkbox']), .formField.formAlign_none textarea, .formField.formAlign_none select { vertical-align: middle; width: 250px; max-width: 100%;}

.formButtonWrapper {text-align:center;}
.formButtonWrapper input[type="button"], .formButtonWrapper input[type="submit"] { width: auto; }

/* basic calendar popup css */
.ui-datepicker {
	background-color: #fff;
	border: 1px solid #999;
	border-radius: 4px;
	display: none;
	margin-top: 4px;
	padding: 10px;
	width: 240px;
}
.ui-datepicker .ui-datepicker-header {
	text-align: center;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
	cursor: pointer;
}
.ui-datepicker .ui-datepicker-prev {
	float: left;
	text-align: left;
}
.ui-datepicker .ui-datepicker-next {
	float: right;
	text-align: right;
}
.ui-datepicker .ui-datepicker-calendar {
    table-layout: fixed;
	width: 100%;
}
.ui-datepicker .ui-datepicker-calendar th,
.ui-datepicker .ui-datepicker-calendar td {
	text-align: center;
	padding: 2px 0;
}
.ui-datepicker .ui-datepicker-calendar td:hover {
	background-color: #eee;
	cursor: pointer;
}
.ui-datepicker .ui-datepicker-calendar td a {
	text-decoration: none;
}
.ui-datepicker .ui-datepicker-today {
	background-color: #f2f2f2;
}
.ui-datepicker .ui-datepicker-current-day a {
	color: #000;
}
.ui-datepicker .ui-datepicker-calendar .ui-datepicker-unselectable:hover {
	background-color: #fff;
	cursor: default;
}
/* ModuleEnd::forms */


/* Homepage Boxes */
.box.features span.icon.major {
    width: 126px;
    padding: 30px;
    height: 126px;
}