/**
 * Colors
 */
/**
 * Global Styles 
 */
/**
 * Navigation
 */
/**
 * Settings
 */
/**
 * Tooltip
 */
/**
 * Controls
 */
/**
 * Typography
 */
/**
 * Intro
 */
/**
 * Article
 */
/**
 * Gallery
 */
/**
 * Counter
 */
/**
 * Panorama
 */
/**
 * Notification
 */
.hidden {
  display: none;
}
/* 	Global Styles */
* {
  margin: 0;
  padding: 0;
}
body {
  font-family: Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.45;
  color: #fff;
  background-color: #2b2b2c;
  letter-spacing: 1px;
  overflow: hidden;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
a {
  color: #999999;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #cccccc;
  text-decoration: underline;
}
a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
ul {
  list-style-type: none;
}
p {
  margin: 0 0 10px 0;
}
body[data-fontsize="small"] section article {
  font-size: 14px;
}
body[data-fontsize="regular"] section article {
  font-size: 16px;
}
body[data-fontsize="large"] section article {
  font-size: 18px;
}
main {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #ccc;
  overflow: hidden;
}
main section {
  position: absolute;
  width: 100%;
  height: 100%;
}
main section article {
  color: #F1F1F1;
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  text-shadow: 1px 1px 0 #2B2B2C;
  top: 0;
  width: 100%;
  z-index: 8;
}
main section article > div.wrapper {
  padding: 10% 52% 10% 8%;
}
main section article.right-top > div.wrapper,
main section article.right-bottom > div.wrapper,
main section article.right-center > div.wrapper {
  padding: 10% 8% 10% 52%;
}
main section article.center-top > div.wrapper,
main section article.center-bottom > div.wrapper,
main section article.center-center > div.wrapper {
  padding: 10% 26% 10% 26%;
}
main section .full {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-size: cover;
}
main section .full.topleft {
  background-position: top left;
}
main section .full.topcenter {
  background-position: top center;
}
main section .full.topright {
  background-position: top right;
}
main section .full.centerleft {
  background-position: center left;
}
main section .full.centercenter {
  background-position: center center;
}
main section .full.centerright {
  background-position: center right;
}
main section .full.bottomleft {
  background-position: bottom left;
}
main section .full.bottomcenter {
  background-position: bottom center;
}
main section .full.bottomright {
  background-position: bottom right;
}
.overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(../img/grid.png);
  z-index: 7;
}
.gradient {
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 85%);
  z-index: 6;
}
article.right-center + .gradient,
article.right-top + .gradient,
article.right-bottom + .gradient,
.gradient-right {
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(to left, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 85%);
  z-index: 6;
}
article.center-bottom + .gradient,
.gradient-bottom {
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 85%);
  z-index: 6;
}
article.center-top + .gradient,
.gradient-top {
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 85%);
  z-index: 6;
}
.invis {
  opacity: 0;
  transition: opacity 0.5s;
}
.notinvis {
  opacity: 1;
  transition: opacity 0.5s;
}
@keyframes rot {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@-moz-keyframes rot {
  from {
    -moz-transform: rotate(0deg);
  }
  to {
    -moz-transform: rotate(360deg);
  }
}
@-webkit-keyframes rot {
  from {
    -webkit-transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
  }
}
.error-message {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  opacity: 1;
  position: relative;
  z-index: 2000;
  background-color: #2B2B2C;
}
.error-message.hidden {
  opacity: 0;
  height: 0;
}
.error-message .message {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 70%;
  height: 30%;
  text-align: center;
  color: #F1F1F1;
  text-shadow: 0 1px 0 #202020;
}
.error-message .message h1 {
  font-size: 5em;
  margin: 0 0 20px 0;
}
.error-message .message p {
  line-height: 1.4em;
}
.lt-ie9 .browser-detection {
  height: 3000px;
}
.loading {
  width: 100%;
  height: 100%;
  padding: 40px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  opacity: 1;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
  background-color: #2B2B2C;
  -webkit-transition: opacity 0.3s ease-in-out 0.3s, height 0s ease-in-out 0.6s;
  transition: opacity 0.3s ease-in-out 0.3s, height 0s ease-in-out 0.6s;
}
.loading.hidden {
  opacity: 0;
  height: 0;
}
.loading.transparent {
  background-color: transparent;
  opacity: .8;
}
.loading .loading-container {
  width: 110px;
  height: 110px;
  opacity: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -55px 0 0 -55px;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out 0s;
  -moz-transition: opacity 0.3s ease-in-out 0s;
  -o-transition: opacity 0.3s ease-in-out 0s;
  transition: opacity 0.3s ease-in-out 0s;
}
.loading .loading-container.hide {
  opacity: 0;
}
.loading .loading-container .loading-base {
  width: 110px;
  height: 110px;
  border-radius: 55px;
  background-color: #202020;
  overflow: hidden;
  /* animation */
  -webkit-animation: rot 0.6s infinite linear 0s;
  -moz-animation: rot 0.6s infinite linear 0s;
  -o-animation: rot 0.6s infinite linear 0s;
  animation: rot 0.6s infinite linear 0s;
}
.loading .loading-container .loading-base .small-circle {
  width: 20px;
  height: 20px;
  border-radius: 10px;
  background-color: #0082C6;
  position: absolute;
  left: 45px;
}
.loading .loading-container .loading-base .inner-circle {
  width: 70px;
  height: 70px;
  border-radius: 35px;
  background-color: #2B2B2C;
  position: absolute;
  top: 20px;
  left: 20px;
}
.loading .loading-container .loading-base .part1 {
  width: 110px;
  height: 110px;
}
.loading .loading-container .loading-base .part1 .part2 {
  width: 55px;
  height: 110px;
  overflow: hidden;
}
.loading .loading-container .loading-base .part1 .part2 li:nth-child(1) {
  width: 110px;
  height: 100px;
  float: left;
  clear: all;
  margin: -45px 0 0 0;
  background: -moz-radial-gradient(center, ellipse cover, #0082c6 10%, #105173 90%);
  background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(10%, #0082c6), color-stop(90%, #105173));
  background: -webkit-radial-gradient(center, ellipse cover, #0082c6 10%, #105173 90%);
  background: radial-gradient(ellipse at center, #0082c6 10%, #105173 90%);
}
.loading .loading-container .loading-base .part1 .part2 li:nth-child(2) {
  width: 110px;
  height: 100px;
  float: left;
  clear: all;
  background: -moz-radial-gradient(center, ellipse cover, #202020 10%, #105173 90%);
  background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(10%, #202020), color-stop(90%, #105173));
  background: -webkit-radial-gradient(center, ellipse cover, #202020 10%, #105173 90%);
  background: radial-gradient(ellipse at center, #202020 10%, #105173 90%);
}
.loading .loading-container .loading-base .part1 .part2 li:nth-child(3) {
  width: 30px;
  height: 4px;
  float: left;
  clear: all;
  margin: -102px 0 0 0;
  background-color: #105173;
}
.loading .loading-container .loading-styles {
  width: 110px;
  height: 110px;
  border-radius: 55px;
  overflow: hidden;
  box-shadow: 0 -1px 0 rgba(10, 10, 10, 0.7), 0 1px 0 rgba(200, 200, 200, 0.2);
  position: relative;
  top: -110px;
}
.loading .loading-container .loading-styles .inner-circle {
  width: 70px;
  height: 70px;
  border-radius: 35px;
  position: absolute;
  top: 20px;
  left: 20px;
  box-shadow: 0 1px 0 rgba(10, 10, 10, 0.7), 0 -1px 0 rgba(200, 200, 200, 0.2);
}
.loading .loading-container .loading-styles .inner-circle .inner-text {
  width: 50px;
  font-size: 12px;
  line-height: 50px;
  float: left;
  clear: all;
  margin: 10px;
  text-align: center;
  color: #F1F1F1;
  text-shadow: 0 1px 0 #202020;
}
section .image-license {
  position: absolute;
  z-index: 1;
  bottom: 30px;
  right: 75px;
  font-size: 12px;
  text-shadow: 1px 1px 0 #2B2B2C;
  color: white;
}
.nav-arrow {
  position: absolute;
  top: 50%;
  margin-top: -42px;
  background: transparent url('../img/nav-arrows.png') 0 0 no-repeat;
  height: 84px;
  width: 54px;
  z-index: 10;
  opacity: .7;
}
.nav-arrow.left {
  left: 20px;
  background-position: -56 0;
}
.nav-arrow.right {
  right: 60px;
  background-position: -52px 0;
}
.unselectable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
@media (orientation: landscape) {
  html.ipad.ios7 > body {
    height: 672px !important;
  }
}
main ul.content-page__menu__list li:nth-child(2) {
  display: none;
}
@font-face {
  font-family: 'icomoon';
  src: url(../fonts/icomoon.eot?mb43dv);
  src: url(../fonts/icomoon.eot?#iefixmb43dv) format('embedded-opentype'), url(../fonts/icomoon.woff?mb43dv) format('woff'), url(../fonts/icomoon.ttf?mb43dv) format('truetype'), url(../fonts/icomoon.svg?mb43dv#icomoon) format('svg');
  font-weight: normal;
  font-style: normal;
}
[class^="icon-"],
[class*=" icon-"] {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  color: #fff;
  font-size: 20px;
}
.icon-cog:before {
  content: "\e600";
}
.icon-font:before {
  content: "\e601";
}
.icon-picture:before {
  content: "\e602";
}
.icon-play:before {
  content: "\e60b";
}
.icon-pause:before {
  content: "\e60c";
}
.icon-remove-circle:before {
  content: "\e60a";
}
.icon-resize-full:before {
  content: "\e603";
}
.icon-resize-small:before {
  content: "\e604";
}
.icon-twitter:before {
  content: "\e606";
}
.icon-facebook:before {
  content: "\e607";
}
.icon-google-plus:before {
  content: "\e608";
}
.icon-envelope-alt:before {
  content: "\e609";
}
.icon-info:before {
  content: "\e605";
}
.perspective {
  -webkit-perspective: 1200px;
  perspective: 1200px;
}
.perspective > section {
  visibility: hidden;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: 0 0 0;
  transform: 0 0 0;
}
.page-visible {
  visibility: visible !important;
  z-index: 1;
}
.page-moveToLeft {
  /* animation */
  -webkit-animation: moveToLeft 0.6s ease both;
  -moz-animation: moveToLeft 0.6s ease both;
  -o-animation: moveToLeft 0.6s ease both;
  animation: moveToLeft 0.6s ease both;
}
.page-moveFromLeft {
  /* animation */
  -webkit-animation: moveFromLeft 0.6s ease both;
  -moz-animation: moveFromLeft 0.6s ease both;
  -o-animation: moveFromLeft 0.6s ease both;
  animation: moveFromLeft 0.6s ease both;
}
.page-moveToRight {
  /* animation */
  -webkit-animation: moveToRight 0.6s ease both;
  -moz-animation: moveToRight 0.6s ease both;
  -o-animation: moveToRight 0.6s ease both;
  animation: moveToRight 0.6s ease both;
}
.page-moveFromRight {
  /* animation */
  -webkit-animation: moveFromRight 0.6s ease both;
  -moz-animation: moveFromRight 0.6s ease both;
  -o-animation: moveFromRight 0.6s ease both;
  animation: moveFromRight 0.6s ease both;
}
.page-moveToTop {
  /* animation */
  -webkit-animation: moveToTop 0.6s ease both;
  -moz-animation: moveToTop 0.6s ease both;
  -o-animation: moveToTop 0.6s ease both;
  animation: moveToTop 0.6s ease both;
}
.page-moveFromTop {
  /* animation */
  -webkit-animation: moveFromTop 0.6s ease both;
  -moz-animation: moveFromTop 0.6s ease both;
  -o-animation: moveFromTop 0.6s ease both;
  animation: moveFromTop 0.6s ease both;
}
.page-moveToBottom {
  /* animation */
  -webkit-animation: moveToBottom 0.6s ease both;
  -moz-animation: moveToBottom 0.6s ease both;
  -o-animation: moveToBottom 0.6s ease both;
  animation: moveToBottom 0.6s ease both;
}
.page-moveFromBottom {
  /* animation */
  -webkit-animation: moveFromBottom 0.6s ease both;
  -moz-animation: moveFromBottom 0.6s ease both;
  -o-animation: moveFromBottom 0.6s ease both;
  animation: moveFromBottom 0.6s ease both;
}
@-webkit-keyframes moveToLeft {
  from {
    -webkit-transform: translateY(0);
  }
  to {
    -webkit-transform: translateX(-100%);
  }
}
@-moz-keyframes moveToLeft {
  from {
    -webkit-transform: translateY(0);
  }
  to {
    -moz-transform: translateX(-100%);
  }
}
@keyframes moveToLeft {
  from {
    -webkit-transform: translateY(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@-webkit-keyframes moveFromLeft {
  from {
    -webkit-transform: translateX(-100%);
  }
}
@-moz-keyframes moveFromLeft {
  from {
    -moz-transform: translateX(-100%);
  }
}
@keyframes moveFromLeft {
  from {
    transform: translateX(-100%);
  }
}
@-webkit-keyframes moveToRight {
  from {
    -webkit-transform: translateY(0);
  }
  to {
    -webkit-transform: translateX(100%);
  }
}
@-moz-keyframes moveToRight {
  from {
    -webkit-transform: translateY(0);
  }
  to {
    -moz-transform: translateX(100%);
  }
}
@keyframes moveToRight {
  from {
    -webkit-transform: translateY(0);
  }
  to {
    transform: translateX(100%);
  }
}
@-webkit-keyframes moveFromRight {
  from {
    -webkit-transform: translateX(100%);
  }
}
@-moz-keyframes moveFromRight {
  from {
    -moz-transform: translateX(100%);
  }
}
@keyframes moveFromRight {
  from {
    transform: translateX(100%);
  }
}
@-webkit-keyframes moveToTop {
  from {
    -webkit-transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-100%);
  }
}
@-moz-keyframes moveToTop {
  from {
    -webkit-transform: translateY(0);
  }
  to {
    -moz-transform: translateY(-100%);
  }
}
@keyframes moveToTop {
  from {
    -webkit-transform: translateY(0);
  }
  to {
    transform: translateY(-100%);
  }
}
@-webkit-keyframes moveFromTop {
  from {
    -webkit-transform: translateY(-100%);
  }
}
@-moz-keyframes moveFromTop {
  from {
    -moz-transform: translateY(-100%);
  }
}
@keyframes moveFromTop {
  from {
    transform: translateY(-100%);
  }
}
@-webkit-keyframes moveToBottom {
  from {
    -webkit-transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(100%);
  }
}
@-moz-keyframes moveToBottom {
  from {
    -webkit-transform: translateY(0);
  }
  to {
    -moz-transform: translateY(100%);
  }
}
@keyframes moveToBottom {
  from {
    -webkit-transform: translateY(0);
  }
  to {
    transform: translateY(100%);
  }
}
@-webkit-keyframes moveFromBottom {
  from {
    -webkit-transform: translateY(100%);
  }
}
@-moz-keyframes moveFromBottom {
  from {
    -moz-transform: translateY(100%);
  }
}
@keyframes moveFromBottom {
  from {
    transform: translateY(100%);
  }
}
/**
 * Headings
 */
h1,
.h1 {
  font-size: 40px;
}
h2,
.h2 {
  font-size: 34px;
}
h3,
.h3 {
  font-size: 28px;
}
h4,
.h4 {
  font-size: 22px;
}
h5,
.h5 {
  font-size: 16px;
}
h6,
.h6 {
  font-size: 14px;
}
section.hotspot article header .chapter,
section.article article header .chapter {
  text-transform: none;
  font-size: 16px;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  margin-bottom: 12px;
}
section.hotspot article header .title,
section.article article header .title {
  text-transform: none;
  font-size: 40px;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  margin-bottom: 23px;
}
section.hotspot article header .title.intro,
section.article article header .title.intro {
  text-transform: uppercase;
  font-size: 40px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  margin-bottom: 23px;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.hotspot article header .title.intro,
  section.article article header .title.intro {
    font-size: 28px;
  }
}
section.hotspot article blockquote,
section.article article blockquote {
  font-style: italic;
  margin: 0 15px;
  font-size: 1.2em;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.hotspot article,
  section.article article {
    position: absolute;
    left: 80px;
    max-width: 65%;
    min-width: 200px;
    overflow: hidden;
    /* transform */
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-backface-visibility: hidden;
  }
  section.hotspot article > div,
  section.article article > div {
    /* transition */
    -webkit-transition: 0ms cubic-bezier(0.1, 0.57, 0.1, 1);
    -moz-transition: 0ms cubic-bezier(0.1, 0.57, 0.1, 1);
    -o-transition: 0ms cubic-bezier(0.1, 0.57, 0.1, 1);
    transition: 0ms cubic-bezier(0.1, 0.57, 0.1, 1);
  }
}
@media only screen and (min-width: 320px) and (max-width: 568px) and (orientation: portrait) {
  section.hotspot article,
  section.article article {
    left: 30px;
    max-width: 85%;
  }
}
section.hotspot article.scrollable.disabled,
section.article article.scrollable.disabled,
section.hotspot article.scrollable.right-top.disabled,
section.article article.scrollable.right-top.disabled,
section.hotspot article.right-bottom.disabled,
section.article article.right-bottom.disabled,
section.hotspot article.scrollable.right-bottom.disabled,
section.article article.scrollable.right-bottom.disabled,
section.hotspot article.scrollable.right-center.disabled,
section.article article.scrollable.right-center.disabled,
section.hotspot article.scrollable.center-bottom.disabled,
section.article article.scrollable.center-bottom.disabled {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
section.hotspot article.scrollable.disabled.center-top,
section.article article.scrollable.disabled.center-top,
section.hotspot article.scrollable.right-top.disabled.center-top,
section.article article.scrollable.right-top.disabled.center-top,
section.hotspot article.right-bottom.disabled.center-top,
section.article article.right-bottom.disabled.center-top,
section.hotspot article.scrollable.right-bottom.disabled.center-top,
section.article article.scrollable.right-bottom.disabled.center-top,
section.hotspot article.scrollable.right-center.disabled.center-top,
section.article article.scrollable.right-center.disabled.center-top,
section.hotspot article.scrollable.center-bottom.disabled.center-top,
section.article article.scrollable.center-bottom.disabled.center-top,
section.hotspot article.scrollable.disabled.right-top,
section.article article.scrollable.disabled.right-top,
section.hotspot article.scrollable.right-top.disabled.right-top,
section.article article.scrollable.right-top.disabled.right-top,
section.hotspot article.right-bottom.disabled.right-top,
section.article article.right-bottom.disabled.right-top,
section.hotspot article.scrollable.right-bottom.disabled.right-top,
section.article article.scrollable.right-bottom.disabled.right-top,
section.hotspot article.scrollable.right-center.disabled.right-top,
section.article article.scrollable.right-center.disabled.right-top,
section.hotspot article.scrollable.center-bottom.disabled.right-top,
section.article article.scrollable.center-bottom.disabled.right-top,
section.hotspot article.scrollable.disabled.left-top,
section.article article.scrollable.disabled.left-top,
section.hotspot article.scrollable.right-top.disabled.left-top,
section.article article.scrollable.right-top.disabled.left-top,
section.hotspot article.right-bottom.disabled.left-top,
section.article article.right-bottom.disabled.left-top,
section.hotspot article.scrollable.right-bottom.disabled.left-top,
section.article article.scrollable.right-bottom.disabled.left-top,
section.hotspot article.scrollable.right-center.disabled.left-top,
section.article article.scrollable.right-center.disabled.left-top,
section.hotspot article.scrollable.center-bottom.disabled.left-top,
section.article article.scrollable.center-bottom.disabled.left-top {
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -ms-flex-align: flex-start;
}
section.hotspot article.scrollable.disabled.center-center,
section.article article.scrollable.disabled.center-center,
section.hotspot article.scrollable.right-top.disabled.center-center,
section.article article.scrollable.right-top.disabled.center-center,
section.hotspot article.right-bottom.disabled.center-center,
section.article article.right-bottom.disabled.center-center,
section.hotspot article.scrollable.right-bottom.disabled.center-center,
section.article article.scrollable.right-bottom.disabled.center-center,
section.hotspot article.scrollable.right-center.disabled.center-center,
section.article article.scrollable.right-center.disabled.center-center,
section.hotspot article.scrollable.center-bottom.disabled.center-center,
section.article article.scrollable.center-bottom.disabled.center-center,
section.hotspot article.scrollable.disabled.right-center,
section.article article.scrollable.disabled.right-center,
section.hotspot article.scrollable.right-top.disabled.right-center,
section.article article.scrollable.right-top.disabled.right-center,
section.hotspot article.right-bottom.disabled.right-center,
section.article article.right-bottom.disabled.right-center,
section.hotspot article.scrollable.right-bottom.disabled.right-center,
section.article article.scrollable.right-bottom.disabled.right-center,
section.hotspot article.scrollable.right-center.disabled.right-center,
section.article article.scrollable.right-center.disabled.right-center,
section.hotspot article.scrollable.center-bottom.disabled.right-center,
section.article article.scrollable.center-bottom.disabled.right-center,
section.hotspot article.scrollable.disabled.left-center,
section.article article.scrollable.disabled.left-center,
section.hotspot article.scrollable.right-top.disabled.left-center,
section.article article.scrollable.right-top.disabled.left-center,
section.hotspot article.right-bottom.disabled.left-center,
section.article article.right-bottom.disabled.left-center,
section.hotspot article.scrollable.right-bottom.disabled.left-center,
section.article article.scrollable.right-bottom.disabled.left-center,
section.hotspot article.scrollable.right-center.disabled.left-center,
section.article article.scrollable.right-center.disabled.left-center,
section.hotspot article.scrollable.center-bottom.disabled.left-center,
section.article article.scrollable.center-bottom.disabled.left-center {
  -webkit-align-items: center;
  align-items: center;
  -ms-flex-align: center;
}
section.hotspot article.scrollable.disabled.center-bottom,
section.article article.scrollable.disabled.center-bottom,
section.hotspot article.scrollable.right-top.disabled.center-bottom,
section.article article.scrollable.right-top.disabled.center-bottom,
section.hotspot article.right-bottom.disabled.center-bottom,
section.article article.right-bottom.disabled.center-bottom,
section.hotspot article.scrollable.right-bottom.disabled.center-bottom,
section.article article.scrollable.right-bottom.disabled.center-bottom,
section.hotspot article.scrollable.right-center.disabled.center-bottom,
section.article article.scrollable.right-center.disabled.center-bottom,
section.hotspot article.scrollable.center-bottom.disabled.center-bottom,
section.article article.scrollable.center-bottom.disabled.center-bottom,
section.hotspot article.scrollable.disabled.right-bottom,
section.article article.scrollable.disabled.right-bottom,
section.hotspot article.scrollable.right-top.disabled.right-bottom,
section.article article.scrollable.right-top.disabled.right-bottom,
section.hotspot article.right-bottom.disabled.right-bottom,
section.article article.right-bottom.disabled.right-bottom,
section.hotspot article.scrollable.right-bottom.disabled.right-bottom,
section.article article.scrollable.right-bottom.disabled.right-bottom,
section.hotspot article.scrollable.right-center.disabled.right-bottom,
section.article article.scrollable.right-center.disabled.right-bottom,
section.hotspot article.scrollable.center-bottom.disabled.right-bottom,
section.article article.scrollable.center-bottom.disabled.right-bottom,
section.hotspot article.scrollable.disabled.left-bottom,
section.article article.scrollable.disabled.left-bottom,
section.hotspot article.scrollable.right-top.disabled.left-bottom,
section.article article.scrollable.right-top.disabled.left-bottom,
section.hotspot article.right-bottom.disabled.left-bottom,
section.article article.right-bottom.disabled.left-bottom,
section.hotspot article.scrollable.right-bottom.disabled.left-bottom,
section.article article.scrollable.right-bottom.disabled.left-bottom,
section.hotspot article.scrollable.right-center.disabled.left-bottom,
section.article article.scrollable.right-center.disabled.left-bottom,
section.hotspot article.scrollable.center-bottom.disabled.left-bottom,
section.article article.scrollable.center-bottom.disabled.left-bottom {
  -webkit-align-items: flex-end;
  align-items: flex-end;
  -ms-flex-align: flex-end;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.hotspot article.scrollable,
  section.article article.scrollable,
  section.hotspot article.scrollable.right-top,
  section.article article.scrollable.right-top,
  section.hotspot article.right-bottom,
  section.article article.right-bottom,
  section.hotspot article.scrollable.right-bottom,
  section.article article.scrollable.right-bottom,
  section.hotspot article.scrollable.right-center,
  section.article article.scrollable.right-center,
  section.hotspot article.scrollable.center-bottom,
  section.article article.scrollable.center-bottom {
    top: 0;
    overflow: hidden;
    height: 100%;
    width: 80%;
  }
  section.hotspot article.scrollable::-webkit-scrollbar,
  section.article article.scrollable::-webkit-scrollbar,
  section.hotspot article.scrollable.right-top::-webkit-scrollbar,
  section.article article.scrollable.right-top::-webkit-scrollbar,
  section.hotspot article.right-bottom::-webkit-scrollbar,
  section.article article.right-bottom::-webkit-scrollbar,
  section.hotspot article.scrollable.right-bottom::-webkit-scrollbar,
  section.article article.scrollable.right-bottom::-webkit-scrollbar,
  section.hotspot article.scrollable.right-center::-webkit-scrollbar,
  section.article article.scrollable.right-center::-webkit-scrollbar,
  section.hotspot article.scrollable.center-bottom::-webkit-scrollbar,
  section.article article.scrollable.center-bottom::-webkit-scrollbar {
    display: none;
  }
  section.hotspot article.scrollable > div,
  section.article article.scrollable > div,
  section.hotspot article.scrollable.right-top > div,
  section.article article.scrollable.right-top > div,
  section.hotspot article.right-bottom > div,
  section.article article.right-bottom > div,
  section.hotspot article.scrollable.right-bottom > div,
  section.article article.scrollable.right-bottom > div,
  section.hotspot article.scrollable.right-center > div,
  section.article article.scrollable.right-center > div,
  section.hotspot article.scrollable.center-bottom > div,
  section.article article.scrollable.center-bottom > div {
    padding: 100px 0;
  }
}
section.beforeafter div.twentytwenty-wrapper,
section.beforeafter div.twentytwenty-container {
  position: absolute;
  width: 100%;
  height: 100%;
}
section.beforeafter div.twentytwenty-wrapper .imgbefore,
section.beforeafter div.twentytwenty-container .imgbefore,
section.beforeafter div.twentytwenty-wrapper .imgafter,
section.beforeafter div.twentytwenty-container .imgafter {
  position: absolute;
  width: 100%;
  height: 100%;
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat;
  background-color: #333;
}
section.beforeafter .imgbefore .image-license {
  left: 75px;
}
section.beforeafter .imgafter .image-license {
  right: 75px;
}
section.beforeafter .overlay {
  pointer-events: none;
  z-index: 50;
}
.twentytwenty-horizontal .twentytwenty-handle:before,
.twentytwenty-horizontal .twentytwenty-handle:after,
.twentytwenty-vertical .twentytwenty-handle:before,
.twentytwenty-vertical .twentytwenty-handle:after {
  content: " ";
  display: block;
  background: white;
  position: absolute;
  z-index: 30;
  -webkit-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
  -moz-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
  box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
}
.full {
  position: absolute;
  width: 100%;
  height: 100%;
}
.full .twentytwenty-before-label,
.full .twentytwenty-after-label {
  color: white;
  font-size: 13px;
  position: absolute;
  background: rgba(43, 43, 44, 0.75);
  line-height: 22px;
  padding: 10px;
  opacity: 0;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  z-index: 30;
  /* transition */
  -webkit-transition: opacity 0.5s ease 0.5s;
  -moz-transition: opacity 0.5s ease 0.5s;
  -o-transition: opacity 0.5s ease 0.5s;
  transition: opacity 0.5s ease 0.5s;
}
.full .twentytwenty-handle:hover ~ div {
  opacity: 1;
  /* transition */
  -webkit-transition: opacity 0.5s ease 0s;
  -moz-transition: opacity 0.5s ease 0s;
  -o-transition: opacity 0.5s ease 0s;
  transition: opacity 0.5s ease 0s;
}
.twentytwenty-horizontal .twentytwenty-handle:before,
.twentytwenty-horizontal .twentytwenty-handle:after {
  width: 3px;
  height: 9999px;
  left: 50%;
  margin-left: -1.5px;
}
.twentytwenty-vertical .twentytwenty-handle:before,
.twentytwenty-vertical .twentytwenty-handle:after {
  width: 9999px;
  height: 3px;
  top: 50%;
  margin-top: -1.5px;
}
.twentytwenty-horizontal .twentytwenty-before-label,
.twentytwenty-horizontal .twentytwenty-after-label {
  top: 70%;
  margin-top: 30px;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .twentytwenty-horizontal .twentytwenty-before-label,
  .twentytwenty-horizontal .twentytwenty-after-label {
    top: auto;
    bottom: 10%;
    width: 30%;
  }
}
.twentytwenty-vertical .twentytwenty-before-label,
.twentytwenty-vertical .twentytwenty-after-label {
  left: 50%;
  margin-left: -45px;
  text-align: center;
  width: 90px;
}
.twentytwenty-left-arrow,
.twentytwenty-right-arrow,
.twentytwenty-up-arrow,
.twentytwenty-down-arrow {
  width: 0;
  height: 0;
  border: 6px inset transparent;
  position: absolute;
}
.twentytwenty-left-arrow,
.twentytwenty-right-arrow {
  top: 50%;
  margin-top: -6px;
}
.twentytwenty-up-arrow,
.twentytwenty-down-arrow {
  left: 50%;
  margin-left: -6px;
}
.twentytwenty-container {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
}
.twentytwenty-container img {
  position: absolute;
  top: 0;
  display: block;
}
.twentytwenty-container .twentytwenty-container.active .twentytwenty-overlay,
.twentytwenty-container .twentytwenty-container.active :hover.twentytwenty-overlay {
  background: rgba(0, 0, 0, 0);
}
.twentytwenty-container .twentytwenty-container * {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}
.twentytwenty-horizontal .twentytwenty-before-label {
  left: 10px;
}
.twentytwenty-horizontal .twentytwenty-after-label {
  right: 60px;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .twentytwenty-horizontal .twentytwenty-after-label {
    right: 10px;
  }
}
.twentytwenty-vertical .twentytwenty-before-label {
  top: 10px;
}
.twentytwenty-vertical .twentytwenty-after-label {
  bottom: 10px;
}
.twentytwenty-overlay {
  z-index: 25;
}
.twentytwenty-before {
  z-index: 6;
}
.twentytwenty-after {
  z-index: 5;
}
.twentytwenty-handle {
  height: 38px;
  width: 38px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -22px;
  margin-top: -22px;
  border: 3px solid white;
  -webkit-border-radius: 1000px;
  -moz-border-radius: 1000px;
  border-radius: 1000px;
  -webkit-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
  -moz-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
  box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
  z-index: 40;
  cursor: pointer;
}
.twentytwenty-horizontal .twentytwenty-handle:before {
  bottom: 50%;
  margin-bottom: 22px;
  -webkit-box-shadow: 0 3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  -moz-box-shadow: 0 3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  box-shadow: 0 3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
}
.twentytwenty-horizontal .twentytwenty-handle:after {
  top: 50%;
  margin-top: 22px;
  -webkit-box-shadow: 0 -3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  -moz-box-shadow: 0 -3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  box-shadow: 0 -3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
}
.twentytwenty-vertical .twentytwenty-handle:before {
  left: 50%;
  margin-left: 22px;
  -webkit-box-shadow: 3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  -moz-box-shadow: 3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  box-shadow: 3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
}
.twentytwenty-vertical .twentytwenty-handle:after {
  right: 50%;
  margin-right: 22px;
  -webkit-box-shadow: -3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  -moz-box-shadow: -3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  box-shadow: -3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
}
.twentytwenty-left-arrow {
  border-right: 6px solid white;
  left: 50%;
  margin-left: -17px;
}
.twentytwenty-right-arrow {
  border-left: 6px solid white;
  right: 50%;
  margin-right: -17px;
}
.twentytwenty-up-arrow {
  border-bottom: 6px solid white;
  top: 50%;
  margin-top: -17px;
}
.twentytwenty-down-arrow {
  border-top: 6px solid white;
  bottom: 50%;
  margin-bottom: -17px;
}
.controls {
  width: 40px;
  height: 40px;
  background-color: rgba(43, 43, 44, 0.75);
  letter-spacing: 0;
  position: absolute;
  z-index: 20;
  bottom: 100px;
  left: 0;
  overflow: visible;
  border-radius: 0 4px 4px 0;
  /* transition */
  -webkit-transition: width 0.6s ease-in-out 0.3s;
  -moz-transition: width 0.6s ease-in-out 0.3s;
  -o-transition: width 0.6s ease-in-out 0.3s;
  transition: width 0.6s ease-in-out 0.3s;
}
.controls:hover,
.controls.open {
  width: 445px;
  background-color: rgba(43, 43, 44, 0.95);
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .controls:hover,
  .controls.open {
    width: 315px;
  }
}
.controls.hidden {
  opacity: 0;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.controls.module-howto:hover,
.controls.module-howto.open {
  width: 300px;
}
.controls.module-howto:hover p,
.controls.module-howto.open p {
  opacity: 1;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out 0.6s;
  -moz-transition: opacity 0.3s ease-in-out 0.6s;
  -o-transition: opacity 0.3s ease-in-out 0.6s;
  transition: opacity 0.3s ease-in-out 0.6s;
}
.controls.module-howto i.info {
  position: absolute;
  top: 10px;
  left: 10px;
  background: transparent url('../img/module-icon-info.png') 0 0 no-repeat;
  width: 20px;
  height: 20px;
}
.controls.module-howto p {
  opacity: 0;
  top: 0;
  position: absolute;
  left: 50px;
  color: white;
  font-size: 14px;
  line-height: 40px;
}
.controls:hover .controls-article .textSize,
.controls.open .controls-article .textSize,
.controls:hover .controls-article .swapbackground,
.controls.open .controls-article .swapbackground {
  opacity: 1;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out 0.6s;
  -moz-transition: opacity 0.3s ease-in-out 0.6s;
  -o-transition: opacity 0.3s ease-in-out 0.6s;
  transition: opacity 0.3s ease-in-out 0.6s;
}
.controls .controls-article {
  font-size: 14px;
  color: white;
}
.controls .controls-article .icon {
  position: absolute;
  display: inline-block;
  top: 12px;
  left: 10px;
}
.controls .controls-article .textSize {
  opacity: 0;
  position: absolute;
  left: 50px;
  width: 155px;
  top: 12px;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .controls .controls-article .textSize {
    width: 100%;
  }
}
.controls .controls-article .textSize span {
  float: left;
}
.controls .controls-article .textSize ul {
  cursor: pointer;
  margin-left: 20px;
}
.controls .controls-article .textSize ul li {
  float: left;
  padding-right: 10px;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .controls .controls-article .textSize ul li {
    padding-right: 15px;
  }
}
.controls .controls-article .textSize ul li:hover {
  color: #1982c5;
}
.controls .controls-article .textSize ul li:first-child {
  padding-left: 10px;
  font-size: 10px;
  line-height: 19px;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .controls .controls-article .textSize ul li:first-child {
    padding-left: 15px;
  }
}
.controls .controls-article .textSize ul li:nth-child(3) {
  font-size: 19px;
  line-height: 15px;
}
.controls .controls-article .swapbackground {
  opacity: 0;
  position: absolute;
  left: 210px;
  top: 12px;
  cursor: pointer;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .controls .controls-article .swapbackground {
    display: none;
  }
}
.controls .controls-article .swapbackground .status:hover {
  color: #1982c5;
}
section.counter article div.wrapper {
  padding: 10% 8%;
  width: 84%;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.counter article div.wrapper {
    text-align: center;
  }
}
section.counter article div.wrapper .title {
  text-transform: none;
  font-size: 40px;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  margin-bottom: 23px;
}
section.counter article div.wrapper p {
  font-size: 28px;
}
section.counter article div.wrapper p span {
  font-weight: bold;
  word-break: break-word;
}
@media only screen and (max-width: 1024px) {
  section.counter article div.wrapper p span {
    display: block;
  }
}
section.counter article.scrollable.disabled {
  display: -webkit-flex;
  display: flex;
  display: -ms-flexbox;
}
section.counter article.scrollable.disabled.left-top {
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -ms-flex-align: flex-start;
}
section.counter article.scrollable.disabled.left-center {
  -webkit-align-items: center;
  align-items: center;
  -ms-flex-align: center;
}
section.counter article.scrollable.disabled.center-center {
  -webkit-align-items: center;
  align-items: center;
  -ms-flex-align: center;
  text-align: center !important;
}
section.counter article.scrollable.disabled.left-bottom {
  -webkit-align-items: flex-end;
  align-items: flex-end;
  -ms-flex-align: flex-end;
}
.copyright-container {
  margin-bottom: 15px;
}
.copyright-container__image {
  display: inline-block;
  float: left;
  padding-right: 15px;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .copyright-container__image {
    display: block;
    text-align: center;
    float: none;
  }
}
.copyright-container__content p {
  margin: 0;
  padding: 0;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .copyright-container__content {
    text-align: center;
  }
}
.copyright-container:after {
  content: ' ';
  display: block;
  clear: left;
}
section.custom {
  background-color: white;
}
section.custom article .wrapper {
  padding: 10% 8%;
  overflow: hidden;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.custom article .wrapper {
    padding-top: 20%;
  }
  section.custom article .wrapper .inner {
    margin-left: -10px !important;
    margin-right: -10px !important;
  }
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.custom article .reset-small {
    padding: 10% 8% !important;
    margin-top: 20%;
  }
}
section.custom article .wrapper-right,
section.custom article .wrapper-left {
  width: 46%;
  float: left;
  overflow: hidden;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.custom article .wrapper-right,
  section.custom article .wrapper-left {
    width: 100% !important;
  }
}
section.custom article .wrapper-right {
  padding-left: 4%;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.custom article .wrapper-right {
    padding: 0 !important;
  }
}
section.custom article .wrapper-left {
  padding-right: 4%;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.custom article .wrapper-left {
    padding: 0 !important;
  }
}
section.custom article header .chapter {
  text-transform: none;
  font-size: 16px;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  margin-bottom: 12px;
}
section.custom article header .title {
  text-transform: none;
  font-size: 40px;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  margin-bottom: 23px;
}
section.custom article header .title.intro {
  text-transform: uppercase;
  font-size: 40px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  margin-bottom: 23px;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.custom article header .title.intro {
    font-size: 28px;
  }
}
section.custom article .medium {
  margin-top: 30px;
  font-size: 30px;
  text-align: center;
}
section.custom article .medium span {
  font-weight: bold;
}
section.custom article .big {
  font-size: 40px;
  text-align: center;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.custom article .big {
    font-size: 25px;
  }
}
section.custom article .bigger {
  font-size: 80px;
  text-align: center;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.custom article .bigger {
    font-size: 35px;
  }
}
section.custom article .bigger span {
  font-weight: bold;
}
section.custom article .city {
  font-size: 30px;
  text-align: center;
  line-height: 30px;
}
section.custom article .city span {
  font-size: 70px;
  font-weight: bold;
}
section.custom article button {
  padding: 10px;
  background: #fff;
  color: #000;
  font-size: 16px;
  border: none;
  cursor: pointer;
  display: block;
  margin: 15px auto 0 auto;
}
@-webkit-keyframes loading {
  0% {
    left: 100px;
    top: 0;
  }
  80% {
    left: 0;
    top: 0;
  }
  85% {
    left: 0;
    top: -20px;
    width: 20px;
    height: 20px;
  }
  90% {
    width: 40px;
    height: 15px;
  }
  95% {
    left: 100px;
    top: -20px;
    width: 20px;
    height: 20px;
  }
  100% {
    left: 100px;
    top: 0;
  }
}
section.externalvideo .overlay {
  z-index: 9;
  width: 100%;
  height: 100%;
  background-image: url('data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw%3D%3D');
}
section.externalvideo .cover {
  opacity: 0;
  /* transition */
  -webkit-transition: all 0.2s ease-in-out 0s;
  -moz-transition: all 0.2s ease-in-out 0s;
  -o-transition: all 0.2s ease-in-out 0s;
  transition: all 0.2s ease-in-out 0s;
}
section.externalvideo .cover.visible {
  opacity: 1;
  /* transition */
  -webkit-transition: all 0.2s ease-in-out 0s;
  -moz-transition: all 0.2s ease-in-out 0s;
  -o-transition: all 0.2s ease-in-out 0s;
  transition: all 0.2s ease-in-out 0s;
}
section.externalvideo .loading-animation {
  display: none;
  opacity: 0;
  width: 100px;
  height: 40px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -20px -50px;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
section.externalvideo .loading-animation.visible {
  opacity: 1;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
section.externalvideo .loading-animation div {
  width: 20px;
  height: 20px;
  background: #FFF;
  border-radius: 50%;
  position: absolute;
}
section.externalvideo .loading-animation div.bullet-1 {
  /* animation */
  -webkit-animation: loading 2s linear infinite;
  -moz-animation: loading 2s linear infinite;
  -o-animation: loading 2s linear infinite;
  animation: loading 2s linear infinite;
}
section.externalvideo .loading-animation div.bullet-2 {
  /* animation */
  -webkit-animation: loading 2s linear infinite -0.4s;
  -moz-animation: loading 2s linear infinite -0.4s;
  -o-animation: loading 2s linear infinite -0.4s;
  animation: loading 2s linear infinite -0.4s;
}
section.externalvideo .loading-animation div.bullet-3 {
  /* animation */
  -webkit-animation: loading 2s linear infinite -0.8s;
  -moz-animation: loading 2s linear infinite -0.8s;
  -o-animation: loading 2s linear infinite -0.8s;
  animation: loading 2s linear infinite -0.8s;
}
section.externalvideo .loading-animation div.bullet-4 {
  /* animation */
  -webkit-animation: loading 2s linear infinite -1.2s;
  -moz-animation: loading 2s linear infinite -1.2s;
  -o-animation: loading 2s linear infinite -1.2s;
  animation: loading 2s linear infinite -1.2s;
}
section.externalvideo .loading-animation div.bullet-5 {
  /* animation */
  -webkit-animation: loading 2s linear infinite -1.6s;
  -moz-animation: loading 2s linear infinite -1.6s;
  -o-animation: loading 2s linear infinite -1.6s;
  animation: loading 2s linear infinite -1.6s;
}
section.externalvideo .channel-tooltip {
  height: 40px;
  overflow: hidden;
  position: absolute;
  left: 40px;
  bottom: 135px;
  opacity: 0;
  z-index: 11;
  display: inline-block;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
section.externalvideo .channel-tooltip p {
  margin: 0;
  line-height: 12px;
  font-size: 12px;
  color: white;
  letter-spacing: 1px;
  text-align: center;
  background-color: #1982c5;
  padding: 10px;
  border-radius: 4px;
}
section.externalvideo .channel-tooltip .arrow {
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #1982c5;
  margin: 0 0 0 35px;
}
section.externalvideo .channel-tooltip.visible {
  opacity: 1;
  left: 50px;
}
section.externalvideo .player-light {
  width: 140px;
  height: 40px;
  background-color: rgba(43, 43, 44, 0.75);
  position: absolute;
  z-index: 10;
  bottom: 100px;
  left: 0;
  overflow: visible;
  border-radius: 0 4px 4px 0;
}
section.externalvideo .player-light.youtube {
  width: 114px;
}
section.externalvideo .player-light .channel {
  position: absolute;
  left: 50px;
  top: 10px;
}
section.externalvideo .player-light .channel a {
  display: block;
  height: 40px;
}
section.externalvideo .player-light .channel a.youtube {
  width: 100px;
  background: transparent url('../img/logo-youtube.png') 0 0 no-repeat;
}
section.externalvideo .player-light .channel a.vimeo {
  width: 72px;
  background: transparent url('../img/logo-vimeo.png') 0 0 no-repeat;
}
section.externalvideo .player-light .play-controls {
  position: absolute;
  width: 40px;
}
section.externalvideo .player-light .play-controls .play {
  border-top: 7px solid rgba(255, 255, 255, 0);
  border-bottom: 7px solid rgba(255, 255, 255, 0);
  border-left: 14px solid #F1F1F1;
  -moz-transform: scale(0.9999);
  margin: 13px;
  cursor: pointer;
}
section.externalvideo .player-light .play-controls .pause {
  width: 14px;
  height: 14px;
  margin: 13px;
  cursor: pointer;
  display: none;
}
section.externalvideo .player-light .play-controls .pause > li {
  width: 5px;
  height: 14px;
  background-color: #F1F1F1;
  float: left;
}
section.externalvideo .player-light .play-controls .pause > li:last-child {
  margin-left: 4px;
}
section.externalvideo .player-light .play-controls.playing .play {
  display: none;
}
section.externalvideo .player-light .play-controls.playing .pause {
  display: block;
}
section.externalvideo .external-player {
  width: 100%;
  height: 100%;
}
section.externalvideo .external-player iframe {
  width: 100%;
  height: 100%;
}
section.externalvideo .open-player-btn {
  background: transparent url('../img/videoPlayButton.png') top center no-repeat;
  background-size: 100px 100px;
  height: 100px;
  left: 50%;
  margin: -50px -100px;
  position: absolute;
  top: 50%;
  width: 200px;
  z-index: 1;
}
section.externalvideo .open-player-btn a {
  display: block;
  height: 100%;
  width: 100%;
  padding-top: 120px;
  font-size: .9em;
  text-align: center;
  text-transform: uppercase;
  font-weight: bold;
  color: white;
}
section.externalvideo .open-player-btn a:hover,
section.externalvideo .open-player-btn a:active,
section.externalvideo .open-player-btn a:focus {
  text-decoration: none;
}
section.gallery > div.slide {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
}
section.gallery > div.slide.current-slide {
  opacity: 1;
}
section.gallery > div.slide .full {
  position: absolute;
  width: 100%;
  height: 100%;
  background-size: cover;
}
section.gallery > div.slide article {
  position: absolute;
  left: 10%;
  top: auto;
  bottom: 10%;
  height: auto;
  max-width: 600px;
  min-width: 200px;
  z-index: 8;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.gallery > div.slide article {
    left: 80px;
    top: 20%;
    max-width: 65%;
    min-width: 200px;
    overflow: hidden;
    /* transform */
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-backface-visibility: hidden;
  }
}
@media only screen and (min-width: 320px) and (max-width: 568px) and (orientation: portrait) {
  section.gallery > div.slide article {
    left: 30px;
    top: 20%;
    max-width: 85%;
  }
}
section.gallery > div.slide article header .title {
  text-transform: none;
  font-size: 40px;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  margin-bottom: 23px;
}
section.gallery > div.helper {
  z-index: 9;
  position: absolute;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -ms-flex-align: center;
  -webkit-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out 0.3s;
  -moz-transition: opacity 0.3s ease-in-out 0.3s;
  -o-transition: opacity 0.3s ease-in-out 0.3s;
  transition: opacity 0.3s ease-in-out 0.3s;
}
section.gallery > div.helper.visible {
  opacity: 1;
}
section.gallery > div.helper img {
  /* border-radius */
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
}
section.gallery div.galerieControls {
  display: inline-block;
  height: 40px;
  width: 50px;
  background-color: rgba(43, 43, 44, 0.75);
  position: absolute;
  z-index: 10;
  bottom: 100px;
  left: 0;
  border-radius: 0 4px 4px 0;
  line-height: 40px;
  color: #F1F1F1;
  font-size: 14px;
  opacity: 0;
  /* transition */
  -webkit-transition: width 0.6s ease-in-out 0.3s;
  -moz-transition: width 0.6s ease-in-out 0.3s;
  -o-transition: width 0.6s ease-in-out 0.3s;
  transition: width 0.6s ease-in-out 0.3s;
}
section.gallery div.galerieControls.visible {
  opacity: 1;
}
section.gallery div.galerieControls.toggle {
  background-color: rgba(43, 43, 44, 0.95);
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
section.gallery div.galerieControls.toggle ul {
  opacity: 1;
  visibility: visible;
}
section.gallery div.galerieControls.toggle ul li {
  border: 1px solid #4E4E4E;
}
section.gallery div.galerieControls .position {
  display: block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  color: #F1F1F1;
  letter-spacing: 1px;
  font-size: 14px;
  cursor: pointer;
  float: left;
  margin-left: 3px;
}
section.gallery div.galerieControls ul {
  display: inline-block;
  opacity: 0;
  visibility: hidden;
  margin: 0 10px 0 10px;
  /* transition */
  -webkit-transition: all 0s ease-in-out 0.3s;
  -moz-transition: all 0s ease-in-out 0.3s;
  -o-transition: all 0s ease-in-out 0.3s;
  transition: all 0s ease-in-out 0.3s;
}
section.gallery div.galerieControls ul li {
  width: 8px;
  height: 8px;
  border-radius: 5px;
  border: 1px solid #4E4E4E;
  margin: 15px 5px;
  cursor: pointer;
  float: left;
}
section.gallery div.galerieControls ul li:hover > .preview-container {
  opacity: 1;
  /* transition */
  -webkit-transition: all 0.4s ease-in-out;
  -moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
section.gallery div.galerieControls ul li.active {
  background-color: #F1F1F1;
}
section.gallery div.galerieControls ul li.active:hover {
  background-color: #4E4E4E;
}
section.gallery div.galerieControls .preview-container {
  width: 58px;
  height: 43px;
  position: relative;
  top: -48px;
  left: -24px;
  opacity: 0;
  z-index: 110;
}
section.gallery div.galerieControls .preview-container > .image {
  width: 48px;
  height: 27px;
  padding: 4px;
  background-color: #4E4E4E;
  border-radius: 4px;
}
section.gallery div.galerieControls .preview-container > .image img {
  width: 48px;
  height: 27px;
}
section.gallery div.galerieControls .preview-container .preview-arrow {
  width: 0;
  height: 0;
  border-top: 6px solid #4E4E4E;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  margin: 0 auto;
}
@media only screen and (max-width: 1024px) {
  div.galerieControls .preview-container {
    display: none;
  }
}
section.hotspot .mediaplayer {
  z-index: 0;
}
@media only screen and (max-width: 800px) {
  section.hotspot article.right-bottom.disabled {
    display: none;
  }
}
section.hotspot article.right-bottom.disabled .inner {
  background: rgba(0, 0, 0, 0.5);
  padding: 15px;
}
section.hotspot article.scrollable.hidden,
section.hotspot article.hidden {
  display: none;
}
.hs-wrap {
  position: relative;
}
.hs-wrap * {
  display: none;
}
.hs-wrap.hs-loaded * {
  display: block;
}
.hs-wrap img {
  display: block;
}
/* SPOTS */
.hs-spot-object {
  width: 30px;
  height: 30px;
  position: absolute;
  cursor: pointer;
  z-index: 9;
}
.hs-spot-object .visible-tooltip {
  z-index: 9999;
}
.hs-spot-object.hs-spot.visible .hs-spot-shape {
  position: absolute;
  left: -1px;
  top: -1px;
  background: black;
  border-radius: 40px;
  -moz-border-radius: 40px;
  -webkit-border-radius: 40px;
  width: 100%;
  height: 100%;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=15)";
  filter: alpha(opacity=15);
  -moz-opacity: 0.15;
  -khtml-opacity: 0.15;
  opacity: 0.15;
  z-index: 1;
  border: 1px solid white;
}
.hs-spot-object.hs-spot.visible .hs-spot-shape-inner {
  background: #da0606;
  position: absolute;
  left: 50%;
  top: 50%;
  width: 18px;
  height: 18px;
  margin: -9px 0 0 -9px;
  z-index: 1;
  border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
}
.hs-spot-object.hs-spot.visible:hover .hs-spot-shape {
  width: 26px;
  height: 26px;
  left: 1px;
  top: 1px;
}
.hs-spot-object.hs-spot.visible:hover .hs-spot-shape-inner {
  width: 20px;
  height: 20px;
  margin: -10px 0 0 -10px;
}
/* TOOLTIPS */
.hs-spot-object .hs-spot-tooltip-outer {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.hs-tooltip-wrap {
  position: absolute;
  width: 300px;
  z-index: 11;
}
.hs-tooltip {
  display: block;
  background: #2b2b2c;
  color: white;
  padding: 15px;
  position: relative;
  min-height: 18px;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  z-index: 11;
}
.hs-tooltip img {
  width: 100%;
  margin-bottom: 5px;
}
.hs-wrap.mouseover .hs-spot-object.left .hs-spot-tooltip-outer,
.hs-wrap.click .hs-spot-object.left .hs-spot-tooltip-outer {
  position: absolute;
  top: 0;
  left: -30px;
}
.hs-spot-object.left .hs-tooltip-wrap {
  right: 100%;
  top: 0;
  padding-right: 16px;
}
.hs-spot.left .hs-tooltip-wrap {
  top: -12px;
}
.hs-spot-object.left .hs-tooltip:before {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 0;
  right: -8px;
  top: 8px;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 8px solid #181818;
}
.hs-spot.left .hs-tooltip:before {
  top: 16px;
}
.hs-wrap.mouseover .hs-spot-object.top .hs-spot-tooltip-outer,
.hs-wrap.click .hs-spot-object.top .hs-spot-tooltip-outer {
  position: absolute;
  left: 0;
  top: -30px;
}
.hs-spot-object.top .hs-tooltip-wrap {
  bottom: 100%;
  left: 0;
  padding-bottom: 16px;
}
.hs-spot.top .hs-tooltip-wrap {
  left: -1px;
}
.hs-spot-object.top .hs-tooltip:before {
  position: absolute;
  content: "";
  display: block;
  left: 8px;
  bottom: -8px;
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 8px solid #181818;
}
.hs-wrap.mouseover .hs-spot-object.right .hs-spot-tooltip-outer,
.hs-wrap.click .hs-spot-object.right .hs-spot-tooltip-outer {
  position: absolute;
  top: 0;
  left: 30px;
}
.hs-spot-object.right .hs-tooltip-wrap {
  left: 100%;
  top: 0;
  padding-left: 16px;
}
.hs-spot.right .hs-tooltip-wrap {
  top: -12px;
}
.hs-spot-object.right .hs-tooltip:before {
  position: absolute;
  content: "";
  display: block;
  left: -8px;
  top: 8px;
  width: 0;
  height: 0;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-right: 8px solid #181818;
}
.hs-spot.right .hs-tooltip:before {
  top: 16px;
}
.hs-wrap.mouseover .hs-spot-object.bottom .hs-spot-tooltip-outer,
.hs-wrap.click .hs-spot-object.bottom .hs-spot-tooltip-outer {
  position: absolute;
  left: 0;
  top: 30px;
}
.hs-spot-object.bottom .hs-tooltip-wrap {
  top: 100%;
  left: 0;
  padding-top: 16px;
}
.hs-spot.bottom .hs-tooltip-wrap {
  left: -1px;
}
.hs-spot-object.bottom .hs-tooltip:before {
  position: absolute;
  content: "";
  display: block;
  top: -8px;
  left: 8px;
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 8px solid black;
}
.hs-tooltip-buffer {
  background: blue;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  -khtml-opacity: 0;
  opacity: 0;
}
.hs-spot-object.bottom .hs-tooltip-buffer {
  top: 100%;
  height: 16px;
}
.hs-spot-object.top .hs-tooltip-buffer {
  top: auto;
  bottom: 100%;
  height: 16px;
}
.hs-spot-object.left .hs-tooltip-buffer {
  right: 100%;
  left: auto;
  width: 16px;
}
.hs-spot-object.right .hs-tooltip-buffer {
  left: 100%;
  width: 16px;
}
/* Tooltip inline styles */
.hs-tooltip h1 {
  margin-top: 0;
  font-size: 16px;
  line-height: 19px;
  margin-bottom: 10px;
  font-weight: bold;
}
.hs-tooltip h2 {
  font-size: 15px;
  margin-bottom: 10px;
  font-weight: bold;
}
.hs-tooltip h3 {
  font-size: 14px;
  margin-bottom: 10px;
  font-weight: bold;
}
.hs-tooltip p {
  font-size: 13px;
  line-height: 18px;
  margin-bottom: 10px;
}
.hs-tooltip :last-child {
  margin-bottom: 0;
}
.hs-tooltip a {
  color: white !important;
  text-decoration: underline !important;
}
.hs-tooltip a:hover {
  text-decoration: none !important;
}
/* ANIMATIONS */
/* always */
.hs-wrap.always .hs-spot-tooltip-outer {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  -khtml-opacity: 1;
  opacity: 1;
  left: 0 !important;
  top: 0 !important;
  width: 100% !important;
  height: 100% !important;
}
.hs-wrap.always .hs-tooltip,
.hs-wrap.always .hs-tooltip-wrap {
  display: block;
}
/* mouseover & click */
.hs-spot-object .hs-spot-tooltip-outer {
  width: 0 !important;
  height: 0 !important;
}
.hs-spot-object .hs-tooltip,
.hs-spot-object .hs-tooltip-wrap {
  display: none;
}
.hs-spot-object.visible-tooltip .hs-spot-tooltip-outer {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  -khtml-opacity: 1;
  opacity: 1;
  left: 0 !important;
  top: 0 !important;
  width: 100% !important;
  height: 100% !important;
}
.hs-spot-object.visible-tooltip .hs-tooltip,
.hs-spot-object.visible-tooltip .hs-tooltip-wrap {
  display: block;
}
.content-page {
  background: #4E4E4E;
}
.content-page__article {
  position: absolute;
  margin: 0;
  opacity: 0;
  /* transition */
  -webkit-transition: opacity 0.4s;
  -moz-transition: opacity 0.4s;
  -o-transition: opacity 0.4s;
  transition: opacity 0.4s;
}
.content-page__article__wrapper {
  padding: 0;
}
.content-page__article__wrapper__content {
  width: 80%;
  height: 100%;
  padding: 10%;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .content-page__article__wrapper__content {
    padding-top: 15%;
    padding-bottom: 15%;
  }
}
.content-page__article__wrapper__content__headline {
  color: #0082C6;
  margin-bottom: 15px;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .content-page__article__wrapper__content__headline {
    font-size: 1.8em;
  }
}
.content-page__article--visible {
  opacity: 1;
  z-index: 9;
}
.content-page__article--key {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  margin-top: -70px;
  width: 800px;
  left: 50%;
  padding: 0;
  margin-left: -400px;
}
.content-page__article--key ul {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  margin: 0 auto;
}
.content-page__article--key ul > li {
  padding: 20px;
  text-align: center;
  flex-grow: 1;
  -webkit-flex-grow: 1;
  -ms-flex-grow: 1;
}
.content-page__article--key ul > li .linius-icon-large {
  margin: 0 auto;
}
.content-page__article--key .more-content .legende ul li p {
  text-align: center;
  font-size: 14px;
  line-height: 20px;
  color: #F1F1F1;
  letter-spacing: 1px;
}
.content-page__menu {
  position: absolute;
  bottom: 0;
  height: 70px;
  background: #2b2b2c;
  width: 100%;
  z-index: 9;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .content-page__menu {
    height: 50px;
  }
}
.content-page__menu__list {
  position: relative;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  margin: 0;
  padding: 0;
  height: 100%;
  list-style-type: none;
}
.content-page__menu__list__item {
  position: relative;
  height: 100%;
  -webkit-align-items: center;
  align-items: center;
  -ms-flex-align: center;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  margin: 0 20px;
  cursor: pointer;
}
.content-page__menu__list__item:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  border-top: 10px solid #4E4E4E;
  border-right: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 10px solid transparent;
  top: 0;
  z-index: 100;
  opacity: 0;
}
.content-page__menu__list__item--visible {
  cursor: default;
}
.content-page__menu__list__item--visible:after {
  opacity: 1;
}
.content-page__menu__list__item__title {
  color: #fff;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .content-page__menu__list li[data-info="key"] {
    display: none;
  }
}
.content-page__close-button {
  position: absolute;
  top: 10px;
  left: 3px;
  cursor: pointer;
  display: block;
  opacity: 1;
  z-index: 11;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .content-page__close-button {
    right: 30px;
    top: 30px;
    left: auto;
  }
}
.content-page__close-button > span {
  font-size: 12px;
  letter-spacing: 1px;
  color: #F1F1F1;
  line-height: 12px;
  margin-left: 10px;
  margin-top: 4px;
  display: inline;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .content-page__close-button > span {
    display: none;
  }
}
.content-page__close-button > ul {
  width: 20px;
  height: 20px;
  border-radius: 10px;
  background-color: #F1F1F1;
  float: left;
  margin-left: 10px;
  /* transform */
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.content-page__close-button > ul li:nth-child(1) {
  width: 4px;
  height: 12px;
  background-color: #4E4E4E;
  margin: 4px auto;
}
.content-page__close-button > ul li:nth-child(2) {
  width: 12px;
  height: 4px;
  background-color: #4E4E4E;
  margin: -12px auto;
}
.content-page__close-button:hover span {
  color: #969696;
}
.content-page__close-button:hover ul {
  background-color: #969696;
  /* transform */
  -webkit-transform: rotate(405deg);
  -moz-transform: rotate(405deg);
  -ms-transform: rotate(405deg);
  -o-transform: rotate(405deg);
  transform: rotate(405deg);
  /* transition */
  -webkit-transition: transform 0.6s ease-in-out 0s;
  -moz-transition: transform 0.6s ease-in-out 0s;
  -o-transition: transform 0.6s ease-in-out 0s;
  transition: transform 0.6s ease-in-out 0s;
}
.linius-icon-small {
  width: 30px;
  height: 30px;
  margin: 2px 12px 2px 2px;
  float: left;
  background-image: url('../img/module-icons-nav.png');
  background-repeat: no-repeat;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .linius-icon-small {
    background-image: url('../img/module-icons-nav@2x.png');
    background-size: 180px 90px;
  }
}
.linius-icon-small.article {
  background-position: 0 0;
}
.linius-icon-small.info {
  background-position: -30px 0;
}
.linius-icon-small.gallery {
  background-position: -60px 0;
}
.linius-icon-small.video {
  background-position: -90px 0;
}
.linius-icon-small.audio {
  background-position: -120px 0;
}
.linius-icon-small.map {
  background-position: -150px 0;
}
.linius-icon-small.beforeafter {
  background-position: 0 -30px;
}
.linius-icon-small.magnifier {
  background-position: -30px -30px;
}
.linius-icon-small.hotspot {
  background-position: -60px -30px;
}
.linius-icon-small.externalvideo {
  background-position: -90px -30px;
}
.linius-icon-small.infographics {
  background-position: -120px -30px;
}
.linius-icon-small.custom {
  background-position: -150px -30px;
}
.linius-icon-small.legal {
  background-position: 0px -60px;
}
.linius-icon-small.panorama {
  background-position: -30px -60px;
}
.linius-icon-small.notification {
  background-position: -60px -60px;
}
.linius-icon-small.counter {
  background-position: -90px -60px;
}
.linius-icon-small.download {
  background-position: -120px -60px;
}
.linius-icon-small.calendar {
  background-position: -150px -60px;
}
.linius-icon-large {
  width: 120px;
  height: 120px;
  display: block;
  background-image: url('../img/module-icons.png');
  background-repeat: no-repeat;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .linius-icon-large {
    background-image: url('../img/module-icons@2x.png');
    background-size: 720px 360px;
  }
}
.linius-icon-large.article {
  background-position: 0 0;
}
.linius-icon-large.info {
  background-position: -120px 0;
}
.linius-icon-large.gallery {
  background-position: -240px 0;
}
.linius-icon-large.video {
  background-position: -360px 0;
}
.linius-icon-large.audio {
  background-position: -480px 0;
}
.linius-icon-large.map {
  background-position: -600px 0;
}
.linius-icon-large.beforeafter {
  background-position: 0 -120px;
}
.linius-icon-large.magnifier {
  background-position: -120px -120px;
}
.linius-icon-large.hotspot {
  background-position: -240px -120px;
}
.linius-icon-large.externalvideo {
  background-position: -360px -120px;
}
.linius-icon-large.infographics {
  background-position: -480px -120px;
}
.linius-icon-large.custom {
  background-position: -600px -120px;
}
.linius-icon-large.legal {
  background-position: 0px -240px;
}
.linius-icon-large.panorama {
  background-position: -120px -240px;
}
.linius-icon-large.notification {
  background-position: -240px -240px;
}
.linius-icon-large.counter {
  background-position: -360px -240px;
}
.linius-icon-large.download {
  background-position: -480px -240px;
}
.linius-icon-large.calendar {
  background-position: -600px -240px;
}
section.magnifier .bgheight {
  height: 100%;
}
section.magnifier .bgwidth {
  width: 100%;
}
section.magnifier .magnifier-full {
  position: fixed;
  top: 0;
  left: 0;
}
/*!
Video.js Default Styles (http://videojs.com)
Version GENERATED_AT_BUILD
Create your own skin at http://designer.videojs.com
*/
/* SKIN
================================================================================
The main class name for all skin-specific styles. To make your own skin,
replace all occurances of 'vjs-default-skin' with a new name. Then add your new
skin name to your video tag instead of the default skin.
e.g. <video class="video-js my-skin-name">
*/
.vjs-default-skin {
  color: #ffffff;
}
/* Custom Icon Font
--------------------------------------------------------------------------------
The control icons are from a custom font. Each icon corresponds to a character
(e.g. "\e001"). Font icons allow for easy scaling and coloring of icons.
*/
@font-face {
  font-family: 'VideoJS';
  src: url('../fonts/vjs.eot');
  src: url('../fonts/vjs.eot?#iefix') format('embedded-opentype'), url('../fonts/vjs.woff') format('woff'), url('../fonts/vjs.ttf') format('truetype'), url('../fonts/vjs.svg#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}
/* Base UI Component Classes
--------------------------------------------------------------------------------
*/
/* Slider - used for Volume bar and Seek bar */
.vjs-default-skin .vjs-slider {
  /* Replace browser focus hightlight with handle highlight */
  outline: 0;
  position: relative;
  cursor: pointer;
  padding: 0;
  /* background-color-with-alpha */
  background-color: #333333;
  background-color: rgba(51, 51, 51, 0.9);
}
.vjs-default-skin .vjs-slider:focus {
  /* box-shadow */
  -webkit-box-shadow: 0 0 2em #fff;
  -moz-box-shadow: 0 0 2em #fff;
  box-shadow: 0 0 2em #fff;
}
.vjs-default-skin .vjs-slider-handle {
  position: absolute;
  /* Needed for IE6 */
  left: 0;
  top: 0;
}
.vjs-default-skin .vjs-slider-handle:before {
  content: "\e009";
  font-family: VideoJS;
  font-size: 1em;
  line-height: 1;
  text-align: center;
  text-shadow: 0em 0em 1em #fff;
  position: absolute;
  top: 0;
  left: 0;
  /* Rotate the square icon to make a diamond */
  /* transform */
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
/* Control Bar
--------------------------------------------------------------------------------
The default control bar that is a container for most of the controls.
*/
.vjs-default-skin .vjs-control-bar {
  /* Start hidden */
  display: none;
  position: absolute;
  /* Place control bar at the bottom of the player box/video.
     If you want more margin below the control bar, add more height. */
  bottom: 0;
  /* Use left/right to stretch to 100% width of player div */
  left: 0;
  right: 0;
  /* Height includes any margin you want above or below control items */
  height: 3.0em;
  /* background-color-with-alpha */
  background-color: #07141E;
  background-color: rgba(7, 20, 30, 0.7);
}
/* Show the control bar only once the video has started playing */
.vjs-default-skin.vjs-has-started .vjs-control-bar {
  display: block;
  /* Visibility needed to make sure things hide in older browsers too. */
  visibility: visible;
  opacity: 1;
  /* transition */
  -webkit-transition: visibility 0.1s, opacity 0.1s;
  -moz-transition: visibility 0.1s, opacity 0.1s;
  -o-transition: visibility 0.1s, opacity 0.1s;
  transition: visibility 0.1s, opacity 0.1s;
}
/* Hide the control bar when the video is playing and the user is inactive  */
.vjs-default-skin.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
  display: block;
  visibility: hidden;
  opacity: 0;
  /* transition */
  -webkit-transition: visibility 1s, opacity 1s;
  -moz-transition: visibility 1s, opacity 1s;
  -o-transition: visibility 1s, opacity 1s;
  transition: visibility 1s, opacity 1s;
}
.vjs-default-skin.vjs-controls-disabled .vjs-control-bar {
  display: none;
}
.vjs-default-skin.vjs-using-native-controls .vjs-control-bar {
  display: none;
}
/* The control bar shouldn't show after an error */
.vjs-default-skin.vjs-error .vjs-control-bar {
  display: none;
}
/* Don't hide the control bar if it's audio */
.vjs-audio.vjs-default-skin.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
  opacity: 1;
  visibility: visible;
}
/* IE8 is flakey with fonts, and you have to change the actual content to force
fonts to show/hide properly.
  - "\9" IE8 hack didn't work for this
  - Found in XP IE8 from http://modern.ie. Does not show up in "IE8 mode" in IE9
*/
@media \0screen {
  .vjs-default-skin.vjs-user-inactive.vjs-playing .vjs-control-bar :before {
    content: "";
  }
}
/* General styles for individual controls. */
.vjs-default-skin .vjs-control {
  outline: none;
  position: relative;
  float: left;
  text-align: center;
  margin: 0;
  padding: 0;
  height: 3.0em;
  width: 4em;
}
/* Font button icons */
.vjs-default-skin .vjs-control:before {
  font-family: VideoJS;
  font-size: 1.5em;
  line-height: 2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}
/* Replacement for focus outline */
.vjs-default-skin .vjs-control:focus:before,
.vjs-default-skin .vjs-control:hover:before {
  text-shadow: 0em 0em 1em #ffffff;
}
.vjs-default-skin .vjs-control:focus {
  /*  outline: 0; */
  /* keyboard-only users cannot see the focus on several of the UI elements when
  this is set to 0 */
}
/* Hide control text visually, but have it available for screenreaders */
.vjs-default-skin .vjs-control-text {
  /* hide-visually */
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
/* Play/Pause
--------------------------------------------------------------------------------
*/
.vjs-default-skin .vjs-play-control {
  width: 5em;
  cursor: pointer;
}
.vjs-default-skin .vjs-play-control:before {
  content: "\e001";
}
.vjs-default-skin.vjs-playing .vjs-play-control:before {
  content: "\e002";
}
/* Playback toggle
--------------------------------------------------------------------------------
*/
.vjs-default-skin .vjs-playback-rate .vjs-playback-rate-value {
  font-size: 1.5em;
  line-height: 2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
}
.vjs-default-skin .vjs-playback-rate.vjs-menu-button .vjs-menu .vjs-menu-content {
  width: 4em;
  left: -2em;
  list-style: none;
}
/* Volume/Mute
-------------------------------------------------------------------------------- */
.vjs-default-skin .vjs-mute-control,
.vjs-default-skin .vjs-volume-menu-button {
  cursor: pointer;
  float: right;
}
.vjs-default-skin .vjs-mute-control:before,
.vjs-default-skin .vjs-volume-menu-button:before {
  content: "\e006";
}
.vjs-default-skin .vjs-mute-control.vjs-vol-0:before,
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-0:before {
  content: "\e003";
}
.vjs-default-skin .vjs-mute-control.vjs-vol-1:before,
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-1:before {
  content: "\e004";
}
.vjs-default-skin .vjs-mute-control.vjs-vol-2:before,
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-2:before {
  content: "\e005";
}
.vjs-default-skin .vjs-volume-control {
  width: 5em;
  float: right;
}
.vjs-default-skin .vjs-volume-bar {
  width: 5em;
  height: 0.6em;
  margin: 1.1em auto 0;
}
.vjs-default-skin .vjs-volume-level {
  position: absolute;
  top: 0;
  left: 0;
  height: 0.5em;
  /* assuming volume starts at 1.0 */
  width: 100%;
  background: #1982c5 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAP0lEQVQIHWWMAQoAIAgDR/QJ/Ub//04+w7ZICBwcOg5FZi5iBB82AGzixEglJrd4TVK5XUJpskSTEvpdFzX9AB2pGziSQcvAAAAAAElFTkSuQmCC) -50% 0 repeat;
}
.vjs-default-skin .vjs-volume-bar .vjs-volume-handle {
  width: 0.5em;
  height: 0.5em;
  /* Assumes volume starts at 1.0. If you change the size of the
     handle relative to the volume bar, you'll need to update this value
     too. */
  left: 4.5em;
}
.vjs-default-skin .vjs-volume-handle:before {
  font-size: 0.9em;
  top: -0.2em;
  left: -0.2em;
  width: 1em;
  height: 1em;
}
/* The volume menu button is like menu buttons (captions/subtitles) but works
    a little differently. It needs to be possible to tab to the volume slider
    without hitting space bar on the menu button. To do this we're not using
    display:none to hide the slider menu by default, and instead setting the
    width and height to zero. */
.vjs-default-skin .vjs-volume-menu-button .vjs-menu {
  display: block;
  width: 0;
  height: 0;
  border-top-color: transparent;
}
.vjs-default-skin .vjs-volume-menu-button .vjs-menu .vjs-menu-content {
  height: 0;
  width: 0;
}
.vjs-default-skin .vjs-volume-menu-button:hover .vjs-menu,
.vjs-default-skin .vjs-volume-menu-button .vjs-menu.vjs-lock-showing {
  border-top-color: rgba(7, 40, 50, 0.5);
  /* Same as ul background */
}
.vjs-default-skin .vjs-volume-menu-button:hover .vjs-menu .vjs-menu-content,
.vjs-default-skin .vjs-volume-menu-button .vjs-menu.vjs-lock-showing .vjs-menu-content {
  height: 2.9em;
  width: 10em;
}
/* Progress
--------------------------------------------------------------------------------
*/
.vjs-default-skin .vjs-progress-control {
  position: absolute;
  left: 0;
  right: 0;
  width: auto;
  font-size: 0.3em;
  height: 1em;
  /* Set above the rest of the controls. */
  top: -1em;
  /* Shrink the bar slower than it grows. */
  /* transition */
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
}
/* On hover, make the progress bar grow to something that's more clickable.
    This simply changes the overall font for the progress bar, and this
    updates both the em-based widths and heights, as wells as the icon font */
.vjs-default-skin:hover .vjs-progress-control {
  font-size: .9em;
  /* Even though we're not changing the top/height, we need to include them in
      the transition so they're handled correctly. */
  /* transition */
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}
/* Box containing play and load progresses. Also acts as seek scrubber. */
.vjs-default-skin .vjs-progress-holder {
  height: 100%;
}
/* Progress Bars */
.vjs-default-skin .vjs-progress-holder .vjs-play-progress,
.vjs-default-skin .vjs-progress-holder .vjs-load-progress,
.vjs-default-skin .vjs-progress-holder .vjs-load-progress div {
  position: absolute;
  display: block;
  height: 100%;
  margin: 0;
  padding: 0;
  /* updated by javascript during playback */
  width: 0;
  /* Needed for IE6 */
  left: 0;
  top: 0;
}
.vjs-default-skin .vjs-play-progress {
  /*
    Using a data URI to create the white diagonal lines with a transparent
      background. Surprisingly works in IE8.
      Created using http://www.patternify.com
    Changing the first color value will change the bar color.
    Also using a paralax effect to make the lines move backwards.
      The -50% left position makes that happen.
  */
  background: #1982c5 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAP0lEQVQIHWWMAQoAIAgDR/QJ/Ub//04+w7ZICBwcOg5FZi5iBB82AGzixEglJrd4TVK5XUJpskSTEvpdFzX9AB2pGziSQcvAAAAAAElFTkSuQmCC) -50% 0 repeat;
}
.vjs-default-skin .vjs-load-progress {
  background: #646464 /* IE8- Fallback */;
  background: rgba(255, 255, 255, 0.2);
}
/* there are child elements of the load progress bar that represent the
   specific time ranges that have been buffered */
.vjs-default-skin .vjs-load-progress div {
  background: #787878 /* IE8- Fallback */;
  background: rgba(255, 255, 255, 0.1);
}
.vjs-default-skin .vjs-seek-handle {
  width: 1.5em;
  height: 100%;
}
.vjs-default-skin .vjs-seek-handle:before {
  padding-top: 0.1em /* Minor adjustment */;
}
/* Live Mode
--------------------------------------------------------------------------------
*/
.vjs-default-skin.vjs-live .vjs-time-controls,
.vjs-default-skin.vjs-live .vjs-time-divider,
.vjs-default-skin.vjs-live .vjs-progress-control {
  display: none;
}
.vjs-default-skin.vjs-live .vjs-live-display {
  display: block;
}
/* Live Display
--------------------------------------------------------------------------------
*/
.vjs-default-skin .vjs-live-display {
  display: none;
  font-size: 1em;
  line-height: 3em;
}
/* Time Display
--------------------------------------------------------------------------------
*/
.vjs-default-skin .vjs-time-controls {
  font-size: 1em;
  /* Align vertically by making the line height the same as the control bar */
  line-height: 3em;
}
.vjs-default-skin .vjs-current-time {
  float: left;
}
.vjs-default-skin .vjs-duration {
  float: left;
}
/* Remaining time is in the HTML, but not included in default design */
.vjs-default-skin .vjs-remaining-time {
  display: none;
  float: left;
}
.vjs-time-divider {
  float: left;
  line-height: 3em;
}
/* Fullscreen
--------------------------------------------------------------------------------
*/
.vjs-default-skin .vjs-fullscreen-control {
  width: 3.8em;
  cursor: pointer;
  float: right;
}
.vjs-default-skin .vjs-fullscreen-control:before {
  content: "\e000";
}
/* Switch to the exit icon when the player is in fullscreen */
.vjs-default-skin.vjs-fullscreen .vjs-fullscreen-control:before {
  content: "\e00b";
}
/* Big Play Button (play button at start)
--------------------------------------------------------------------------------
Positioning of the play button in the center or other corners can be done more
easily in the skin designer. http://designer.videojs.com/
*/
.vjs-default-skin .vjs-big-play-button {
  left: 0.5em;
  top: 0.5em;
  font-size: 3em;
  display: block;
  z-index: 2;
  position: absolute;
  width: 4em;
  height: 2.6em;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  opacity: 1;
  /* Need a slightly gray bg so it can be seen on black backgrounds */
  /* background-color-with-alpha */
  background-color: #07141E;
  background-color: rgba(7, 20, 30, 0.7);
  border: 0.1em solid #3b4249;
  /* border-radius */
  -webkit-border-radius: 0.8em;
  -moz-border-radius: 0.8em;
  border-radius: 0.8em;
  /* box-shadow */
  -webkit-box-shadow: 0px 0px 1em rgba(255, 255, 255, 0.25);
  -moz-box-shadow: 0px 0px 1em rgba(255, 255, 255, 0.25);
  box-shadow: 0px 0px 1em rgba(255, 255, 255, 0.25);
  /* transition */
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
}
/* Optionally center */
.vjs-default-skin.vjs-big-play-centered .vjs-big-play-button {
  /* Center it horizontally */
  left: 50%;
  margin-left: -2.1em;
  /* Center it vertically */
  top: 50%;
  margin-top: -1.4em;
}
/* Hide if controls are disabled */
.vjs-default-skin.vjs-controls-disabled .vjs-big-play-button {
  display: none;
}
/* Hide when video starts playing */
.vjs-default-skin.vjs-has-started .vjs-big-play-button {
  display: none;
}
/* Hide on mobile devices. Remove when we stop using native controls
    by default on mobile  */
.vjs-default-skin.vjs-using-native-controls .vjs-big-play-button {
  display: none;
}
.vjs-default-skin:hover .vjs-big-play-button,
.vjs-default-skin .vjs-big-play-button:focus {
  outline: 0;
  border-color: #fff;
  /* IE8 needs a non-glow hover state */
  background-color: #505050;
  background-color: rgba(50, 50, 50, 0.75);
  /* box-shadow */
  -webkit-box-shadow: 0 0 3em #fff;
  -moz-box-shadow: 0 0 3em #fff;
  box-shadow: 0 0 3em #fff;
  /* transition */
  -webkit-transition: all 0s;
  -moz-transition: all 0s;
  -o-transition: all 0s;
  transition: all 0s;
}
.vjs-default-skin .vjs-big-play-button:before {
  content: "\e001";
  font-family: VideoJS;
  /* In order to center the play icon vertically we need to set the line height
     to the same as the button height */
  line-height: 2.6em;
  text-shadow: 0.05em 0.05em 0.1em #000;
  text-align: center /* Needed for IE8 */;
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
}
.vjs-error .vjs-big-play-button {
  display: none;
}
/* Error Display
--------------------------------------------------------------------------------
*/
.vjs-error-display {
  display: none;
}
.vjs-error .vjs-error-display {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.vjs-error .vjs-error-display:before {
  content: 'X';
  font-family: Arial;
  font-size: 4em;
  color: #666666;
  /* In order to center the play icon vertically we need to set the line height
     to the same as the button height */
  line-height: 1;
  text-shadow: 0.05em 0.05em 0.1em #000;
  text-align: center /* Needed for IE8 */;
  vertical-align: middle;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -0.5em;
  width: 100%;
}
.vjs-error-display div {
  position: absolute;
  bottom: 1em;
  right: 0;
  left: 0;
  font-size: 1.4em;
  text-align: center;
  padding: 3px;
  background: #000000;
  background: rgba(0, 0, 0, 0.5);
}
.vjs-error-display a,
.vjs-error-display a:visited {
  color: #F4A460;
}
/* Loading Spinner
--------------------------------------------------------------------------------
*/
.vjs-loading-spinner {
  /* Should be hidden by default */
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 4em;
  line-height: 1;
  width: 1em;
  height: 1em;
  margin-left: -0.5em;
  margin-top: -0.5em;
  opacity: 0.75;
}
/* Show the spinner when waiting for data and seeking to a new time */
.vjs-waiting .vjs-loading-spinner,
.vjs-seeking .vjs-loading-spinner {
  display: block;
  /* only animate when showing because it can be processor heavy */
  /* animation */
  -webkit-animation: spin 1.5s infinite linear;
  -moz-animation: spin 1.5s infinite linear;
  -o-animation: spin 1.5s infinite linear;
  animation: spin 1.5s infinite linear;
}
/* Errors are unrecoverable without user interaction so hide the spinner */
.vjs-error .vjs-loading-spinner {
  display: none;
  /* ensure animation doesn't continue while hidden */
  /* animation */
  -webkit-animation: none;
  -moz-animation: none;
  -o-animation: none;
  animation: none;
}
.vjs-default-skin .vjs-loading-spinner:before {
  content: "\e01e";
  font-family: VideoJS;
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  text-align: center;
  text-shadow: 0em 0em 0.1em #000;
}
@-moz-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
  }
  100% {
    -moz-transform: rotate(359deg);
  }
}
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
  }
}
@-o-keyframes spin {
  0% {
    -o-transform: rotate(0deg);
  }
  100% {
    -o-transform: rotate(359deg);
  }
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
/* Menu Buttons (Captions/Subtitles/etc.)
--------------------------------------------------------------------------------
*/
.vjs-default-skin .vjs-menu-button {
  float: right;
  cursor: pointer;
}
.vjs-default-skin .vjs-menu {
  display: none;
  position: absolute;
  bottom: 0;
  left: 0em;
  /* (Width of vjs-menu - width of button) / 2 */
  width: 0em;
  height: 0em;
  margin-bottom: 3em;
  border-left: 2em solid transparent;
  border-right: 2em solid transparent;
  border-top: 1.55em solid #000000;
  /* Same width top as ul bottom */
  border-top-color: rgba(7, 40, 50, 0.5);
  /* Same as ul background */
}
/* Button Pop-up Menu */
.vjs-default-skin .vjs-menu-button .vjs-menu .vjs-menu-content {
  display: block;
  padding: 0;
  margin: 0;
  position: absolute;
  width: 10em;
  bottom: 1.5em;
  /* Same bottom as vjs-menu border-top */
  max-height: 15em;
  overflow: auto;
  left: -5em;
  /* Width of menu - width of button / 2 */
  /* background-color-with-alpha */
  background-color: #07141E;
  background-color: rgba(7, 20, 30, 0.7);
  /* box-shadow */
  -webkit-box-shadow: -0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2);
  -moz-box-shadow: -0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2);
  box-shadow: -0.2em -0.2em 0.3em rgba(255, 255, 255, 0.2);
}
.vjs-default-skin .vjs-menu-button:hover .vjs-control-content .vjs-menu,
.vjs-default-skin .vjs-control-content .vjs-menu.vjs-lock-showing {
  display: block;
}
.vjs-default-skin .vjs-menu-button ul li {
  list-style: none;
  margin: 0;
  padding: 0.3em 0 0.3em 0;
  line-height: 1.4em;
  font-size: 1.2em;
  text-align: center;
  text-transform: lowercase;
}
.vjs-default-skin .vjs-menu-button ul li.vjs-selected {
  background-color: #000;
}
.vjs-default-skin .vjs-menu-button ul li:focus,
.vjs-default-skin .vjs-menu-button ul li:hover,
.vjs-default-skin .vjs-menu-button ul li.vjs-selected:focus,
.vjs-default-skin .vjs-menu-button ul li.vjs-selected:hover {
  outline: 0;
  color: #111;
  /* background-color-with-alpha */
  background-color: #ffffff;
  background-color: rgba(255, 255, 255, 0.75);
  /* box-shadow */
  -webkit-box-shadow: 0 0 1em #ffffff;
  -moz-box-shadow: 0 0 1em #ffffff;
  box-shadow: 0 0 1em #ffffff;
}
.vjs-default-skin .vjs-menu-button ul li.vjs-menu-title {
  text-align: center;
  text-transform: uppercase;
  font-size: 1em;
  line-height: 2em;
  padding: 0;
  margin: 0 0 0.3em 0;
  font-weight: bold;
  cursor: default;
}
/* Subtitles Button */
.vjs-default-skin .vjs-subtitles-button:before {
  content: "\e00c";
}
/* Captions Button */
.vjs-default-skin .vjs-captions-button:before {
  content: "\e008";
}
/* Chapters Button */
.vjs-default-skin .vjs-chapters-button:before {
  content: "\e00c";
}
.vjs-default-skin .vjs-chapters-button.vjs-menu-button .vjs-menu .vjs-menu-content {
  width: 24em;
  left: -12em;
}
/* Replacement for focus outline */
.vjs-default-skin .vjs-captions-button:focus .vjs-control-content:before,
.vjs-default-skin .vjs-captions-button:hover .vjs-control-content:before {
  /* box-shadow */
  -webkit-box-shadow: 0 0 1em #ffffff;
  -moz-box-shadow: 0 0 1em #ffffff;
  box-shadow: 0 0 1em #ffffff;
}
/*
REQUIRED STYLES (be careful overriding)
================================================================================
When loading the player, the video tag is replaced with a DIV,
that will hold the video tag or object tag for other playback methods.
The div contains the video playback element (Flash or HTML5) and controls,
and sets the width and height of the video.

** If you want to add some kind of border/padding (e.g. a frame), or special
positioning, use another containing element. Otherwise you risk messing up
control positioning and full window mode. **
*/
.video-js {
  background-color: #000;
  position: relative;
  padding: 0;
  /* Start with 10px for base font size so other dimensions can be em based and
     easily calculable. */
  font-size: 10px;
  /* Allow poster to be vertially aligned. */
  vertical-align: middle;
  /*  display: table-cell; */
  /*This works in Safari but not Firefox.*/
  /* Provide some basic defaults for fonts */
  font-weight: normal;
  font-style: normal;
  /* Avoiding helvetica: issue #376 */
  font-family: Arial, sans-serif;
  /* Turn off user selection (text highlighting) by default.
     The majority of player components will not be text blocks.
     Text areas will need to turn user selection back on. */
  /* user-select */
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
/* Playback technology elements expand to the width/height of the containing div
    <video> or <object> */
.video-js .vjs-tech {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* Fix for Firefox 9 fullscreen (only if it is enabled). Not needed when
   checking fullScreenEnabled. */
.video-js:-moz-full-screen {
  position: absolute;
}
/* Fullscreen Styles */
body.vjs-full-window {
  padding: 0;
  margin: 0;
  height: 100%;
  /* Fix for IE6 full-window. http://www.cssplay.co.uk/layouts/fixed.html */
  overflow-y: auto;
}
.video-js.vjs-fullscreen {
  position: fixed;
  overflow: hidden;
  z-index: 1000;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
  /* IE6 full-window (underscore hack) */
  _position: absolute;
}
.video-js:-webkit-full-screen {
  width: 100% !important;
  height: 100% !important;
}
.video-js.vjs-fullscreen.vjs-user-inactive {
  cursor: none;
}
/* Poster Styles */
.vjs-poster {
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  cursor: pointer;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.vjs-poster img {
  display: block;
  margin: 0 auto;
  max-height: 100%;
  padding: 0;
  width: 100%;
}
/* Hide the poster when native controls are used otherwise it covers them */
.video-js.vjs-using-native-controls .vjs-poster {
  display: none;
}
/* Text Track Styles */
/* Overall track holder for both captions and subtitles */
.video-js .vjs-text-track-display {
  text-align: center;
  position: absolute;
  bottom: 4em;
  /* Leave padding on left and right */
  left: 1em;
  right: 1em;
}
/* Move captions down when controls aren't being shown */
.video-js.vjs-user-inactive.vjs-playing .vjs-text-track-display {
  bottom: 1em;
}
/* Individual tracks */
.video-js .vjs-text-track {
  display: none;
  font-size: 1.4em;
  text-align: center;
  margin-bottom: 0.1em;
  /* Transparent black background, or fallback to all black (oldIE) */
  /* background-color-with-alpha */
  background-color: #000000;
  background-color: rgba(0, 0, 0, 0.5);
}
.video-js .vjs-subtitles {
  color: #fff /* Subtitles are white */;
}
.video-js .vjs-captions {
  color: #fc6 /* Captions are yellow */;
}
.vjs-tt-cue {
  display: block;
}
/* Increase font-size when fullscreen */
.video-js.vjs-fullscreen .vjs-text-track {
  font-size: 3em;
}
/* Hide disabled or unsupported controls */
.vjs-default-skin .vjs-hidden {
  display: none;
}
.vjs-lock-showing {
  display: block !important;
  opacity: 1;
  visibility: visible;
}
/*  In IE8 w/ no JavaScript (no HTML5 shim), the video tag doesn't register.
    The .video-js classname on the video tag also isn't considered.
    This optional paragraph inside the video tag can provide a message to users
    about what's required to play video. */
.vjs-no-js {
  padding: 20px;
  color: #ccc;
  background-color: #333;
  font-size: 18px;
  font-family: Arial, sans-serif;
  text-align: center;
  width: 300px;
  height: 150px;
  margin: 0px auto;
}
.vjs-no-js a,
.vjs-no-js a:visited {
  color: #F4A460;
}
.video-js .vjs-tech::-webkit-media-controls-start-playback-button {
  display: none !important;
  -webkit-appearance: none;
}
/* -----------------------------------------------------------------------------
The original source of this file lives at
https://github.com/videojs/video.js/blob/master/src/css/video-js.less */
.controls .mediatype {
  color: #F1F1F1;
  font-size: 14px;
  line-height: 14px;
  letter-spacing: 1px;
  position: absolute;
  top: 13px;
  right: 15px;
  opacity: 0;
  text-transform: capitalize;
  cursor: default;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out 0s;
  -moz-transition: opacity 0.3s ease-in-out 0s;
  -o-transition: opacity 0.3s ease-in-out 0s;
  transition: opacity 0.3s ease-in-out 0s;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.controls:hover .vjs-progress-control,
.controls.open .vjs-progress-control {
  opacity: 1;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out 0.6s;
  -moz-transition: opacity 0.3s ease-in-out 0.6s;
  -o-transition: opacity 0.3s ease-in-out 0.6s;
  transition: opacity 0.3s ease-in-out 0.6s;
}
.controls:hover .vjs-current-time,
.controls.open .vjs-current-time,
.controls:hover .vjs-time-divider,
.controls.open .vjs-time-divider,
.controls:hover .vjs-duration,
.controls.open .vjs-duration {
  opacity: 1;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out 0.6s;
  -moz-transition: opacity 0.3s ease-in-out 0.6s;
  -o-transition: opacity 0.3s ease-in-out 0.6s;
  transition: opacity 0.3s ease-in-out 0.6s;
}
.controls:hover .typeLabel,
.controls.open .typeLabel {
  opacity: 1;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out 0.6s;
  -moz-transition: opacity 0.3s ease-in-out 0.6s;
  -o-transition: opacity 0.3s ease-in-out 0.6s;
  transition: opacity 0.3s ease-in-out 0.6s;
}
/* Videojs Control Bar overrides
--------------------------------------------------------------------------------
The default control bar that is a container for most of the controls.
*/
.vjs-control-bar {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.mediaplayer .vjs-default-skin.vjs-has-started.vjs-user-inactive.vjs-playing .vjs-control-bar {
  display: none;
}
/* IE8 is flakey with fonts, and you have to change the actual content to force
fonts to show/hide properly.
  - "\9" IE8 hack didn't work for this
  - Found in XP IE8 from http://modern.ie. Does not show up in "IE8 mode" in IE9
*/
@media \0screen {
  .vjs-default-skin.vjs-user-inactive.vjs-playing .vjs-control-bar :before {
    content: "";
  }
}
/* General styles for individual controls. */
.vjs-control {
  outline: none;
  position: relative;
  float: left;
  text-align: center;
  margin: 0;
  padding: 0;
  height: 2.5em;
  width: 2.5em;
  color: white;
}
/* Font button icons */
.vjs-control:before {
  font-family: VideoJS;
  font-size: 1.2em;
  line-height: 2.2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
}
.vjs-control:focus {
  /*  outline: 0; */
  /* keyboard-only users cannot see the focus on several of the UI elements when
  this is set to 0 */
}
/* Hide control text visually, but have it available for screenreaders */
.vjs-control-text {
  /* hide-visually */
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
/* Play/Pause
--------------------------------------------------------------------------------
*/
.vjs-play-control {
  cursor: pointer;
}
.vjs-play-control:before {
  content: "\e001";
}
.vjs-play-control.vjs-playing:before {
  content: "\e002";
}
/* Playback toggle
--------------------------------------------------------------------------------
*/
.vjs-default-skin .vjs-playback-rate .vjs-playback-rate-value {
  font-size: 1.3em;
  line-height: 2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
}
.vjs-default-skin .vjs-playback-rate.vjs-menu-button .vjs-menu .vjs-menu-content {
  width: 4em;
  left: -2em;
  list-style: none;
}
/* Volume/Mute
-------------------------------------------------------------------------------- */
.vjs-default-skin .vjs-mute-control,
.vjs-default-skin .vjs-volume-menu-button {
  cursor: pointer;
  float: right;
}
.vjs-default-skin .vjs-mute-control:before,
.vjs-default-skin .vjs-volume-menu-button:before {
  content: "\e006";
}
.vjs-default-skin .vjs-mute-control.vjs-vol-0:before,
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-0:before {
  content: "\e003";
}
.vjs-default-skin .vjs-mute-control.vjs-vol-1:before,
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-1:before {
  content: "\e004";
}
.vjs-default-skin .vjs-mute-control.vjs-vol-2:before,
.vjs-default-skin .vjs-volume-menu-button.vjs-vol-2:before {
  content: "\e005";
}
.vjs-default-skin .vjs-volume-control {
  width: 5em;
  float: right;
}
.vjs-default-skin .vjs-volume-bar {
  width: 5em;
  height: 0.6em;
  margin: 1.1em auto 0;
}
.vjs-default-skin .vjs-volume-level {
  position: absolute;
  top: 0;
  left: 0;
  height: 0.5em;
  /* assuming volume starts at 1.0 */
  width: 100%;
  background: #1982c5 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAP0lEQVQIHWWMAQoAIAgDR/QJ/Ub//04+w7ZICBwcOg5FZi5iBB82AGzixEglJrd4TVK5XUJpskSTEvpdFzX9AB2pGziSQcvAAAAAAElFTkSuQmCC) -50% 0 repeat;
}
.vjs-default-skin .vjs-volume-bar .vjs-volume-handle {
  width: 0.5em;
  height: 0.5em;
  /* Assumes volume starts at 1.0. If you change the size of the
     handle relative to the volume bar, you'll need to update this value
     too. */
  left: 4.5em;
}
.vjs-default-skin .vjs-volume-handle:before {
  font-size: 0.9em;
  top: -0.2em;
  left: -0.2em;
  width: 1em;
  height: 1em;
}
/* The volume menu button is like menu buttons (captions/subtitles) but works
    a little differently. It needs to be possible to tab to the volume slider
    without hitting space bar on the menu button. To do this we're not using
    display:none to hide the slider menu by default, and instead setting the
    width and height to zero. */
.vjs-default-skin .vjs-volume-menu-button .vjs-menu {
  display: block;
  width: 0;
  height: 0;
  border-top-color: transparent;
}
.vjs-default-skin .vjs-volume-menu-button .vjs-menu .vjs-menu-content {
  height: 0;
  width: 0;
}
.vjs-default-skin .vjs-volume-menu-button:hover .vjs-menu,
.vjs-default-skin .vjs-volume-menu-button .vjs-menu.vjs-lock-showing {
  border-top-color: rgba(7, 40, 50, 0.5);
  /* Same as ul background */
}
.vjs-default-skin .vjs-volume-menu-button:hover .vjs-menu .vjs-menu-content,
.vjs-default-skin .vjs-volume-menu-button .vjs-menu.vjs-lock-showing .vjs-menu-content {
  height: 2.9em;
  width: 10em;
}
/* Progress
--------------------------------------------------------------------------------
*/
.vjs-progress-control {
  opacity: 0;
  position: absolute;
  left: 2.5em;
  width: 250px;
  height: .8em;
  top: .9em;
  background-color: #4e4e4e;
  cursor: pointer;
  /* Shrink the bar slower than it grows. */
  /* transition */
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
}
/* On hover, make the progress bar grow to something that's more clickable.
    This simply changes the overall font for the progress bar, and this
    updates both the em-based widths and heights, as wells as the icon font */
.vjs-default-skin:hover .vjs-progress-control {
  font-size: .9em;
  /* Even though we're not changing the top/height, we need to include them in
      the transition so they're handled correctly. */
  /* transition */
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}
/* Box containing play and load progresses. Also acts as seek scrubber. */
.vjs-progress-holder {
  height: 100%;
}
/* Progress Bars */
.vjs-progress-holder .vjs-play-progress,
.vjs-progress-holder .vjs-load-progress,
.vjs-progress-holder .vjs-load-progress div {
  position: absolute;
  display: block;
  height: 100%;
  margin: 0;
  padding: 0;
  /* updated by javascript during playback */
  width: 0;
  /* Needed for IE6 */
  left: 0;
  top: 0;
}
.vjs-play-progress {
  background-color: #1982c5;
}
.vjs-load-progress {
  background: #646464 /* IE8- Fallback */;
  background: rgba(255, 255, 255, 0.2);
}
/* there are child elements of the load progress bar that represent the
   specific time ranges that have been buffered */
.vjs-load-progress div {
  background: #787878 /* IE8- Fallback */;
  background: rgba(255, 255, 255, 0.1);
}
.vjs-seek-handle {
  position: absolute;
  width: 3px;
  height: 100%;
  background-color: white;
}
.vjs-seek-handle:before {
  padding-top: 0.1em /* Minor adjustment */;
}
/* Time Display
--------------------------------------------------------------------------------
*/
.vjs-time-controls {
  font-size: .9em;
  line-height: 2.9em;
}
.vjs-current-time {
  opacity: 0;
  position: absolute;
  left: 20.8em;
}
.vjs-time-divider {
  opacity: 0;
  line-height: 2.7em;
  position: absolute;
  left: 21.2em;
  color: white;
}
.vjs-duration {
  opacity: 0;
  line-height: 2.8em;
  position: absolute;
  left: 24.2em;
  color: white;
}
.vjs-duration {
  float: left;
}
/* Remaining time is in the HTML, but not included in default design */
.vjs-remaining-time {
  display: none;
  float: left;
}
.vjs-time-divider {
  float: left;
}
/* Type Label
--------------------------------------------------------------------------------
*/
.typeLabel {
  opacity: 0;
  font-size: .9em;
  line-height: 2.9em;
  position: absolute;
  left: 27.3em;
}
.typeLabel span {
  color: white;
}
/* Hide Elements
--------------------------------------------------------------------------------
*/
.vjs-live-controls,
.vjs-fullscreen-control,
.vjs-playback-rate,
.vjs-volume-control,
.vjs-mute-control,
.vjs-big-play-button {
  display: none;
}
.mediaplayer {
  position: absolute;
  width: 100%;
  height: 100%;
}
.video-js .vjs-tech,
.vjs-poster {
  z-index: 5;
}
.mobile.ios7 .video-js .vjs-tech {
  width: 1px;
  height: 1px;
  bottom: 0;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .vjs-progress-control {
    width: 130px;
  }
  .vjs-current-time {
    left: 12.5em;
  }
  .vjs-time-divider {
    left: 13.5em;
  }
  .vjs-duration {
    left: 15.4em;
  }
  .typeLabel {
    left: 18.4em;
  }
}
/**
 *
 * Logo Styles
 * 
 */
nav > div.brand {
  display: none;
}
body > div.brand {
  position: fixed;
  top: 10px;
  right: 7px;
  z-index: 11;
}
body > div.brand a.logo {
  display: inline-block;
}
body > div.brand a.logo img {
  width: 30px;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
body > div.brand a.logo.scaled img {
  width: 60px;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
body > div.brand a.logo .tooltip {
  height: 0;
  position: absolute;
  right: 20px;
  top: 0px;
  opacity: 0;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
body > div.brand a.logo .tooltip p {
  margin: 0;
  font-size: 12px;
  color: #F1F1F1;
  letter-spacing: 1px;
  text-align: center;
  background-color: #4E4E4E;
  padding: 8px;
  white-space: nowrap;
  border-radius: 4px;
}
body > div.brand a.logo:hover .tooltip {
  opacity: 1;
  right: 50px;
  height: auto;
}
body > div.brand a.logo:hover .tooltip .arrow {
  width: 0;
  height: 0;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 6px solid #4E4E4E;
  float: right;
  margin: -23px -6px 0 0;
}
/**
 * 
 * Navigation Bar Styles 
 * 
 */
nav {
  width: 240px;
  height: 100%;
  opacity: 1;
  background-color: rgba(43, 43, 44, 0.75);
  position: absolute;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -ms-flex-align: center;
  right: 0;
  z-index: 10;
  /* transform */
  -webkit-transform: translate3d(194px, 0, 0);
  -moz-transform: translate3d(194px, 0, 0);
  -ms-transform: translate3d(194px, 0, 0);
  -o-transform: translate3d(194px, 0, 0);
  transform: translate3d(194px, 0, 0);
  -webkit-transition: all 0.3s ease-in-out 0.3s, background-color 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s, background-color 0.3s ease-in-out 0.3s;
  /* ### MENU ### */
}
nav.visible {
  /* transform */
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  background-color: rgba(43, 43, 44, 0.95);
  -webkit-transition: all 0.3s ease-in-out, background-color 0.3s ease-in-out;
  transition: all 0.3s ease-in-out, background-color 0.3s ease-in-out;
}
nav.disabled {
  opacity: 0;
  /* transform */
  -webkit-transform: translate3d(1000px, 0, 0);
  -moz-transform: translate3d(1000px, 0, 0);
  -ms-transform: translate3d(1000px, 0, 0);
  -o-transform: translate3d(1000px, 0, 0);
  transform: translate3d(1000px, 0, 0);
}
nav #btn-open {
  display: none;
}
nav #chapters {
  margin: auto;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
nav #chapters > li {
  width: 240px;
  max-height: 30px;
  overflow: hidden;
  display: inline-block;
  cursor: pointer;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
nav #chapters > li:before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 5px;
  border: 1px solid #F1F1F1;
  position: absolute;
  left: 20px;
  margin-top: 10px;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
nav #chapters > li.hidechapter {
  display: none;
}
nav #chapters > li > a {
  display: block;
  text-decoration: none;
  padding-left: 50px;
  height: 100%;
  opacity: 0;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out 0s;
  -moz-transition: opacity 0.3s ease-in-out 0s;
  -o-transition: opacity 0.3s ease-in-out 0s;
  transition: opacity 0.3s ease-in-out 0s;
}
nav #chapters > li > a:before {
  content: '';
  width: 0px;
  height: 0px;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 10px solid rgba(43, 43, 44, 0.95);
  position: absolute;
  left: -9px;
  margin-top: 25px;
  display: none;
  z-index: 20;
}
nav #chapters > li h2 {
  color: #0082C6;
  font-size: 12px;
  line-height: 12px;
  padding: 10px 0 4px 0;
  font-weight: normal;
  letter-spacing: 1px;
}
nav #chapters > li h1 {
  color: #EDECE9;
  font-size: 14px;
  line-height: 17px;
  padding: 0 10px 4px 0;
  font-weight: normal;
  letter-spacing: 1px;
}
nav #chapters > li.active:before {
  background-color: #F1F1F1;
}
nav.visible #chapters > li {
  max-height: 500px;
  /* transition */
  -webkit-transition: max-height 1s ease-in-out 0s;
  -moz-transition: max-height 1s ease-in-out 0s;
  -o-transition: max-height 1s ease-in-out 0s;
  transition: max-height 1s ease-in-out 0s;
}
nav.visible #chapters > li:before {
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
nav.visible #chapters > li > a {
  opacity: 1;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out 0.3s;
  -moz-transition: opacity 0.3s ease-in-out 0.3s;
  -o-transition: opacity 0.3s ease-in-out 0.3s;
  transition: opacity 0.3s ease-in-out 0.3s;
}
nav.visible #chapters > li:not(.nosubnav).visible .sub {
  visibility: visible;
  opacity: 1;
}
nav.visible #chapters > li:not(.nosubnav).visible a:before {
  display: block;
}
nav div.sub {
  position: absolute;
  top: 0;
  height: 100%;
  list-style: none;
  width: 260px;
  margin-left: -260px;
  visibility: hidden;
  opacity: 0;
  z-index: 10;
  background-color: rgba(78, 78, 78, 0.95);
}
nav div.sub ul {
  position: relative;
  top: 50%;
  /* transform */
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}
nav div.sub ul li {
  width: 100%;
  margin-top: 20px;
  padding: 5px 20px 0;
  overflow: hidden;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
nav div.sub ul li > a {
  text-decoration: none;
  color: #F1F1F1;
  font-size: 14px;
  line-height: 17px;
  font-weight: normal;
  letter-spacing: 1px;
  display: inline-block;
  width: 100%;
  height: 100%;
}
nav div.sub ul li > a .linius-icon-small {
  display: inline-block;
}
nav div.sub ul li > a span {
  overflow: hidden;
  display: block;
}
nav div.sub ul li:hover a {
  color: #0082C6;
}
nav div.sub ul li.active a {
  color: #0082C6;
}
nav div.sub ul li:before {
  display: none;
}
nav menu {
  width: 250px;
  height: 40px;
  position: absolute;
  bottom: 0;
  left: 0;
}
nav menu:after {
  content: ' ';
  display: block;
  clear: both;
}
nav menu #more {
  cursor: pointer;
  display: inline;
  float: right;
  padding-right: 2em;
}
nav menu #more .tooltip {
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  bottom: 65px;
  left: 137px;
  z-index: 11;
  cursor: default;
  /* transition */
  -webkit-transition: all 0s ease-in-out 0s;
  -moz-transition: all 0s ease-in-out 0s;
  -o-transition: all 0s ease-in-out 0s;
  transition: all 0s ease-in-out 0s;
}
nav menu #more .tooltip p {
  line-height: 12px;
  font-size: 12px;
  color: #F1F1F1;
  letter-spacing: 1px;
  text-align: center;
  background-color: #4E4E4E;
  padding: 10px;
  border-radius: 4px;
  margin-bottom: 0;
}
nav menu #more .tooltip .arrow {
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #4E4E4E;
  margin-left: 75%;
  margin-left: calc(79%);
}
nav menu #more a {
  text-decoration: none;
}
nav menu #more:hover {
  color: #969696;
}
nav menu #more:hover .tooltip {
  opacity: 1;
  visibility: visible;
  bottom: 53px;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
nav menu #more .icon-info {
  color: white;
}
nav menu #more .icon-info:hover {
  color: white;
}
nav menu #copyright {
  cursor: pointer;
  display: inline;
  float: right;
  padding-right: 1.2em;
}
nav menu #copyright .tooltip {
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  bottom: 65px;
  left: 94px;
  z-index: 11;
  cursor: default;
  /* transition */
  -webkit-transition: all 0s ease-in-out 0s;
  -moz-transition: all 0s ease-in-out 0s;
  -o-transition: all 0s ease-in-out 0s;
  transition: all 0s ease-in-out 0s;
}
nav menu #copyright .tooltip p {
  line-height: 12px;
  font-size: 12px;
  color: #F1F1F1;
  letter-spacing: 1px;
  text-align: center;
  background-color: #4E4E4E;
  padding: 10px;
  border-radius: 4px;
  margin-bottom: 0;
}
nav menu #copyright .tooltip .arrow {
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #4E4E4E;
  margin-left: 75%;
  margin-left: calc(79%);
}
nav menu #copyright a {
  text-decoration: none;
  color: white;
  line-height: 1.2;
  font-size: 19px;
}
nav menu #copyright:hover {
  color: #969696;
}
nav menu #copyright:hover .tooltip {
  opacity: 1;
  visibility: visible;
  bottom: 53px;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
nav menu #copyright .icon-info {
  color: white;
}
nav menu #copyright .icon-info:hover {
  color: white;
}
nav menu #callfullscreen {
  float: right;
  padding-right: 20px;
  cursor: pointer;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
