* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

@keyframes pulseBtn {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.3);
  }
  100% {
    transform: scale(1);
  }
}

header h1 {
  color: white;
  text-transform: uppercase;
  text-align: center;
  border-top: 2px solid white;
  border-bottom: 2px solid white;
  font-size: 3vw;
}

#navBar {
  z-index: 5;
  position: fixed;
  background: #191E28;
  top: 4vh;
  left: 0;
  border-radius: 0 6px 6px 0;
  font-family: 'Montserrat', sans-serif;
}

#navBar.horizontal {
  top: 0;
  width: 100%;
  border-radius: 0;
}

#navBar.horizontal li {
  display: inline-block;
}

#horizontal {
  display: inline-block;
}

.navBarBtn {
  text-decoration: none;
  color: rgb(185, 182, 182);
  padding: 10px 15px;
  text-align: center;
  display: block;
  font-size: calc(5px + 0.9vw);
}

.navBarBtn:hover:not(.activePage) {
  color: white;
  border-bottom: 4px solid white;
  padding-bottom: 6px;
}

.activePage {
  color: #bd7a7a;
  border-bottom: 4px solid #bd7a7a;
  border-radius: 0 0 6px 0;
}

.pageLayout {
  width: 66.66%;
  background-color: rgb(239, 243, 245);
}

header {
  width: 100%;
  height: 60vh;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
}

section {
  width: 100%;
  margin: 3% 0;
  padding: 3% 20%;
  font-family: 'Lora', serif;
  font-size: calc(5px + 1vw);
}

#pageButton {
  margin-top: 5%;
}

.option {
  min-width: calc(10px + 15vh);
  max-width: calc(30px + 45vh);
  padding: calc(5px + 1.2vh) calc(6px + 1.8vh);
  font-size: calc(5px + 2.3vh);
  color: white;
  border-width: 0;
  border-radius: 25px;
  background-color: #535151;
  transition: all 0.3s ease;
  outline: 0;
  cursor: pointer;
  margin: 0 auto;
  display: block;
  clear: both;
  text-align: center;
}

.option:hover {
  transition: all 0.3s ease;
  transform: scale(1.1);
  background-color: #773b3b;
}

.option:focus {
  transition: all 0.3s ease;
  transform: scale(1.1);
  background-color: #773b3b;
}

.option:active {
  background-color: #6c2b2b;
}

.options {
  margin: 0 auto;
  display: flex;
  list-style: none;
  justify-content: space-around;
  align-items: center;
  width: 80%;
  clear: both;
}
.pulse {
    animation: pulseBtn 0.5s ease-in-out 2 both;
}

#slide_wrapper {
    white-space: nowrap;
    display: inline-block;
    width: auto;
    height: auto;
}

.row {
    width: 100vw;
    height: 100%;
    overflow: hidden;
    display: inline-block;
    white-space: normal;
    z-index: 2;
    position: relative;
}

.col {
    width: auto;
    height: 100vh;
    white-space: nowrap;
}

.navBtn {
    position: fixed;
    cursor: pointer;
    z-index: 10;
    color: white;
    font-weight: bold;
    background-color: rgba(55, 60, 71, 0.77);
    border: none;
    border-radius: 3px;
    visibility: hidden;
    outline: 0;
}

.game {
    width: 100%;
    height: 100%;
}

.textBox {
    max-width: 100%;
    padding: calc(10px + 1vh);
    text-align: justify;
    color: white;
    font-family: "Libre Baskerville", serif, monospace;
    font-size: calc(8px + 1.3vh);
    font-weight: 100;
}

.image {
    display: block;
    height: calc(50vh);
    border: 2px solid #333333;
    border-radius: 4px;
    float: right;
    padding: calc(10px + 1vh);
}

.imageTop {
    margin: 0 auto;
    float: none;
    height: calc(40vh);
}

#bBack:hover {
    background-color: #f69150;
}

#bBack:active {
    background-color: #cd6624;
}

