* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

html, body {
  width: 100%;
  height: 100%; }

body {
  font-family: Arial, sans-serif;
  font-size: 16px;
  line-height: 18px;
  color: #000000;
  background: url("../img/bg.jpg") fixed;
  background-size: cover;
  position: relative;
  overflow-x: hidden; }

h1, h2, h3, h4, h5 {
  font-weight: normal;
  line-height: 1.2em; }

h3 {
  font-size: 1.8rem;
  line-height: 2rem; }

a {
  color: #000000;
  text-decoration: none; }

a:hover {
  text-decoration: underline; }

.logo {
  display: block;
  margin: 0 auto 0px auto;
  width: 5vw;
  position: relative;
  top: 1.2vw; }

.clearfix:before, .clearfix:after {
  display: table;
  content: " "; }
.clearfix:after {
  clear: both; }

.layer,
.home-layer {
  padding: 2vw; }
  @media (min-width: 900px) {
    .layer,
    .home-layer {
      padding: 0;
      width: 100%;
      height: 100vh;
      position: sticky;
      top: 0; } }
  .layer h1, .layer h2, .layer h3,
  .home-layer h1,
  .home-layer h2,
  .home-layer h3 {
    font-size: 7.0vw;
    line-height: 8.5vw; }
  .layer h1,
  .home-layer h1 {
    font-size: 12vw;
    line-height: 12vw; }
    @media (min-width: 900px) {
      .layer h1,
      .home-layer h1 {
        font-size: 3.2vw;
        line-height: 3.7vw; } }
  @media (min-width: 900px) {
    .layer h2,
    .home-layer h2 {
      font-size: 2.6vw;
      line-height: 3.0vw; } }
  @media (min-width: 900px) {
    .layer h3,
    .home-layer h3 {
      font-size: 1.8vw;
      line-height: 2.1vw; } }
  .layer h4,
  .home-layer h4 {
    font-size: 7.0vw;
    line-height: 7.5vw;
    font-weight: normal; }
    @media (min-width: 900px) {
      .layer h4,
      .home-layer h4 {
        font-size: 1.6vw;
        line-height: 2.1vw; } }
  .layer h5,
  .home-layer h5 {
    font-size: 4.5vw;
    line-height: 5.5vw;
    font-weight: normal; }
    @media (min-width: 900px) {
      .layer h5,
      .home-layer h5 {
        font-size: 1vw;
        line-height: 1.2vw; } }

.navigation {
  float: left; }
  @media (min-width: 900px) {
    .navigation {
      top: 2vw;
      left: 2vw;
      position: absolute; } }
  .navigation .burger-icon {
    display: block;
    width: 10vw;
    margin: 2vw 1vw 2vw 0; }
  .navigation a {
    position: relative; }
  .navigation .tag {
    position: absolute;
    top: 0;
    left: 100%;
    font-size: 0.3em;
    line-height: 1em;
    padding: 0.3em;
    background: red;
    color: #fff;
    margin-left: -1.5em; }
  .navigation .js-nav {
    padding: 0vw 0 5vw 0; }

.language {
  float: right; }
  @media (min-width: 900px) {
    .language {
      float: none;
      top: 2vw;
      right: 2vw;
      position: absolute; } }

.footer {
  bottom: 2vw;
  left: 2vw;
  position: absolute; }

.imprint {
  bottom: 2vw;
  right: 2vw;
  position: absolute;
  text-align: right; }
  .imprint a {
    margin-left: 0.5em; }

.content {
  clear: both;
  padding: 2vw 2vw 0 2vw; }
  @media (min-width: 900px) {
    .content {
      position: relative;
      margin: -100vh 0 0 49.5vw;
      width: 48vw;
      padding: 150px 0 6vw;
      pointer-events: none; }
      .content * {
        pointer-events: all; }
        .content *:last-child {
          margin-bottom: 0; } }

