/* KAMFEST */
.tkf-font-light {
  font-family: "futura-pt";
  font-weight: 300;
  font-style: normal;
}
.ht-font-light-italic {
  font-family: "futura-pt";
  font-weight: 300;
  font-style: italic;
}
.tkf-font-regular {
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
}
.tkf-font-regular-italic {
  font-family: "futura-pt";
  font-weight: 400;
  font-style: italic;
}
.tkf-font-bold {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
}
.tkf-font-black {
  font-family: "futura-pt";
  font-weight: 800;
  font-style: normal;
}
.tkf-bg-cover {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.tkf-btn-dark {
  background-color: #000;
  color: #fff;
  padding: 3vw 5vw;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 4px;
  font-size: 0.7em;
}
@media only screen and (min-width: 600px) {
  .tkf-btn-dark {
    padding: 1.5vw 3vw;
    font-size: 0.55em;
  }
}
@media only screen and (min-width: 1024px) {
  .tkf-btn-dark {
    padding: 1.2vw 2vw;
    font-size: 0.45em;
  }
}
@media only screen and (min-width: 1400px) {
  .tkf-btn-dark {
    padding: 0.8vw 1.2vw;
    font-size: 0.3em;
  }
}
.tkf-btn-light {
  background-color: #eb6e07;
  color: #fff;
  padding: 3vw 5vw;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  text-decoration: none;
  border-radius: 4px;
  font-size: 0.7em;
}
@media only screen and (min-width: 600px) {
  .tkf-btn-light {
    padding: 1.5vw 3vw;
    font-size: 0.55em;
  }
}
@media only screen and (min-width: 1024px) {
  .tkf-btn-light {
    padding: 1.2vw 2vw;
    font-size: 0.45em;
  }
}
@media only screen and (min-width: 1400px) {
  .tkf-btn-light {
    padding: 0.8vw 1.2vw;
    font-size: 0.3em;
  }
}
.noselect {
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Chrome/Safari/Opera */
  -khtml-user-select: none;
  /* Konqueror */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* IE/Edge */
  user-select: none;
  /* non-prefixed version, currently not supported by any browser */
  cursor: default;
}
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td {
  padding: 0;
  margin: 0;
}
*,
*:after,
*:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html,
body {
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  color: #000;
  background-color: #fff;
  font-size: 20px;
  -webkit-font-smoothing: antialiased;
  width: 100%;
}
@media only screen and (min-width: 600px) {
  html,
  body {
    font-size: 30px;
  }
}
@media only screen and (min-width: 1024px) {
  html,
  body {
    font-size: 32px;
  }
}
@media only screen and (min-width: 1400px) {
  html,
  body {
    font-size: 42px;
  }
}
.preload-images {
  display: none;
  width: 0;
  height: 0;
}
.center {
  text-align: center;
}
figure {
  margin: 0;
  margin-bottom: 3vh;
}
@media only screen and (min-width: 1024px) {
  figure {
    margin-bottom: 2vh;
  }
}
figure figcaption {
  font-size: 14px;
  font-style: italic;
}
img {
  width: 100%;
  height: auto;
}
.body-text img {
  width: initial;
  max-width: 100%;
  display: inline-block;
  height: auto;
}
.container {
  position: relative;
  width: 100%;
}
.container.home {
  margin-top: 60px;
  overflow: hidden;
}
@media only screen and (min-width: 1024px) {
  .container.home {
    text-align: center;
  }
}
@media only screen and (min-width: 1024px) {
  .container.home .row {
    margin-top: 5vh;
  }
}
.container.home .top-header {
  background-color: rgba(0, 0, 0, 0.8);
  text-align: center;
  padding: 1rem 0;
  color: white;
}
.container.home .top-header a {
  display: inline-block;
  color: inherit;
}
.container.home .insta-feed {
  text-align: center;
  width: 100%;
  margin: 0 auto 10vh;
  padding: 2vh 2%;
  background-color: rgba(0, 0, 0, 0.08);
}
.container.home .insta-feed h2 {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  width: 90%;
  margin: 0 auto 2vh;
  text-transform: uppercase;
}
@media only screen and (min-width: 1024px) {
  .container.home .insta-feed h2 {
    font-size: 1em;
  }
}
.container.home .insta-feed .feed {
  position: relative;
  max-width: 1600px;
  margin: 0 auto;
}
.container.home .insta-feed .feed .feed-item {
  width: 33.33333333%;
  float: left;
  display: block;
  line-height: 0;
  position: relative;
}
@media only screen and (min-width: 1024px) {
  .container.home .insta-feed .feed .feed-item {
    width: 16.66666667%;
  }
}
.container.home .insta-feed .feed .feed-item .photo {
  position: relative;
  margin: 2%;
  background-color: #000;
}
.container.home .insta-feed .feed .feed-item .photo img {
  width: 100%;
  -webkit-transition: opacity 300ms;
  -moz-transition: opacity 300ms;
  -ms-transition: opacity 300ms;
  -o-transition: opacity 300ms;
  transition: opacity 300ms;
}
.container.home .insta-feed .feed .feed-item .likes {
  position: absolute;
  top: 45%;
  width: 100%;
  text-align: center;
  opacity: 0;
  -webkit-transition: opacity 300ms;
  -moz-transition: opacity 300ms;
  -ms-transition: opacity 300ms;
  -o-transition: opacity 300ms;
  transition: opacity 300ms;
}
.container.home .insta-feed .feed .feed-item .likes img {
  width: 20px;
  position: relative;
  top: 4px;
}
@media only screen and (min-width: 1024px) {
  .container.home .insta-feed .feed .feed-item .likes img {
    width: 30px;
  }
}
.container.home .insta-feed .feed .feed-item .likes .likes-count {
  margin-left: 5px;
  color: #fff;
  font-size: 0.8em;
}
@media only screen and (min-width: 1024px) {
  .container.home .insta-feed .feed .feed-item .likes .likes-count {
    font-size: 0.6em;
  }
}
.container.home .insta-feed .feed .feed-item .insta-logo {
  position: absolute;
  top: 10px;
  left: 10px;
  width: 18px;
  height: 18px;
}
@media only screen and (min-width: 600px) {
  .container.home .insta-feed .feed .feed-item .insta-logo {
    top: 20px;
    left: 20px;
    width: 22px;
    height: 22px;
  }
}
.container.home .insta-feed .feed .feed-item .insta-logo img {
  width: 100%;
}
.container.home .insta-feed .feed .feed-item.mobile-hover .likes {
  opacity: 1;
}
.container.home .insta-feed .feed .feed-item.mobile-hover .photo img {
  opacity: 0.3;
}
.container.home .insta-feed a.load-more {
  display: inline-block;
  width: auto;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  background-color: #000;
  color: #fff;
  text-transform: uppercase;
  text-decoration: none;
  padding: 1vh 3vw;
  font-size: 0.6em;
  margin: 1vh auto;
}
.container.home .home.profile video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
}
.container.home .home.profile .photo-container {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.container.artists h1 {
  margin: 14vh auto 2vh;
  text-transform: uppercase;
  font-size: 1.3em;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  .container.artists h1 {
    margin: 14vh auto 0;
    font-size: 1.4em;
  }
}
.container.artists .list {
  margin: 5vh auto;
  width: 100%;
  display: inline-block;
  clear: both;
}
@media only screen and (min-width: 1024px) {
  .container.artists .list {
    width: 90%;
  }
}
.container.artists article {
  width: 86%;
  margin: 0 auto 3vh;
  /*&:nth-child(4n+4) {
                margin-right: auto;
                
                @media @desktop {
                    margin-right: 0;
                }
            }*/
}
@media only screen and (min-width: 1024px) {
  .container.artists article {
    width: 22%;
    margin: 0 auto 4vh;
    margin-right: 3%;
    float: left;
  }
}
.container.artists article .photo-container {
  width: 100%;
  height: 40vh;
  overflow: hidden;
  position: relative;
}
@media only screen and (min-width: 1400px) {
  .container.artists article .photo-container {
    height: 30vh;
  }
}
.container.artists article .photo-container .label {
  position: absolute;
  z-index: 300;
  max-width: 40%;
  left: 0;
  height: auto;
  pointer-events: none;
}
.container.artists article .photo-container .label img {
  width: 100%;
}
.container.artists article .photo-container .photo {
  position: absolute;
  width: 100%;
  height: 40vh;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-transition: all 1000ms;
  -moz-transition: all 1000ms;
  -ms-transition: all 1000ms;
  -o-transition: all 1000ms;
  transition: all 1000ms;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
@media only screen and (min-width: 1400px) {
  .container.artists article .photo-container .photo {
    height: 30vh;
  }
}
.container.artists article .photo-container .photo.android {
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  -o-transition: none;
  transition: none;
}
.container.artists article .photo-container .photo-overlay {
  background-color: rgba(0, 0, 0, 0.4);
  width: 100%;
  height: 100%;
  position: absolute;
  pointer-events: none;
  opacity: 0.6;
  -webkit-transition: opacity 1000ms;
  -moz-transition: opacity 1000ms;
  -ms-transition: opacity 1000ms;
  -o-transition: opacity 1000ms;
  transition: opacity 1000ms;
}
.container.artists article .photo-container h2 {
  position: absolute;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  bottom: 20px;
  color: #fff;
  text-transform: uppercase;
  width: 55%;
  margin-left: 20px;
  line-height: 1em;
  font-size: 1.2em;
  pointer-events: none;
}
.container.artists article .photo-container h2.article-heading {
  bottom: 20px;
}
@media only screen and (min-width: 1024px) {
  .container.artists article .photo-container h2 {
    width: 90%;
    font-size: 0.6em;
    text-align: center;
  }
}
.container.artists article.mobile-hover .photo-container .photo-overlay {
  opacity: 0;
}
.container.artists article.mobile-hover .photo-container .photo {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
@media only screen and (min-width: 1024px) {
  .container.artists article.mobile-hover .photo-container .photo {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
  }
}
.container.artists article.mobile-hover .photo-container .btn.buy a {
  background-color: #000;
}
.container.artists article.mobile-hover .subheading {
  opacity: 0.7;
}
.container.artists article.mobile-hover .subheading p {
  text-decoration: underline;
}
.container.newsletter-page p {
  margin: 5vh 20vh 11vh;
}
.container.news h1 {
  margin: 14vh auto 2vh;
  text-transform: uppercase;
  font-size: 1.3em;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  .container.news h1 {
    margin: 14vh auto 0;
    font-size: 1.4em;
  }
}
.container.news .list {
  margin: 5vh auto;
  width: 100%;
  display: inline-block;
  clear: both;
}
@media only screen and (min-width: 1024px) {
  .container.news .list {
    width: 90%;
  }
}
.container.news article {
  width: 86%;
  margin: 0 auto 3vh;
  min-height: 400px;
  /*&:nth-child(4n+4) {
                margin-right: auto;
                
                @media @desktop {
                    margin-right: 0;
                }
            }*/
}
@media only screen and (min-width: 1024px) {
  .container.news article {
    width: 22%;
    margin: 0 auto 4vh;
    margin-right: 3%;
  }
}
.container.news article .photo-container {
  width: 100%;
  height: 40vh;
  overflow: hidden;
  position: relative;
}
@media only screen and (min-width: 1400px) {
  .container.news article .photo-container {
    height: 30vh;
  }
}
.container.news article .photo-container .photo {
  position: absolute;
  width: 100%;
  height: 40vh;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-transition: all 1000ms;
  -moz-transition: all 1000ms;
  -ms-transition: all 1000ms;
  -o-transition: all 1000ms;
  transition: all 1000ms;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
@media only screen and (min-width: 1400px) {
  .container.news article .photo-container .photo {
    height: 30vh;
  }
}
.container.news article .photo-container .photo.android {
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  -o-transition: none;
  transition: none;
}
.container.news article .photo-container .photo-overlay {
  background-color: rgba(0, 0, 0, 0.4);
  width: 100%;
  height: 100%;
  position: absolute;
  pointer-events: none;
  opacity: 0.6;
  -webkit-transition: opacity 1000ms;
  -moz-transition: opacity 1000ms;
  -ms-transition: opacity 1000ms;
  -o-transition: opacity 1000ms;
  transition: opacity 1000ms;
}
.container.news article .photo-container h2 {
  position: absolute;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  bottom: 20px;
  color: #fff;
  text-transform: uppercase;
  width: 55%;
  margin-left: 20px;
  line-height: 1em;
  font-size: 1.4em;
  pointer-events: none;
}
.container.news article .photo-container h2.article-heading {
  bottom: 20px;
}
@media only screen and (min-width: 1024px) {
  .container.news article .photo-container h2 {
    width: 90%;
    font-size: 0.5em;
    text-align: center;
  }
}
.container.news article.mobile-hover .photo-container .photo-overlay {
  opacity: 0;
}
.container.news article.mobile-hover .photo-container .photo {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
@media only screen and (min-width: 1024px) {
  .container.news article.mobile-hover .photo-container .photo {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
  }
}
.container.news article.mobile-hover .photo-container .btn.buy a {
  background-color: #000;
}
.container.news article.mobile-hover .subheading {
  opacity: 0.7;
}
.container.news article.mobile-hover .subheading p {
  text-decoration: underline;
}
.container.partners {
  width: 90%;
  margin: auto;
  margin-bottom: 30px;
}
@media only screen and (min-width: 1024px) {
  .container.partners {
    margin-bottom: 80px;
  }
}
.container.partners h1 {
  margin: 15vh auto 2vh;
  text-transform: uppercase;
  font-size: 1.2em;
  text-align: center;
}
@media only screen and (min-width: 600px) {
  .container.partners h1 {
    margin: 20vh auto 1vh;
    font-size: 1.1em;
  }
}
.container.partners h2 {
  margin: 6vh auto 2vh;
  font-size: 0.9em;
  text-align: center;
  font-weight: 500;
}
@media only screen and (min-width: 600px) {
  .container.partners h2 {
    margin: 10vh auto 5vh;
    font-size: 0.8em;
  }
}
.container.partners .images {
  margin: auto;
  margin-top: 3vh;
  text-align: center;
  display: flex;
  justify-content: center;
  gap: 30px;
  flex-wrap: wrap;
}
@media only screen and (min-width: 1400px) {
  .container.partners .images {
    width: 80%;
    gap: 50px;
  }
}
.container.partners .images .link-container {
  flex: 0 0 40%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 1024px) {
  .container.partners .images .link-container {
    flex: 0 0 20%;
  }
}
.container.partners .images a {
  display: flex;
}
.container.partners .images a picture {
  display: flex;
  align-items: center;
}
.container.partners .images a img {
  width: 100%;
  position: relative;
  max-height: 50px;
  max-width: 120px;
}
@media only screen and (min-width: 1024px) {
  .container.partners .images a img {
    max-height: 80px;
    max-width: 170px;
  }
}
.container.partners p {
  margin: 3vh 10vh 0;
  font-size: 0.6em;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  .container.partners p {
    margin: 4vh 15vh 0;
    font-size: 0.7em;
  }
}
@media only screen and (min-width: 1024px) {
  .container.concert {
    text-align: center;
  }
}
.container.concert #buy-tickets {
  background-color: #eb6e07;
}
.container.concert article.main-event {
  width: 100%;
  margin-right: 0;
  position: relative;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event {
    width: 50%;
    margin-left: 50%;
    display: block;
  }
}
.container.concert article.main-event.cancelled .time-and-date,
.container.concert article.main-event.cancelled .location {
  text-decoration: line-through;
}
.container.concert article.main-event .label img {
  position: absolute;
  left: 0;
  width: 200px;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event .label img {
    top: 70px;
  }
}
.container.concert article.main-event header {
  padding-top: 15vh;
  text-align: center;
  background-color: #fff;
  color: #000;
}
@media only screen and (max-width: 599px) {
  .container.concert article.main-event header {
    order: 1;
    padding-top: 0vh;
  }
}
.container.concert article.main-event header .assisting > div {
  font-size: 0.8em;
  margin-bottom: 1vh;
  line-height: 1.6rem;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event header .assisting > div {
    font-size: 0.55em;
    line-height: 0.9rem;
  }
}
.container.concert article.main-event header .summary {
  width: 80%;
  margin: 0 auto;
  font-size: 0.8em;
  margin-bottom: 1vh;
  line-height: 1.6rem;
}
.container.concert article.main-event header .time-and-date {
  font-size: 0.6em;
  display: inline-block;
  vertical-align: top;
  margin-right: 20px;
  text-transform: uppercase;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event header .time-and-date {
    font-size: 0.5em;
  }
}
.container.concert article.main-event header .time-and-date img {
  position: relative;
  margin-right: 3px;
  height: 14px;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event header .time-and-date img {
    height: 16px;
  }
}
.container.concert article.main-event header .location {
  font-size: 0.6em;
  display: inline-block;
  vertical-align: top;
  text-transform: uppercase;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event header .location {
    font-size: 0.5em;
  }
}
.container.concert article.main-event header .location img {
  position: relative;
  margin-right: 3px;
  height: 14px;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event header .location img {
    height: 16px;
  }
}
.container.concert article.main-event header h1 {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 2em;
  text-transform: uppercase;
  padding-bottom: 2vh;
  color: #009ce0;
  margin: 8px auto;
  line-height: 1em;
  width: 80%;
  word-break: break-word;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event header h1 {
    font-size: 1.6em;
  }
}
.container.concert article.main-event header h2 {
  font-family: "futura-pt";
  font-weight: 300;
  font-style: normal;
  font-size: 0.7em;
}
.container.concert article.main-event header .year-picker {
  margin-bottom: 5vh;
}
.container.concert article.main-event header .year-picker a {
  display: inline-block;
  margin-right: 4vw;
  font-size: 0.7em;
  text-decoration: none;
  border-bottom: 3px solid #000;
  color: inherit;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event header .year-picker a {
    margin-right: 1.5vw;
    font-size: 0.5em;
  }
}
.container.concert article.main-event header .year-picker a.active {
  opacity: 0.6;
  border: none;
}
.container.concert article.main-event header .tickets-prices {
  font-size: 0.6em;
  padding-bottom: 6vh;
}
.container.concert article.main-event header .btns {
  padding-bottom: 6vh;
}
.container.concert article.main-event header .btns a {
  text-decoration: none;
  color: #fff;
  background-color: #009ce0;
  padding: 1.2vh 4vw;
  text-transform: uppercase;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 0.7em;
  margin-right: 5px;
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event header .btns a {
    padding: 1.2vh 2vw;
    font-size: 0.6em;
  }
}
@media only screen and (min-width: 1400px) {
  .container.concert article.main-event header .btns a {
    padding: 1vh 1.6vw;
    font-size: 0.55em;
  }
}
.container.concert article.main-event header .btns a img {
  width: 20px;
  position: relative;
  top: 4px;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event header .btns a img {
    width: 30px;
    top: 8px;
  }
}
.container.concert article.main-event header .btns a.dark {
  background-color: rgba(0, 0, 0, 0.4);
  color: #fff;
}
.container.concert article.main-event header .btns a:hover {
  background-color: #eb6e07;
}
.container.concert article.main-event header .btns a:last-child {
  margin-right: 0;
}
.container.concert article.main-event .photo {
  position: relative;
  width: 100%;
  height: 40vh;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  margin-bottom: 5vh;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event .photo {
    position: fixed;
    width: 50%;
    top: 0;
    left: 0;
    height: 100vh;
  }
}
.container.concert article.main-event .photo .play-icon {
  position: absolute;
  top: 50vh;
  width: 70px;
  height: 70px;
  left: 50%;
  margin-left: -35px;
}
.container.concert article.main-event .photo .play-icon img {
  width: 100%;
}
.container.concert article.main-event .video {
  display: none;
  min-height: 500px;
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  height: 100%;
  bottom: 0;
  background: rgba(0, 0, 0, 0.44);
  z-index: 33;
}
.container.concert article.main-event .video .stopicon {
  display: none;
  position: fixed;
  right: 100px;
  top: 100px;
  width: 100px;
  z-index: 20;
  height: 50px;
  cursor: pointer;
}
.container.concert article.main-event .video iframe {
  width: 80%;
  overflow: hidden;
  border: 0px;
  height: 100%;
}
.container.concert article.main-event .event-content {
  padding-bottom: 6vh;
  order: 2;
}
.container.concert article.main-event .event-content .body-text {
  max-width: 800px;
  width: 90%;
  margin: 0 auto;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event .event-content .body-text {
    width: 70%;
    text-align: left;
  }
}
.container.concert article.main-event .event-content .body-text.ingress {
  margin-top: 4vh;
  font-size: 1.2em;
  margin-bottom: 4vh;
}
.container.concert article.main-event .event-content .body-text.ingress strong {
  font-weight: 500;
}
.container.concert article.main-event .event-content .body-text p,
.container.concert article.main-event .event-content .body-text div {
  font-size: 0.8em;
  margin-bottom: 1vh;
  line-height: 1.6rem;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event .event-content .body-text p,
  .container.concert article.main-event .event-content .body-text div {
    font-size: 0.55em;
    line-height: 0.9rem;
  }
}
.container.concert article.main-event .event-content .body-text p b,
.container.concert article.main-event .event-content .body-text div b,
.container.concert article.main-event .event-content .body-text p strong,
.container.concert article.main-event .event-content .body-text div strong {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
}
.container.concert article.main-event .event-content .body-text p img,
.container.concert article.main-event .event-content .body-text div img {
  height: auto;
  width: 100%;
}
.container.concert article.main-event .event-content .body-text iframe {
  max-width: 100%;
  overflow: hidden;
  border: 0;
}
.container.concert article.main-event .event-content .body-text iframe#ticketcoIframe {
  margin-top: 4vh;
}
.container.concert article.main-event .event-content .external-iframes {
  display: grid;
}
.container.concert article.main-event .event-content .external-iframes.fifty {
  grid-template-columns: 1fr;
}
.container.concert article.main-event .event-content .external-iframes .soundcloud {
  width: 90%;
  margin: 2vh auto 2vh;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event .event-content .external-iframes .soundcloud {
    width: 80%;
  }
}
.container.concert article.main-event .event-content .external-iframes .soundcloud .clip {
  margin-bottom: 3vh;
}
.container.concert article.main-event .event-content .external-iframes .soundcloud .clip iframe {
  max-width: 100%;
  width: 80%;
  overflow: hidden;
  border: 0px;
}
.container.concert article.main-event .event-content .external-iframes .spotify {
  width: 90%;
  margin: 2vh auto 3vh;
}
@media only screen and (min-width: 1024px) {
  .container.concert article.main-event .event-content .external-iframes .spotify {
    width: 80%;
  }
}
.container.concert article.main-event .event-content .external-iframes .spotify .clip {
  margin-bottom: 3vh;
}
.container.concert article.main-event .event-content .external-iframes .spotify .clip iframe {
  max-width: 100%;
  width: 80%;
  overflow: hidden;
  border: 0px;
}
.container.date .main-event header h1 {
  padding-bottom: 4vh;
  font-size: 1.5em;
  color: #7e1c7d !important;
}
.container.date .main-event .photo {
  height: 50vh !important;
}
@media only screen and (min-width: 1024px) {
  .container.date .main-event .photo {
    height: 100vh !important;
  }
}
.container.date .main-event .photo .vignett {
  width: 70%;
  margin: auto;
  padding-top: 4em;
}
@media only screen and (min-width: 1024px) {
  .container.date .main-event .photo .vignett {
    padding-top: 6em;
  }
}
.container.date .main-event .photo .vignett img {
  width: 100%;
}
.container.date .main-event .photo .text {
  text-align: center;
  text-transform: uppercase;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  color: #fff;
  font-size: 1.5em;
}
@media only screen and (min-width: 1024px) {
  .container.date .main-event .photo .text {
    font-size: 1.2em;
  }
}
.container.date .main-event .event-content .body-text {
  max-width: 800px;
}
.container.date .main-event .event-content .body-text.ingress {
  margin-top: 1vh !important;
}
.container.date .main-event .event-content .body-text.ingress p {
  font-size: 0.6em;
  font-weight: 300;
}
@media only screen and (min-width: 1024px) {
  .container.date .main-event .event-content .body-text.ingress p {
    font-size: 0.4em;
  }
}
.container.date .main-event .event-content .body-text.ingress p.small {
  font-size: 0.5em;
}
@media only screen and (min-width: 1024px) {
  .container.date .main-event .event-content .body-text.ingress p.small {
    font-size: 0.3em;
  }
}
.container.date .main-event .event-content .body-text .date-container {
  text-align: center;
  border: 1px solid #000;
  margin: 1em auto;
}
@media only screen and (min-width: 1024px) {
  .container.date .main-event .event-content .body-text .date-container {
    font-size: 0.7em;
  }
}
.container.date .main-event .event-content .body-text .date-container .date-category {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  padding-top: 1em;
}
.container.date .main-event .event-content .body-text .date-container .date-concert .title {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
}
.container.date .main-event .event-content .body-text .date-container .date-concert .location {
  font-size: 0.6em;
  margin: 0 auto 1em;
  width: 80%;
}
.container.date .main-event .event-content .body-text .date-container .date-concert .btns {
  padding-bottom: 6vh;
}
.container.date .main-event .event-content .body-text .date-container .date-concert .btns a {
  text-decoration: none;
  color: #fff;
  background-color: #7e1c7d;
  padding: 1.2vh 4vw;
  text-transform: uppercase;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 0.7em;
  margin-right: 5px;
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
}
@media only screen and (min-width: 1024px) {
  .container.date .main-event .event-content .body-text .date-container .date-concert .btns a {
    padding: 1.2vh 2vw;
    font-size: 0.6em;
  }
}
@media only screen and (min-width: 1400px) {
  .container.date .main-event .event-content .body-text .date-container .date-concert .btns a {
    padding: 1vh 1.6vw;
    font-size: 0.55em;
  }
}
.container.date .main-event .event-content .body-text .date-container .date-concert .btns a:hover {
  background-color: #eb6e07;
}
.container.date .iframe {
  display: none;
  background: rgba(0, 0, 0, 0.81);
  position: fixed;
  top: 70px;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: scroll;
}
.container.date .iframe .close {
  padding: 10px 20px;
  position: fixed;
  top: 90px;
  right: 30px;
  background: #fff;
  z-index: 3243;
  font-size: 0.57rem;
  cursor: pointer;
}
.container.date .iframe iframe {
  max-width: 400px;
  margin: auto;
}
.container.artist article.main-event header h1 {
  padding: 10vh 0;
  margin-top: 0;
}
@media only screen and (min-width: 1024px) {
  .container.artist article.main-event header h1 {
    padding: 5vh 0 3vh;
  }
}
.container.article {
  text-align: center;
}
.container.article article.main-article {
  width: 100%;
  margin-right: 0;
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article {
    width: 50%;
    margin-right: 0;
    margin-left: 50%;
  }
}
.container.article article.main-article.fullsize {
  width: 70%;
  margin-right: 15%;
  margin-left: 15%;
}
@media only screen and (max-width: 599px) {
  .container.article article.main-article.fullsize {
    width: 95%;
    margin-left: 2.5%;
    margin-right: 2.5%;
  }
}
.container.article article.main-article.fullsize header {
  padding-top: 10vh;
}
.container.article article.main-article.fullsize .body-text {
  max-width: 800px;
}
.container.article article.main-article.fullsize .body-text img {
  max-width: 100%;
}
.container.article article.main-article header {
  padding-top: 52vh;
  text-align: left;
  color: #000;
  width: 80%;
  margin: 0 auto 1vh;
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article header {
    padding-top: 15vh;
    width: 70%;
    margin: 0 auto 1vh;
  }
}
.container.article article.main-article header h1 {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 1.6em;
  width: 100%;
  margin: 0 auto;
  text-transform: none;
  padding-bottom: 1vh;
  color: #000;
  line-height: 1em;
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article header h1 {
    padding-bottom: 4vh;
  }
}
.container.article article.main-article header .subtitle {
  font-size: 0.8em;
  padding-bottom: 10vh;
}
.container.article article.main-article header .date {
  font-size: 0.55em;
  color: rgba(0, 0, 0, 0.4);
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article header .date {
    font-size: 0.4em;
  }
}
.container.article article.main-article header .btns {
  padding-bottom: 8vh;
}
.container.article article.main-article header .btns a {
  text-decoration: none;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.55);
  padding: 1.2vh 4vw;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.7em;
  margin-right: 5px;
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article header .btns a {
    font-size: 0.5em;
    padding: 1.2vh 1.6vw;
  }
}
.container.article article.main-article header .btns a img {
  width: 20px;
  position: relative;
  top: 4px;
}
.container.article article.main-article header .btns a.dark {
  background-color: rgba(0, 0, 0, 0.4);
  color: #fff;
}
.container.article article.main-article header .btns a:last-child {
  margin-right: 0;
}
.container.article article.main-article header .btns a:hover {
  background-color: #eb6e07;
}
.container.article article.main-article .article-content {
  padding-bottom: 6vh;
}
.container.article article.main-article .article-content .photo {
  position: absolute;
  width: 100%;
  height: 40vh;
  top: 50px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  margin: 0 auto 5vh;
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article .article-content .photo {
    height: 100vh;
    width: 50%;
    position: fixed;
    top: 0;
    left: 0;
  }
}
.container.article article.main-article .article-content .photo .play-icon {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 50px;
  height: 50px;
  cursor: pointer;
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article .article-content .photo .play-icon {
    top: 100px;
    right: 50px;
    width: 70px;
    height: 70px;
  }
}
.container.article article.main-article .article-content .photo .play-icon img {
  width: 100%;
}
.container.article article.main-article .article-content .video {
  display: none;
  min-height: 500px;
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  height: 100%;
  bottom: 0;
  background: rgba(0, 0, 0, 0.44);
  z-index: 33;
}
.container.article article.main-article .article-content .video .stopicon {
  display: none;
  position: fixed;
  right: 100px;
  top: 100px;
  width: 100px;
  z-index: 20;
  height: 50px;
  cursor: pointer;
}
.container.article article.main-article .article-content .video iframe {
  width: 80%;
  overflow: hidden;
  border: 0px;
  height: 100%;
}
.container.article article.main-article .article-content .subheading {
  width: 80%;
  margin: 0 auto 4vh;
  text-align: left;
  font-size: 1.1em;
  line-height: 1.3em;
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article .article-content .subheading {
    font-size: 0.8em;
    width: 70%;
  }
}
.container.article article.main-article .article-content .subheading img {
  max-width: 100%;
  height: auto;
}
.container.article article.main-article .article-content .body-text {
  max-width: 800px;
  width: 80%;
  margin: 0 auto;
  text-align: left;
  font-size: 0.8em;
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article .article-content .body-text {
    font-size: 0.5em;
  }
}
.container.article article.main-article .article-content .body-text a {
  color: #009ce0;
}
.container.article article.main-article .article-content .body-text b,
.container.article article.main-article .article-content .body-text strong {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article .article-content .body-text {
    width: 70%;
    font-size: 0.6em;
  }
}
.container.article article.main-article .article-content .body-text p {
  margin-bottom: 3vh;
}
.container.article article.main-article .article-content .body-text iframe {
  max-width: 100%;
}
.container.article article.main-article .article-content .body-quote p {
  width: 100%;
  margin: 0 auto;
  background-color: transparent;
  padding: 10% 5% 5%;
  margin-bottom: 7vh;
  color: #7e1c7d;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 1.6em;
  line-height: 1.1em;
  text-align: center;
  quotes: "\201C" "\201D" "\2018" "\2019";
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article .article-content .body-quote p {
    width: 60%;
    font-size: 1.4em;
    margin-bottom: 4vh;
  }
}
.container.article article.main-article .article-content .body-quote p:before {
  content: open-quote;
  font-size: 2.5em;
  line-height: 0.1em;
  margin-right: 0.03em;
  vertical-align: -0.2em;
}
.container.article article.main-article .article-content .inline-photo {
  width: 96%;
  margin: 0 auto 4vh;
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article .article-content .inline-photo {
    width: 80%;
    margin: 10vh auto 4vh;
    max-height: 50vh;
    overflow: hidden;
  }
}
.container.article article.main-article .article-content .inline-photo img {
  width: 100%;
}
.container.article article.main-article .article-content .soundcloud {
  width: 90%;
  margin: 4vh auto 6vh;
}
@media only screen and (min-width: 1024px) {
  .container.article article.main-article .article-content .soundcloud {
    width: 80%;
    margin: 6vh auto 3vh;
  }
}
.container.article article.main-article .article-content .soundcloud .clip {
  margin-bottom: 3vh;
}
.container.article article.main-article .article-content .soundcloud .clip iframe {
  max-width: 100%;
  height: 110px;
  overflow: hidden;
  border: 0px;
}
.container.info {
  padding-top: 60px;
}
.container.info .archive-content {
  text-align: center;
}
.container.info .archive-header {
  margin-top: 0.3rem;
  margin-bottom: 2rem;
  text-transform: none;
  font-size: 2em;
}
.container.info .scroll-up {
  position: fixed;
  z-index: 2000;
  width: 50px;
  height: 50px;
  right: 10px;
  bottom: 10px;
  background-color: rgba(0, 0, 0, 0.3);
  text-align: center;
  padding-top: 12px;
  cursor: pointer;
  -webkit-transform: matrix(1, 0, 0, 1, 100, 0);
  -moz-transform: matrix(1, 0, 0, 1, 100, 0);
  -o-transform: matrix(1, 0, 0, 1, 100, 0);
  transform: matrix(1, 0, 0, 1, 100, 0);
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
}
@media only screen and (min-width: 1024px) {
  .container.info .scroll-up {
    padding-top: 0;
    width: 60px;
    height: 60px;
  }
  .container.info .scroll-up:hover {
    background-color: rgba(0, 0, 0, 0.6);
  }
}
.container.info .scroll-up img {
  width: 60%;
}
.container.info .photo {
  margin-bottom: 3vh;
}
.container.info .photo img {
  width: 100%;
  position: relative;
}
.container.info h1 {
  max-width: 800px;
  width: 86%;
  /*text-align: center;*/
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  line-height: 0.9em;
  margin: 7vh auto 3vh;
  font-size: 1.5em;
}
@media only screen and (min-width: 1024px) {
  .container.info h1 {
    font-size: 1.6em;
    width: 50%;
  }
}
.container.info h2 {
  text-align: center;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.9em;
  width: 80%;
  margin: 0 auto;
}
@media only screen and (min-width: 1024px) {
  .container.info h2 {
    font-size: 0.8em;
    width: 60%;
  }
}
.container.info .body-text {
  max-width: 800px;
  width: 80%;
  margin: 0 auto;
}
@media only screen and (min-width: 1024px) {
  .container.info .body-text {
    font-size: 0.6em;
    width: 60%;
  }
}
.container.info .body-text:not(:last-child) {
  margin-bottom: 30px;
}
@media only screen and (min-width: 1024px) {
  .container.info .body-text:not(:last-child) {
    margin-bottom: 60px;
  }
}
.container.info .body-text h1,
.container.info .body-text h2,
.container.info .body-text h3,
.container.info .body-text h4,
.container.info .body-text h5 {
  margin: 0;
}
.container.info article h3 {
  width: 86%;
  margin: 8vh auto 0;
  text-transform: uppercase;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 1.3em;
}
@media only screen and (min-width: 1024px) {
  .container.info article h3 {
    width: 50%;
    margin: 8vh auto 1vh;
    font-size: 1em;
  }
}
.container.info article h4 {
  width: 86%;
  margin: 2vh auto;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 1.1em;
}
@media only screen and (min-width: 1024px) {
  .container.info article h4 {
    font-size: 0.7em;
    width: 50%;
    margin: 0 auto;
  }
}
.container.info article .video {
  width: 86%;
  margin: 8vh auto;
  margin-top: 3vh;
  font-size: 0.8em;
}
@media only screen and (min-width: 1024px) {
  .container.info article .video {
    width: 50%;
    font-size: 0.5em;
  }
}
.container.info article .video iframe {
  border: 0;
  max-width: 100%;
  min-height: 400px;
}
.container.info article .body-text {
  max-width: 800px;
  width: 86%;
  margin: 8vh auto;
  margin-top: 3vh;
  font-size: 0.8em;
}
@media only screen and (min-width: 1024px) {
  .container.info article .body-text {
    width: 50%;
    font-size: 0.5em;
  }
}
.container.info article .body-text p {
  margin-bottom: 3vh;
}
.container.info article .body-text.festivals a {
  display: inline-block;
  border-bottom: 3px solid #000;
  text-decoration: none;
  color: #000;
  margin-right: 3vw;
}
@media only screen and (min-width: 1024px) {
  .container.info article .body-text.festivals a {
    margin-right: 1vw;
  }
}
.container.info article .inline-photo {
  width: 92%;
  margin: 8vh auto;
}
@media only screen and (min-width: 1024px) {
  .container.info article .inline-photo {
    width: 60%;
    max-height: 50vh;
    overflow: hidden;
  }
}
.container.info article .inline-photo img {
  width: 100%;
}
.container.press {
  padding-top: 60px;
}
@media only screen and (min-width: 1024px) {
  .container.press {
    padding-top: 70px;
  }
}
.container.press h2 {
  font-size: 1em;
  line-height: 1em;
  margin-bottom: 0.5vh;
}
@media only screen and (min-width: 1024px) {
  .container.press h2 {
    margin-bottom: 2vh;
  }
}
.container.press p {
  font-size: 0.7em;
}
@media only screen and (min-width: 1024px) {
  .container.press p {
    font-size: 0.5em;
  }
}
.container.press p a {
  color: inherit;
}
.container.press .photo {
  position: relative;
}
.container.press .photo img {
  width: 100%;
}
.container.press .photo .download-btn {
  position: absolute;
  z-index: 2;
  bottom: 20px;
  text-align: center;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .container.press .photo .download-btn {
    bottom: 80px;
  }
}
.container.press .photo .download-btn a {
  background-color: #fff;
  color: #eb6e07;
  text-decoration: none;
  font-size: 0.8em;
  padding: 1vh 3vw;
  border: 6px solid #eb6e07;
  text-decoration: underline;
}
@media only screen and (min-width: 1024px) {
  .container.press .photo .download-btn a {
    font-size: 0.7em;
    padding: 0.5vh 1vw;
  }
}
.container.press .pressekontakt {
  background-color: #7e1c7d;
  width: 100%;
  color: #fff;
  padding: 5vw;
}
@media only screen and (min-width: 1024px) {
  .container.press .pressekontakt {
    width: 33.3333333%;
    padding: 2vw;
    height: 35vh;
    float: left;
  }
}
.container.press .akkreditering {
  background-color: #009ce0;
  width: 100%;
  color: #fff;
  padding: 5vw;
}
@media only screen and (min-width: 1024px) {
  .container.press .akkreditering {
    width: 33.3333333%;
    padding: 2vw;
    height: 35vh;
    float: left;
  }
}
.container.press .pressemeldinger {
  background-color: #eb6e07;
  width: 100%;
  color: #fff;
  padding: 5vw;
}
@media only screen and (min-width: 1024px) {
  .container.press .pressemeldinger {
    width: 33.3333333%;
    padding: 2vw;
    height: 35vh;
    float: left;
  }
}
.container.press .pressemeldinger .newsletter-form {
  margin-top: 3vh;
}
.container.press .pressemeldinger .newsletter-form .form-element {
  display: inline-block;
  vertical-align: top;
}
@media only screen and (min-width: 1024px) {
  .container.press .pressemeldinger .newsletter-form .form-element {
    text-align: left;
  }
}
.container.press .pressemeldinger .newsletter-form .form-element:first-child {
  text-align: right;
}
.container.press .pressemeldinger .newsletter-form .form-element input {
  background-color: #fff;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.6em;
  border: 0px;
  color: #000;
  -webkit-appearance: none;
  border-radius: 0;
  padding: 1.5vh 4vw;
}
@media only screen and (min-width: 1024px) {
  .container.press .pressemeldinger .newsletter-form .form-element input {
    font-size: 0.5em;
    padding: 1vh 1.5vw;
  }
}
.container.press .pressemeldinger .newsletter-form .form-element input[type="submit"] {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  width: auto;
  background-color: #000;
  color: #fff;
}
.container.press .pressearkiv,
.container.press .pressemateriell {
  padding: 5vw;
}
@media only screen and (min-width: 1024px) {
  .container.press .pressearkiv,
  .container.press .pressemateriell {
    padding: 2vw;
    width: 50%;
    margin: 0 auto;
    float: left;
  }
}
.container.press .pressearkiv h2,
.container.press .pressemateriell h2 {
  margin-top: 2rem;
  margin-bottom: 0.25rem;
}
.container.press .pressearkiv h4,
.container.press .pressemateriell h4 {
  margin-top: 2.5vh;
}
@media only screen and (min-width: 1024px) {
  .container.press .pressearkiv h4,
  .container.press .pressemateriell h4 {
    font-size: 0.7em;
  }
}
.container.press .pressearkiv div,
.container.press .pressemateriell div {
  font-size: 0.9rem;
}
.container.press .pressearkiv p,
.container.press .pressemateriell p {
  font-size: 0.9rem;
}
.container.press .pressearkiv a,
.container.press .pressemateriell a {
  display: block;
  margin-bottom: 0.25rem;
  color: inherit;
  font-size: 0.8em;
}
.container.press .pressemateriell {
  background-color: rgba(0, 0, 0, 0.1);
}
.container.press .mynewsdesk-follow {
  width: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  padding: 5vw;
}
.container.press .mynewsdesk-follow h2 {
  margin-bottom: 3vh;
}
@media only screen and (min-width: 1024px) {
  .container.press .mynewsdesk-follow h2 {
    margin-bottom: 2vh;
  }
}
.container.press .mynewsdesk-follow p a {
  display: inline-block;
  margin-top: 2vh;
}
@media only screen and (min-width: 1024px) {
  .container.press .mynewsdesk-follow {
    padding: 2vw;
    float: left;
    text-align: center;
    margin-top: 1px;
    margin-bottom: 1px;
  }
}
a.home {
  width: 100%;
  display: block;
  position: relative;
  margin-bottom: 10vh;
  text-decoration: none;
  color: #000;
}
a.home:focus {
  outline: 3px solid #ea6d09;
  outline-offset: 6px;
}
a.home:hover {
  text-decoration: underline;
}
@media only screen and (min-width: 1024px) {
  a.home {
    width: 28%;
    display: inline-block;
    vertical-align: top;
    margin-right: 3%;
    text-align: left;
  }
}
a.home.pressrelease .photo-container .photo {
  -webkit-filter: grayscale(0);
  -moz-filter: grayscale(0);
  -ms-filter: grayscale(0);
  -o-filter: grayscale(0);
  filter: grayscale(0);
}
a.home.standard .photo-container .photo {
  /*-webkit-filter: grayscale(1);
                -moz-filter: grayscale(1);
                -ms-filter: grayscale(1);
                -o-filter: grayscale(1);
                filter: grayscale(1);*/
}
a.home.standard .photo-container .photo:hover {
  -webkit-filter: grayscale(1);
  -moz-filter: grayscale(1);
  -ms-filter: grayscale(1);
  -o-filter: grayscale(1);
  filter: grayscale(1);
}
a.home .photo-container {
  width: 100%;
  height: 50vh;
  overflow: hidden;
  position: relative;
}
@media only screen and (min-width: 1400px) {
  a.home .photo-container {
    height: 40vh;
  }
}
a.home .photo-container .photo {
  position: absolute;
  width: 100%;
  height: 50vh;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-transition: all 1000ms;
  -moz-transition: all 1000ms;
  -ms-transition: all 1000ms;
  -o-transition: all 1000ms;
  transition: all 1000ms;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
a.home .photo-container .photo:hover {
  -webkit-filter: grayscale(1);
  -moz-filter: grayscale(1);
  -ms-filter: grayscale(1);
  -o-filter: grayscale(1);
  filter: grayscale(1);
}
@media only screen and (min-width: 1400px) {
  a.home .photo-container .photo {
    height: 40vh;
  }
}
a.home .photo-container .photo.android {
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  -o-transition: none;
  transition: none;
}
a.home .photo-container .photoprofile {
  background-image: url(images/konsetp-2016-mobil.jpg);
}
@media only screen and (min-width: 1024px) {
  a.home .photo-container .photoprofile {
    background-image: url(images/konsetp-2016-desktop.jpg);
  }
}
a.home .photo-container .photo-overlay {
  background-color: rgba(0, 0, 0, 0.4);
  width: 100%;
  height: 100%;
  position: absolute;
  pointer-events: none;
  opacity: 0.7;
  -webkit-transition: opacity 1000ms;
  -moz-transition: opacity 1000ms;
  -ms-transition: opacity 1000ms;
  -o-transition: opacity 1000ms;
  transition: opacity 1000ms;
}
a.home .photo-container h2 {
  position: absolute;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  bottom: 20px;
  color: #fff;
  text-transform: uppercase;
  width: 55%;
  margin-left: 20px;
  line-height: 1em;
  font-size: 1.4em;
  pointer-events: none;
}
a.home .photo-container h2.article-heading {
  bottom: 20px;
}
@media only screen and (min-width: 1024px) {
  a.home .photo-container h2 {
    width: 90%;
    font-size: 0.7em;
    bottom: 80px;
    text-align: center;
  }
}
a.home .photo-container h2 .date {
  position: relative;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.5em;
  line-height: 1.2em;
  display: block;
}
a.home .photo-container h2 .subtitle {
  position: relative;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.5em;
  line-height: 1.2em;
  display: block;
  text-transform: none;
}
a.home .photo-container .btn.buy {
  position: absolute;
  bottom: 20px;
  right: 20px;
}
@media only screen and (min-width: 1024px) {
  a.home .photo-container .btn.buy {
    width: 100%;
    text-align: center;
    right: auto;
  }
}
a.home .photo-container .btn.buy a {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 0.6em;
  display: block;
  width: auto;
  background-color: #000;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  padding: 1.5vh 3vw;
}
@media only screen and (min-width: 1024px) {
  a.home .photo-container .btn.buy a {
    padding: 1.2vh 1.2vw;
    font-size: 0.4em;
    display: inline-block;
    -webkit-transition: background-color 300ms;
    -moz-transition: background-color 300ms;
    -ms-transition: background-color 300ms;
    -o-transition: background-color 300ms;
    transition: background-color 300ms;
  }
}
a.home .photo-container .btn.buy a:hover {
  background-color: #eb6e07 !important;
}
a.home .photo-container .btns {
  position: absolute;
  bottom: 20px;
  z-index: 2;
  text-align: center;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  a.home .photo-container .btns {
    bottom: 35px;
  }
}
@media only screen and (min-width: 1024px) {
  a.home .photo-container .btns .intro-txt {
    display: none;
  }
}
a.home .photo-container .btns .intro-txt p {
  color: #fff;
  width: 70%;
  margin: 0 auto 2vh;
  font-size: 0.9em;
  line-height: 1.1em;
}
a.home .photo-container .btns .intro-txt-desktop {
  display: none;
}
@media only screen and (min-width: 1024px) {
  a.home .photo-container .btns .intro-txt-desktop {
    display: block;
  }
  a.home .photo-container .btns .intro-txt-desktop h3 {
    font-family: "futura-pt";
    font-weight: 700;
    font-style: normal;
    text-transform: uppercase;
    color: #fff;
    font-size: 0.7em;
  }
  a.home .photo-container .btns .intro-txt-desktop p {
    color: #fff;
    width: 80%;
    margin: 0 0 6vh;
    font-size: 0.6em;
    line-height: 1.1em;
  }
}
a.home .photo-container .btns a {
  display: inline-block;
  background-color: #000;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 0.55em;
  padding: 1.5vh 5vw;
  -webkit-transition: all 300ms;
  -moz-transition: all 300ms;
  -ms-transition: all 300ms;
  -o-transition: all 300ms;
  transition: all 300ms;
  -webkit-box-shadow: 0 14px 16px -10px rgba(72, 37, 1, 0.81);
  -moz-box-shadow: 0 14px 16px -10px rgba(72, 37, 1, 0.81);
  box-shadow: 0 14px 16px -10px rgba(72, 37, 1, 0.81);
}
@media only screen and (min-width: 1024px) {
  a.home .photo-container .btns a {
    font-size: 0.45em;
    padding: 1.3vh 2vw;
  }
}
a.home .photo-container .btns a#open-program-filters {
  margin-right: 2vw;
}
a.home .photo-container .btns a:hover {
  -webkit-box-shadow: 0 20px 16px -10px rgba(72, 37, 1, 0.81);
  -moz-box-shadow: 0 20px 16px -10px rgba(72, 37, 1, 0.81);
  box-shadow: 0 20px 16px -10px rgba(72, 37, 1, 0.81);
  -webkit-transform: rotateX(90);
  -moz-transform: rotateX(90);
  -ms-transform: rotateX(90);
  -o-transform: rotateX(90);
  transform: rotateX(90);
}
a.home .subheading-link {
  text-decoration: none;
  color: inherit;
  font-size: inherit;
}
a.home .subheading {
  width: 90%;
  margin: 2vh auto 0;
  font-size: 0.8em;
  position: relative;
  -webkit-transition: all 300ms;
  -moz-transition: all 300ms;
  -ms-transition: all 300ms;
  -o-transition: all 300ms;
  transition: all 300ms;
}
@media only screen and (min-width: 1024px) {
  a.home .subheading {
    font-size: 0.5em;
  }
}
a.home .subheading .play {
  position: absolute;
  right: 2px;
  top: 0px;
  width: 20px;
  height: 20px;
  opacity: 0.4;
}
a.home .subheading .play img {
  width: 100%;
}
a.home .subheading .soundclip {
  position: absolute;
  right: 32px;
  top: 0px;
  width: 20px;
  height: 20px;
  opacity: 0.4;
}
a.home .subheading .soundclip img {
  width: 100%;
}
a.home .subheading .tag {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 0.7em;
  text-transform: uppercase;
}
a.home .subheading .date {
  text-transform: uppercase;
  color: #808080;
  font-size: 0.7em;
}
a.home.profile {
  margin-bottom: 0;
  /*padding-bottom: 2vh;*/
  background-color: #000;
}
@media only screen and (min-width: 1024px) {
  a.home.profile {
    width: 100%;
    margin-bottom: 0;
    margin-right: 0;
    padding-bottom: 0;
    background-color: transparent;
  }
}
a.home.profile .photo-container {
  height: 60vh;
}
@media only screen and (min-width: 1400px) {
  a.home.profile .photo-container {
    height: 75vh;
  }
}
a.home.profile .photo-container .photo {
  height: 60vh;
  background-position: top center;
}
@media only screen and (min-width: 1400px) {
  a.home.profile .photo-container .photo {
    background-position: top center;
    height: 75vh;
  }
}
a.home.mobile-hover .photo-container .photo-overlay {
  opacity: 0;
}
a.home.mobile-hover .photo-container .photo {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
}
@media only screen and (min-width: 1024px) {
  a.home.mobile-hover .photo-container .photo {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
  }
}
a.home.mobile-hover .photo-container .photo.android {
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  -o-transition: none;
  transition: none;
}
a.home.mobile-hover .photo-container .btn.buy a {
  background-color: #000;
}
a.home.mobile-hover .subheading {
  opacity: 0.7;
}
a.home.mobile-hover .subheading p {
  text-decoration: underline;
}
a.home:last-child {
  margin-right: 0;
}
article.home.profile .photo-container {
  height: auto !important;
}
article.home.profile .btns {
  background: rgba(0, 0, 0, 0.8);
  text-align: center;
  padding-top: 1.2rem;
}
@media only screen and (min-width: 1024px) {
  article.home.profile .btns {
    padding: 0.8rem 0;
  }
}
article.home.profile .btns.slim {
  padding: 1rem 0;
}
article.home.profile .btns a {
  background: #eb6e07;
}
article.home.profile .desktop {
  display: none;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  article.home.profile .desktop {
    display: block;
  }
}
article.home.profile .mobile {
  display: block;
  max-width: 100%;
}
@media only screen and (min-width: 1024px) {
  article.home.profile .mobile {
    display: none;
  }
}
.searchresults {
  width: 80%;
  margin: 0 auto;
}
@media only screen and (min-width: 1024px) {
  .searchresults {
    width: 60%;
  }
}
@media only screen and (min-width: 1400px) {
  .searchresults {
    width: 40%;
  }
}
.searchresults h1 {
  margin-top: 16vh;
  margin-bottom: 4vh;
  font-size: 1.6em;
}
@media only screen and (min-width: 1024px) {
  .searchresults h1 {
    font-size: 1.3em;
  }
}
.searchresults article {
  margin-bottom: 4vh;
}
.searchresults article a {
  text-decoration: none;
  color: #000;
}
.searchresults article a:hover {
  text-decoration: underline;
}
.searchresults article a h2 {
  font-size: 1em;
}
@media only screen and (min-width: 1024px) {
  .searchresults article a h2 {
    font-size: 0.8em;
  }
}
.searchresults article a p {
  font-size: 0.7em;
}
@media only screen and (min-width: 1024px) {
  .searchresults article a p {
    font-size: 0.5em;
  }
}
aside.related-concerts {
  padding-top: 3vh;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts {
    text-align: left;
    margin-left: 4%;
  }
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts .row {
    margin-top: 3vh;
  }
}
@media only screen and (max-width: 599px) {
  aside.related-concerts h4 {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 3vh;
  }
}
aside.related-concerts h3 {
  width: 90%;
  margin: 0 auto;
  text-transform: uppercase;
  margin-bottom: 4vh;
  line-height: 1em;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts h3 {
    font-size: 0.8em;
  }
}
aside.related-concerts a.consert-item {
  width: 90%;
  position: relative;
  margin: 0 auto 3vh;
  display: block;
  transition: 0.5s all;
}
aside.related-concerts a.consert-item.cancelled .date {
  text-decoration: line-through;
}
aside.related-concerts a.consert-item:hover .concert-image {
  transform: scale(1.1);
}
aside.related-concerts a.consert-item img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition: 0.3s all;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts a.consert-item {
    width: 22%;
    display: inline-block;
    vertical-align: top;
    margin: 0 auto 4vh;
    margin-right: 2%;
    text-align: left;
  }
}
aside.related-concerts a.consert-item .photo-container {
  width: 100%;
  height: 35vh;
  overflow: hidden;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts a.consert-item .photo-container {
    height: 30vh;
  }
}
aside.related-concerts a.consert-item .photo-container .photo {
  position: absolute;
  width: 100%;
  height: 35vh;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-transition: all 1000ms;
  -moz-transition: all 1000ms;
  -ms-transition: all 1000ms;
  -o-transition: all 1000ms;
  transition: all 1000ms;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  -webkit-filter: grayscale(1);
  -moz-filter: grayscale(1);
  -ms-filter: grayscale(1);
  -o-filter: grayscale(1);
  filter: grayscale(1);
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts a.consert-item .photo-container .photo {
    height: 30vh;
  }
}
aside.related-concerts a.consert-item .photo-container .photo.android {
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  -o-transition: none;
  transition: none;
}
aside.related-concerts a.consert-item .photo-container .photoprofile {
  background-image: url(images/profil-2015.jpg);
}
aside.related-concerts a.consert-item .photo-container .photo-overlay {
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#a6000000', GradientType=0);
  /* IE6-9 */
  width: 100%;
  height: 100%;
  position: absolute;
  pointer-events: none;
  opacity: 0.7;
  -webkit-transition: opacity 1000ms;
  -moz-transition: opacity 1000ms;
  -ms-transition: opacity 1000ms;
  -o-transition: opacity 1000ms;
  transition: opacity 1000ms;
  top: 0;
}
aside.related-concerts a.consert-item .photo-container .photo-overlay.orange {
  background-color: #eb6e07;
}
aside.related-concerts a.consert-item .photo-container .photo-overlay.blue {
  background-color: #009ce0;
}
aside.related-concerts a.consert-item .photo-container .label {
  position: absolute;
  z-index: 300;
  max-width: 40%;
  left: 0;
  height: auto;
}
aside.related-concerts a.consert-item .photo-container h2 {
  position: absolute;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  bottom: 15px;
  color: #fff;
  text-transform: uppercase;
  width: 55%;
  margin-left: 15px;
  line-height: 1em;
  font-size: 0.85em;
  pointer-events: none;
  text-align: left;
}
aside.related-concerts a.consert-item .photo-container h2.article-heading {
  bottom: 20px;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts a.consert-item .photo-container h2 {
    bottom: 14px;
    font-size: 0.5em;
    margin-left: 14px;
  }
}
aside.related-concerts a.consert-item .photo-container h2 .date {
  position: relative;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.65em;
  line-height: 1.2em;
  display: block;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts a.consert-item .photo-container h2 .date {
    font-size: 0.65em;
    line-height: 1.4em;
  }
}
aside.related-concerts a.consert-item .photo-container h2 .subtitle {
  position: relative;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.5em;
  line-height: 1.2em;
  display: block;
  text-transform: none;
}
aside.related-concerts a.consert-item .photo-container .btn.buy {
  position: absolute;
  bottom: 15px;
  right: 15px;
  width: auto;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts a.consert-item .photo-container .btn.buy {
    bottom: 14px;
    right: 14px;
  }
}
aside.related-concerts a.consert-item .photo-container .btn.buy a {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 0.55em;
  display: block;
  width: auto;
  background-color: #000;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  padding: 1.5vh 2.5vw;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts a.consert-item .photo-container .btn.buy a {
    padding: 1.1vh 1.1vw;
    font-size: 0.3em;
    display: inline-block;
    -webkit-transition: background-color 300ms;
    -moz-transition: background-color 300ms;
    -ms-transition: background-color 300ms;
    -o-transition: background-color 300ms;
    transition: background-color 300ms;
  }
}
aside.related-concerts a.consert-item .photo-container .btn.buy a:hover {
  background-color: #eb6e07 !important;
}
aside.related-concerts a.consert-item .photo-container .btns {
  position: absolute;
  bottom: 30px;
  z-index: 2;
  text-align: center;
  width: 100%;
}
aside.related-concerts a.consert-item .photo-container .btns a {
  display: inline-block;
  background-color: #eb6e07;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 0.65em;
  padding: 1.5vh 5vw;
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
}
aside.related-concerts a.consert-item .photo-container .btns a:first-child {
  margin-right: 2vw;
}
aside.related-concerts a.consert-item .photo-container .btns a:hover {
  background-color: #000;
}
aside.related-concerts a.consert-item a.subheading-link {
  text-decoration: none;
  color: inherit;
  font-size: inherit;
}
aside.related-concerts a.consert-item .subheading {
  width: 90%;
  margin: 1vh auto 0;
  font-size: 0.8em;
  position: relative;
  text-align: center;
  -webkit-transition: all 300ms;
  -moz-transition: all 300ms;
  -ms-transition: all 300ms;
  -o-transition: all 300ms;
  transition: all 300ms;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts a.consert-item .subheading {
    font-size: 0.5em;
  }
}
aside.related-concerts a.consert-item .subheading .play {
  position: absolute;
  right: 2px;
  top: 0px;
  width: 20px;
  height: 20px;
  opacity: 0.4;
}
aside.related-concerts a.consert-item .subheading .play img {
  width: 100%;
}
aside.related-concerts a.consert-item .subheading .soundclip {
  position: absolute;
  right: 32px;
  top: 0px;
  width: 20px;
  height: 20px;
  opacity: 0.4;
}
aside.related-concerts a.consert-item .subheading .soundclip img {
  width: 100%;
}
aside.related-concerts a.consert-item .subheading .tag {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 0.7em;
  text-transform: uppercase;
}
aside.related-concerts a.consert-item .subheading .date {
  text-transform: uppercase;
  color: #808080;
  font-size: 0.7em;
}
aside.related-concerts a.consert-item.mobile-hover .photo-container .photo-overlay {
  opacity: 0;
}
aside.related-concerts a.consert-item.mobile-hover .photo-container .photo {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
  -webkit-filter: grayscale(0);
  -moz-filter: grayscale(0);
  -ms-filter: grayscale(0);
  -o-filter: grayscale(0);
  filter: grayscale(0);
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts a.consert-item.mobile-hover .photo-container .photo {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
  }
}
aside.related-concerts a.consert-item.mobile-hover .photo-container .photo.android {
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  -o-transition: none;
  transition: none;
}
aside.related-concerts a.consert-item.mobile-hover .photo-container .btn.buy a {
  background-color: #eb6e07;
}
aside.related-concerts a.consert-item.mobile-hover .subheading {
  opacity: 0.7;
}
aside.related-concerts a.consert-item.mobile-hover .subheading p {
  text-decoration: underline;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage {
    padding-top: 0;
    width: 46%;
    margin-left: 54%;
  }
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage article {
    width: 44%;
  }
  aside.related-concerts.subpage article:nth-child(4n+4) {
    margin-right: 2% !important;
  }
  aside.related-concerts.subpage article:nth-child(odd) {
    margin-right: 0 !important;
  }
}
aside.related-concerts.subpage {
  padding-top: 3vh;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage {
    text-align: left;
    margin-left: 4%;
  }
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage .row {
    margin-top: 3vh;
  }
}
aside.related-concerts.subpage h3 {
  width: 90%;
  margin: 0 auto;
  text-transform: uppercase;
  margin-bottom: 4vh;
  line-height: 1em;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage h3 {
    font-size: 0.8em;
  }
}
aside.related-concerts.subpage article {
  width: 90%;
  position: relative;
  margin: 0 auto 3vh;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage article {
    width: 22%;
    display: inline-block;
    vertical-align: top;
    margin: 0 auto 4vh;
    margin-right: 2%;
    text-align: left;
  }
}
aside.related-concerts.subpage article .photo-container {
  width: 100%;
  height: 35vh;
  overflow: hidden;
  position: relative;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage article .photo-container {
    height: 30vh;
  }
}
aside.related-concerts.subpage article .photo-container .photo {
  position: absolute;
  width: 100%;
  height: 35vh;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-transition: all 1000ms;
  -moz-transition: all 1000ms;
  -ms-transition: all 1000ms;
  -o-transition: all 1000ms;
  transition: all 1000ms;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  -webkit-filter: grayscale(1);
  -moz-filter: grayscale(1);
  -ms-filter: grayscale(1);
  -o-filter: grayscale(1);
  filter: grayscale(1);
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage article .photo-container .photo {
    height: 30vh;
  }
}
aside.related-concerts.subpage article .photo-container .photo.android {
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  -o-transition: none;
  transition: none;
}
aside.related-concerts.subpage article .photo-container .photoprofile {
  background-image: url(images/profil-2015.jpg);
}
aside.related-concerts.subpage article .photo-container .photo-overlay {
  background-color: #000;
  width: 100%;
  height: 100%;
  position: absolute;
  pointer-events: none;
  opacity: 0.7;
  -webkit-transition: opacity 1000ms;
  -moz-transition: opacity 1000ms;
  -ms-transition: opacity 1000ms;
  -o-transition: opacity 1000ms;
  transition: opacity 1000ms;
}
aside.related-concerts.subpage article .photo-container .photo-overlay.orange {
  background-color: #eb6e07;
}
aside.related-concerts.subpage article .photo-container .photo-overlay.blue {
  background-color: #009ce0;
}
aside.related-concerts.subpage article .photo-container h2 {
  position: absolute;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  bottom: 15px;
  color: #fff;
  text-transform: uppercase;
  width: 55%;
  margin-left: 15px;
  line-height: 1em;
  font-size: 0.85em;
  pointer-events: none;
  text-align: left;
}
aside.related-concerts.subpage article .photo-container h2.article-heading {
  bottom: 20px;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage article .photo-container h2 {
    bottom: 14px;
    font-size: 0.5em;
    margin-left: 14px;
  }
}
aside.related-concerts.subpage article .photo-container h2 .date {
  position: relative;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.65em;
  line-height: 1.2em;
  display: block;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage article .photo-container h2 .date {
    font-size: 0.65em;
    line-height: 1.4em;
  }
}
aside.related-concerts.subpage article .photo-container h2 .subtitle {
  position: relative;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.5em;
  line-height: 1.2em;
  display: block;
  text-transform: none;
}
aside.related-concerts.subpage article .photo-container .btn.buy {
  position: absolute;
  bottom: 15px;
  right: 15px;
  width: auto;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage article .photo-container .btn.buy {
    bottom: 14px;
    right: 14px;
  }
}
aside.related-concerts.subpage article .photo-container .btn.buy a {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 0.55em;
  display: block;
  width: auto;
  background-color: #000;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  padding: 1.5vh 2.5vw;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage article .photo-container .btn.buy a {
    padding: 1.1vh 1.1vw;
    font-size: 0.3em;
    display: inline-block;
    -webkit-transition: background-color 300ms;
    -moz-transition: background-color 300ms;
    -ms-transition: background-color 300ms;
    -o-transition: background-color 300ms;
    transition: background-color 300ms;
  }
}
aside.related-concerts.subpage article .photo-container .btn.buy a:hover {
  background-color: #eb6e07 !important;
}
aside.related-concerts.subpage article .photo-container .btns {
  position: absolute;
  bottom: 30px;
  z-index: 2;
  text-align: center;
  width: 100%;
}
aside.related-concerts.subpage article .photo-container .btns a {
  display: inline-block;
  background-color: #eb6e07;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 0.65em;
  padding: 1.5vh 5vw;
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
}
aside.related-concerts.subpage article .photo-container .btns a:first-child {
  margin-right: 2vw;
}
aside.related-concerts.subpage article .photo-container .btns a:hover {
  background-color: #000;
}
aside.related-concerts.subpage article a.subheading-link {
  text-decoration: none;
  color: inherit;
  font-size: inherit;
}
aside.related-concerts.subpage article .subheading {
  width: 90%;
  margin: 1vh auto 0;
  font-size: 0.8em;
  position: relative;
  text-align: center;
  -webkit-transition: all 300ms;
  -moz-transition: all 300ms;
  -ms-transition: all 300ms;
  -o-transition: all 300ms;
  transition: all 300ms;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage article .subheading {
    font-size: 0.5em;
  }
}
aside.related-concerts.subpage article .subheading .play {
  position: absolute;
  right: 2px;
  top: 0px;
  width: 20px;
  height: 20px;
  opacity: 0.4;
}
aside.related-concerts.subpage article .subheading .play img {
  width: 100%;
}
aside.related-concerts.subpage article .subheading .soundclip {
  position: absolute;
  right: 32px;
  top: 0px;
  width: 20px;
  height: 20px;
  opacity: 0.4;
}
aside.related-concerts.subpage article .subheading .soundclip img {
  width: 100%;
}
aside.related-concerts.subpage article .subheading .tag {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 0.7em;
  text-transform: uppercase;
}
aside.related-concerts.subpage article .subheading .date {
  text-transform: uppercase;
  color: #808080;
  font-size: 0.7em;
}
aside.related-concerts.subpage article.mobile-hover .photo-container .photo-overlay {
  opacity: 0;
}
aside.related-concerts.subpage article.mobile-hover .photo-container .photo {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
  -webkit-filter: grayscale(0);
  -moz-filter: grayscale(0);
  -ms-filter: grayscale(0);
  -o-filter: grayscale(0);
  filter: grayscale(0);
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage article.mobile-hover .photo-container .photo {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
  }
}
aside.related-concerts.subpage article.mobile-hover .photo-container .photo.android {
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  -o-transition: none;
  transition: none;
}
aside.related-concerts.subpage article.mobile-hover .photo-container .btn.buy a {
  background-color: #eb6e07;
}
aside.related-concerts.subpage article.mobile-hover .subheading {
  opacity: 0.7;
}
aside.related-concerts.subpage article.mobile-hover .subheading p {
  text-decoration: underline;
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage.subpage {
    padding-top: 0;
    width: 46%;
    margin-left: 54%;
  }
}
@media only screen and (min-width: 1024px) {
  aside.related-concerts.subpage.subpage article {
    width: 44%;
  }
  aside.related-concerts.subpage.subpage article:nth-child(4n+4) {
    margin-right: 2% !important;
  }
  aside.related-concerts.subpage.subpage article:nth-child(odd) {
    margin-right: 0 !important;
  }
}
.program-filter-container {
  background-color: rgba(0, 0, 0, 0.8);
  position: relative;
  padding: 1vh 5vw;
}
@media only screen and (min-width: 1024px) {
  .program-filter-container {
    /*padding: 3vh 2vw 1vh;*/
  }
}
.program-filter-container.overview {
  padding: 10vh 5vw 3vh;
}
@media only screen and (min-width: 1024px) {
  .program-filter-container.overview {
    padding: 10vh 2vw 1vh;
  }
}
.program-filter-container.subpage {
  padding-top: 10vh;
}
.program-filter-container .bg-img {
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url("images/profil-2015.jpg");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0;
  z-index: 9;
}
.program-filter-container h5 {
  padding-top: 3vh;
  padding-bottom: 2vh;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  text-align: left;
  font-size: 0.7em;
  line-height: 1em;
  text-transform: uppercase;
  color: #fff;
  position: relative;
  z-index: 10;
}
@media only screen and (min-width: 1024px) {
  .program-filter-container h5 {
    font-size: 0.5em;
    padding-top: 2vh;
  }
}
.program-filter-container .tags {
  position: relative;
  margin: 0 auto;
  text-align: left;
  z-index: 11;
}
@media only screen and (min-width: 1024px) {
  .program-filter-container .tags {
    width: 48%;
    display: inline-block;
    vertical-align: top;
  }
}
.program-filter-container .tags a.program-filter-category {
  position: relative;
  width: auto;
  padding: 1.5vh 4vw;
  margin: 0.1% 0.1% 1.5%;
  display: inline-block;
  vertical-align: top;
  text-align: center;
  font-size: 0.8em;
  text-decoration: none;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.2);
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
}
@media only screen and (min-width: 1024px) {
  .program-filter-container .tags a.program-filter-category {
    padding: 0.8vh 1vw;
    font-size: 0.5em;
  }
}
.program-filter-container .tags a.program-filter-category.active {
  background: #eb6e07;
}
.program-filter-container .tags a.program-filter-category:hover {
  background-color: rgba(235, 110, 7, 0.7);
}
.program-filter-container .dates {
  position: relative;
  padding: 0 0 3vh;
  z-index: 12;
  margin: 0 auto;
  text-align: left;
}
@media only screen and (min-width: 1024px) {
  .program-filter-container .dates {
    width: 48%;
    display: inline-block;
    vertical-align: top;
    padding: 0;
  }
}
.program-filter-container .dates a.program-filter-day {
  text-decoration: none;
  color: #fff;
  display: inline-block;
  vertical-align: top;
  width: 18vw;
  text-align: center;
  margin: 0.3% 0.1% 1.5%;
  background-color: rgba(0, 0, 0, 0.1);
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
}
@media only screen and (min-width: 1024px) {
  .program-filter-container .dates a.program-filter-day {
    margin: 0.1% 0.1% 1.5%;
    width: 4vw;
  }
}
.program-filter-container .dates a.program-filter-day.all-days .day {
  line-height: 40px;
}
.program-filter-container .dates a.program-filter-day .date-container {
  padding: 0.2vh 4vw;
}
@media only screen and (min-width: 1024px) {
  .program-filter-container .dates a.program-filter-day .date-container {
    padding: 0.2vh 0;
  }
}
.program-filter-container .dates a.program-filter-day .date-container .day {
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.5em;
  text-transform: uppercase;
  padding-top: 7px;
}
@media only screen and (min-width: 1024px) {
  .program-filter-container .dates a.program-filter-day .date-container .day {
    font-size: 0.3em;
  }
}
.program-filter-container .dates a.program-filter-day .date-container .date {
  font-family: "futura-pt";
  font-weight: 300;
  font-style: normal;
  font-size: 1.3em;
  position: relative;
  margin: -4px auto 6px;
}
@media only screen and (min-width: 1024px) {
  .program-filter-container .dates a.program-filter-day .date-container .date {
    font-size: 0.7em;
  }
}
.program-filter-container .dates a.program-filter-day:hover.hover-color19,
.program-filter-container .dates a.program-filter-day.active.hover-color19 {
  background-color: #e5007c !important;
}
.program-filter-container .dates a.program-filter-day:hover.hover-color20,
.program-filter-container .dates a.program-filter-day.active.hover-color20 {
  background-color: #2c357f !important;
}
.program-filter-container .dates a.program-filter-day:hover.hover-color21,
.program-filter-container .dates a.program-filter-day.active.hover-color21 {
  background-color: #babf21 !important;
}
.program-filter-container .dates a.program-filter-day:hover.hover-color22,
.program-filter-container .dates a.program-filter-day.active.hover-color22 {
  background-color: #c20012 !important;
}
.program-filter-container .dates a.program-filter-day:hover.hover-color23,
.program-filter-container .dates a.program-filter-day.active.hover-color23 {
  background-color: #7e1c7d !important;
}
.program-filter-container .dates a.program-filter-day:hover.hover-color24,
.program-filter-container .dates a.program-filter-day.active.hover-color24 {
  background-color: #eb6e07 !important;
}
.program-filter-container .dates a.program-filter-day:hover.hover-color25,
.program-filter-container .dates a.program-filter-day.active.hover-color25 {
  background-color: #009ce0 !important;
}
.program-filter-container .dates a.program-filter-day:hover.hover-color26,
.program-filter-container .dates a.program-filter-day.active.hover-color26 {
  background-color: #786964 !important;
}
.tickets-info-container {
  background-color: rgba(0, 0, 0, 0.8);
  position: relative;
  color: #fff;
  padding: 0 4vw 4vh;
  text-align: center;
  padding-top: 5vh;
  padding-bottom: 10vh;
}
.tickets-info-container.subpage {
  display: block;
  padding-top: 15vh;
}
.tickets-info-container h5 {
  padding-top: 3vh;
  padding-bottom: 2vh;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  text-align: center;
  font-size: 1.5em;
  line-height: 1em;
  text-transform: uppercase;
  position: relative;
  z-index: 10;
}
@media only screen and (min-width: 1024px) {
  .tickets-info-container h5 {
    font-size: 1.2em;
    padding-top: 8vh;
  }
}
.tickets-info-container .float-left {
  margin-bottom: 6vh;
}
@media only screen and (min-width: 1024px) {
  .tickets-info-container .float-left {
    width: 30%;
    text-align: left;
    vertical-align: top;
    display: inline-block;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .tickets-info-container .float-right {
    width: 30%;
    text-align: left;
    vertical-align: top;
    display: inline-block;
    margin-left: 5%;
  }
}
.tickets-info-container .advantages {
  display: none;
}
.tickets-info-container a {
  color: #fff;
  font-size: 0.6em;
  display: block;
}
.tickets-info-container .btn {
  text-align: center;
  margin-top: 3vh;
}
@media only screen and (min-width: 1024px) {
  .tickets-info-container .btn {
    margin-bottom: 6vh;
    display: inline-block;
    vertical-align: top;
    text-align: left;
  }
}
@media only screen and (min-width: 1024px) {
  .tickets-info-container .btn.desktop-left {
    text-align: left;
  }
}
.tickets-info-container .btn a {
  background-color: #009ce0;
  color: #fff;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 0.7em;
  padding: 1vh 4vw;
  display: inline-block;
  text-align: center;
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
}
@media only screen and (min-width: 1024px) {
  .tickets-info-container .btn a {
    font-size: 0.6em;
    padding: 1vh 2vw;
  }
  .tickets-info-container .btn a:hover {
    background-color: #eb6e07;
  }
}
.tickets-info-container h3 {
  margin-top: 3vh;
}
@media only screen and (min-width: 1024px) {
  .tickets-info-container h3 {
    font-size: 0.9em;
  }
}
.tickets-info-container h4 {
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  margin-top: 3vh;
}
@media only screen and (min-width: 1024px) {
  .tickets-info-container h4 {
    font-size: 0.8em;
  }
}
.tickets-info-container p {
  font-size: 0.8em;
}
@media only screen and (min-width: 1024px) {
  .tickets-info-container p {
    font-size: 0.6em;
  }
}
@media only screen and (min-width: 1024px) {
  .tickets-info-container p.center {
    text-align: center;
  }
}
.tickets-info-container p a {
  padding: 0;
  background-color: transparent;
  text-transform: none;
  text-decoration: underline;
  font-size: inherit;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
}
.tickets-info-container p a:hover {
  background-color: transparent;
}
.tickets-info-container ul {
  margin-left: 5vw;
}
.tickets-info-container ul li {
  font-size: 0.7em;
}
@media only screen and (min-width: 1024px) {
  .tickets-info-container ul li {
    font-size: 0.5em;
  }
}
.therest p a {
  color: black;
}
a:focus {
  outline: 1px solid #ea6d09;
  outline-offset: 4px;
}
@media only screen and (min-width: 1024px) {
  body.kamfest-concert .bottom,
  body.kamfest-artist-page .bottom,
  body.kamfest-news-page .bottom {
    width: 50%;
    margin-left: 50%;
  }
}
@media only screen and (min-width: 1024px) {
  body.kamfest-concert .bottom .social a,
  body.kamfest-artist-page .bottom .social a,
  body.kamfest-news-page .bottom .social a {
    padding: 5vw 2vw;
  }
}
@media only screen and (min-width: 1024px) {
  body.kamfest-concert .bottom .social a img,
  body.kamfest-artist-page .bottom .social a img,
  body.kamfest-news-page .bottom .social a img {
    width: 15%;
  }
}
@media only screen and (min-width: 1024px) {
  body.kamfest-concert .bottom .newsletter .text,
  body.kamfest-artist-page .bottom .newsletter .text,
  body.kamfest-news-page .bottom .newsletter .text {
    font-size: 0.8em;
  }
}
@media only screen and (min-width: 1024px) {
  body.kamfest-concert .bottom .partners a.kulturradet img,
  body.kamfest-artist-page .bottom .partners a.kulturradet img,
  body.kamfest-news-page .bottom .partners a.kulturradet img {
    width: 60%;
    top: 13px;
  }
}
@media only screen and (min-width: 1024px) {
  body.kamfest-concert .bottom .partners a.wfoimc img,
  body.kamfest-artist-page .bottom .partners a.wfoimc img,
  body.kamfest-news-page .bottom .partners a.wfoimc img {
    width: 50%;
  }
}
footer.bottom {
  clear: both;
}
footer.bottom .social {
  margin: 6vh auto 0;
  background-color: #eb6e07;
}
footer.bottom .social a {
  display: inline-block;
  width: 32%;
  vertical-align: top;
  padding: 5vw;
  text-decoration: none;
  color: #000;
  text-align: center;
}
footer.bottom .social a:focus {
  outline: 3px solid #000;
}
footer.bottom .social a img,
footer.bottom .social a svg {
  width: 30%;
}
@media only screen and (min-width: 600px) {
  footer.bottom .social a img,
  footer.bottom .social a svg {
    width: 20%;
  }
}
@media only screen and (min-width: 1024px) {
  footer.bottom .social a img,
  footer.bottom .social a svg {
    width: 10%;
  }
}
footer.bottom .social a span {
  display: block;
  font-size: 0.5em;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  color: #fff;
}
@media only screen and (min-width: 600px) {
  footer.bottom .social a span {
    font-size: 0.4em;
  }
}
footer.bottom .newsletter {
  width: 100%;
  background-color: rgba(0, 0, 0, 0.1);
  padding: 5vh 0;
  margin: 0 auto 6vh;
}
footer.bottom .newsletter.popup {
  position: fixed;
  bottom: 0;
  margin: 0 auto;
  left: 0;
  right: 0;
  background-color: #e5e5e5;
  transition: all 500ms;
  z-index: 1000;
}
@media only screen and (min-width: 1024px) {
  footer.bottom .newsletter.popup {
    max-width: 60%;
  }
}
footer.bottom .newsletter.popup.hide {
  bottom: -300px;
}
footer.bottom .newsletter.popup .close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 20px;
  height: 20px;
  cursor: pointer;
}
footer.bottom .newsletter.popup .close .line {
  width: 2px;
  background-color: black;
  position: absolute;
  left: 44%;
  top: 0;
  height: 100%;
}
footer.bottom .newsletter.popup .close .line.line1 {
  transform: rotate(45deg);
}
footer.bottom .newsletter.popup .close .line.line2 {
  transform: rotate(-45deg);
}
footer.bottom .newsletter .text {
  text-align: center;
  margin-bottom: 2vh;
}
footer.bottom .newsletter .newsletter-form {
  text-align: center;
}
footer.bottom .newsletter .newsletter-form .form-element {
  display: inline-block;
  vertical-align: top;
}
@media only screen and (min-width: 1024px) {
  footer.bottom .newsletter .newsletter-form .form-element {
    text-align: left;
  }
}
footer.bottom .newsletter .newsletter-form .form-element:first-child {
  text-align: right;
}
footer.bottom .newsletter .newsletter-form .form-element input {
  background-color: #fff;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.6em;
  border: 0px;
  color: #000;
  -webkit-appearance: none;
  border-radius: 0;
  padding: 1.5vh 4vw;
}
@media only screen and (min-width: 1024px) {
  footer.bottom .newsletter .newsletter-form .form-element input {
    font-size: 0.5em;
    padding: 1vh 1.5vw;
  }
}
footer.bottom .newsletter .newsletter-form .form-element input[type="submit"] {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  width: auto;
  background-color: #eb6e07;
  color: #fff;
}
footer.bottom .partners {
  margin: 0 auto 6vh;
  display: flex;
  flex-wrap: wrap;
  text-align: center;
  justify-content: space-around;
  align-items: center;
  width: 90%;
  gap: 1rem;
}
footer.bottom .partners .link-container {
  flex: 0 0 40%;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 1024px) {
  footer.bottom .partners .link-container {
    flex: 0 0 20%;
  }
}
footer.bottom .partners a {
  display: flex;
}
footer.bottom .partners a picture {
  display: flex;
  align-items: center;
}
footer.bottom .partners a img {
  width: 100%;
  opacity: 0.4;
  position: relative;
  max-height: 50px;
  max-width: 120px;
}
@media only screen and (min-width: 1024px) {
  footer.bottom .partners a img {
    max-height: 50px;
    max-width: 180px;
  }
}
footer.bottom .mynewsdesk {
  margin: 0 auto 6vh;
  text-align: center;
}
footer.bottom .mynewsdesk .text a {
  text-decoration: none;
  color: #000;
  opacity: 0.4;
  font-size: 0.7em;
}
@media only screen and (min-width: 1024px) {
  footer.bottom .mynewsdesk .text a {
    font-size: 0.45em;
  }
}
footer.bottom .mynewsdesk .text a img {
  width: 80px;
  position: relative;
  top: 1px;
}
@media only screen and (min-width: 1024px) {
  footer.bottom .mynewsdesk .text a img {
    width: 120px;
    top: 3px;
  }
}
footer.bottom p {
  font-size: 0.55em;
  color: rgba(0, 0, 0, 0.5);
  margin: 0 auto 5vh;
  width: 80%;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  footer.bottom p {
    width: 80%;
    font-size: 0.35em;
  }
}
footer.bottom p a {
  text-decoration: none;
  color: inherit;
}
@media only screen and (min-width: 1024px) {
  footer.bottom.subpage {
    width: 50%;
    margin-left: 50%;
  }
}
@media only screen and (min-width: 1024px) {
  footer.bottom.subpage .social a {
    padding: 5vw 2vw;
  }
}
@media only screen and (min-width: 1024px) {
  footer.bottom.subpage .social a img {
    width: 15%;
  }
}
@media only screen and (min-width: 1024px) {
  footer.bottom.subpage .newsletter .text {
    font-size: 0.8em;
  }
}
@media only screen and (min-width: 1024px) {
  footer.bottom.subpage .partners a.sintef img {
    width: 35%;
  }
}
@media only screen and (min-width: 1024px) {
  footer.bottom.subpage .partners a.reitangruppen img {
    width: 50%;
  }
}
@media only screen and (min-width: 1024px) {
  footer.bottom.subpage .partners a.hk img {
    width: 25%;
  }
}
footer.bottom.subpage .partners a.reitan img {
  width: auto;
}
.top {
  position: fixed;
  width: 100%;
  height: 60px;
  top: 0;
  left: 0;
  z-index: 1000;
  background-color: #000;
  /*    -webkit-user-select: none;
    -webkit-touch-callout: none;*/
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
}
@media only screen and (min-width: 600px) {
  .top {
    height: 70px;
  }
}
.top .logo {
  position: fixed;
  width: 60px;
  height: 60px;
  cursor: pointer;
}
@media only screen and (min-width: 600px) {
  .top .logo {
    width: 70px;
    height: 70px;
  }
}
.top .logo img {
  width: 100%;
}
.top .nav-icon {
  position: fixed;
  width: 25px;
  height: 5px;
  top: 26px;
  right: 60px;
  cursor: pointer;
  text-decoration: none;
}
@media only screen and (max-width: 599px) {
  .top .nav-icon {
    right: 90px;
  }
}
@media only screen and (min-width: 600px) {
  .top .nav-icon {
    top: 32px;
    right: 200px;
  }
}
@media only screen and (min-width: 1024px) {
  .top .nav-icon {
    width: 120px;
    height: 65px;
    top: 8px;
    right: 180px;
  }
}
@media only screen and (min-width: 1400px) {
  .top .nav-icon {
    top: 0;
  }
}
.top .nav-icon .menu-label {
  display: none;
}
@media only screen and (min-width: 1400px) {
  .top .nav-icon .menu-label {
    display: inline-block;
    color: #fff;
    font-size: 0.4em;
    text-transform: uppercase;
    font-weight: 700;
    position: relative;
  }
}
@media only screen and (min-width: 1400px) {
  .top .nav-icon .menu-label {
    font-size: 0.35em;
  }
}
.top .nav-icon .dots {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  pointer-events: none;
}
@media only screen and (min-width: 1024px) {
  .top .nav-icon .dots {
    top: -8px;
    left: 10px;
    display: inline-block;
    position: relative;
    width: auto;
  }
}
@media only screen and (min-width: 1400px) {
  .top .nav-icon .dots {
    top: -8px;
    left: 5px;
  }
}
.top .nav-icon .dots .dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #eb6e07;
  position: absolute;
}
@media only screen and (min-width: 1024px) {
  .top .nav-icon .dots .dot {
    width: 6px;
    height: 6px;
  }
}
.top .nav-icon .dots .dot.dot1 {
  left: 0;
}
.top .nav-icon .dots .dot.dot2,
.top .nav-icon .dots .dot.dot4,
.top .nav-icon .dots .dot.dot5 {
  left: 12px;
}
@media only screen and (min-width: 1024px) {
  .top .nav-icon .dots .dot.dot2,
  .top .nav-icon .dots .dot.dot4,
  .top .nav-icon .dots .dot.dot5 {
    left: 16px;
  }
}
.top .nav-icon .dots .dot.dot3 {
  left: 24px;
}
@media only screen and (min-width: 1024px) {
  .top .nav-icon .dots .dot.dot3 {
    left: 32px;
  }
}
.top .title {
  position: fixed;
  top: 18px;
  left: 76px;
  color: #fff;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.5em;
  text-transform: uppercase;
  line-height: 1.1em;
}
@media only screen and (min-width: 600px) {
  .top .title {
    left: 85px;
  }
}
@media only screen and (min-width: 1024px) {
  .top .title {
    top: 22px;
    font-size: 0.4em;
  }
}
@media only screen and (min-width: 1400px) {
  .top .title {
    top: 20px;
    left: 90px;
    font-size: 0.35em;
  }
}
.top .title h1 {
  color: #fff;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 1em;
  text-transform: uppercase;
  line-height: 1.1em;
}
@media only screen and (min-width: 1024px) {
  .top .title h1 {
    font-size: 1em;
  }
}
.top .title span {
  display: block;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 1.1em;
}
.top .sticky-btns {
  display: flex;
  gap: 40px;
  position: fixed;
  top: 13px;
  margin-left: 80px;
  opacity: 0;
  pointer-events: none;
  transform: matrix(1, 0, 0, 1, 0, 40);
  -webkit-transform: matrix(1, 0, 0, 1, 0, 40);
  -moz-transform: matrix(1, 0, 0, 1, 0, 40);
  -o-transform: matrix(1, 0, 0, 1, 0, 40);
}
.top .sticky-btns .main-menu-item {
  display: inline-block;
  position: relative;
}
.top .sticky-btns .main-menu-item .sub-menu-item {
  display: none;
  position: absolute;
  padding: 20px;
  left: 0;
  background: black;
  margin: 0;
  min-width: 150px;
  min-height: 100px;
}
.top .sticky-btns .main-menu-item .sub-menu-item a {
  display: block;
  margin: 0;
  text-align: left;
  padding: 5px;
}
.top .sticky-btns .main-menu-item.last a {
  margin-right: 0;
}
@media only screen and (min-width: 1200px) {
  .top .sticky-btns {
    margin-left: 0;
    right: 340px;
    top: 8px;
    text-align: right;
    opacity: 1;
    transform: matrix(1, 0, 0, 1, 0, 0);
    -webkit-transform: matrix(1, 0, 0, 1, 0, 0);
    -moz-transform: matrix(1, 0, 0, 1, 0, 0);
    -o-transform: matrix(1, 0, 0, 1, 0, 0);
    pointer-events: all;
  }
}
@media only screen and (min-width: 1400px) {
  .top .sticky-btns {
    top: 0;
  }
}
.top .sticky-btns a {
  color: #fff;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  font-size: 0.6em;
  padding: 1.6vh 2vw;
  text-align: center;
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
  cursor: pointer;
  margin: 0 auto;
  text-decoration: none;
}
@media only screen and (min-width: 1024px) {
  .top .sticky-btns a {
    font-size: 0.4em;
    padding: 0;
    margin-right: 20px;
  }
}
@media only screen and (min-width: 1400px) {
  .top .sticky-btns a {
    font-size: 0.35em;
    margin-right: 40px;
  }
}
.top .sticky-btns a.active {
  border-bottom: 2px solid #eb6e07;
}
@media only screen and (min-width: 1024px) {
  .top .sticky-btns a:last-child {
    margin-right: 0;
  }
}
.top .sticky-btns a:hover {
  color: rgba(255, 255, 255, 0.8);
}
.top .sticky-btns a.desktop {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .top .sticky-btns a.desktop {
    display: inline-block;
  }
}
.top .sticky-btns a.blue {
  color: #009ce0;
}
.top .closemenu-btn {
  width: 100%;
  height: 100vh;
  position: fixed;
  background-color: transparent;
  pointer-events: none;
  z-index: 800;
}
.top .english {
  width: 60px;
  position: fixed;
  background-color: #262626;
  /* margin-bottom: 20px; */
  height: 60px;
  text-align: center;
  right: 0;
  line-height: 30px;
}
@media only screen and (min-width: 600px) {
  .top .english {
    height: 70px;
    width: 100px;
    right: 70px;
    line-height: 40px;
  }
}
@media only screen and (min-width: 1024px) {
  .top .english {
    height: 70px;
    position: fixed;
    background-color: #262626;
    /* margin-bottom: 20px; */
    text-align: center;
    line-height: 47px;
  }
}
.top .english a {
  color: #fff;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 0.6em;
  display: block;
  margin-top: 15px;
}
@media only screen and (min-width: 1024px) {
  .top .english a {
    font-size: 0.4em;
    margin-top: 12px;
  }
}
.top .accessability {
  display: none;
}
@media only screen and (min-width: 600px) {
  .top .accessability {
    position: fixed;
    top: 0;
    right: 0;
    height: 70px;
    overflow: hidden;
    width: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #000;
    padding: 5px;
  }
}
.top .accessability svg {
  background-color: white;
  width: 100%;
}
.top nav {
  position: fixed;
  z-index: 900;
  display: none;
  width: 100%;
  opacity: 0;
  background-color: #1a1a1a;
  top: 60px;
}
@media only screen and (min-width: 600px) {
  .top nav {
    top: 70px;
  }
}
@media only screen and (min-width: 1024px) {
  .top nav {
    padding-top: 0;
    width: 30%;
    right: 0;
    top: 69px;
  }
}
.top nav .search {
  margin-bottom: 20px;
  background-color: #333333;
  width: 100%;
  float: left;
  padding: 14px;
}
.top nav .search form .search-icon {
  width: 60px;
  float: left;
}
.top nav .search form .search-icon img {
  width: 26px;
  position: relative;
  top: 12px;
  left: 18px;
  opacity: 0.5;
}
@media only screen and (min-width: 1024px) {
  .top nav .search form .search-icon img {
    top: -2px;
  }
}
.top nav .search form .form-element {
  float: left;
  margin-top: 12px;
}
@media only screen and (min-width: 1024px) {
  .top nav .search form .form-element {
    margin-top: -5px;
    width: 80%;
  }
}
.top nav .search form .form-element input {
  background-color: transparent;
  font-family: "futura-pt";
  font-weight: 400;
  font-style: normal;
  font-size: 0.9em;
  width: 40vw;
  border: 0px;
  color: #fff;
  -webkit-appearance: none;
  border-radius: 0;
}
@media only screen and (min-width: 1024px) {
  .top nav .search form .form-element input {
    font-size: 0.6em;
    width: 100%;
  }
}
.top nav .main-menu {
  float: left;
  width: 100%;
  margin-bottom: 8vh;
}
@media only screen and (min-width: 600px) {
  .top nav .main-menu {
    padding-top: 3vh;
  }
}
@media only screen and (min-width: 1024px) {
  .top nav .main-menu {
    padding-top: 0;
  }
}
.top nav .main-menu.fixed {
  padding-top: 1vh;
}
.top nav .main-menu .main-menu-item {
  padding-bottom: 10px;
  padding-left: 60px;
}
@media only screen and (min-width: 1024px) {
  .top nav .main-menu .main-menu-item {
    padding-bottom: 0;
    line-height: 30px;
  }
}
@media only screen and (min-width: 1024px) {
  .top nav .main-menu .main-menu-item#main-menu-item-0,
  .top nav .main-menu .main-menu-item#main-menu-item-1,
  .top nav .main-menu .main-menu-item#main-menu-item-2,
  .top nav .main-menu .main-menu-item#main-menu-item-3 {
    display: none;
  }
}
.top nav .main-menu .main-menu-item a {
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  text-decoration: none;
  color: #fff;
  font-size: 0.9em;
  -webkit-transition: all 300ms;
  -moz-transition: all 300ms;
  -ms-transition: all 300ms;
  -o-transition: all 300ms;
  transition: all 300ms;
}
@media only screen and (min-width: 600px) {
  .top nav .main-menu .main-menu-item a {
    font-size: 1em;
  }
}
@media only screen and (min-width: 1024px) {
  .top nav .main-menu .main-menu-item a {
    font-size: 0.45em;
  }
}
.top nav .main-menu .main-menu-item a.active {
  border-bottom: 2px solid #eb6e07;
}
@media only screen and (min-width: 1024px) {
  .top nav .main-menu .main-menu-item a:hover {
    color: #cccccc;
  }
}
.top nav .main-menu .main-menu-item.competition a {
  color: #009ce0;
}
.top nav .main-menu .main-menu-item.mobile {
  display: block;
}
@media only screen and (min-width: 1024px) {
  .top nav .main-menu .main-menu-item.mobile {
    display: none;
  }
}
.top nav .mobile-hover {
  text-decoration: underline;
}
.top nav .active a {
  opacity: 0.3;
}
.top nav .active a:hover {
  opacity: 0.6;
  background: none;
}
.top nav .social {
  float: left;
  width: 100%;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  .top nav .social {
    margin: 0 auto 0;
    bottom: 20vh;
  }
}
.top nav .social a {
  display: inline-block;
  margin-right: 30px;
}
.top nav .social a:first-child {
  margin-right: 25px;
}
.top nav .social a:last-child {
  margin-right: 0;
}
.top nav .social a img {
  width: 30px;
}
.color0 {
  background-color: #e5007c !important;
}
.color1 {
  background-color: #2c357f !important;
}
.color2 {
  background-color: #babf21 !important;
}
.color3 {
  background-color: #c20012 !important;
}
.color4 {
  background-color: #7e1c7d !important;
}
.color5 {
  background-color: #eb6e07 !important;
}
.color6 {
  background-color: #009ce0 !important;
}
.btns a {
  text-decoration: none;
  color: #fff;
  background-color: #009ce0;
  padding: 1.2vh 4vw;
  text-transform: uppercase;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  font-size: 0.7em;
  margin-right: 5px;
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
  display: inline-block;
}
@media only screen and (min-width: 1024px) {
  .btns a {
    padding: 1.2vh 2vw;
    font-size: 0.6em;
  }
}
@media only screen and (min-width: 1400px) {
  .btns a {
    padding: 1vh 1.6vw;
    font-size: 0.55em;
  }
}
.btns a img {
  width: 20px;
  position: relative;
  top: 4px;
}
@media only screen and (min-width: 1024px) {
  .btns a img {
    width: 30px;
    top: 8px;
  }
}
.btns a.dark {
  background-color: rgba(0, 0, 0, 0.4);
  color: #fff;
}
.btns a:hover {
  background-color: #eb6e07;
}
.btns a:last-child {
  margin-right: 0;
}
.prev-festivals {
  margin-top: 5vh;
}
.prev-festivals .btns a {
  margin-bottom: 20px;
}
.photo-container .flexslider {
  border: 0;
  background: none;
  margin: 0;
}
.photo-container .flexslider .flex-control-nav {
  display: none;
}
.addeventatc {
  position: relative;
  margin-left: 5px;
}
.addeventatc.dark {
  background-color: rgba(0, 0, 0, 0.4);
  color: #fff;
  display: inline;
  padding: 1vh 1.6vw;
  font-size: 0.55em;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  margin-right: 5px;
}
.addeventatc.dark img {
  width: 30px;
  top: 6px;
  position: relative;
}
.addeventatc .addeventatc_dropdown {
  position: absolute;
  width: 250px;
  background: rgba(0, 0, 0, 0.9);
  padding: 2vw;
}
.addeventatc .addeventatc_dropdown span {
  display: block;
  padding-bottom: 2vh;
}
.addeventatc span {
  display: none;
}
.addeventatc span.location {
  display: none !important;
}
.addeventatc .copyx {
  opacity: 0.2;
}
.info-btns {
  margin-top: 3vh;
  margin-bottom: 30px;
}
@media only screen and (min-width: 1024px) {
  .info-btns {
    margin-top: 0;
    padding-top: 4vh;
    width: 100%;
    margin: 0 auto;
    text-align: center;
    margin-bottom: 60px;
  }
}
.info-btns a {
  display: block;
  width: 60%;
  padding: 2vw;
  margin: 0 auto 1vh;
  text-align: center;
  background-color: #eb6e07;
  text-transform: uppercase;
  text-decoration: none;
  font-family: "futura-pt";
  font-weight: 700;
  font-style: normal;
  color: #fff;
  font-size: 0.7em;
  -webkit-transition: background-color 300ms;
  -moz-transition: background-color 300ms;
  -ms-transition: background-color 300ms;
  -o-transition: background-color 300ms;
  transition: background-color 300ms;
}
.info-btns a:hover {
  background-color: #000;
}
@media only screen and (min-width: 1024px) {
  .info-btns a {
    display: inline-block;
    width: auto;
    padding: 1vw;
    font-size: 0.4em;
  }
}
.accordions-wrap {
  width: 86%;
  margin: 0 auto;
  max-width: 800px;
}
.accordions-wrap .accordion-wrap {
  padding: 0 8px;
  border-top: 1px solid #7f7f7f;
}
.accordions-wrap .accordion-wrap.expanded .content {
  display: block;
}
.accordions-wrap .accordion-wrap.expanded .title .toggled-closed {
  display: none;
}
.accordions-wrap .accordion-wrap.expanded .title .toggled-open {
  display: block;
}
.accordions-wrap .accordion-wrap .title {
  cursor: pointer;
  padding: 18px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.accordions-wrap .accordion-wrap .title h4.accordion-title {
  width: initial;
  font-size: 20px;
  margin: 0;
  font-weight: 600;
}
.accordions-wrap .accordion-wrap .title .toggled-open i,
.accordions-wrap .accordion-wrap .title .toggled-closed i {
  display: block;
  color: #EB6E07;
  font-size: 0.5em;
}
.accordions-wrap .accordion-wrap .title .toggled-open {
  display: none;
}
.accordions-wrap .accordion-wrap .content {
  display: none;
  padding-bottom: 18px;
  font-size: 0.5em;
}
.media-links {
  width: 86%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: center;
  max-width: 1200px;
}
@media only screen and (min-width: 1024px) {
  .media-links {
    gap: 72px;
  }
}
.media-links .media-item {
  position: relative;
  max-width: 230px;
}
.media-links .media-item .media img {
  display: block;
}
.media-links .media-item .box-wrapper {
  position: absolute;
  bottom: 26px;
  width: 100%;
  display: flex;
  justify-content: center;
}
.media-links .media-item .box-wrapper .link-box {
  color: #fff;
  padding: 16px;
  background-color: #EB6E07;
  font-size: 23px;
  font-weight: 600;
}
.media-links .media-item .box-wrapper .link-box i {
  font-size: 18px;
  margin-left: 10px;
  position: relative;
  top: -2px;
}
