body {
  height: 100vh;
  background-color: #222;
  font-family: "Montserrat-Regular", sans-serif;
}

html.no-rgba #browser-is-not-supported,
html.no-opacity #browser-is-not-supported,
html.no-fontface #browser-is-not-supported,
html.no-cssvhunit #browser-is-not-supported,
html.no-cssanimations #browser-is-not-supported,
html.no-bgpositionxy #browser-is-not-supported,
html.no-bgrepeatround #browser-is-not-supported,
html.no-bgrepeatspace #browser-is-not-supported,
html.no-backgroundsize #browser-is-not-supported,
html.no-boxshadow #browser-is-not-supported,
html.no-cssfilters #browser-is-not-supported,
html.no-csstransforms #browser-is-not-supported,
html.no-csstransitions #browser-is-not-supported,
html.no-borderradius #browser-is-not-supported {
  display: block;
}

.centered {
  text-align: center;
}

.slide-only-text {
  text-align: left;
  font-size: 1.4em;
}

.background-container,
.background-centered {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
}

.background-container.blur {
  filter: blur(12px);
}

.background-container {
  background-size: cover;
  background-attachment: fixed;
  background-position: center center;
  /*animation: backgroundContainerIncrease 60s;*/
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  opacity: 0.7;
}

.background-centered {
  background-size: contain;
  background-attachment: fixed;
  background-position: center center;
  /*animation: backgroundCenteredIncrease 60s;*/
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

#slide-loader {
  z-index: 9998;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: #fff;
  background-image: url("../img/slide-loader.gif");
  background-repeat: no-repeat;
  background-position: center center;
}

@media screen and (orientation: landscape) {
  .cardslider__cards {
    top: 25%;
    width: 70%;
    height: 70%;
  }
}

@media screen and (orientation: portrait) {
  .cardslider__cards {
    top: 25%;
    width: 82%;
    height: 70%;
  }
}

.cardslider__cards {
    transform: translate(-50%, -25%);
    font-size: 2em;
}

.cardslider__card {
  padding: 10px;
  overflow: hidden;
}

.simplebar-container {
  height: 100%;
}

.slide-background {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-size: cover;
  background-position: center center;
}

.slide-background.blur {
  filter: blur(10px);
}

.slide-background > .slide-background-color {
  opacity: 0.3;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.slide-background > .slide-background-color.white {
  background-color: #fff;
}

.slide-content,
.slide-content .simplebar-content {
  height: 100%;
  text-align: center;
}

.slide-content img {
  max-width: 96%;
  max-height: 96%;
  margin-top: 2%;
  margin-left: 2%;
  box-shadow: 2px 2px 4px 0 rgba(0,0,0,0.6);
  transition: all 0.3s ease-out;
}

.slide-content img:hover {
  max-width: 98%;
  max-height: 98%;
  margin-top: 1%;
  margin-left: 1%;
  box-shadow: 3px 3px 5px 0 rgba(0,0,0,0.6);
}

.blur {
  filter: blur(5px);
}

#slides-annotations {
  display: none;
}

#slider-photo-description-container {
  display: none;
  /*z-index: 9999;*/
  position: fixed;
  bottom: 0;
  left: 25%;
  width: 50%;
  background-color: rgba(255,255,255,0.8);
  height: 9%;
  padding: 15px;
}

#slider-photo-description {
  text-align: center;
  max-height: 100%;
  font-family: "Montserrat-Black";
  font-size: 1.4em;
}

#contents {
  display: none;
  z-index: 10001;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  min-height: 100vh;
  background-color: #222;
}

#contents ul {
  margin: 2% auto 0 auto;
  text-align: center;
  width: 70%;
}

#contents ul > li {
  list-style: none;
  display: inline-block;
  font-size: 12vh;
  font-family: "Montserrat-Black";
  padding: 12px;
}

#contents ul > li > a {
  color: #fff;
}

#contents-icon-container {
  z-index: 10002;
  position: fixed;
  right: 15px;
  top: 15px;
  padding: 15px;
  background-color: #fff;
  border-radius: 50%;
  box-shadow: 2px 2px 0 0;
  cursor: pointer;
  transition: all 0.3s ease-out;
}

#contents-icon-container:hover {
  padding: 20px;
}

#contents-icon {
  width: 20px;
  height: 20px;
  background-image: url("../img/menu-button.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

#exhibition-name {
  text-align: center;
  font-family: "Montserrat-Black";
}

@keyframes backgroundContainerIncrease {
  0% {
    opacity: 0;
    transform: scale(1) rotate(0);
  }

  2% {
    opacity: 0.7;
  }

  98% {
    opacity: 0.7;
  }

  100% {
    opacity: 0;
    transform: scale(1.4) rotate(9deg);
  }
}

@keyframes backgroundCenteredIncrease {
  0% {
    opacity: 0;
    transform: scale(1) rotate(0);
  }

  2% {
    opacity: 1;
  }

  98% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    transform: scale(1.6);
  }
}