html,
body {
  margin: 0;
  height: 100%;
}
body {
  font-family: Verdana, Geneva, Tahoma, sans-serif;
  font-weight: 600;
  font-size: 2vmin;
  color: rgb(247, 189, 0);
}

/* base layout */
nav,
section,
footer {
  /* dont stretch more than 16:9 */
  max-width: 177vh;

  /* center */
  margin: auto;
}
nav,
section {
  width: 95%;
}
main {
  position: relative;
  height: 100vh;
  max-height: 100%;
  overflow-y: auto;

  scroll-snap-type: y mandatory;
  scroll-behavior: smooth;
}
section {
  scroll-snap-align: start;
  height: 100%;
}
nav,
footer {
  position: fixed;

  /* center with fixed position */
  right: 0;
  left: 0;

  /* show above content */
  z-index: 10;
}
nav {
  margin-top: 1vmin;
  height: 22vmin;
}
footer {
  bottom: 0;
  width: 100%;
  background-color: #1c87c980;
  display: flex;
  justify-content: flex-end;
}
footer a {
  margin-right: 1em;
}
content {
  position: relative;
  display: block;
  top: 25vmin;
  height: calc(98% - 27vmin - 1.2em);
  padding: 1vmin 2vmin;
}

/* background */
#background {
  position: fixed;
  height: 100vh;
  width: 100vw;
  z-index: -1;

  background-color: #1c87c9;
  background-image: url("https://loveleague.de/images/background.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

/* text modifications */
div.stroke,
div.stroke a {
  -webkit-text-stroke: 0.02em black;
}
div.gradient {
  background: -webkit-linear-gradient(rgb(255, 255, 0) 40%, rgb(255, 50, 0));
  -webkit-text-fill-color: transparent;
  background-clip: text;
  -webkit-background-clip: text;
}
@media (hover: hover) {
  a:hover {
    filter: hue-rotate(-25deg);
  }
}
div.shadow {
  text-shadow: 0.05em 0.15em grey;
}
div.shadow.gradient {
  text-shadow: none;
  filter: drop-shadow(0.05em 0.15em rgb(100, 100, 100));
}
a {
  text-decoration: none;
  color: inherit;
}

/* navigation clouds */
a.cloud {
  position: absolute;
  height: 50%; /* so selected cloud with scale*2 fits in */
  width: 22vmin; /* same as nav height, so they have aspect-ratio 2:1 */

  background-size: 100% 100%;
}
a.cloud div.cloud-text {
  position: relative;
  text-align: center;
  font-size: 150%;
}
#galery-cloud {
  background-image: url("../images/Cloud_1.png");
}
#galery-cloud div.cloud-text {
  top: 45%;
}
#loveleague-cloud {
  background-image: url("../images/Cloud_2.png");
  left: calc(50% - 11vmin);
  scale: 2;
  top: 25%;
}
#loveleague-cloud div.cloud-text {
  top: 53%;
}
#download-cloud {
  background-image: url("../images/Cloud_3.png");
  right: 0%;
}
#download-cloud div.cloud-text {
  top: 40%;
}

/* content details */
content .text {
  left: 2%;
  top: 2%;
}
content .text .title {
  font-size: 250%;
  margin-bottom: 2vh;
}
content .text .big {
  font-size: 175%;
}
content .video {
  margin-top: 1vmin;
  height: calc(100% - 12em);
}

/* LoveLeague */
#section_loveleague content {
  background-color: #1c87c980;
  border-radius: 4px;
}

/* Galery */
galery {
  display: block;
}
galery ul {
  padding: 0;
  margin: 0;

  height: 100%;

  border-radius: 4px;
  box-shadow: 1px 1px 4px 1px black;

  overflow: hidden;
  list-style: none;
}
galery ul li {
  background-position: center;
  background-repeat: no-repeat;

  box-shadow: 2px 0 10px 2px black;

  transition: all 0.7s;
  -moz-transition: all 0.7s;
  -webkit-transition: all 0.7s;
}

/* Smartphone/Portrait */
@media (max-aspect-ratio: 7/8) {
  galery {
    height: 100%;
    max-height: 85vw;
  }
  galery ul li {
    background-size: 100% auto;
    width: 100%;
  }

  galery ul li {
    height: 20%;
  }
  galery ul:hover li {
    height: 10%;
  }
  galery ul li:hover {
    height: 60%;
  }
}

/* Desktop/Landscape */
@media (min-aspect-ratio: 7/8) {
  galery {
    aspect-ratio: 20/9;
    max-height: 100%;
    margin: auto;
  }
  galery ul li {
    background-size: auto 100%;
    height: 100%;
    float: left;
  }

  galery ul li {
    width: 20%;
  }
  galery ul:hover li {
    width: 5%;
  }
  galery ul li:hover {
    width: 80%;
  }
}

/* Download */
#section_download content a img {
  position: relative;
  top: 15%;
  margin: auto;
  display: block;
  max-width: 100%;
  max-height: calc(98% - 27vmin - 1.2em);
}
