body {margin: 0; padding: 0; color: #000; -webkit-text-size-adjust: 100%; -moz-text-size-adjust: 100%; -ms-text-size-adjust: 100%; font: 20px Arial, Helvetica, sans-serif; background: #fff;}
img {border: none; vertical-align: middle;}
form {padding: 0; margin: 0;}
a:link, a:visited, a:hover, a:active {text-decoration: none;}

/* Header */

#HeaderHolder {position: absolute; top: 0; left: 0; right: 0; z-index: 10; border-bottom: 1px solid #fec110;}
#HeaderBackground {position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: #062a5e url(/images/site/header_background.jpg) no-repeat center / cover; opacity: 0.9;}
#Header {padding-top: 1.4%}

#HeaderText {display: flex; align-items: center; margin-right: 140px;}
#HeaderText div {flex: 1;}
#HeaderTextLogo {width: 77.5%; height: auto; max-width: 273px;}
#HeaderTextLogoQP {width: 18.5%; height: auto; max-width: 65px; padding-right: 4%;}
#HeaderTextTitle {color: #dcdcdc; font-size: 0.7em; font-style: italic; margin-left: 1em; text-align: right;}

#HeaderDeb {position: absolute; right: 0; bottom: 0; height: 100%; max-height: 140px; padding-right: inherit; text-align: right;}
#HeaderDeb img {height: 100%; width: auto;}
#MenuHolder {text-shadow: 0 1px 0 rgba(0,0,0,0.3); position: relative; font-size: 0.8em;}

#BannerContainer {position: relative; background-color: #fff; background-repeat: no-repeat; background-size: cover; background-position: center; height: 42vw; max-height: 554px; min-height: 474px;}

/* Menu */

#MenuHandle {font-size: 1.4em; display: none; cursor: pointer; padding-top: 0.5em; padding-bottom: 0.5em; color: #fff; width: 8em;}
#MenuHandle::before {
	content: ""; display: inline-block; position: relative; vertical-align: middle; width: 1.3em; height: 1em; top: -0.1em; margin-right: 0.7em; margin-left: 0.5em;
	background: transparent url(/images/site/icons_1.svg) no-repeat 76.4% center / 20em 1em;
}
#MenuHandle::after {
	content: ""; display: inline-block; position: relative; vertical-align: middle; width: 1.4em; height: 0.7em; top: -0.1em; left: 0.75em;
	background: transparent url(/images/site/icons_1.svg) no-repeat 84% center / 20em 1em;
	-webkit-transition: transform 0.5s; transition: transform 0.5s; -webkit-transition-timing-function: ease; transition-timing-function: ease;
}

.MobileShowMenu #Menu {display: block !important;}
.MobileShowMenu #MenuHandle::after {transform: rotate(180deg);}

#Menu a {padding: 1.35em 1em; display: block; line-height: 1em; cursor: default; position: relative;}
#Menu a, #Menu a:link, #Menu a:visited, #Menu a:active {color: #fff;}
#Menu li:hover > a {color: #a7dcff;}
#Menu a:link {cursor: pointer;}
#Menu ul {margin: 0; padding: 0; display: flex;}
#Menu li {margin: 0; padding: 0; list-style-type: none;}
#Menu li:first-child {padding-left: 0;}
#Menu li:last-child {padding-right: 0;}