nav menu #callfullscreen .tooltip {
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  bottom: 65px;
  left: 135px;
  z-index: 11;
  cursor: default;
  /* transition */
  -webkit-transition: all 0s ease-in-out 0s;
  -moz-transition: all 0s ease-in-out 0s;
  -o-transition: all 0s ease-in-out 0s;
  transition: all 0s ease-in-out 0s;
}
nav menu #callfullscreen .tooltip p {
  line-height: 12px;
  font-size: 12px;
  color: #F1F1F1;
  letter-spacing: 1px;
  text-align: center;
  background-color: #4E4E4E;
  padding: 10px;
  border-radius: 4px;
  margin-bottom: 0;
}
nav menu #callfullscreen .tooltip .arrow {
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #4E4E4E;
  margin-left: 65%;
  margin-left: calc(69%);
}
nav menu #callfullscreen .icon-resize-full {
  color: white;
}
nav menu #callfullscreen .icon-resize-full:hover {
  color: white;
}
nav menu #closefullscreen {
  display: none;
}
nav menu #volume {
  width: 30px;
  height: 20px;
  cursor: pointer;
  margin-left: 8px;
  float: left;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
nav menu #volume .balken {
  width: 4px;
  background-color: #F1F1F1;
  float: left;
  margin-right: 1px;
}
nav menu #volume .balken:nth-child(1) {
  margin-top: 18px;
  height: 2px;
}
nav menu #volume .balken:nth-child(2) {
  margin-top: 15px;
  height: 5px;
}
nav menu #volume .balken:nth-child(3) {
  margin-top: 12px;
  height: 8px;
}
nav menu #volume .balken:nth-child(4) {
  margin-top: 9px;
  height: 11px;
}
nav menu #volume .balken:nth-child(5) {
  margin-top: 6px;
  height: 14px;
}
nav menu #volume .balken:nth-child(6) {
  margin-top: 3px;
  height: 17px;
}
nav menu #volume:hover .balken {
  margin-top: 3px;
  height: 17px;
  /* transition */
  -webkit-transition: all 0.1s ease-in-out 0.1s;
  -moz-transition: all 0.1s ease-in-out 0.1s;
  -o-transition: all 0.1s ease-in-out 0.1s;
  transition: all 0.1s ease-in-out 0.1s;
}
nav menu #volume:hover .balken:hover {
  margin-top: 0;
  height: 20px;
  background-color: #969696;
}
nav menu #volume:hover .tooltip {
  opacity: 1;
  visibility: visible;
  bottom: 53px;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