.box1 {
  padding: 2vw;
  box-shadow: 0.5vw 0.5vw 0.5vw;
  margin-bottom: 4vw;
  overflow: hidden;
  transform: translate3d(0, 0, 0);
  z-index: 1;
  position: relative;
  background: #EEEACB; }
  @media (min-width: 900px) {
    .box1 {
      margin-bottom: 2vw;
      background: url("../img/bg-blur.jpg") fixed;
      background-size: cover; } }
  .box1 h5 {
    margin-bottom: 1vw; }
  .box1 img {
    width: 100%; }

.rtl {
  direction: rtl; }
  .rtl .navigation {
    float: right; }
    @media (min-width: 900px) {
      .rtl .navigation {
        float: none;
        right: 2vw; } }
    .rtl .navigation .tag {
      left: auto;
      right: 100%;
      margin-left: 1.5em; }
  .rtl .language {
    float: left; }
    @media (min-width: 900px) {
      .rtl .language {
        float: none;
        right: auto;
        left: 2vw; } }
  .rtl .footer {
    right: 2vw; }
  .rtl .imprint {
    right: auto;
    left: 2vw; }
  @media (min-width: 900px) {
    .rtl .content {
      margin-left: 0;
      margin-right: 49.5vw; } }
  .rtl .footer h1 {
    direction: ltr;
    text-align: right; }

@media (min-width: 900px) {
  .mobile-only {
    display: none; } }

.desktop-only {
  display: none; }
  @media (min-width: 900px) {
    .desktop-only {
      display: block; } }

.global-message {
  direction: ltr;
  background: #000;
  color: #fff;
  padding: 2vw; }
  @media (min-width: 900px) {
    .global-message {
      padding: 1vw; } }

@media (min-width: 768px) {
  .columns {
    width: 99vw;
    left: -1.5vw; } }
@media (min-width: 900px) {
  .columns {
    width: auto;
    left: 0; } }
@media (min-width: 1200px) {
  .columns {
    width: 51vw;
    left: -1.5vw; } }

.column {
  width: 100%;
  direction: ltr; }
  @media (min-width: 768px) {
    .column {
      width: 50%;
      padding: 0 1.5vw; } }
  @media (min-width: 900px) {
    .column {
      width: 100%;
      padding: 0; } }
  @media (min-width: 1200px) {
    .column {
      width: 50%;
      padding: 0 1.5vw 1.5vw; } }

@media (min-width: 768px) {
  .rtl .columns {
    left: auto;
    right: -1.5vw; } }
@media (min-width: 900px) {
  .rtl .columns {
    right: 0; } }
@media (min-width: 1200px) {
  .rtl .columns {
    right: -1.5vw; } }

.home-layer {
  padding: 0; }

.map {
  width: 100%;
  height: 24vw; }

.timetable-days {
  margin-bottom: 20px; }
  .timetable-days .day {
    float: left;
    margin-top: 15px; }
    .timetable-days .day:last-child {
      float: right; }
    .timetable-days .day.active {
      margin-top: 0;
      font-size: 48px; }
      .timetable-days .day.active a {
        text-decoration: none;
        pointer-events: none; }

.event,
.tba {
  width: 100%;
  margin-bottom: 25px; }
  .event .title,
  .event .duration,
  .event .description,
  .tba .title,
  .tba .duration,
  .tba .description {
    margin-bottom: 10px; }
    .event .title:last-child,
    .event .duration:last-child,
    .event .description:last-child,
    .tba .title:last-child,
    .tba .duration:last-child,
    .tba .description:last-child {
      margin-bottom: 0; }
  .event .description,
  .tba .description {
    white-space: pre-line; }

.stage .stage-name {
  margin-bottom: 20px; }

.artists .artist-name {
  margin-bottom: 0.5em; }
.artists .artist-description {
  margin-bottom: 1em;
  white-space: pre-line; }
.artists .artist-image {
  width: 100%;
  margin-bottom: 1em; }
.artists .artist-link {
  text-decoration: underline; }

.privacy h4 {
  font-size: 1.3rem;
  line-height: 1.5rem; }

.guide a {
  text-decoration: underline; }
.guide .qrcode {
  max-width: 250px; }

.rtl .guide {
  direction: ltr; }

/*# sourceMappingURL=styles.css.map */
