/*************************
  Allgemein
*************************/

* {
  margin: 0;
  padding: 0;
  border: 0;
}

html {
  scroll-behavior: smooth;
}

@font-face {
  font-family: schrift;
  src: url(../font/Roboto-Regular.ttf);
}

@font-face {
    font-family: fett;
    src: url(../font/Roboto-Bold.ttf);
  }

@font-face {
  font-family: ueberschrift;
  src: url(../font/Montserrat-ExtraBold.ttf);
}

body {
  max-width: 600px;
  margin: 0 auto;
  color: #424242;
  font-family: schrift;
}

/*************************
  Navigation
*************************/

nav {
  position: relative;
  width: 100%;
  height: 80px;
}

#close {
  position: absolute;
  right: 30px;
  top: 25px;
}

/*************************
  Header
*************************/

#player img, #player2 img, #player3 img, #player4 img {
  width: 100%;
  cursor: pointer;
  margin-top: -80px;
  margin-bottom: -20px;
  padding-left: 20px;
  padding-right: 20px;
}

#player2, #player4 {
  display: none;
}

#visibility {
  position: relative;
  max-width: 600px;
  height: 50px;
}

#kml {
  position: absolute;
  top: 20px;
  left: 20px;
}

#kml img {
  width: 120px;
}

@media screen and (max-width: 380px) {#kml img {width: 100px;}}

.rechts {
  width: 100%;
  text-align: right;
}

#info {
  color: #009EE2;
  border: 2px solid #009EE2;
  border-radius: 5px;
  padding: 4px;
  text-align: center;
  font-family: schrift;
  font-size: 0.8rem;
  font-weight: 800;
  display: inline;
  margin-right: 20px;
  cursor: pointer;
}

#info:hover {
  color: #fff;
  border: 2px solid #009EE2;
  background: #009EE2;
}

#audiocredits {
  max-width: 480px;
  padding-left: 50px;
  padding-right: 50px;
  margin: auto;
  color: #009EE2;
  font-size: 0.8rem;
  line-height: 1rem;
  display: none;
}

/*************************
  Hauptteil
*************************/

main {
  position: relative;
  padding: 20px;
  padding-left: 50px;
  padding-right: 50px;
  max-width: 480px;
  margin: auto;
}

.startseite {
  padding-left: 30px;
}

#zahl {
  font-family: ueberschrift;
  color: #e20613;
  font-size: 1.5rem;
  position: absolute;
  top: 20px;
  left: 0px;
  padding-left: 8px;
  padding-top: 2px;
}

h1 {
  font-family: ueberschrift;
  letter-spacing: 1px;
  font-size: 1.5rem;
  color: black;
  margin-bottom: 20px;
  font-weight: 100;
}

#big {
  font-size: 3.5rem;
  margin-left: -10px;
}

