body {
  background-color: #000000;
  color: #ffffff;
  font-family: 'Fira Sans Light', sans-serif;
  letter-spacing: 2px;
}
h2 {
  font-family: inherit;
  font-weight: bold;
}
#top_logo {
  font-family: 'Baloo Da 2 Regular', sans-serif;
  margin: 1.0vw 0 0 0;
  padding: 1vw;
}
#top_logo img {
  max-width: 90%;
}
#mediaImage {
  filter: grayscale(75%);
  max-width: 95%;
  margin: 0;
  opacity: 0.5;
  transition: opacity 2.5s; 
}
#mediaImage.fade {
  opacity: 0;
}
#icongroup_left {
  left: 2% !important;
}
#icongroup_right {
  right: 2% !important;
}
.icongroup_icons {
  font-size: min(max(24px, 3.0vw), 40px);
  font-size: 3.0vw;
}
.icongroup_icon {
    opacity: 0.8;
}
.icongroup_icon:hover, .icongroup_icon:focus {
  opacity: 1.0;
}
#text_statement {
  padding-bottom: 1.0em;
  width: 100%;
}
#text_statement p {
  font-size: 2.0vw;
  margin: 0.25em;
}
img.footer_icon {
  width: min(max(10px, 2.0vw), 20px);
  opacity: 0.8;
}
.footer_icon {
  font-size: min(max(12px, 2.0vw), 32px);
  opacity: 0.8;
}
.footer_icon_inactive {
  font-size: min(max(12px, 2.0vw), 32px);
  opacity: 0.5;
}
.footer_icon:hover, .footer_icon:focus {
  opacity: 1.0;
}
#legal_links {
  font-size: min(max(8px, 1.0vw), 16px);
  letter-spacing: 0px;
  margin-top: 0px;
  opacity: 0.8;
}
#legal_links a:hover, #legal_links a:focus {
  opacity: 1.0;
  text-decoration-line: none;
}

.shows {
  padding: 0;
}

#shows_upcoming p, #shows_past p,
#shows_upcoming table, #shows_past table {
  font-size: 1.5vw;
}

#shows_upcoming table.w3-striped tbody tr:nth-child(2n), #shows_past table.w3-striped tbody tr:nth-child(2n) {
  background-color: gray;
}

#legal_impressum, #legal_datenschutz {
  height: 60vh;
  overflow-y: scroll;
}
#legal_impressum p, #legal_datenschutz p {
  font-size: 1.75vw;
}

.w3-modal h2 {
  font-size: 3.0vw;
}
.w3-modal h3 {
  font-size: 2.5vw;
}
.w3-modal button {
  font-size: 2.5vw;
}
.w3-modal-content {
  max-width: 50%;
}
.contact_polaroid {
  margin: 0;
}
#contact_photo {
  width: 100%;
}
