/*! normalize.css v2.1.2 | MIT License | git.io/normalize */
/* ========================================================================== HTML5 display definitions ========================================================================== */
/** Correct `block` display not defined in IE 8/9. */
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }

/** Correct `inline-block` display not defined in IE 8/9. */
audio, canvas, video { display: inline-block; }

/** Prevent modern browsers from displaying `audio` without controls. Remove excess height in iOS 5 devices. */
audio:not([controls]) { display: none; height: 0; }

/** Address styling not present in IE 8/9. */
[hidden] { display: none; }

/* ========================================================================== Base ========================================================================== */
/** 1. Set default font family to sans-serif. 2. Prevent iOS text size adjust after orientation change, without disabling user zoom. */
html { font-family: sans-serif; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ }

/** Remove default margin. */
body { margin: 0; }

/* ========================================================================== Links ========================================================================== */
/** Address `outline` inconsistency between Chrome and other browsers. */
a:focus { outline: thin dotted; }

/** Improve readability when focused and also mouse hovered in all browsers. */
a:active, a:hover { outline: 0; }

/* ========================================================================== Typography ========================================================================== */
/** Address variable `h1` font-size and margin within `section` and `article` contexts in Firefox 4+, Safari 5, and Chrome. */
h1 { font-size: 2em; margin: 0.67em 0; }

/** Address styling not present in IE 8/9, Safari 5, and Chrome. */
abbr[title] { border-bottom: 1px dotted; }

/** Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome. */
b, strong { font-weight: bold; }

/** Address styling not present in Safari 5 and Chrome. */
dfn { font-style: italic; }

/** Address differences between Firefox and other browsers. */
hr { -moz-box-sizing: content-box; box-sizing: content-box; height: 0; }

/** Address styling not present in IE 8/9. */
mark { background: #ff0; color: #000; }

/** Correct font family set oddly in Safari 5 and Chrome. */
code, kbd, pre, samp { font-family: monospace, serif; font-size: 1em; }

/** Improve readability of pre-formatted text in all browsers. */
pre { white-space: pre-wrap; }

/** Set consistent quote types. */
q { quotes: "\201C" "\201D" "\2018" "\2019"; }

/** Address inconsistent and variable font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` affecting `line-height` in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sup { top: -0.5em; }

sub { bottom: -0.25em; }

/* ========================================================================== Embedded content ========================================================================== */
/** Remove border when inside `a` element in IE 8/9. */
img { border: 0; }

/** Correct overflow displayed oddly in IE 9. */
svg:not(:root) { overflow: hidden; }

/* ========================================================================== Figures ========================================================================== */
/** Address margin not present in IE 8/9 and Safari 5. */
figure { margin: 0; }

/* ========================================================================== Forms ========================================================================== */
/** Define consistent border, margin, and padding. */
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }

/** 1. Correct `color` not being inherited in IE 8/9. 2. Remove padding so people aren't caught out if they zero out fieldsets. */
legend { border: 0; /* 1 */ padding: 0; /* 2 */ }

/** 1. Correct font family not being inherited in all browsers. 2. Correct font size not being inherited in all browsers. 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome. */
button, input, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 2 */ margin: 0; /* 3 */ }

/** Address Firefox 4+ setting `line-height` on `input` using `!important` in the UA stylesheet. */
button, input { line-height: normal; }

/** Address inconsistent `text-transform` inheritance for `button` and `select`. All other form control elements do not inherit `text-transform` values. Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+. Correct `select` style inheritance in Firefox 4+ and Opera. */
button, select { text-transform: none; }

/** 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` and `video` controls. 2. Correct inability to style clickable `input` types in iOS. 3. Improve usability and consistency of cursor style between image-type `input` and others. */
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; /* 2 */ cursor: pointer; /* 3 */ }

/** Re-set default cursor for disabled elements. */
button[disabled], html input[disabled] { cursor: default; }

/** 1. Address box sizing set to `content-box` in IE 8/9. 2. Remove excess padding in IE 8/9. */
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