.disabled {
    background-color: #827d7d !important;
    cursor: default !important;
}

.disabled:hover {
    transform: none !important;
    background-color: #827d7d !important;
}

.page {
    height: 100%;
    position: relative;
    display: none;
    margin: 500px 0;
}

.HTMLenabled {
    display: block !important;
}

.noJS {
    display: none;
}

#slide_wrapper {
    background-color: #E8E8E8;
}

.content {
    position: absolute;
    max-height: 100%;
    top: 50%;
    width: calc(50% + 200px);
    margin: 0 auto;
    padding: calc(5px + 1vh);
    background-color: #333333;
    position: relative;
    z-index: 2;
    border-radius: 6px;
    padding-bottom: calc(10px + 1.1vh);
}

.end {
    color: rgb(255, 84, 84);
    font-family: 'Cinzel', serif;
    font-size: calc(10px + 4vh);
    padding: calc(10px + 1vh);
    text-align: center;
}

.line {
    background-color: #990100;
    width: 25px;
    height: 25px;
    border-radius: 25px;
    position: absolute;
    z-index: 1;
}

.silhouette {
    position: absolute;
    width: 17vw;
    margin: 0 auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

#p0-6 {
    background-repeat: no-repeat;
    background-size: cover;
}

#background {
    position: fixed;
    width: 100vw;
    height: 100vh;
}

.navBtn:hover {
    background-color: rgba(44, 47, 52, 1);
}

#buttonLeft, #buttonRight {
    width: 35px;
    height: 60px;
    font-size: 30px;
    top: 50%;
    margin-top: -30px;
}

#buttonRight {
    right: 0;
}

#buttonUp, #buttonDown {
    width: 60px;
    height: 35px;
    font-size: 30px;
    left: 50%;
    margin-left: -30px;
}

#buttonDown {
    bottom: 0;
}

#buttonTop {
    position: fixed;
    z-index: 10;
    right: 0;
    top: 0;
    outline: 0;
    background: 0;
    border: none;
    padding: 9px;
    height: 80px;
    margin: 3px;
    visibility: hidden;
}

#topArrow:hover {
    background-image: url("/img/983553aaf0c833785df28dcdf6d8eae53238e5eb/topbuttonhover.png");
    transform: scale(1.2);
}

#topArrow:active {
    background-image: url("/img/068526fed2699aa505de2dbe7f3403af4e20e56d/topbutton.png");
}

#topText {
    font-weight: bolder;
    font-size: 1.3em;
    text-align: center;
}

#topArrow {
    cursor: pointer;
    background: url("/img/068526fed2699aa505de2dbe7f3403af4e20e56d/topbutton.png");
    background-size: contain;
    background-repeat: no-repeat;
    height: 80%;
    width: 90%;
    margin: 0 auto;
    transition: all .2s ease-in-out;
}

.bounce-top {
    animation: bounce-top 0.9s both;
}

.flip-vertical-left {
    animation: flip-vertical-left 0.4s ease-in-out both;
}


/*The following animations are from Animista, source: http://animista.net/ */

@keyframes bounce-top {
    0% {
        transform: translateY(-45px);
        animation-timing-function: ease-in;
        opacity: 1;
    }
    24% {
        opacity: 1;
    }
    40% {
        transform: translateY(-24px);
        animation-timing-function: ease-in;
    }
    65% {
        transform: translateY(-12px);
        animation-timing-function: ease-in;
    }
    82% {
        transform: translateY(-6px);
        animation-timing-function: ease-in;
    }
    93% {
        transform: translateY(-4px);
        animation-timing-function: ease-in;
    }
    25%, 55%, 75%, 87% {
        transform: translateY(0px);
        animation-timing-function: ease-out;
    }
    100% {
        transform: translateY(0px);
        animation-timing-function: ease-out;
        opacity: 1;
    }
}

@keyframes flip-vertical-left {
    0% {
        transform: rotateY(0);
    }
    100% {
        transform: rotateY(-180deg);
    }
}
