@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,200;0,300;0,400;0,500;1,100;1,200;1,300;1,400;1,500&display=swap');

:root{
  --color:#181753;
}

*{
  font-family: 'Poppins', sans-serif;
  margin:0; padding:0;
  box-sizing: border-box;
  text-transform: capitalize;
  transition: all .2s linear;
  text-decoration: none;
}

html{
  font-size: 62.5%;
}

body{
  overflow-x: hidden;
  background-color: #181753;
}

.heading{
  margin:2rem;
  padding-top: 6rem;
  display: inline-block;
  font-size: 3.5rem;
  color:#181753;
  position: relative;
  letter-spacing: .2rem;
  text-transform: none;
}

.btn{
  outline: none;
  border: none;
  border-radius: 5rem;
  background: #fa1b6e;
  color: #fff;
  cursor: pointer;
  height:3.5rem;
  width: 17rem;
  font-size: 1.7rem;
  box-shadow: 0 .2rem .5rem rgba(0,0,0,.3);
}

.btn:hover{
  letter-spacing: .1rem;
  opacity: .8;
}

.header{
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding:1rem 2rem;
  position: fixed;
  top:0; left: 0;
  z-index: 100;
}

.header .logo{
  font-size: 2.5rem;
  color: #fff;
}

.header .logo img{
  height: 3.5rem;
  padding:0 .5rem;
}