.MnuItmOn > a {color: #ffffdd !important;}

#Menu > ul > li:hover > a::after {display: block; content: ""; position: absolute; bottom: 0; left: 1em; right: 1em; height: 0.25em; background-color: #1674b2; border-top-left-radius: 0.125em; border-top-right-radius: 0.125em;} 
#Menu > ul > .MnuItmOn > a::after {display: block; content: ""; position: absolute; bottom: 0; left: 1em; right: 1em; height: 0.25em; background-color: #fec110; border-top-left-radius: 0.125em; border-top-right-radius: 0.125em;}

/* Menu sub item rules */

#Menu li ul a {padding: 0.9em 20px;}
#Menu li ul {display: none; position: absolute; background-color: #005091;
background-image: -moz-linear-gradient(top, #003d6e 0%, #005091 100%);
background-image: -webkit-linear-gradient(top, #003d6e 0%, #005091 100%);
background-image: linear-gradient(to bottom, #003d6e 0%, #005091 100%);
background-size: 100% 4em; background-position: top; background-repeat: no-repeat;
box-shadow: 0px 15px 35px rgba(0,0,0,0.42);
border-bottom-left-radius: 0.25em; border-bottom-right-radius: 0.25em; overflow: hidden; margin-left: 1em;
}
#Menu li ul li {display: block;
background-image: -moz-linear-gradient(top, #006fbc 0%, #006fbc 100%);
background-image: -webkit-linear-gradient(top, #006fbc 0%, #006fbc 100%);
background-image: linear-gradient(to bottom, #006fbc 0%, #006fbc 100%);
background-size: 100% 1px;
background-position: top;
background-repeat: no-repeat;
}
#Menu li:hover ul {display: block;}
#Menu ul li ul li:hover {background-color: #0b7aba; background-image: -moz-linear-gradient(top, #328cbf 0%, #328cbf 100%), -moz-linear-gradient(top, #0b76b3 0%, #0b7ec1 86%, #0a77b7 100%); background-image: -webkit-linear-gradient(top, #328cbf 0%, #328cbf 100%), -webkit-linear-gradient(top, #0b76b3 0%, #0b7ec1 86%, #0a77b7 100%); background-image: linear-gradient(to bottom, #328cbf 0%, #328cbf 100%), linear-gradient(to bottom, #0b76b3 0%, #0b7ec1 86%, #0a77b7 100%); background-size: 100% 1px, 100% 100%; background-position: top; background-repeat: no-repeat;}

/* Page path */

#PagePathHolder {background-color: #dcdcdc;
background-image: -moz-linear-gradient(top, #eeeeee 0%, #e9e9e9 13%, #e4e4e4 25%, #dcdcdc 50%, #dcdcdc 75%, #dcdcdc 100%);
background-image: -webkit-linear-gradient(top, #eeeeee 0%,#e9e9e9 13%,#e4e4e4 25%,#dcdcdc 50%,#dcdcdc 75%,#dcdcdc 100%);
background-image: linear-gradient(to bottom, #eeeeee 0%,#e9e9e9 13%,#e4e4e4 25%,#dcdcdc 50%,#dcdcdc 75%,#dcdcdc 100%);
border-top: 1px solid #fec110;
border-bottom: 1px solid #d3d3d3;
color: #002849; box-shadow: 0 0 11px rgba(0,0,0,0.15); text-shadow: 0 0.1em 0.1em rgba(0,0,0,0.1); position: relative; z-index: 9;}

#PagePath {display: flex; align-items: center;}
#PagePath h2 {font-weight: normal; font-size: 1em; line-height: 1.4em; padding-top: 0.6em; padding-bottom: 0.6em; margin: 0;}
#PagePath span {vertical-align: middle;}
#PagePath span:nth-child(even) {background: transparent url(/images/site/icons_1.svg) no-repeat 23.5% center / 18em 0.9em; text-shadow: none; display: inline-block; width: 0.9em; height: 0.9em; margin: 0 0.5em; color: transparent;}
#PagePath span:nth-child(1) {font-size: 27px; color: #1674b2;}
#PagePath span:nth-child(3) {font-size: 19px; color: #3f3f3f;}

#HeaderSearch {background: #fff; border-radius: 0.3em; margin: 0.6em 0 0.6em auto; width: 17em;}
#HeaderSearch div {position: relative;}
#SearchBox {background: transparent; border: none; box-sizing: border-box; font-size: 0.75em; padding: 0.4em 2.7em 0.4em 0.4em; width: 100%;}
#SearchButton {border: none; display: block; height: 2em; width: 2em; margin-top: -1em; position: absolute; right: 0.35em; top: 50%; background: #fff url(/images/site/icons_1.svg) no-repeat 69% center / 30em 1.5em; cursor: pointer; overflow: hidden; color: transparent;}

/* Banner slider */

#BannerSliderContainer, .BannerSlider {position: absolute; top: 0; right: 0; bottom: 0; left: 0;}
#BannerSliderContainer {z-index: 1;}
.BannerSlider {background-color: #3c4048; background-repeat: no-repeat; background-size: cover; background-position: center 60%; transform: translate3d(0, 0, 0);}
.BannerSlider a {position: absolute; top: 0; left: 0; right: 0; bottom: 0;}
.BannerSlider p {color: #fff; font-size: 1.25em; font-style: italic; left: 5%; left: calc(50% - 495px); margin-right: 5%; padding: 0.475em 1em 0.475em 0.9em; position: absolute; text-shadow: 0 0 0.3em #f3b80e; bottom: 5%; background-color: rgba(254,193,16,0.85); border-radius: 0.1em;}

#BannerSliderControlsHolder {position: absolute; width: 100%; bottom: 0.5em; text-align: right; z-index: 3; pointer-events: none;}
#BannerSliderControls div {display: inline-block; cursor: pointer; pointer-events: auto;}
.BannerSliderControlsSel div {width: 10px; height: 10px; border-radius: 6px; box-shadow: 0 1px 9px rgba(0,0,0,0.6); background-color: rgba(255, 255, 255, 0.2); border: 1px solid #fff; margin: 2px 5px;}
.BannerSliderControlsSel:hover div {background-color: rgba(255,255,255,0.5);}
.BannerSliderControlsSelOn div {background-color: #fff !important;}
#BannerSliderControlsPrev, #BannerSliderControlsNext {height: 16px; width: 16px; background: url(/images/site/icons_1.svg) no-repeat 31.5% center / 320px 16px;}
#BannerSliderControlsNext {background-position: 38.5% center;}

/* Content */

.Content {line-height: 130%; font-size: 0.8em;}

.Content h1, .Content h2, .Content h3, .Content h4, .Content h5 {font-weight: normal; line-height: normal;}
.Content h2 {}
.Content h3 {font-weight: bold;}
.Content h4 {font-style: italic; color: #a8a9ad; font-weight: bold;}

.Content a:link {color: #1674b2;}
.Content a:visited {color: #004d7e;}
.Content a:hover, #Content a:active {color: #2187c9; text-decoration: underline;}

.Content p {overflow-wrap: break-word;}
.Content p a[href$=".pdf"]::after {content: "[PDF]"; font-size: 0.75em; padding-left: 0.5em;}
.Content img {max-width: 100%; height: auto;}

#PageTitle {margin-top: 0.35em;}

.TextLabel {float: left; width: 5.5em; text-align: right; padding-right: 0.75em; font-weight: bold; clear: left;}
.ImageRight {float: right; margin-left: 0.75em; margin-bottom: 0.75em;}
.FloatLeft {float: left; margin: 0 14px 6px 0;}

.GoogleMapsContainer {border: 0; height: 400px; width: 100%;}

.ContentFlex {display: flex;}
.ContentFlex > div {flex: 1; margin: 0 2%;}
.ContentFlex > div:first-child {margin-left: 0 !important;}
.ContentFlex > div:last-child {margin-right: 0 !important;}

/* MailChimp */

#MailchimpHolder {background: #fec110; text-align: center;}
#Mailchimp {padding-top: 0.75em; padding-bottom: 0.75em;}
#MailchimpIntro {font-size: 1.25em; color: #fff; text-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);}
#MailchimpIntro p:first-child {margin-bottom: 0.25em;}
#MailchimpIntro p:last-child {font-size: 0.75em; font-style: italic; margin-top: 0;}

#mc-embedded-subscribe-form {margin: 1.2em 0 1.8em 0;}
#mc-embedded-subscribe-form label {display: none;}

#mce-EMAIL, #mc-embedded-subscribe {border: none; border-radius: 0.25em; box-sizing: border-box; font-size: 1.1em; padding: 0.5em;}
#mce-EMAIL {width: 50%;}
#mc-embedded-subscribe {background: #fff; color: #000; cursor: pointer; box-shadow: 0 0.25em 0.5em rgba(0,0,0,0.2); transition: box-shadow 0.5s ease 0s;}
#mc-embedded-subscribe:hover {box-shadow: 0 0 0.5em rgba(255, 255, 255, 0.5); transition: box-shadow 0.1s ease 0s;}

/* Facebook Feed */

#FacebookFeedHolder {
background-color: #005294;
background-image: -moz-linear-gradient(top, #15aff8 0%, #15aff8 100%);
background-image: -webkit-linear-gradient(top, #15aff8 0%, #15aff8 100%);
background-image: linear-gradient(to bottom, #15aff8 0%, #15aff8 100%);
background-size: 100% 13em;
background-position: top;
background-repeat: no-repeat, repeat-y;
}
#FacebookIntro {font-size: 1.25em; color: #fff; text-shadow: 0 2px 2px rgba(0, 0, 0, 0.1); text-align: center; margin-bottom: 1.9em;}
#FacebookIntro a {background-color: #fec110; margin: 0 0.7em; padding: 0.5em 1em 0.5em 0.7em; display: inline-block; color: #fff; border-radius: 0.25em; box-shadow: 0 0.25em 0.5em rgba(0,0,0,0.2); transition: box-shadow 0.5s ease 0s;}
#FacebookIntro a:hover {box-shadow: 0 0 0.5em rgba(255, 255, 255, 0.5); transition: box-shadow 0.1s ease 0s;}
#FacebookIntro a::before {content: ""; display: inline-block; vertical-align: middle; margin-right: 0.55em; background-image: url(/images/site/icons_1.svg); background-size: 27.5em 1.375em; background-repeat: no-repeat; height: 1.375em;}

#FacebookIntro a:first-child {margin-left: 0;}
#FacebookIntro a:last-child {margin-right: 0;}

.LinkFacebook::before {width: 1em; background-position: 2.4% top;}
.LinkTwitter::before {width: 2em; background-position: 8% top;}
.LinkInstagram::before {width: 1.6em; background-position: 16.2% top;}


.FBSizer, .FBTile {width: 30%;}
.FBGutter {width: 5%;}

.FBTile {margin-bottom: 1.4em; box-shadow: 0 3px 8px rgba(0, 0, 0, 0.25); color: #163260; border-radius: 0.25em; overflow: hidden;
background-color: #fff;
background-image: -moz-linear-gradient(top, #4267b2 0%, #4267b2 100%);
background-image: -webkit-linear-gradient(top, #4267b2 0%, #4267b2 100%);
background-image: linear-gradient(to bottom, #4267b2 0%, #4267b2 100%);
background-size: 100% 0.5em;
background-position: bottom;
background-repeat: no-repeat;
}

.FBPhoto img {width: 100%; height: auto;}
.FBTile p, .FBPhoto, .FBShare {margin: 1em; font-size: 0.8em;}

.FBTile p a:link {color: #1674b2;}
.FBTile p a:visited {color: #004d7e;}
.FBTile p a:hover, .FBTile p a:active {color: #2187c9; text-decoration: underline;}

.FBShare {border: 1px solid #ccc; display: block; border-radius: 0.25em; overflow: hidden;}
.FBShare:link, .FBShare:visited, .FBShare:hover, .FBShare:active {color: #163260;}
.FBShare:hover {border: 1px solid #ffc20f; background-color: #ffe; box-shadow: 0 0 0.5em rgba(255, 195, 16, 0.41);}
.FBShare h4 {font-size: 0.8em; font-weight: bold; margin: 0.75em;}

.FBShare div {float: left; padding-bottom: 0.55em; padding-right: 0.75em; width: 25%;}
.FBShare div img {width: 100%; height: auto;}

.FBPhoto {margin: 0.5em; max-height: 22em; overflow: hidden;}

.FBAlbum {margin: 0.5em 0.5em 0.55em 0.5em; font-size: 0.8em;}
.FBAlbum div {margin-bottom: 0.2em;}
.FBPhoto1Up img, .FBPhoto2Up img {width: 100%; height: auto;}
.FBPhoto2Up {display: flex;}
.FBPhoto2Up a {flex: 1;}
.FBPhoto2Up a:first-child {padding-right: 0.1em;}
.FBPhoto2Up a:last-child {padding-left: 0.1em;}
.FBUpsize {height: 100% !important; object-fit: cover;}

.FBPosted {background: #4267b2; font-size: 0.8em; position: relative; padding: 0.5em 0.5em 0.5em 2.3em;}
.FBVideo a {position: relative;}
.FBVideo a::after {content: ""; display: block; position: absolute; width: 4em; height: 4em; left: 50%; top: 50%; margin-left: -2em; margin-top: -2em; background: rgba(0, 0, 0, 0.5) url(/images/site/icons_1.svg) no-repeat scroll 37.8% center / 48em 2.4em; border: 0.2em solid #fff; border-radius: 2em; box-shadow: 0 0 0.5em rgba(0, 0, 0, 1); box-sizing: border-box;}
.FBVideo:hover a::after {border: 0.2em solid #ffc20f;}
.FBPosted a:link, .FBPosted a:visited, .FBPosted a:active {color: #fff;}
.FBPosted a:hover {color: #d8e3fa;}
.FBPosted::before {content: ""; display: block; position: absolute; background: transparent url(/images/site/icons_1.svg) no-repeat 1.1% top / 27.5em 1.375em; height: 1.375em; width: 1.375em; top: 0.45em; left: 0.5em;}

/* Footer */

#FooterLinksHolder {border-bottom: 1px solid #111; color: #666; border-top: 1px solid #d3d3d3; box-shadow: 0 0 0.55em rgba(0,0,0,0.15);
background-color: #dcdcdc;
background-image: -moz-linear-gradient(top, #eeeeee 0%, #e9e9e9 13%, #e4e4e4 25%, #dcdcdc 50%, #dcdcdc 75%, #dcdcdc 100%);
background-image: -webkit-linear-gradient(top, #eeeeee 0%,#e9e9e9 13%,#e4e4e4 25%,#dcdcdc 50%,#dcdcdc 75%,#dcdcdc 100%);
background-image: linear-gradient(to bottom, #eeeeee 0%,#e9e9e9 13%,#e4e4e4 25%,#dcdcdc 50%,#dcdcdc 75%,#dcdcdc 100%);
background-repeat: no-repeat;
background-position: top;
background-size: 100% 4em;
}

#FooterLinks {align-items: center; display: flex; font-size: 0.6em; line-height: 150%; padding-bottom: 0.7em; padding-top: 0.6em; align-items: center;}
#FooterLinks a:link, #FooterLinks a:visited {color: #666;}
#FooterLinks a:hover {color: #777; text-decoration: underline;}

#FooterLinks > div:nth-child(1) {flex-grow: 1; min-width: 12em;}
#FooterLinks > div:nth-child(2) {flex-grow: 2; min-width: 12em;}
#FooterLinks > div:nth-child(3) {flex-grow: 1; flex-shrink: 1;}
#FooterLinks > div:nth-child(3) p {display: flex;}
#FooterLinks > div:nth-child(3) a {display: block; flex: 1; padding: 0 0.5em; max-width: 26em;}
#FooterLinks > div:nth-child(3) a:first-child {padding-left: 0;}
#FooterLinks > div:nth-child(3) a:last-child {padding-right: 0;}
#FooterLinks > div:nth-child(3) img {width: 100%; height: auto; border-radius: 0.25em;}

#FooterImages img {border-radius: 3px; box-shadow: 0 6px 10px rgba(0,0,0,0.4); margin: 0 3px;}

#FooterHolder {background: #272727; color: #777;}
#Footer {font-size: 0.6em; padding-top: 0.6em; padding-bottom: 0.7em;}
#FooterToTop {text-align: right; float: right;}
#FooterToTop a:link, #FooterToTop a:visited, #FooterToTop a:hover {color: #777;}
#FooterToTop a:hover {color: #999;}

/* Main container padding and size */

.Inner {position: relative; max-width: 990px; padding-left: 32px; padding-right: 32px; margin: 0 auto; position: relative;}
.Content {padding-top: 1em; padding-bottom: 1em;}
#FacebookFeed {padding-top: 0.75em; padding-bottom: 0.75em;}

/* News and Events */

.NewsHolder > h2, .NewsDetailsHolder > h2, .EventHolder > h2, .EventDetailsHolder > h2 {margin-bottom: 0.375em;}
.NewsDate {margin-top: 0.375em; color: #035487; font-weight: bold; font-size: 1.2em; margin-bottom: 1em;}
.NewsHolder, .EventHolder {margin-bottom: 1.75em; border-bottom: 1px solid #d0d0d0; align-items: stretch;}
.NewsHolder:nth-last-child(2), .EventHolder:nth-last-child(2) {padding-bottom: 0; border-bottom: 0;}

.NewsThumbnailHolder, .EventThumbnailHolder {float: right; margin-left: 0.875em; margin-bottom: 0.625em; max-width: 31%;}

.NewsImage, .EventImage {text-align: center;}

.NewsTitle a {color: inherit !important;}
.NewsTitle a:hover {color: #2187c9 !important;}

.NewsNav, .EventNav {display: flex;}
.NewsNav div, .EventNav div {flex-basis: 100%; flex-shrink: 1;}
.NewsNav div:last-child, .EventNav div:last-child {text-align: right;}
.NewsNav div:first-child, .EventNav div:first-child {text-align: left;}

.NewsNavTop, .EventNavTop {border-bottom: 1px solid #d0d0d0; padding-bottom: 1.4em; margin-bottom: 1.4em;}
.NewsNavBottom, .EventNavBottom {border-top: 1px solid #d0d0d0; padding-top: 1.4em; margin-top: 1.4em;}
.NewsNavPrev a::before, .EventNavPrev a::before {content: "\25c4"; padding-bottom: 0.25em; padding-right: 0.5em;}
.NewsNavNext a::after, .EventNavNext a::after {content: "\25ba"; padding-bottom: 0.25em; padding-left: 0.5em;}

.EventDetails {margin-bottom: 1.75em;}
.EventDetail {margin-bottom: 0.25em;}
.EventDetail span {vertical-align: top; display: inline-block; width: calc(100% - 4.5em);}
.EventDetail span:first-child {font-weight: bold; width: 4.5em;}
.EventDetailsContact {font-style: italic; margin-bottom: 1.75em;}
.EventDetailsContact span {display: block;}
.EventDetailsContact span:first-child {font-weight: bold;}

/* News - Home */

.HomeNews {margin-bottom: 1.25em;}
.HomeNewsItem {margin-bottom: 0.75em;}
.HomeNewsItem div {font-size: 0.75em; display: inline-block; width: 5em; vertical-align: top;}
.HomeNewsItem h3 {font-size: 0.75em; font-weight: normal; display: inline-block; width: calc(100% - 5em); margin: 0; padding: 0; vertical-align: top;}
.HomeNewsItem h3 a {font-size: 1.3333em;}

.HomeNews h2 {border-bottom: 1px solid #109bfe; padding-bottom: 0.5em; margin-bottom: 0.5em; font-size: 1.25em;}
.HomeNews h2 a {font-size: 0.55em; padding-top: 0.5em; float: right;}
.HN2 {border-bottom: 1px solid #b4b4b4 !important;}
.HN10 {border-bottom: 1px solid #fec110 !important;}

.HomeNews h2::after {content: ""; display: inline-block; width: 1.25em; height: 0.8em; margin-left: 0.1em; background: transparent url(/images/site/icons_1.svg) no-repeat 54.3% top / 16em 0.8em;}
.HN2::after {background-position: 61.2% top !important;}
.HN10::after {background-position: 46.2% top !important;}

.Today {font-weight: bold;}

.ContentFlex.HomeNews ul {margin: 0; padding: 0 0 0 1em;}

/* Home Animation */

.ScrollHint {
	animation-duration: 0.8s;
	animation-name: ScrollWiggle;
	animation-iteration-count: infinite;
	animation-direction: alternate;
	animation-timing-function: ease-in-out;
	position: relative;
	text-align: center;
	margin-bottom: 1.4em;
	color: #15aff8;
	font-size: 1.2em;
}

.ScrollHint::before, .ScrollHint::after {content: ""; display: inline-block; width: 1.5em; height: 1em; background: transparent url(/images/site/icons_1.svg) no-repeat 91.5% top / 24em 1.2em; margin: 0 0.4em;}

@keyframes ScrollWiggle {
	from {
		top: -0.4em;
	}
	to {
		top: 0.4em;
	}
}

/* Home Images */

.HomeImagesFlex {display: flex; border-top: 1px solid #b4b4b4; padding: 1.25em 0 0 0;}
.HomeImagesFlex > div {flex: 1; padding: 0 1%; box-sizing: border-box;}
.HomeImagesFlex > div:first-child {padding-left: 0 !important;}
.HomeImagesFlex > div:last-child {padding-right: 0 !important;}

.HomeImage {color: #444;}
.HomeImage img {width: 100%;}
.HomeImage h2 {margin: 1em 0 0.65em 0; font-weight: bold; font-size: 1em;}
.HomeImage p {margin-top: 0;}

/* Contact */

address {margin-top: 0.875em;}

.ContactItem {padding: 0.375em 0;}
#ContactForm label {padding: 0.25em 0.375em 0.25em 0; display: inline-block; width: 6em; font-weight: bold; text-align: right; vertical-align: top;}
#ContactForm label span {padding-right: 0.25em; color: #444;}
#ContactForm textarea {padding: 0.25em; width: 22em; font-family: inherit; font-size: inherit; border: 1px solid #d0d0d0; border-radius: 0.25em;}
#ContactForm input {padding: 0.25em; font-family: inherit; font-size: inherit; border: 1px solid #d0d0d0; border-radius: 0.25em;}
#ContactSubmit {padding-left: 6.25em;}

/* Gallery */

.Gallery {text-align: center;}
.GalleryThumb {display: inline-block; width: 216px; margin: 0; padding-top: 14px; vertical-align: top;}
.GalleryThumb div {padding: 10px 4px;}
.GalleryImage {margin-bottom: 10px; overflow-x: auto;}
.Gallery img {padding-top: 0 !important;}
.GalleryReturn {padding-top: 10px;}

/* Events */

.EventsMonth {width: 100%; border-collapse: collapse;}
.EventsMonth a span {font-style: italic;}
.EventsMonth td {width: 14.25%; height: 76px; padding: 4px 4px 4px 2px; font-size: 10px; border: 1px solid #c4c4c4; vertical-align: top; line-height: 11px;}
.EventsMonth th {font-size: 10px;}
.EventsMonth span {color: #01495f;}
.EventsMonth td > span {padding-left: 2px;}
.EventC {background: #004c7c; color: #fff !important; border-radius: 3px; padding-left: 3px; padding-right: 3px;}
.EventsMonth div {padding-top: 7px; padding-left: 2px;}
.EventB {background: #eee;}
.EventE {background: #fff7dd;}
.EventHighlight {font-weight: bold;}

/* Responsive adjustments */

@supports(padding: max(0px)) {
	.Inner {padding-left: max(32px, (24px + env(safe-area-inset-left))); padding-right: max(32px, (24px + env(safe-area-inset-right)));}
	#FooterHolder {padding-bottom: env(safe-area-inset-bottom);}
}

@media screen and (max-width: 1100px) {
	.BannerSlider p {left: 5%;}
}

@media screen and (max-width: 940px) {
	#Header.Inner {padding-left: 2vw; padding-right: 2vw;}
	#HeaderText {font-size: 1.9vw; margin-right: 14vw;}
	#MenuHolder {font-size: 1.7vw;}
	#HeaderSearch {width: 12em;}

	@supports(padding: max(0px)) {
		#Header.Inner {padding-left: max(2vw, (8px + env(safe-area-inset-left))); padding-right: max(2vw, (8px + env(safe-area-inset-right)));}
		#FooterHolder {padding-bottom: env(safe-area-inset-bottom);}
	}	
}

@media screen and (max-width: 720px) {
	#HeaderSearch {display: none;}
}

@media screen and (max-width: 720px) {
	#Menu li ul a {padding: 0.8em 1em;}

	#BannerContainer {min-height: auto; height: 65vw;}

	.ContentFlex {display: block;}
	.ContentFlex > div {margin: 0;}

	.HomeImagesFlex {flex-wrap: wrap;}
	.HomeImagesFlex > div {flex: 1 0 50%;}
	.HomeImagesFlex > div:nth-child(odd) {padding-left: 0;}
	.HomeImagesFlex > div:nth-child(even) {padding-right: 0;}

	.GoogleMapsContainer {height: 300px;}

	#FacebookIntro a {font-size: 3.2vw;}
	.FBSizer, .FBTile {width: 47%;}
	.FBGutter {width: 6%;}
}

@media screen and (max-width: 640px) {
	.Inner {padding-left: 16px; padding-right: 16px;}
	body {font-size: 16px;}

	.Content {font-size: 0.9375em;}

	#FooterLinks {flex-wrap: wrap; font-size: 0.75em;}
	#FooterLinks > div:nth-child(1) {flex-grow: 1; min-width: 0;}
	#FooterLinks > div:nth-child(2) {flex-grow: 1; min-width: 0;}

	#Footer {text-align: center;}
	#FooterToTop {text-align: center; margin-top: 1em; float: none;}
	#FooterToTop a {border: 1px solid #a8a9ad; display: inline-block; padding: 0.75em; border-radius: 4px;}

	.ContactItem {padding: 0.375em 0;}

	@supports(padding: max(0px)) {
		.Inner {padding-left: max(16px, (16px + env(safe-area-inset-left))); padding-right: max(16px, (16px + env(safe-area-inset-right)));}
		#FooterHolder {padding-bottom: env(safe-area-inset-bottom);}
	}	
}

@media screen and (max-width: 600px) {
	#Header.Inner {padding-left: 0; padding-right: 0;}
	#HeaderHolder {background-repeat: no-repeat; background-size: 100% 100%;
		background-image: -moz-linear-gradient(top, rgba(6,42,94,1) 57%, rgba(6,42,94,0) 100%);
		background-image: -webkit-linear-gradient(top, rgba(6,42,94,1) 57%,rgba(6,42,94,0) 100%);
		background-image: linear-gradient(to bottom, rgba(6,42,94,1) 57%,rgba(6,42,94,0) 100%);
	}

	#HeaderText {padding-left: 2vw; display: block; margin-right: 30%; font-size: 3.5vw;}
	#HeaderTextTitle {margin-left: 0; text-align: left; padding-top: 0.5em;}

	#MenuHolder {font-size: 1em;}
	#MenuHandle {display: block;}
	#Menu {display: none; position: absolute; margin-top: 1px; background: #062a5e; left: 0; right: 0;}
	#Menu ul {display: block;}
	#Menu li {display: block;
		background-image: -moz-linear-gradient(top, #006fbc 0%, #006fbc 100%);
		background-image: -webkit-linear-gradient(top, #006fbc 0%, #006fbc 100%);
		background-image: linear-gradient(to bottom, #006fbc 0%, #006fbc 100%);
		background-size: 100% 1px;
		background-position: top;
		background-repeat: no-repeat;
	}
	#Menu a {padding: 0.75em 16px 0.75em 32px;}
	#Menu li ul a {padding: 0.75em 16px 0.75em 16px;}
	#Menu li ul {position: relative; box-shadow: none;
		background-image: -moz-linear-gradient(left, #003d6e 0%, #005091 100%);
		background-image: -webkit-linear-gradient(left, #003d6e 0%, #005091 100%);
		background-image: linear-gradient(to right, #003d6e 0%, #005091 100%);
		background-size: 100%; background-position: left;
		margin-left: 2em;
		margin-bottom: 0.5em;
	}

	#Menu .MnuItmOn ul {display: block;}

	#Menu > ul > .MnuItmOn > a::after, #Menu > ul > li:hover > a::after {display: none;}

	#BannerContainer {margin-top: 16vw; height: 75vw;}
	.BannerSlider p {bottom: 14%; font-size: 3.5vw;}
	#BannerSliderControlsHolder {text-align: center;}

	.ScrollHint {font-size: 3.5vw;}

	.FBSizer, .FBTile {width: 100%;}
	.FBGutter {width: 0;}

	.ContactItem {padding: 0.375em 0;}
	#ContactForm label {padding: 0.25em 0.375em 0.25em 0; width: auto; text-align: right;}
	#ContactForm label span {float: right; padding-left: 0.25em;}
	#ContactForm textarea {padding: 0.25em; width: 100%; box-sizing: border-box;}
	#ContactSubmit {padding-left: 0; text-align: center;}
	#ContactForm textarea, #ContactForm input {display: block;}
	#ContactSubmit input {display: inline;}

	@supports(padding: max(0px)) {
		#Header.Inner {padding-left: env(safe-area-inset-left); padding-right: env(safe-area-inset-right);}
	}
}

@media screen and (max-width: 400px) {
	#Menu {font-size: 1em;}

	#BannerContainer {margin-top: 16vw; height: 95vw;}
	.BannerSlider p {font-size: 4vw;}

	.ScrollHint {font-size: 4vw;}

	#FacebookFeedHolder {background-size: 100% 16em;}
	#FacebookIntro a {font-size: 1em; padding: 0.5em 0.3em 0.5em 0.5em; width: 2em; text-align: center;}
	#FacebookIntro a span {display: none;}
	#FacebookIntro a::before {margin-right: 0;}

	.GoogleMapsContainer {height: 260px;}
}

@media screen and (max-width: 340px) {
	.FBSizer, .FBTile {width: 100%;}
}