/** 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome (include `-moz` to future-proof). */
input[type="search"] { -webkit-appearance: textfield; /* 1 */ -moz-box-sizing: content-box; -webkit-box-sizing: content-box; /* 2 */ box-sizing: content-box; }

/** Remove inner padding and search cancel button in Safari 5 and Chrome on OS X. */
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** Remove inner padding and border in Firefox 4+. */
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

/** 1. Remove default vertical scrollbar in IE 8/9. 2. Improve readability and alignment in all browsers. */
textarea { overflow: auto; /* 1 */ vertical-align: top; /* 2 */ }

/* ========================================================================== Tables ========================================================================== */
/** Remove most spacing between table cells. */
table { border-collapse: collapse; border-spacing: 0; }

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

.right { text-align: right; }

.hide { display: none; }

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 { font-family: "Vollkorn", serif; font-weight: bold; line-height: 1; }

h1 { color: #ac1e2e; font-size: 2.000em; margin-top: 0; }

h2 { color: #3a5b88; font-size: 1.500em; }

h3 { font-size: 1.250em; }

body { background: url(/themes/shared/img/bg-fence.png) repeat 0 0 #3a5b88; color: #373737; font-family: "PT Sans", sans-serif; font-size: 1em; }
body:before, body:after { content: ""; display: table; }
body:after { clear: both; }

body#content { background-image: none !important; background-color: #fff !important; }

.wrapper { *zoom: 1; float: none; margin: 0 auto; max-width: 960px; width: 90%; position: relative; }
.wrapper:before, .wrapper:after { content: ""; display: table; }
.wrapper:after { clear: both; }

#header { *zoom: 1; clear: both; background: #2b4466; color: white; text-align: center; }
#header:before, #header:after { content: ""; display: table; }
#header:after { clear: both; }

@media (min-width: 768px) { #logo { float: left; width: 33.33333%; margin-left: 0%; margin-right: -33.33333%; padding-left: 5px; padding-right: 5px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; text-align: left; } }
#logo a { display: block; padding: 10px 0; }
#logo img { display: block; margin: 0 auto; max-width: 100%; }

@media (min-width: 768px) { #slws { float: left; width: 66.66667%; margin-left: 33.33333%; margin-right: -100%; padding-left: 5px; padding-right: 5px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; text-align: right; position: absolute; top: 130px; z-index: 2; } }

@media (min-width: 768px) { #primary { float: left; width: 66.66667%; margin-left: 33.33333%; margin-right: -100%; padding-left: 5px; padding-right: 5px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; } }
@media (min-width: 768px) { #primary ul { float: right; } }
#primary ul.nav { margin-top: 55px; position: relative; z-index: 9999; }
#primary ul li { border-bottom: 1px solid rgba(255, 255, 255, 0.5); border-top: 1px solid rgba(0, 0, 0, 0.5); }
#primary ul li:first-child { border-top: 0; }
#primary ul li:last-child { border-bottom: 0; }
#primary ul li.parent ul li > a { padding: 5px 10px; }
@media (min-width: 768px) { #primary ul li { border: 0; } }
#primary ul li a { color: white; padding: 5px 10px; text-decoration: none; }
#primary ul li a:hover, #primary ul li a.active { background: #3a5b88; }
@media (min-width: 768px) { #primary ul li a { padding: 10px 10px 65px; } }
#primary ul li ul { background: #3a5b88; }
@media (min-width: 768px) { #primary ul li ul { background: #2b4466; text-align: left; } }

#banner { margin-bottom: 20px; }
@media (min-width: 768px) { #banner { background: url(/themes/shared/img/bg-banner.jpg) no-repeat 0 50% transparent; background-size: cover; } }
#banner ul { margin: 0; padding: 0; }
#banner ul li { list-style: none; margin: 0; padding: 0; }
#banner ul li img { display: block; width: 100%; }
@media (min-width: 768px) { #banner .bx-viewport { float: none; margin: 0 auto; max-width: 960px; width: 90%; } }

#main { -webkit-box-shadow: rgba(0, 0, 0, 0.3) 1px 1px 2px 0; -moz-box-shadow: rgba(0, 0, 0, 0.3) 1px 1px 2px 0; box-shadow: rgba(0, 0, 0, 0.3) 1px 1px 2px 0; *zoom: 1; float: none; margin: 0 auto; max-width: 960px; width: 90%; background: white; margin-bottom: 20px; }
#main:before, #main:after { content: ""; display: table; }
#main:after { clear: both; }

#content { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
@media (min-width: 768px) { #content { float: left; width: 66.66667%; margin-left: 0%; margin-right: -66.66667%; padding-left: 5px; padding-right: 5px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; } }
#content .article { padding: 0 15px; }
#content .article:first-child { padding-top: 20px; }
#content .article:last-child { padding-bottom: 20px; }

@media (min-width: 768px) { #sidebar { float: left; width: 33.33333%; margin-left: 66.66667%; margin-right: -100%; padding-left: 5px; padding-right: 5px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; } }
#sidebar .article { padding: 0 15px; }

#bottom { overflow: hidden; -webkit-box-shadow: inset rgba(0, 0, 0, 0.3) 0 0 1px 0; -moz-box-shadow: inset rgba(0, 0, 0, 0.3) 0 0 1px 0; box-shadow: inset rgba(0, 0, 0, 0.3) 0 0 1px 0; background: #2b4466; padding: 20px 0; }

#schedule { height: 100%; }
@media (min-width: 768px) { #schedule { float: left; width: 33.33333%; margin-left: 0%; margin-right: -33.33333%; padding-left: 5px; padding-right: 5px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; position: absolute; } }
#schedule #EventsWidget { -webkit-border-radius: 0; -moz-border-radius: 0; -ms-border-radius: 0; -o-border-radius: 0; border-radius: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; height: 100%; position: relative; width: 100%; }
@media (min-width: 768px) { #schedule #EventsWidget { overflow: hidden; } }
@media (min-width: 768px) { #schedule #EventsWidget .events-widget-events { height: 100%; overflow: auto; }
  #schedule #EventsWidget .events-widget-events ul { margin-bottom: 100px; } }
@media (min-width: 768px) { #schedule #EventsWidget .events-widget-footer { bottom: 0; position: absolute; width: 100%; } }

@media (min-width: 768px) { #facebook { float: left; width: 66.66667%; margin-left: 33.33333%; margin-right: -100%; padding-left: 5px; padding-right: 5px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; } }
#facebook .flexframe { background: white; }

#footer { background: #3a5b88; color: white; font-size: 0.875em; text-align: center; }
#footer a { color: white; text-decoration: none; }
@media (min-width: 768px) { #footer .copyright { float: left; width: 50%; margin-left: 0%; margin-right: -50%; padding-left: 5px; padding-right: 5px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; text-align: left; }
  #footer .cms { float: left; width: 50%; margin-left: 50%; margin-right: -100%; padding-left: 5px; padding-right: 5px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; text-align: right; } }

#footer_nav { *zoom: 1; }
#footer_nav:before, #footer_nav:after { content: ""; display: table; }
#footer_nav:after { clear: both; }
#footer_nav ul { *zoom: 1; }
#footer_nav ul:before, #footer_nav ul:after { content: ""; display: table; }
#footer_nav ul:after { clear: both; }
@media (min-width: 768px) { #footer_nav ul { float: right; } }
#footer_nav ul li a { padding: 0 5px; }

.flexframe { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; }
.flexframe iframe, .flexframe object, .flexframe embed { height: 100%; left: 0; position: absolute; top: 0; width: 100%; }

.horizontal ul { padding: 0; margin: 0; list-style: none; }
.horizontal ul li { display: block; position: relative; }
.horizontal ul li a { display: block; }
.horizontal ul li ul li { float: none; width: 100%; }
.horizontal ul li ul li ul { left: 100%; top: 0; }
@media (min-width: 768px) { .horizontal ul li { float: left; }
  .horizontal ul li ul { display: none; left: 0; position: absolute; width: 250px; z-index: 9999; }
  .horizontal ul li:hover > ul { display: block; } }