nav menu #volume .active {
  background-color: #0082C6;
}
nav menu #volume .tooltip {
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  bottom: 65px;
  left: -40px;
  z-index: 11;
  cursor: default;
  /* transition */
  -webkit-transition: all 0s ease-in-out 0s;
  -moz-transition: all 0s ease-in-out 0s;
  -o-transition: all 0s ease-in-out 0s;
  transition: all 0s ease-in-out 0s;
}
nav menu #volume .tooltip p {
  line-height: 12px;
  font-size: 12px;
  color: #F1F1F1;
  letter-spacing: 1px;
  text-align: center;
  background-color: #4E4E4E;
  padding: 10px;
  border-radius: 4px;
  margin-bottom: 0;
}
nav menu #volume .tooltip .arrow {
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #4E4E4E;
  margin-left: 75%;
  margin-left: calc(79%);
}
nav.visible menu #volume {
  margin-left: 20px;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
nav.visible menu #callfullscreen,
nav:hover menu #closefullscreen {
  -webkit-transition: all 0.3s ease-in-out 0.1s, color 0.2s;
  transition: all 0.3s ease-in-out 0.1s, color 0.2s;
}
nav.visible menu #callfullscreen:hover,
nav:hover menu #closefullscreen:hover {
  color: #969696;
}
nav.visible menu #callfullscreen:hover .tooltip,
nav:hover menu #closefullscreen:hover .tooltip {
  opacity: 1;
  visibility: visible;
  bottom: 53px;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