.header .navbar ul{
  list-style-type: none;
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.header .navbar ul li{
  margin:0 1.5rem;
}

.header .navbar ul li a{
  font-size: 2rem;
  color:#fff;
  text-transform: none;
  white-space: nowrap;
}

.header .navbar ul li a:hover{
  color:#fa1b6e;
}

.header .fa-bars{
  color:#fff;
  cursor: pointer;
  font-size: 3rem;
  display: none;
}

.home{
  min-height: 100vh;
  width: 100vw;
  background-image: url("bg.jpg");
  background-color: #181753;
  background-position: center;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
  text-align: center;
  padding:0 1rem;
  position: relative;
  overflow: hidden !important;
}

.home .content{
  z-index: 1;
}

.home::before{
  content: '';
  position: absolute;
  top:0; left:0;
  height: 100%;
  width: 100%;
}

.home .content .banner{
  color: #fff;
  font-size: 8rem;
  text-shadow: 0 .3rem .5rem rgba(0,0,0,.3);
}

.home .content .banner .logo{
  margin-top: 5rem;
  width: 120rem;
}

.home .content .slogan{
  color: #eee;
  font-size: 3rem;
  font-weight: 400;
  margin-top: -1rem;
  text-transform: none;
}

.home .content button{
  height: 7rem;
  width: 24rem;
  background: #fff;
  color: #fa1b6e;
  cursor: pointer;
  border:none;
  border-radius: 5rem;
  outline: none;
  margin-top: 20rem;
  font-size: 4rem;
  font-family: Arial Black, Arial;
  font-weight: 400;
  box-shadow: 0 .3rem .5rem rgba(0,0,0,.3);
}

.home .content button:hover{
  letter-spacing: .1rem;
  opacity: 0.8;
  background: #fa1b6e;
  color: #fff;
}

.about{
  min-height: 100vh;
  width: 100vw;
  text-align: center;
  position: relative;
  overflow: hidden;
  background: #05abf5;
}

.about .row{
  display: flex;
  align-items: center;
  justify-content: space-around;
  padding:0 4rem;
  margin-top: 10rem;
}

.about .row .content{
  text-align: left;
  margin-left: 22rem;
  width: 200vw;
}

.about .row .feed{
  width: 150vw;
  margin-left: 25rem;
}

.about .row .content h3{
  font-size: 3rem;
  color: #181753;
  text-transform: none;
}

.about .row .content h1{
  font-size: 1.5rem;
  color: #181753;
  padding:1rem 0;
  text-transform: none;
  font-weight: bold;
}

.about .row .content p{
  font-size: 1.5rem;
  color: #181753;
  padding:1rem 0;
  text-transform: none;
}

.about::before, .about::after{
  content: '';
  position: absolute;
  z-index: -1;
  opacity: .2;
  border-radius: 50%;
}

.about::before{
  height: 50rem;
  width: 50rem;
  background: #ccc;
  bottom: -10rem; left: -10rem;
}

.about::after{
  height: 60rem;
  width: 60rem;
  background: #181753;
  top: -10rem; right: -10rem;
}

.about .row .content .btn{
  margin-bottom: 5rem;
}

.lineup{
  min-height: 100vh;
  width: 100vw;
  text-align: center;
  background-color: #181753;
}

.lineup .heading{
  color: #fa1b6e;
}

.lineup .heading::before, .lineup .heading::after{
  border-color: #fa1b6e;
}

.lineup .row{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.lineup .row .card{
  height:48rem;
  width:45rem;
  background: #05abf5;
  text-align: center;
  margin:7rem 5rem;
  position: relative;
  overflow: hidden;
  -webkit-box-reflect: below .2rem linear-gradient(transparent 70%, #0004);
}

.lineup .row .card .image{
  margin:1rem 0;
  padding-top: 2rem;
}

.lineup .row .card .image img{
  width: 30rem;
  height: 30rem;
  border-radius: 0%;
  border:.5rem solid #fff;
  box-shadow: 0 0 .5rem rgba(0,0,0,.3);
  object-fit: cover;
}

.lineup .row .card .image img:hover{
  width: 30rem;
  height: 30rem;
  border-radius: 0%;
  border:.5rem solid #fa1b6e;
  box-shadow: 0 0 .5rem rgba(0,0,0,.3);
  object-fit: cover;
}

.lineup .row .card .info h3{
  font-size: 2rem;
  color: #333;
}

.lineup .row .card .info span{
  font-size: 1.8rem;
  color: #333;
  text-transform: none;
}

.lineup .row .card .info p{
  margin-top: 2rem;
  padding:0 1rem;
  font-size: 2rem;
  color: #333;
}

.lineup .row .card .info p a{
  margin-top: 2rem;
  padding:0 1rem;
  font-size: 2rem;
  color: #333;
}

.lineup .row .card .info p a:hover{
  color: #fa1b6e;
}

.anfahrt{
  min-height: 100vh;
  width: 100vw;
  text-align: center;
  position: relative;
  overflow: hidden;
  background: #05abf5;
}

.anfahrt .row{
  display: flex;
  align-items: center;
  justify-content: center;
  padding:0 4rem;
  margin-top: 15rem;
}

.anfahrt .row .content{
  text-align: center;
}

.anfahrt .row img{
  width: 50vw;
}

.anfahrt .row .content h2{
  font-size: 2.3rem;
  color: #181753;
  letter-spacing: .4rem;
}

.anfahrt .row .content p{
  font-size: 1.6rem;
  color: #181753;
  padding:.2rem 0;
  text-transform: none;
  letter-spacing: .2rem;
}

.anfahrt .row .content a{
  font-size: 2.5rem;
  color: #181753;
  padding:.9rem 0;
  text-decoration: underline;
  text-transform: none;
  letter-spacing: .2rem;
}

.anfahrt .row .content a:hover{
  color: #fa1b6e;
}

.anfahrt::before{
  content: '';
  position: absolute;
  z-index: -1;
  opacity: .2;
  border-radius: 50%;
}

.anfahrt::after{
  content: '';
  position: absolute;
  z-index: -1;
  border-radius: 50%;
}

.anfahrt::before{
  height: 50rem;
  width: 50rem;
  background: #ccc;
  bottom: -10rem; left: -10rem;
}

.anfahrt::after{
  height: 60rem;
  width: 60rem;
  background: #181753;
  top: -10rem; right: -10rem;
}

.sponsors{
  width: 100vw;
  text-align: center;
  background-color: #181753;
}

.sponsors .heading{
  color: #fa1b6e;
}

.sponsors h3{
  color: #fa1b6e;
  font-size: 2rem;
  margin-top: 5rem;
}

.sponsors .heading::before, .sponsors .heading::after{
  border-color: #fa1b6e;
}

.sponsors .row{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.sponsors .row .mainimage{
  width:45rem;
  height:15rem;
  text-align: center;
  margin:2rem 5rem;
  position: relative;
  overflow: hidden;
}

.sponsors .row .mainimage img{
  height:15rem;
  max-width: 45rem;
  object-fit: contain;
}

.sponsors .row .image{
  width:30rem;
  height:12rem;
  text-align: center;
  margin:2rem 5rem;
  position: relative;
  overflow: hidden;
}

.sponsors .row .image img{
  height:10rem;
  max-width: 30rem;
  object-fit: contain;
}

.infos{
  min-height: 100vh;
  width: 100vw;
  text-align: center;
  padding:0 2rem;
  background-color: #05abf5;
}

.infos .row{
  display: flex;
  align-items: center;
  justify-content: center;
  padding:0 2rem;
}

.infos .row .accordion-container{
  width: 70vw;
  text-align: left;
}

.infos .row .accordion-container .accordion .accordion-header{
  background-color: #181753;
  margin:3rem 0;
  box-shadow: .1rem .1rem .3rem rgba(0,0,0,.3);
  cursor: pointer;
}

.infos .row .accordion-container .accordion .accordion-header span{
  display: inline-block;
  text-align: center;
  height: 5rem;
  width: 7rem;
  line-height: 4.5rem;
  font-size: 4rem;
  background: #fff;
  color: #333;
  clip-path: polygon(0% 0%, 75% 0%, 100% 50%, 75% 100%, 0% 100%);
}

.infos .row .accordion-container .accordion .accordion-header h3{
  display: inline;
  color: #fff;
  font-weight: 400;
  padding-left: .5rem;
  font-size: 3rem;
  text-transform: none;
}

.infos .row .accordion-container .accordion .accordion-body{
  padding:1rem;
  color: #444;
  background: #fff;
  box-shadow: .1rem .1rem .3rem rgba(0,0,0,.3);
  font-size: 2rem;
  display: none;
}

.infos .row .accordion-container .accordion .accordion-body p{
  text-transform: none;
}

.infos .row .accordion-container .accordion .accordion-body a{
  color: #fa1b6e;
  text-decoration: underline;
  text-transform: none;
}

.footer{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding:1rem 2rem;
  margin-top: 1rem;
  background: #181753;
}

.footer h1{
  color: #fff;
  letter-spacing: .1rem;
  font-weight: 400;
}

.footer .links a{
  color: #fff;
  font-size: 1rem;
  padding:0 .5rem;
  text-decoration: none;
}

.footer .links a:hover{
  color: #ccc;
}

.bosca{
  height: 90vh;
  width: 100vw;
  background-image: url("../img/artist/bosca/bosca.jpg");
  background-position: top;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-flow: column;
  text-align: center;
  padding:0 1rem;
  position: relative;
  overflow: hidden !important;
}

.bosca .content{
  z-index: 1;
}

.bosca::before{
  content: '';
  position: absolute;
  top:0; left:0;
  height: 100%;
  width: 100%;
}

.bosca .content .banner{
  color: #fff;
  font-size: 8rem;
  text-shadow: 0 .3rem .5rem rgba(0,0,0,.3);
}

.bosca .content .banner .logo{
  margin-top: 5rem;
  width: 120rem;
}

.high-g{
  height: 90vh;
  width: 100vw;
  background-image: url("../img/artist/high-g/high-g.jpg");
  background-position: top;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-flow: column;
  text-align: center;
  padding:0 1rem;
  position: relative;
  overflow: hidden !important;
}

.high-g .content{
  z-index: 1;
}

.high-g::before{
  content: '';
  position: absolute;
  top:0; left:0;
  height: 100%;
  width: 100%;
}

.high-g .content .banner{
  color: #fff;
  font-size: 8rem;
  text-shadow: 0 .3rem .5rem rgba(0,0,0,.3);
}

.high-g .content .banner .logo{
  margin-top: 5rem;
  width: 120rem;
}

.chase{
  height: 90vh;
  width: 100vw;
  background-image: url("../img/artist/chase417/chase417.jpeg");
  background-position: top;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-flow: column;
  text-align: center;
  padding:0 1rem;
  position: relative;
  overflow: hidden !important;
}

.ccraw{
  height: 90vh;
  width: 100vw;
  background-image: url("../img/artist/c-c-raw/ccraw.jpg");
  background-position: top;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-flow: column;
  text-align: center;
  padding:0 1rem;
  position: relative;
  overflow: hidden !important;
}

.ccraw .content{
  z-index: 1;
}

.ccraw::before{
  content: '';
  position: absolute;
  top:0; left:0;
  height: 100%;
  width: 100%;
}

.ccraw .content .banner{
  color: #fff;
  font-size: 8rem;
  text-shadow: 0 .3rem .5rem rgba(0,0,0,.3);
}

.ccraw .content .banner .logo{
  margin-top: 5rem;
  width: 120rem;
}

.chase .content{
  z-index: 1;
}

.chase::before{
  content: '';
  position: absolute;
  top:0; left:0;
  height: 100%;
  width: 100%;
}

.chase .content .banner{
  color: #fff;
  font-size: 8rem;
  text-shadow: 0 .3rem .5rem rgba(0,0,0,.3);
}

.chase .content .banner .logo{
  margin-top: 5rem;
  width: 120rem;
}

.luca{
  height: 90vh;
  width: 100vw;
  background-image: url("../img/artist/luca/luca.jpg");
  background-position: top;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-flow: column;
  text-align: center;
  padding:0 1rem;
  position: relative;
  overflow: hidden !important;
}

.luca .content{
  z-index: 1;
}

.luca::before{
  content: '';
  position: absolute;
  top:0; left:0;
  height: 100%;
  width: 100%;
}

.luca .content .banner{
  color: #fff;
  font-size: 8rem;
  text-shadow: 0 .3rem .5rem rgba(0,0,0,.3);
}

.luca .content .banner .logo{
  margin-top: 5rem;
  width: 120rem;
}

.friedrich{
  height: 90vh;
  width: 100vw;
  background-image: url("../img/artist/dj_friedrich/friedrich.jpg");
  background-position: top;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-flow: column;
  text-align: center;
  padding:0 1rem;
  position: relative;
  overflow: hidden !important;
}

.friedrich .content{
  z-index: 1;
}

.friedrich::before{
  content: '';
  position: absolute;
  top:0; left:0;
  height: 100%;
  width: 100%;
}

.friedrich .content .banner{
  color: #fff;
  font-size: 8rem;
  text-shadow: 0 .3rem .5rem rgba(0,0,0,.3);
}

.friedrich .content .banner .logo{
  margin-top: 5rem;
  width: 120rem;
}

.nooz{
  height: 90vh;
  width: 100vw;
  background-image: url("../img/artist/nooz/nooz.jpg");
  background-position: bottom;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-flow: column;
  text-align: center;
  padding:0 1rem;
  position: relative;
  overflow: hidden !important;
}

.nooz .content{
  z-index: 1;
}

.nooz::before{
  content: '';
  position: absolute;
  top:0; left:0;
  height: 100%;
  width: 100%;
}

.nooz .content .banner{
  color: #fff;
  font-size: 8rem;
  text-shadow: 0 .3rem .5rem rgba(0,0,0,.3);
}

.nooz .content .banner .logo{
  margin-top: 5rem;
  width: 120rem;
}

.artist{
  min-height: 100vh;
  width: 100vw;
  text-align: center;
  background-image: url("../img/bg.jpg");
  background-position: center;
  background-size: cover;
}

.artist .row{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.artist .row .card{
  height:80rem;
  width:120rem;
  background: #181753;
  text-align: center;
  margin:7rem 2rem;
  position: relative;
  overflow: hidden;
}

.artist .row .card .video{
  margin:8rem 0;
  padding-top: 2rem;
}

.artist .row .card .video iframe{
  width: 560px;
  height: 315px;
}

.artist .row .card .video p{
  color: #fff;
  font-size: 1.8rem;
  margin: 0 30rem;
  text-transform: none;
  text-align: center;
}

.artist .row .card .info h3{
  margin-top: 7rem;
  font-size: 6rem;
  color: #fff;
}

.artist .row .card .info span{
  font-size: 1.8rem;
  color: #fff;
  text-transform: none;
}

.artist .row .card .info .icons a{
  margin-top: 5rem;
  padding:0 1rem;
  font-size: 5rem;
  color: #fff;
}

.artist .row .card .info .icons a:hover{
  color: #fa1b6e;
}


/*media queries  */

@media (max-width:1000px){
.header .fa-bars{
  display: block;
}

.header .navbar{
  position: fixed;
  top:-120%; left: 0;
  height: auto;
  width: 100%;
  background-color: #fff;
  z-index: 1000;
  border-top: .1rem solid rgba(0,0,0,.3);
}

.header .navbar ul{
  height: 100%;
  width: 100%;
  flex-flow: column;
}

.header .navbar ul li{
  margin:1rem 0;
}

.header .navbar ul li a{
  color:#444;
  font-size: 2.4rem;
}

.header .fa-times{
  transform: rotate(180deg);
}

.header .nav-toggle{
  top:5.8rem;
}

}

@media (max-width:768px){

  html{
    font-size: 50%;
  }
  .btn{
    height:5rem;
    width: 25rem;
    font-size: 2.5rem;
  }
  .home .content .banner{
    font-size: 2.5rem;
    margin-top: 0rem;
  }
  .home .content .banner .logo{
    display: grid;
    max-width: 95%;
  }
  .home .content .slogan{
    font-size: 2.5rem;
  }
  .about .row .image img{
    display: none;
  }
  .sponsors .row .image{
    margin:1rem;
  }
  .sponsors .row .mainimage{
    width:30rem;
    height:12rem;
    margin:1rem;
  }
  .sponsors .row .mainimage img{
    height:10rem;
    max-width: 30rem;
  }
  .footer{
    flex-flow: column;
  }
  .footer h1{
    text-align: center;
  }
  .footer .links{
    padding:2rem 0;
  }
  .home .content .slogan{
    font-size: 2.7rem;
  }

  .about .row{
    flex-flow: column;
    padding:0 2rem;
    margin-top: 0;
  }
  .about .row .content{
    margin-left: 0;
    text-align: center;
    width: 100%
  }

  .about .row .content p{
    font-size: 2rem;
  }

  .about .row .feed{
    width: 100%;
    margin-left: 0;
  }

  .anfahrt .row{
    flex-flow: column;
    margin-top: 5rem;
  }

  .anfahrt .row img{
    width: 100%;
    margin-bottom: 2rem;
  }

  .anfahrt .row .content h2{
    font-size: 2.5rem;
  }

  .anfahrt .row .content p{
    font-size: 2rem;
  }

  .anfahrt .row .content a{
    font-size: 2.5rem;
  }

  .infos{
    padding:0;
  }

  .infos .row{
    padding:0 1rem;
    flex-flow: column;
  }

  .infos .row .accordion-container{
    width: 100%;
  }

  .infos .row .accordion-container .accordion .accordion-header span{
    height: 6rem;
    line-height: 6rem;
    font-size: 2.5rem;
  }

  .infos .row .accordion-container .accordion .accordion-header h3{
    font-size: 1.6rem;
  }

  .infos .row .accordion-container .accordion .accordion-body{
    font-size: 1.8rem;
  }
  .artist .row .card .video iframe{
    width: 336px;
    height: 189px;
  }
  .artist .row .card .video p{
    margin: 0 10rem;
  }
}
