.full-width-hero {
  position: relative;
  width: 100vw;
  height: 70vh;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  overflow: hidden;
}
.full-width-hero video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  transform: translate(-50%, -50%);
  object-fit: cover;
}
.calendarWidget h2,
.calendarWidget .month-title,
.calendarWidget a,
.calendarWidget .fc-button,
.calendarWidget .today a,
.eventCalendar h2,
.eventCalendar a {
  color: #3a6fb5 !important;
}
.calendarWidget .fc-event,
.calendarWidget .event-item {
  background-color: #3a6fb5 !important;
  border-color: #3a6fb5 !important;
}
.calendarWidget img[src*="rss"] { display: none !important; }
h3.sectionTitle {
  font-family: 'Josefin Sans', sans-serif !important;
  color: #0a0a0a !important;
  font-size: 22px !important;
}
.EventListCalendar th,
.EventListCalendar thead td {
  background-color: #1a2b4a !important;
  color: white !important;
  border-color: #1a2b4a !important;
}
.EventListCalendar a { color: #3a6fb5 !important; }
.viewSwitchersTable a { color: #3a6fb5 !important; }
img[src*="rss"] { display: none !important; }
.contentAreaCell img[src*="calendar"] { display: none !important; }
.contentAreaCell { width: 100% !important; max-width: 100% !important; }
.pageContentContainer { width: 100% !important; max-width: 100% !important; padding: 0 !important; }
.WaContainer { width: 100% !important; max-width: 100% !important; }
#ctl00_ContentAreaCell { width: 100% !important; max-width: 100% !important; padding: 0 !important; }
.contentAreaCell,
.contentAreaCell > table,
.contentAreaCell > table > tbody,
.contentAreaCell > table > tbody > tr,
.contentAreaCell > table > tbody > tr > td,
#ctl00_ContentAreaCell,
.gadgetLayout,
.gadgetLayoutCell {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
body > table,
body > table > tbody,
body > table > tbody > tr,
body > table > tbody > tr > td {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
}
div.container_12,
div.zoneContent div.container_12,
.mLayout div.container_12 {
  width: 100% !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
div.s1_grid_12 {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.zoneContent {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
}

/* =====================================================
   FIXED CREW NAVIGATION
   ===================================================== */

.crew-nav {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 72px !important;
  z-index: 1000 !important;
}

/* =====================================================
   NATIVE WILDAPRICOT LOGIN / ACCOUNT BAR
   Gadget ID: id_fylOOTM
   ===================================================== */

#id_fylOOTM {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;

  position: fixed !important;
  top: 72px !important;
  left: 0 !important;
  right: 0 !important;

  width: 100% !important;
  min-height: 44px !important;
  height: auto !important;

  margin: 0 !important;
  padding: 10px 40px !important;

  overflow: visible !important;
  clip: auto !important;

  background-color: #eef6fc !important;
  border-bottom: 1px solid rgba(58,111,181,0.2) !important;

  text-align: right !important;
  z-index: 999 !important;
}

/* Remove excess spacing inside the WildApricot gadget */

#id_fylOOTM .gadgetStyleBody,
#id_fylOOTM .gadgetContentEditableArea,
#id_fylOOTM .loginContainer,
#id_fylOOTM .WaGadgetLoginButton {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  text-align: right !important;
}

/* Style the native login/account links */

#id_fylOOTM a {
  display: inline-block !important;
  margin: 0 0 0 16px !important;
  padding: 0 !important;

  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 24px !important;

  color: #3a6fb5 !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  letter-spacing: 0.4px !important;
}

#id_fylOOTM a:hover {
  color: #1a2b4a !important;
  text-decoration: underline !important;
}

/* Style the logged-out login link like a button */

#id_fylOOTM a.loginLink {
  margin-left: 0 !important;
  padding: 4px 14px !important;

  border: 1px solid #3a6fb5 !important;
  border-radius: 3px !important;

  background-color: transparent !important;
  color: #3a6fb5 !important;
  text-decoration: none !important;
}

#id_fylOOTM a.loginLink:hover {
  background-color: #3a6fb5 !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

/* =====================================================
   PAGE OFFSET
   Makes room for the 72px navigation and 44px login bar
   ===================================================== */

body {
  padding-top: 116px !important;
}

/* Remove the old hero-specific offset to prevent double spacing */

.page-hero,
.hero {
  margin-top: 0 !important;
}

/* =====================================================
   MOBILE NAVIGATION
   ===================================================== */

.crew-mobile-menu {
  position: fixed !important;
  top: 60px !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 1001 !important;
}

@media (min-width: 769px) {
  .crew-mobile-menu {
    display: none !important;
  }
}

/* =====================================================
   MOBILE LOGIN / ACCOUNT BAR
   ===================================================== */

@media (max-width: 768px) {
  .crew-nav {
    height: 60px !important;
  }

  #id_fylOOTM {
    top: 60px !important;
    min-height: 44px !important;
    padding: 10px 20px !important;
    text-align: center !important;
  }

  #id_fylOOTM .gadgetStyleBody,
  #id_fylOOTM .gadgetContentEditableArea,
  #id_fylOOTM .loginContainer,
  #id_fylOOTM .WaGadgetLoginButton {
    text-align: center !important;
  }

  #id_fylOOTM a {
    margin: 2px 7px !important;
    font-size: 10px !important;
  }

  body {
    padding-top: 104px !important;
  }

  .page-hero,
  .hero {
    margin-top: 0 !important;
  }
}

.WABranding { display: none !important; }
#idFooterPoweredByContainer { display: none !important; }

/* Event registration page styling */
.eventRegistration h1,
.eventRegistration h2,
.eventRegistration h3 {
  font-family: 'Josefin Sans', sans-serif !important;
  color: #1a2b4a !important;
}
.eventRegistration .button,
.eventRegistration input[type="submit"],
.eventRegistration button[type="submit"] {
  background: #3a6fb5 !important;
  border-color: #3a6fb5 !important;
  font-family: 'DM Sans', sans-serif !important;
  border-radius: 4px !important;
}
.eventRegistration label,
.eventRegistration p,
.eventRegistration td {
  font-family: 'DM Sans', sans-serif !important;
  color: #5A5A5A !important;
}
.eventRegistration input[type="text"],
.eventRegistration input[type="email"],
.eventRegistration select {
  border: 1px solid rgba(58,111,181,0.3) !important;
  border-radius: 4px !important;
  font-family: 'DM Sans', sans-serif !important;
}
/* CENTER DESKTOP NAVIGATION LINKS */

@media (min-width: 769px) {
  .crew-nav {
    position: fixed !important;
  }

  .crew-nav-links {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}