@media only screen and (max-width: 1024px) {
  #more .tooltip {
    overflow: hidden;
    visibility: hidden;
    opacity: 0;
    position: absolute;
    bottom: 65px;
    left: 131px;
    z-index: 11;
    cursor: default;
    /* transition */
    -webkit-transition: all 0s ease-in-out 0s;
    -moz-transition: all 0s ease-in-out 0s;
    -o-transition: all 0s ease-in-out 0s;
    transition: all 0s ease-in-out 0s;
  }
  #more .tooltip p {
    line-height: 12px;
    font-size: 12px;
    color: #F1F1F1;
    letter-spacing: 1px;
    text-align: center;
    background-color: #4E4E4E;
    padding: 10px;
    border-radius: 4px;
    margin-bottom: 0;
  }
  #more .tooltip .arrow {
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #4E4E4E;
    margin-left: 40%;
    margin-left: calc(44%);
  }
  #volume,
  #callfullscreen,
  #closefullscreen {
    display: none;
  }
}
.tooltip-visible .tooltip {
  opacity: 1;
  visibility: visible;
  bottom: 53px;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  body > div.brand {
    display: none;
  }
  nav {
    width: 100%;
    height: 80px;
    background-color: rgba(43, 43, 44, 0.95);
    position: absolute;
    display: block;
    left: 0;
    z-index: 10;
    background-color: transparent;
    overflow-y: hidden;
    overflow-x: hidden;
    /* transform */
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transition: height 0.3s ease-in-out, background-color 0.3s ease-in-out;
    transition: height 0.3s ease-in-out, background-color 0.3s ease-in-out;
    /* ### MENU ### */
  }
  nav.visible {
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    background-color: rgba(43, 43, 44, 0.95);
    -webkit-transition: height 0.3s ease-in-out, background-color 0.3s ease-in-out;
    transition: height 0.3s ease-in-out, background-color 0.3s ease-in-out;
  }
  nav > div.brand {
    display: block;
  }
  nav > div.brand .logo img {
    opacity: .5;
    width: 30px;
    position: absolute;
    top: 42px;
    left: 30px;
    /* transition */
    -webkit-transition: all 0.3s ease-in-out 0.3s;
    -moz-transition: all 0.3s ease-in-out 0.3s;
    -o-transition: all 0.3s ease-in-out 0.3s;
    transition: all 0.3s ease-in-out 0.3s;
  }
  nav > div.brand .logo .tooltip {
    display: none;
  }
  nav #btn-open {
    display: block;
    height: 50px;
    width: 50px;
    position: absolute;
    right: 30px;
    top: 30px;
    z-index: 15;
    background: transparent url('../img/menu_btn.png') 0 0 no-repeat;
  }
  nav #chapters {
    display: block;
    margin: auto;
    margin-top: -9999px;
    width: 100%;
    opacity: 0;
    /* transition */
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
  }
  nav #chapters > li {
    width: 100%;
    height: 100%;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    background: transparent url('../img/menu-arrow-down.png') top 15px right 40px no-repeat;
    /* transition */
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
  }
  nav #chapters > li .arrow {
    clear: both;
  }
  nav #chapters > li.in {
    background-image: url('../img/menu-arrow-up.png');
  }
  nav #chapters > li.nosubnav {
    background-image: none;
  }
  nav #chapters > li > a {
    opacity: 0;
    height: 100%;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
    padding-top: 10px;
    padding-left: 0px;
    /* transition */
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
  }
  nav #chapters > li > a:first-child {
    border-top: 1px solid rgba(255, 255, 255, 0.5);
  }
  nav #chapters > li > a:active,
  nav #chapters > li > a:hover,
  nav #chapters > li > a:focus {
    text-decoration: none;
  }
  nav #chapters > li > a h2 {
    height: 12px;
    float: left;
    color: #0082C6;
    font-size: 12px;
    line-height: 18px;
    padding: 0;
    padding-left: 30px;
    position: relative;
    font-weight: normal;
    letter-spacing: 1px;
    opacity: 0;
    /* transition */
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
  }
  nav #chapters > li > a h1 {
    width: 45%;
    height: 100%;
    color: #EDECE9;
    font-size: 14px;
    line-height: 18px;
    padding: 0;
    position: relative;
    margin: 0px;
    margin-left: 110px;
    margin-bottom: 10px;
    font-weight: normal;
    letter-spacing: 1px;
    opacity: 0;
    /* transition */
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
  }
  nav #chapters > li > a h1:after {
    content: '';
  }
  nav #chapters > li:before {
    display: none;
  }
  nav #chapters > li.active:before {
    background-color: #F1F1F1;
  }
  nav.visible #chapters {
    width: 100%;
    margin-top: 135px;
    opacity: 1;
    /* transition */
    -webkit-transition: opacity 0.3s ease-in-out 0.3s;
    -moz-transition: opacity 0.3s ease-in-out 0.3s;
    -o-transition: opacity 0.3s ease-in-out 0.3s;
    transition: opacity 0.3s ease-in-out 0.3s;
  }
  nav.visible #chapters > li {
    width: 100%;
    height: 100%;
    display: inline-block;
    /* transition */
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
  }
  nav.visible #chapters > li a {
    display: block;
    opacity: 1;
    /* transition */
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
  }
  nav.visible #chapters > li:before {
    margin-top: 30px;
    /* transition */
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
  }
  nav.visible #chapters > li h1,
  nav.visible #chapters > li h2 {
    opacity: 1;
    /* transition */
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
  }
  nav.visible #chapters > li:hover a,
  nav.visible #chapters > li h1.active a {
    color: #969696;
  }
  nav.visible #chapters > li .arrow {
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 10px solid #2B2B2C;
    position: absolute;
    left: -9px;
    margin-top: 25px;
    display: none;
    z-index: 20;
  }
  nav.visible #chapters > li:not(.nosubnav).visible .sub {
    visibility: visible;
    opacity: 1;
  }
  nav.visible #chapters > li:not(.nosubnav).visible .arrow {
    display: none;
  }
  nav div.sub {
    position: relative;
    list-style: none;
    width: 100%;
    margin: 0px;
    background-color: transparent;
    visibility: visible;
    opacity: 0;
    z-index: 10;
    /* transition */
    -webkit-transition: none;
    -moz-transition: none;
    -o-transition: none;
    transition: none;
  }
  nav div.sub.collapse {
    overflow: hidden;
    height: 0;
    /* transition */
    -webkit-transition: height 0.35s ease-in-out 0s;
    -moz-transition: height 0.35s ease-in-out 0s;
    -o-transition: height 0.35s ease-in-out 0s;
    transition: height 0.35s ease-in-out 0s;
  }
  nav div.sub ul {
    position: relative;
    top: 10px;
    /* transform */
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
  }
  nav div.sub ul li {
    display: block;
    width: 100%;
    margin-bottom: 10px;
    padding: 0;
    padding-left: 30px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  nav div.sub ul li h3 {
    width: 90%;
    max-width: 700px;
    height: 30px;
    color: #F1F1F1;
    font-size: 14px;
    line-height: 17px;
    font-weight: normal;
    letter-spacing: 1px;
    display: inline-block;
    float: left;
  }
  nav div.sub ul li h3 > span {
    overflow: hidden;
    display: block;
    padding-top: 8px;
  }
  nav div.sub ul li:hover h3 {
    color: #DBD9D3;
  }
  nav div.sub ul li.active h3 {
    color: #0082C6;
  }
  nav div.sub ul li:before {
    display: none;
  }
  nav menu {
    display: block;
    width: 140px;
    height: 30px;
    position: absolute;
    top: 105px;
    left: 20px;
    /* transition */
    -webkit-transition: all 0.3s ease-in-out 0.3s;
    -moz-transition: all 0.3s ease-in-out 0.3s;
    -o-transition: all 0.3s ease-in-out 0.3s;
    transition: all 0.3s ease-in-out 0.3s;
  }
  nav menu #copyright {
    float: left;
  }
  nav menu #more {
    float: left;
    padding-left: .7em;
  }
  nav menu #more .tooltip {
    display: none;
  }
  nav.visible menu {
    background-color: transparent;
    width: 140px;
    height: 30px;
    right: 0px;
    /* transition */
    -webkit-transition: all 0.3s ease-in-out 0s;
    -moz-transition: all 0.3s ease-in-out 0s;
    -o-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
  }
  nav.visible menu > ul {
    top: 0px;
    left: 0px;
    /* transition */
    -webkit-transition: all 0.3s ease-in-out 0s;
    -moz-transition: all 0.3s ease-in-out 0s;
    -o-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
  }
  .ios8 nav {
    height: 100px;
  }
  .ios8 nav.visible {
    height: 100%;
  }
  .ios8 nav > div.brand .logo {
    top: 62px;
  }
  .ios8 nav #btn-open {
    height: 70px;
    top: 50px;
  }
  .ios8 nav.visible #chapters {
    margin-top: 155px;
  }
  .ios8 nav menu {
    top: 125px;
  }
  .ios8 nav .social-sharing {
    top: 118px;
  }
}
section.notification article {
  z-index: 10;
}
section.notification article header .chapter {
  text-transform: none;
  font-size: 16px;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  margin-bottom: 12px;
}
section.notification article header .title {
  text-transform: none;
  font-size: 40px;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  margin-bottom: 23px;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.notification article {
    position: absolute;
    left: 80px;
    max-width: 65%;
    min-width: 200px;
    overflow: hidden;
    /* transform */
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-backface-visibility: hidden;
  }
  section.notification article > div {
    /* transition */
    -webkit-transition: 0ms cubic-bezier(0.1, 0.57, 0.1, 1);
    -moz-transition: 0ms cubic-bezier(0.1, 0.57, 0.1, 1);
    -o-transition: 0ms cubic-bezier(0.1, 0.57, 0.1, 1);
    transition: 0ms cubic-bezier(0.1, 0.57, 0.1, 1);
  }
}
@media only screen and (min-width: 320px) and (max-width: 568px) and (orientation: portrait) {
  section.notification article {
    left: 30px;
    max-width: 85%;
  }
}
section.notification article.scrollable.disabled {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
section.notification article.scrollable.disabled.left-top {
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -ms-flex-align: flex-start;
}
section.notification article.scrollable.disabled.left-center {
  -webkit-align-items: center;
  align-items: center;
  -ms-flex-align: center;
}
section.notification article.scrollable.disabled.left-bottom {
  -webkit-align-items: flex-end;
  align-items: flex-end;
  -ms-flex-align: flex-end;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.notification article.scrollable {
    top: 0;
    overflow: hidden;
    height: 100%;
    width: 80%;
  }
  section.notification article.scrollable::-webkit-scrollbar {
    display: none;
  }
  section.notification article.scrollable > div {
    padding: 100px 0;
  }
}
section.notification .fade {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #000000;
  opacity: 0;
  z-index: 8;
  /* transition */
  -webkit-transition: opacity 0.3s ease-out;
  -moz-transition: opacity 0.3s ease-out;
  -o-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}
section.notification .fade.visible {
  opacity: .5;
}
.notify-area {
  /* transform */
  -webkit-transform: translate3d(0, -150px, 0);
  -moz-transform: translate3d(0, -150px, 0);
  -ms-transform: translate3d(0, -150px, 0);
  -o-transform: translate3d(0, -150px, 0);
  transform: translate3d(0, -150px, 0);
  position: absolute;
  top: 20px;
  right: 15%;
  height: 99px;
  width: 335px;
  border-radius: 5px;
  overflow: hidden;
  z-index: 10;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -moz-transition: -moz-transform 0.7s cubic-bezier(0.68, -0.55, 0.265, 1.55) 0.3s, height 0.3s ease-in-out 0.3s;
  -o-transition: -o-transform 0.7s cubic-bezier(0.68, -0.55, 0.265, 1.55) 0.3s, height 0.3s ease-in-out 0.3s;
  -webkit-transition: -webkit-transform 0.7s cubic-bezier(0.68, -0.55, 0.265, 1.55) 0.3s, height 0.3s ease-in-out 0.3s;
  transition: transform 0.7s cubic-bezier(0.68, -0.55, 0.265, 1.55) 0.3s, height 0.3s ease-in-out 0.3s;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .notify-area {
    bottom: 0;
    width: 100%;
    display: inline-block;
    top: auto;
    left: 0;
    height: auto;
    overflow: visible;
    border-radius: 0;
    /* transform */
    -webkit-transform: translate3d(0, 100vw, 0);
    -moz-transform: translate3d(0, 100vw, 0);
    -ms-transform: translate3d(0, 100vw, 0);
    -o-transform: translate3d(0, 100vw, 0);
    transform: translate3d(0, 100vw, 0);
  }
}
.notify-area.visible {
  /* transform */
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .notify-area.visible {
    /* transform */
    -webkit-transform: translate3d(0, 170px, 0);
    -moz-transform: translate3d(0, 170px, 0);
    -ms-transform: translate3d(0, 170px, 0);
    -o-transform: translate3d(0, 170px, 0);
    transform: translate3d(0, 170px, 0);
  }
  .notify-area.visible.single {
    /* transform */
    -webkit-transform: translate3d(0, 85px, 0);
    -moz-transform: translate3d(0, 85px, 0);
    -ms-transform: translate3d(0, 85px, 0);
    -o-transform: translate3d(0, 85px, 0);
    transform: translate3d(0, 85px, 0);
  }
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .notify-area.open {
    /* transform */
    -webkit-transform: translate3d(0, 0, 0) !important;
    -moz-transform: translate3d(0, 0, 0) !important;
    -ms-transform: translate3d(0, 0, 0) !important;
    -o-transform: translate3d(0, 0, 0) !important;
    transform: translate3d(0, 0, 0) !important;
  }
}
.notify-area:before {
  content: '';
  margin-left: 48%;
  width: 0;
  height: 0;
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
  border-bottom: 14px solid rgba(43, 43, 44, 0.8);
  display: block;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .notify-area:before {
    display: none;
  }
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .notify-area .notify-wrapper {
    max-height: 170px;
    overflow: auto;
  }
}
.notify-area a.notify {
  text-decoration: none;
  cursor: pointer;
}
.notify-area a.notify:not(.intro):hover,
.notify-area a.notify.open {
  text-decoration: none;
  cursor: pointer;
  background-color: rgba(255, 255, 255, 0.8);
}
.notify-area .notify {
  position: relative;
  display: block;
}
.notify-area .notify:nth-child(even) {
  background-color: rgba(98, 98, 98, 0.8);
}
.notify-area .notify:nth-child(odd) {
  background-color: rgba(77, 77, 77, 0.8);
}
.notify-area .notify:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
.notify-area .notify.intro {
  background-color: rgba(43, 43, 44, 0.8);
  border-top-right-radius: 5px;
  border-top-left-radius: 5px;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .notify-area .notify.intro {
    border-radius: 0;
  }
}
.notify-area .notify.intro .toggle {
  position: absolute;
  right: 13px;
  bottom: 13px;
  width: 26px;
  height: 13px;
  background: transparent url('../img/notification-arrows.png') 0 0 no-repeat;
  -moz-transition: all 0.2s ease-in-out 0.2s;
  -o-transition: all 0.2s ease-in-out 0.2s;
  -webkit-transition: all 0.2s ease-in-out 0.2s;
  transition: all 0.2s ease-in-out 0.2s;
}
.notify-area .notify.intro .title {
  font-size: 19px;
}
.notify-area.open .toggle {
  /* transform */
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
.notify-area .notify .icon {
  width: 75px;
  height: 85px;
  position: relative;
  float: left;
  border-top-left-radius: 5px;
  /* Back Pulse */
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .notify-area .notify .icon {
    border-radius: 0;
  }
}
.notify-area .notify .icon .mail {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -19px;
  margin-top: -23px;
  width: 38px;
  height: 39px;
  background: transparent url('../img/icon-mail.png') 0 0 no-repeat;
}
@-webkit-keyframes hvr-back-pulse {
  50% {
    background-color: rgba(255, 0, 0, 0.65);
  }
}
@keyframes hvr-back-pulse {
  50% {
    background-color: rgba(255, 0, 0, 0.65);
  }
}
.notify-area .notify .icon .jewel-count {
  position: absolute;
  right: -8px;
  top: 4px;
  display: block;
  background-color: red;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  color: white;
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  -webkit-animation-name: hvr-back-pulse;
  animation-name: hvr-back-pulse;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  opacity: 1;
  /* transition */
  -webkit-transition: opacity 0.3s ease-out;
  -moz-transition: opacity 0.3s ease-out;
  -o-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}
.notify-area .notify .icon .jewel-count.hidden {
  opacity: 0;
}
.notify-area a.notify:not(.intro):hover .icon .mail {
  background-position: -38px 0;
}
.notify-area a.notify.open .icon .mail {
  background-position: -76px 0 !important;
}
.notify-area .notify.intro .icon {
  background-color: #0082c6;
}
.notify-area .notify .teaser {
  padding-top: 20px;
  padding-left: 93.5px;
  color: white;
  letter-spacing: normal;
}
.notify-area .notify .teaser h5 {
  font-size: 14px;
}
.notify-area .notify .teaser .content {
  font-size: 13px;
}
.notify-area .notify .teaser .date {
  position: absolute;
  right: 10px;
  top: 9px;
  font-size: 11px;
}
.notify-area a.notify:not(.intro):hover .teaser,
.notify-area a.notify.open .teaser {
  color: black;
}
.notify-area .notify.intro .teaser {
  padding-top: 15px;
}
.slider {
  left: 0;
  top: 5%;
  position: absolute;
  height: 90%;
  left: 15%;
  z-index: 9;
  opacity: 0;
  /* transition */
  -webkit-transition: opacity 0.3s ease-out;
  -moz-transition: opacity 0.3s ease-out;
  -o-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .slider {
    top: 15%;
    left: 0;
    width: 100%;
    height: 60%;
  }
}
.slider.visible {
  opacity: 1;
  overflow: visible !important;
}
.slider .slider-wrapper {
  cursor: move;
  height: 100%;
  width: 100%;
}
.slider img {
  height: 100%;
  /* transition */
  -webkit-transition: transform 0.6s ease-out;
  -moz-transition: transform 0.6s ease-out;
  -o-transition: transform 0.6s ease-out;
  transition: transform 0.6s ease-out;
  -webkit-transition: -webkit-transform 0.6s ease-out;
}
.slider img.zoom {
  /* transform */
  -webkit-transform: scale(1.5);
  -moz-transform: scale(1.5);
  -ms-transform: scale(1.5);
  -o-transform: scale(1.5);
  transform: scale(1.5);
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .slider img.zoom {
    /* transform */
    -webkit-transform: scale(2);
    -moz-transform: scale(2);
    -ms-transform: scale(2);
    -o-transform: scale(2);
    transform: scale(2);
  }
}
.slider .pager {
  text-align: center;
  width: 100%;
  position: absolute;
  top: -30px;
  overflow: hidden;
  z-index: 100;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .slider .pager {
    display: none;
  }
}
.slider .pager span {
  width: 10px;
  height: 10px;
  border: 1px solid white;
  border-radius: 10px;
  display: inline-block;
  cursor: pointer;
  color: transparent;
  margin-top: 10px;
  margin-left: 3px;
  margin-right: 3px;
}
.slider .pager span.cycle-pager-active {
  background-color: white;
}
.slider .pager > * {
  cursor: pointer;
}
.slider .nav {
  position: absolute;
  top: 50%;
  margin-top: -21px;
  width: 25px;
  height: 42px;
  background: transparent url('../img/notification-slider-arrows.png') 0 0 no-repeat;
  z-index: 100;
  cursor: pointer;
  opacity: 0;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out;
  -moz-transition: opacity 0.3s ease-in-out;
  -o-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
.slider .nav.prev {
  left: -50px;
  background-position: 0 0;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .slider .nav.prev {
    left: 10px;
  }
}
.slider .nav.next {
  right: -50px;
  background-position: -25px 0;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  .slider .nav.next {
    right: 10px;
  }
}
.slider .nav.visible {
  opacity: 1;
}
section.panorama {
  cursor: pointer;
}
section.panorama:active {
  cursor: move;
}
section.panorama .panorama-navigation {
  position: absolute;
  width: 49px;
  height: 22px;
  background: transparent url('../img/module-info-icon-pano.png') -40px 0 no-repeat;
  bottom: 20px;
  left: 50%;
  margin-left: -25px;
  opacity: .7;
  z-index: 10;
}
section.panorama .panorama-navigation .left {
  position: absolute;
  left: -38px;
  width: 38px;
  height: 22px;
  background: transparent url('../img/module-info-icon-pano.png') 0 0 no-repeat;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out 0s;
  -moz-transition: opacity 0.3s ease-in-out 0s;
  -o-transition: opacity 0.3s ease-in-out 0s;
  transition: opacity 0.3s ease-in-out 0s;
}
section.panorama .panorama-navigation .left:hover {
  opacity: .5;
  cursor: pointer;
}
section.panorama .panorama-navigation .right {
  position: absolute;
  right: -38px;
  width: 38px;
  height: 22px;
  background: transparent url('../img/module-info-icon-pano.png') -89px 0 no-repeat;
  /* transition */
  -webkit-transition: opacity 0.3s ease-in-out 0s;
  -moz-transition: opacity 0.3s ease-in-out 0s;
  -o-transition: opacity 0.3s ease-in-out 0s;
  transition: opacity 0.3s ease-in-out 0s;
}
section.panorama .panorama-navigation .right:hover {
  opacity: .5;
  cursor: pointer;
}
section.panorama .marker {
  z-index: 8;
}
section.panorama article header .chapter {
  text-transform: none;
  font-size: 16px;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  margin-bottom: 12px;
}
section.panorama article header .title {
  text-transform: none;
  font-size: 40px;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  margin-bottom: 23px;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.panorama article {
    position: absolute;
    left: 80px;
    max-width: 65%;
    min-width: 200px;
    overflow: hidden;
    /* transform */
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-backface-visibility: hidden;
  }
  section.panorama article > div {
    /* transition */
    -webkit-transition: 0ms cubic-bezier(0.1, 0.57, 0.1, 1);
    -moz-transition: 0ms cubic-bezier(0.1, 0.57, 0.1, 1);
    -o-transition: 0ms cubic-bezier(0.1, 0.57, 0.1, 1);
    transition: 0ms cubic-bezier(0.1, 0.57, 0.1, 1);
  }
}
@media only screen and (min-width: 320px) and (max-width: 568px) and (orientation: portrait) {
  section.panorama article {
    left: 30px;
    max-width: 85%;
  }
}
section.panorama article.scrollable.disabled {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
section.panorama article.scrollable.disabled.left-top {
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -ms-flex-align: flex-start;
}
section.panorama article.scrollable.disabled.left-center {
  -webkit-align-items: center;
  align-items: center;
  -ms-flex-align: center;
}
section.panorama article.scrollable.disabled.left-bottom {
  -webkit-align-items: flex-end;
  align-items: flex-end;
  -ms-flex-align: flex-end;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  section.panorama article.scrollable {
    top: 0;
    overflow: hidden;
    height: 100%;
    width: 80%;
  }
  section.panorama article.scrollable::-webkit-scrollbar {
    display: none;
  }
  section.panorama article.scrollable > div {
    padding: 100px 0;
  }
}
/* Todo: Use global vars */
.social-sharing {
  display: block;
  width: 70px;
  height: 220px;
  position: fixed;
  left: 0;
  top: 100px;
  z-index: 100;
  -webkit-transform: translateX(-50px);
  -moz-transform: translateX(-50px);
  transform: translateX(-50px);
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.social-sharing:hover {
  -webkit-transform: translateX(0px);
  -moz-transform: translateX(0px);
  transform: translateX(0px);
}
.social-sharing ul {
  width: 30px;
  margin: 0;
  padding: 10px;
  background-color: rgba(43, 43, 44, 0.8);
  float: left;
  border-radius: 0 0 4px 0;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.social-sharing ul li {
  width: 30px;
  height: 30px;
  background-image: url(../img/social.png);
  background-repeat: no-repeat;
  cursor: pointer;
  margin: 5px 0;
  float: left;
  clear: left;
}
.social-sharing ul li a {
  padding: 20px;
}
.social-sharing ul li.facebook {
  background-position: 0 0;
}
.social-sharing ul li.facebook:hover {
  background-position: 0 -30px;
}
.social-sharing ul li.twitter {
  background-position: -30px 0;
}
.social-sharing ul li.twitter:hover {
  background-position: -30px -30px;
}
.social-sharing ul li.gplus {
  background-position: -60px 0;
}
.social-sharing ul li.gplus:hover {
  background-position: -60px -30px;
}
.social-sharing ul li.mail {
  background-position: -90px 0;
}
.social-sharing ul li.mail:hover {
  background-position: -90px -30px;
}
.social-sharing:hover ul {
  background-color: #2b2b2c;
}
.social-sharing p {
  width: 50px;
  height: 20px;
  margin: 0;
  text-align: center;
  display: table;
  font-size: 12px;
  line-height: 17px;
  color: #F1F1F1;
  letter-spacing: 2px;
  background-color: rgba(43, 43, 44, 0.8);
  position: absolute;
  cursor: e-resize;
  top: 25px;
  left: 24.5px;
  border-radius: 0 0 4px 4px;
  padding: 10px 20px;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.social-sharing:hover p {
  background-color: #2b2b2c;
}
nav > div.social-sharing {
  display: none;
}
@media only screen and (min-width: 320px) and (max-width: 800px) {
  nav > div.social-sharing {
    display: block;
    opacity: 0;
    width: 160px;
    height: 30px;
    position: absolute;
    left: auto;
    top: 98px;
    right: 31px;
    z-index: 9;
    /* transform */
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
    /* transition */
    -webkit-transition: all 0.3s ease-in-out 0s;
    -moz-transition: all 0.3s ease-in-out 0s;
    -o-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
  }
  nav > div.social-sharing ul {
    width: 160px;
    margin: 0;
    padding: 0;
    list-style-type: none;
    background-color: transparent;
    float: left;
    border-radius: 0 0 4px 0;
    -webkit-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
  }
  nav > div.social-sharing ul li {
    width: 30px;
    height: 30px;
    float: left;
    display: inline-block;
    background-image: url(../img/social.png);
    background-repeat: no-repeat;
    cursor: pointer;
    margin: 0 5px;
    clear: none;
  }
  nav > div.social-sharing ul li a {
    padding: 0;
    width: 100%;
    height: 100%;
    display: block;
  }
  nav > div.social-sharing ul li.facebook {
    background-position: 0 0;
  }
  nav > div.social-sharing ul li.facebook:hover {
    background-position: 0 -30px;
  }
  nav > div.social-sharing ul li.twitter {
    background-position: -30px 0;
  }
  nav > div.social-sharing ul li.twitter:hover {
    background-position: -30px -30px;
  }
  nav > div.social-sharing ul li.gplus {
    background-position: -60px 0;
  }
  nav > div.social-sharing ul li.gplus:hover {
    background-position: -60px -30px;
  }
  nav > div.social-sharing ul li.mail {
    background-position: -90px 0;
  }
  nav > div.social-sharing ul li.mail:hover {
    background-position: -90px -30px;
  }
  nav > div.social-sharing:hover ul {
    background-color: transparent;
  }
  nav > div.social-sharing p {
    display: none;
  }
  nav.visible > div.social-sharing {
    opacity: 1;
    /* transition */
    -webkit-transition: all 0.3s ease-in-out 0s;
    -moz-transition: all 0.3s ease-in-out 0s;
    -o-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
  }
  body > div.social-sharing {
    display: none;
  }
}
section.video video {
  position: absolute;
  z-index: 4;
}
.info--headline {
  color: black;
  margin-bottom: 30px;
}
.info--bar {
  width: 80%;
  height: 100px;
  border: 1px solid blue;
  position: relative;
  margin-bottom: 30px;
}
.info--bar-up {
  width: 150px;
  height: 400px;
  border: 1px solid red;
  position: relative;
  margin-bottom: 30px;
}
.info--bar-number {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
  color: black;
  font-size: 2em;
  padding-top: 1em;
}
.page-visible .info--bar::before {
  content: ' ';
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background: red;
  animation: fadein 3s ease-in-out;
}
.page-visible .info--bar-up::before {
  content: ' ';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 150px;
  height: 0;
  background: red;
  animation: fadeinup 3s ease-in-out;
}
.page-visible .info--bar.fill-100::before {
  width: 100%;
}
.page-visible .info--bar.fill-78::before {
  width: 78%;
}
.page-visible .info--bar-up.fill-50::before {
  height: 50%;
}
@keyframes fadein {
  from {
    max-width: 0;
  }
  to {
    max-width: 100%;
  }
}
@keyframes fadeinup {
  from {
    max-height: 0;
  }
  to {
    max-height: 100%;
  }
}
.info--pie {
  display: inline-block;
  position: relative;
  width: 1em;
  height: 1em;
  background-color: white;
  font-size: 7em;
  text-align: center;
  border-radius: 50%;
}
.page-visible .info--pie-slice-right {
  position: absolute;
  z-index: 11;
  background-color: red;
  width: 100%;
  height: 100%;
  clip: rect(0, 0.5em, 0.5em, 0.5em);
  border-radius: 50%;
}
.page-visible .info--pie-slice-left {
  position: absolute;
  z-index: 11;
  background-color: red;
  width: 100%;
  height: 100%;
  clip: rect(0.5em, 0.5em, 1em, 0.5em);
  border-radius: 50%;
}
.page-visible .info--pie-slice-right {
  -webkit-animation-delay: 1.2s;
  -webkit-animation-duration: 0.3s;
  -webkit-animation-name: right-slice;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
}
.page-visible .info--pie-slice-left {
  -webkit-animation-delay: 1.5s;
  -webkit-animation-duration: 0.3s;
  -webkit-animation-name: left-slice;
  -webkit-animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-out;
  -webkit-animation-fill-mode: forwards;
}
.info--pie-percent {
  position: absolute;
  z-index: 20;
  top: 10px;
  right: 10px;
  bottom: 10px;
  left: 10px;
  background: white;
  border-radius: 50%;
}
.info--pie-number {
  position: absolute;
  z-index: 30;
  width: 100%;
  height: 100%;
  padding-top: 50%;
  line-height: 0;
  font-size: .3em;
  color: black;
}
@keyframes right-slice {
  from {
    clip: rect(0, 50%, 0.5em, 0.5em);
  }
  50% {
    clip: rect(0, 1em, 0.5em, 0.5em);
  }
  to {
    clip: rect(0, 1em, 1em, 0.5em);
  }
}
@keyframes left-slice {
  from {
    clip: rect(0.5em, 0.5em, 1em, 0.5em);
  }
  50% {
    clip: rect(0.5em, 0.5em, 1em, 0);
  }
  to {
    clip: rect(0.3em, 0.5em, 1em, 0);
  }
}
@-moz-keyframes pulse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes pulse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes pulse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes spinner {
  0% {
    -moz-transform: rotate(0deg);
  }
  35% {
    -moz-transform: rotate(-180deg);
  }
  65% {
    -moz-transform: rotate(-180deg);
  }
  100% {
    -moz-transform: rotate(-360deg);
  }
}
@-webkit-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
  }
  35% {
    -webkit-transform: rotate(-180deg);
  }
  65% {
    -webkit-transform: rotate(-180deg);
  }
  100% {
    -webkit-transform: rotate(-360deg);
  }
}
@keyframes spinner {
  0% {
    transform: rotate(0deg);
  }
  35% {
    transform: rotate(-180deg);
  }
  65% {
    transform: rotate(-180deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}
.rotation-indicator {
  display: none;
}
@media only screen and (max-width: 479px) {
  .rotation-indicator {
    display: block;
    z-index: 1000;
    position: absolute;
    width: 100%;
    height: 100%;
    background: #2b2b2c url('../img/smartphone-small.png') center center no-repeat;
    background-size: 40px;
  }
  .rotation-indicator img.arrows {
    /* transform */
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -75px;
    margin-left: -75px;
    height: 150px;
    width: 150px;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -moz-transform-origin: center center;
    /* animation */
    -webkit-animation: spinner 1.8s linear 1s infinite;
    -moz-animation: spinner 1.8s linear 1s infinite;
    -o-animation: spinner 1.8s linear 1s infinite;
    animation: spinner 1.8s linear 1s infinite;
  }
}
.scale-hint {
  display: none;
  z-index: 1000;
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #2b2b2c;
}
.scale-hint .arrow {
  position: absolute;
  border-style: solid;
  opacity: 1;
  /* animation */
  -webkit-animation: pulse 1.8s linear 1s infinite;
  -moz-animation: pulse 1.8s linear 1s infinite;
  -o-animation: pulse 1.8s linear 1s infinite;
  animation: pulse 1.8s linear 1s infinite;
}
.scale-hint .arrow.tl {
  left: 10px;
  top: 10px;
  border-width: 20px 20px 0 0;
  border-color: white transparent transparent transparent;
}
.scale-hint .arrow.tr {
  right: 10px;
  top: 10px;
  border-width: 0 20px 20px 0;
  border-color: transparent white transparent transparent;
}
.scale-hint .arrow.bl {
  bottom: 10px;
  left: 10px;
  border-width: 20px 0 0 20px;
  border-color: transparent transparent transparent white;
}
.scale-hint .arrow.br {
  bottom: 10px;
  right: 10px;
  border-width: 0 0 20px 20px;
  border-color: transparent transparent white transparent;
}
.scale-hint p {
  color: white;
  top: 50%;
  left: 50%;
  width: 300px;
  margin: 0;
  margin-left: -150px;
  position: absolute;
}
.viewport-overlay {
  width: 100%;
  height: 100%;
  background-color: rgba(43, 43, 44, 0.6);
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: -1;
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0.3s;
  -moz-transition: all 0.3s ease-in-out 0.3s;
  -o-transition: all 0.3s ease-in-out 0.3s;
  transition: all 0.3s ease-in-out 0.3s;
}
.viewport-overlay.visible {
  opacity: 1;
  z-index: 900;
}
.viewport-overlay .howto {
  z-index: -1;
  height: 360px;
  padding: 40px;
  background-color: #2B2B2C;
  border-radius: 4px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -220px 0 0 -340px;
  opacity: 0;
  /* transform */
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  /* transition */
  -webkit-transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.viewport-overlay .howto.visible {
  z-index: 1000;
  opacity: 1;
  /* transform */
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.viewport-overlay .howto .mouse {
  width: 280px;
  height: auto;
  float: left;
}
.viewport-overlay .howto img {
  width: 200px;
  height: 200px;
  margin-left: 40px;
}
.viewport-overlay .howto p {
  font-size: 14px;
  letter-spacing: 1px;
  line-height: 20px;
  color: #F1F1F1;
  margin-bottom: 50px;
}
.viewport-overlay .howto .arrows {
  width: 280px;
  height: auto;
  float: left;
  margin-left: 40px;
}
.viewport-overlay .howto button {
  width: auto;
  display: table;
  height: 50px;
  background-color: #0082C6;
  border-radius: 4px;
  color: #F1F1F1;
  line-height: 50px;
  font-size: 14px;
  letter-spacing: 1px;
  padding: 0 30px;
  border: none;
  margin: 0 auto;
  cursor: pointer;
  clear: both;
}
.viewport-overlay .howto button:hover {
  background-color: #969696;
}
.lt-ie9 .viewport-overlay {
  display: none;
}
@media only screen and (min-width: 0px) and (max-width: 900px) {
  .scale-hint {
    display: block;
  }
}
