/*!
 * Start Bootstrap - Scrolling Nav (https://startbootstrap.com/template-overviews/scrolling-nav)
 * Copyright 2013-2017 Start Bootstrap
 * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-scrolling-nav/blob/master/LICENSE)
 */
p, h1, h2, h3 {
  font-family: 'Nunito', sans-serif;
  color: black;
}

#homepage h1 {
  font-weight: 700;
  color: white;
  text-transform: uppercase;
  padding-bottom: 25px;
  margin: 0;
  text-shadow: 2px 2px 5px black;
}

#homepage.static-menu #banner {
  min-height: initial !important;
}

#homepage.static-menu .banner-bottom {
  height: auto !important;
}

#homepage h2, #contentpage h1, #sidebar h2 {
  font-weight: 700;
  color: #0070c0;
  text-transform: uppercase;
}

#homepage h2 {
  border-bottom: 2px solid #0070c0;
}

#menu ul li:hover>ul {
  visibility: visible;
  display: block !important;
}

#homepage h3, #contentpage h2 {
  font-size: 19px;
  font-weight: bold;
}

#contentpage h3 {}

.logo-menu-wrapper {
  position: absolute;
  z-index: 1000;
  width: 100%;
  height: 150px;
  background: transparent;
}

a {
  color: #0070c0;
}

section {
  padding: 50px 0;
}

#homepage #menubar {
  position: absolute;
  top: 0px;
  width: 100%;
  cursor: pointer;
}

#contentpage #mainbody .menubar {
  height: 200px;
  background: url(images/content-menu-bg.jpg) top left no-repeat;
}

#menu ul li a:hover {
  font-weight: initial;
}

#homepage #logo, #homepage #the-menu {
  z-index: 99999;
}

#homepage #logo {
  float: left;
  margin: 40px 0px 0px 40px;
}

#homepage #the-menu {
  float: right;
  margin: 10px 40px 0px 0px;
}

#contentpage #the-menu {
  float: right;
}

#homepage #banner {
  padding: 0;
  margin: 0;
  min-height: 980px;
  height: auto;
  position: relative;
  z-index: 11;
}

#homepage .banner-content {
  height: 980px;
  padding-top: 230px;
  background: url(images/menu-bg.jpg) bottom center no-repeat;
  background-size: cover;
}

#homepage .banner-content p {
  color: white;
  font-weight: 600;
  text-shadow: 2px 2px 5px black;
  padding-bottom: 10px;
}

#homepage .banner-content a:not(.logo) {
  color: #ff9966;
  border: 1px solid #ff9966;
  font-weight: 700;
  text-transform: uppercase;
  text-shadow: 2px 2px 5px black;
  padding: 10px;
}

#homepage .banner-bottom {
  height: 410px;
  z-index: 100;
}

#homepage .banner-bottom-bg {
  opacity: 1;
  height: 100%;
  background: url(images/home-banner-bg.png) top center no-repeat;
}

#sticky {
  padding: 0.5ex;
  width: 600px;
  background-color: #333;
  color: #fff;
  font-size: 2em;
  border-radius: 0.5ex;
}

#sticky.stick {
  position: fixed;
  top: 0;
  z-index: 10000;
  border-radius: 0 0 0.5em 0.5em;
}

div[class*="backgroundimage-"] {
  background-repeat: no-repeat;
  background-position: top center;
  background-color: transparent;
  background-size: cover;
  height: 100%;
}

#scroll-spacer {
  height: 465px;
  display: none !important;
}

#contentpage #sidebar {
  min-height: 1200px;
  background: url(images/content-graph-paper.jpg) top right no-repeat;
}

#contentpage #sidebar-content {
  padding: 100px 15% 0px 15%;
}

#contentpage #sidebar #logo img {
  height: 105px;
}

#homepage #mainbody {
  position: absolute;
  top: 1050px;
  left: 0;
  /* MUST remain for sticky scroll effect */
  padding-top: 350px;
  width: 100%;
  z-index: 10;
  background: url(images/home-graph-paper.jpg) top left repeat-x;
}

#contentpage #mainbody {
  padding: 0px !important;
}

#contentpage #mainbody .content {
  min-height: 1000px;
  padding: 0px 30% 200px 5%;
  background: url(images/content-bg.jpg) bottom right no-repeat;
}

.ce-bodytext>.btn-primary>a {
  color: white !important;
}

footer {
  text-align: center;
}

#homepage footer {
  height: 551px;
  background-color: #343a40 !important;
  padding-top: 500px;
  background: url(images/footer-bg.jpg) top center no-repeat;
  background-size: cover;
  color: white;
}

#homepage footer .text {
  vertical-align: bottom;
}

#contentpage footer {
  position: relative;
  bottom: 50px;
  height: 100px;
  margin: 0px auto;
  padding: 0px 2% 0px 2%;
}

.collection-subtype {
  display: none !important;
}

/* *** EXTENSIONS ********** */
.tx-felogin-pi1 {
  display: block;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

/* *********************** */
/* *** TYPO3 Specific for FE *** */
typo3-messages {
  list-style: none;
  padding: 0;
}

/* ************************* */
@media (min-width: 992px) and (max-width: 1560px) {
  #contentpage #mainbody .menubar {
    background: transparent;
  }
}

@media (max-width: 991.98px) {
  #contentpage #mainbody .menubar {
    display: none;
  }

  #homepage #logo {
    float: none;
    display: block;
    text-align: center;
  }

  #homepage h1 {
    font-size: 26px;
  }

  #homepage .banner-content {
    padding-top: 200px;
  }

  #homepage .banner-bottom-bg {
    opacity: 1;
  }

  #homepage footer {
    padding-top: 471px;
  }

  #contentpage #sidebar {
    min-height: auto;
  }

  #contentpage #sidebar-content {
    padding: 10px 2% 0px 2%;
  }

  #contentpage #mainbody {}

  #contentpage #mainbody .content {
    padding: 0px 2% 50px 2%;
    background: none;
  }

  #contentpage #logo>a {
    display: block;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    margin-top: 4px;
    text-align: center;
  }

  .logo-menu-wrapper[style] {
    position: absolute !important;
  }
}

@media (min-width: 992px) {

  /* Thanks to https://codepen.io/willpaige/pen/zeqHd for the fade-in menubar */
  #homepage .menu-bg {
    opacity: 0;
    width: 100%;
    height: 250px;
    -webkit-backface-visibility: hidden;
    background: url(images/menu-bg-solid.png) top center no-repeat;
  }

  .show {
    opacity: 1 !important;
    transition: 0.25s !important;
    transition-timing-function: ease-in !important;
  }

  .hide {
    opacity: 0 !important;
    transition: 0.25s !important;
    transition-timing-function: ease-out !important;
  }

  .fixed {
    position: fixed;
    z-index: 1000;
    width: 100%;
    height: 150px;
    background: transparent;
  }

  #contentpage .col-md-4 {
    width: 30%;
  }

  #contentpage .col-md-8 {
    width: 70%;
  }
}

@media (min-width: 992px) and (max-width: 1155px) {
  #homepage #the-menu {
    float: none;
  }

  #menu ul li a {
    padding-right: 14px;
    font-size: 1.25em;
  }
}