@media screen and (max-width: 450px) {#big {font-size: 3rem;}}
@media screen and (max-width: 370px) {#big {font-size: 2.7rem;}}
@media screen and (max-width: 340px) {#big {font-size: 2.4rem;}}
@media screen and (max-width: 300px) {#big {font-size: 2.2rem;}}

p {
  line-height: 1.5rem;
}

strong {
  font-family: fett;
  font-weight: 100;
}

button {
  font-family: ueberschrift;
  font-size: 1.1rem;
  cursor: pointer;
  color: #e20613;
  background-color: #fff0;
  border: 3px solid #e20613;
  border-radius: 4px;
  transition-duration: 0.4s;
  padding: 8px;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

button:hover {
  background-color: #e20613;
  color: white;
}

@media screen and (max-width: 450px) {
  h1 {
    font-size: 1.2rem;
  }

  #zahl {
    font-size: 1.2rem;
    padding-left: 10px;
    padding-top: 0px;
  }
}

/*************************
  Objekte Startseite
*************************/

.objekte {
  margin-top: 50px;
  position: relative;
  max-width: 400px;
}

.box3 {
  width: 80%;
  background-color: #e0e2d9;
  height: 90%;
  position: absolute;
  top: 5rem;
  right: 0px;
  z-index: -1;
}

/*************************
  Buttons Startseite
*************************/

.btn {
  width: 60px;
  height: 60px;
  margin: 20px;
  margin-left: 0px;
  font-size: 1.7rem;
}


@media screen and (max-width: 340px) {.btn {width: 50px; height: 50px; margin: 10px;}}

/*************************
  About Startseite
*************************/

.about {
  margin-top: 130px;
  position: relative;
}

/*************************
  Schule des Sehens Startseite
*************************/

.schuledessehens {
  margin-top: 60px;
  position: relative;
}

.schuledessehens p {
  font-size: 0.8rem;
  margin-bottom: 1rem;
}

#schule {
  width: 240px;
}

@media screen and (max-width: 500px) {
  #schule {width:180px;}
}

@media screen and (max-width: 400px) {
  #schule {width:120px;}
}

/*************************
  Thumbnail
*************************/

.thumbnail {
  margin-top: 80px;
  position: relative;
}

.box1 {
  width: 100%;
  background-color: #e0e2d9;
  height: 0px;
  padding-bottom: 56.25%;
  position: absolute;
  top: -20px;
  right: -50px;
  z-index: -1;
}

h2 {
  font-family: ueberschrift;
  letter-spacing: 1px;
  font-size: 1.3rem;
  color: black;
  margin-bottom: 20px;
  font-weight: 100;
}

h3 {
  font-family: ueberschrift;
  letter-spacing: 1px;
  font-size: 1.3rem;
  color: black;
  margin-bottom: 20px;
  font-weight: 100;
}

.img-hover-zoom {
  overflow: hidden;
  cursor: pointer;
}

.img-hover-zoom img {
  transition: transform .5s ease;
  width: 100%;
}

.img-hover-zoom:hover img {
  transform: scale(1.2);
}

.youtube {
  position: relative; 
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden; 
  width: 100%;
  height: auto;
}

.youtube iframe {
  position: absolute; 
  top: 0; 
  left: 0; 
  width: 100%; 
  height: 100%;
  border: 0;
}

.youtube2 {
  position: relative; 
  padding-bottom: 177.77%;
  height: 0;
  overflow: hidden; 
  width: 100%;
  height: auto;
}

.youtube2 iframe {
  position: absolute; 
  top: 0; 
  left: 0; 
  width: 100%; 
  height: 100%;
  border: 0;
}

/*************************
  Hintergrund
*************************/

.hintergrund {
  margin-top: 50px;
  position: relative;
}

.hintergrund img {
  width: 100%;
  cursor: pointer;
}

a, a:hover, a:visited {
  text-decoration: none;
  color: #e20613;
}

#text1 {
  display: none;
}

/*************************
  Team
*************************/

.team {
  margin-top: 50px;
  position: relative;
}

.team p {
  margin-bottom: 1rem;
}

.box2 {
  width: 80%;
  background-color: #e0e2d9;
  height: 90%;
  position: absolute;
  top: 4.3rem;
  right: 0px;
  z-index: -1;
}

.klein {
  font-size: 0.8rem;
}

/*************************
  Scroll Up
*************************/

#up {
  position: absolute;
  bottom: 20px;
  right: 5px;
}

#up-start {
  position: absolute;
  bottom: 200px;
  right: 5px;
}

/*************************
  Footer
*************************/

footer {
  position: relative;
  margin-top: 70px;
  text-align: center;
  padding: 20px;
}

.logos {
  text-align: center;
}

.logos img {
  filter: grayscale(100%);
  opacity: 0.5;
  max-height: 45px;
  padding: 10px;
}

/*************************
  Footer Startseite
*************************/

#reiter {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  z-index: -1;
}

.footer {
  position: relative;
  margin-top: 0px;
  padding-top: 60px;
  background-color: #e8e8e8;
}

.footer .logos img {
  opacity: 1;
}

.footer p, .footer p a {
  color: #626262;
}

.footer p a:hover {
  color: black;
}

/************************
  Player
************************/

.btn2 {
    display: inline;
    width: 30px;
    padding: 5px;
    background: #414141;
    border-radius: 20px;
    cursor: pointer;
}

.btn2:hover {
    background: #e20613;
}

#timeline {
    width: 100%;
    background: #414141;
    height: 10px;
    border-radius: 5px;
    margin-bottom: 20px;
}

#castline {
    margin-bottom: 10px;
    background: #e20613;
    height: 10px;
    border-radius: 5px;
    position: relative;
    width: 0px;
    z-index: 9;
}

#castcounter {
    color: #424242;
}

.ongoing {
    background: #eeeeee;
    height: 8px;
    width: 0;
    border-radius: 4px;
    transition: width .5s ease;
    max-width: 100%;
}

/************************
  Pfeil
************************/

.row {
  display: flex;
  flex-wrap: wrap;
}

.weiter {
    text-align: right;
    flex: 50%;
    max-width: 50%;
    padding: 10px;
    box-sizing: border-box;
    padding-right: 0px;
}

.zurueck {
    flex: 50%;
    max-width: 50%;
    padding: 10px;
    box-sizing: border-box;
    padding-left: 0px;
}

.pfeil {
    width: 50px;
}

.pfeil-txt {
    color: #424242;
    padding-top: 0px;
}