main {
  display: flex;
  flex-direction: column;
  align-items: center;

  & > section {
    width: 80%;
    padding: 5rem 0;
    height: auto;

    & > header {
      & > h2 {
        margin-top: -1rem;
      }

      & > img {
        width: 18rem;
        position: relative;
        left: 3rem;
        bottom: 2rem;
        z-index: -1;
      }
    }
  }
}

a#return-to-top {
  position: fixed;
  right: 5%;
  top: 2rem;
  z-index: 2;
  & img {
    width: 3rem;
  }
}



nav {
  background-color: var(--backdrop-color);
  border-radius: 4rem;
  border: 2px solid var(--primary-color);
  padding: 1rem;
  box-sizing: border-box;
  width: 40%;
  display: flex;
  justify-content: space-around;
  position: fixed;
  left: 50%;
  transform: translate(-50%, 0);
  margin-top: 2rem;
  z-index: 2;

  & > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    
    & > a {
      & img {
        height: 2.5rem;
      }

      & i {
        color: #c5c5c5;
        font-size: 2.5rem;
      }
    } 
    

    & > span {
      opacity: 0;
      transition: opacity 0.4s ease;
      width: 8rem;
      height: 2.5rem;
      background-color: var(--backdrop-color);
      color: var(--text-color);
      border: 2px solid var(--primary-color);
      text-align: center;
      padding: 5px 0;
      border-radius: 6px;
      position: absolute;
      z-index: 1;
      padding: 0;
      margin: 0;
      display: flex;
      justify-content: center;
      align-items: center;
    }

    & > span::after {
      content: "";
      position: absolute;
      bottom: 100%;
      left: calc(50% - 7px);
      border-width: 7px;
      border-style: solid;
      border-color: transparent transparent var(--primary-color) transparent;
    }
  }

  & > div:hover {

    & > span {
      opacity: 1;
    }

    & > span:hover {
      opacity: 0;
      cursor: default;
    }
  }
}

div.nav-blur {
  border-radius: 4rem;
  background-color: rgb(0, 0, 0, 0.9);
  padding: 1rem;
  width: 41.5%;
  height: 6.5rem;
  position: fixed;
  left: 50%;
  transform: translate(-50%, 0);
  margin-top: 1.25rem;
  backdrop-filter: blur(5px);
  filter: blur(10px);
  z-index: 1;
}

main section#head {
  padding-top: 14rem;
  height: 100vh;

  & > div {
		position: relative;
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		overflow: hidden;

		& > div {
			margin-bottom: 1rem;
			position: relative;
			display: flex;
			justify-content: center;
			align-items: center;
			animation: glitch 5s 5s infinite;

			& > img {
				width: 600px;
			}
		}

		& > p {
			color: #fff;
			text-transform: uppercase;
      font-size: 1.5rem;
      font-weight: 300;
			letter-spacing: 1em;
			text-align: center;
			position: relative;
			margin-top: 2rem;
			animation: text-glitch 5s 5.02s infinite;
		}

		& > div::before, div::after {
			content: "";
			height: 100%;
			width: 100%;
			background-image: url(../assets/images/logo-hue.png);
			background-size: 600px;
			background-repeat:no-repeat;
      background-position: center; 
			position: absolute;
		}

		& > div::before {
			filter: hue-rotate(100deg);
			z-index: -2;
			left: 3px;
			animation: noise-before 3s linear infinite alternate-reverse, glitch 5s 5.05s infinite;
		}

		& > div::after {
			filter: hue-rotate(200deg);
			z-index: -1;
			left: -3px;
			animation: noise-after 3s linear infinite alternate-reverse, glitch 5s 5s infinite;
		}
	}
}

main section#line-up {

  & > header {
    margin-bottom: 3rem;
  }
  
  & > .swiper {
    width: 100%;
    padding-bottom: 50px;

    & > .swiper-wrapper {
      & > .swiper-slide {
        width: 300px;
        height: 400px;
        filter: blur(3px);
        border-radius: 10px;
        display: flex;
        flex-direction: column;
        justify-content: end;
        align-items: self-start;
      }

      & > .swiper-slide-active {
        filter: blur(0px);
      }

      & > .swiper-slide--one {
        background: url(../assets/images/artists/collusion_revelation-post.png)
            no-repeat 50% 50% / cover;
      }
      
      & > .swiper-slide--two {
        background: url("../assets/images/artists/omnya-post.png.png")
            no-repeat 50% 50% / cover;
      }
      
      & > .swiper-slide--three {
        background: url("../assets/images/artists/infliction_unload-post.png")
            no-repeat 50% 50% / cover;
      }
      
      & > .swiper-slide--four {
        background: url("../assets/images/artists/vasto-post.png")
            no-repeat 50% 50% / cover;
      }

      & > .swiper-slide--five {
        background: url("../assets/images/artists/coldax-post.jpg")
            no-repeat 50% 50% / cover;
      }

      & > .swiper-slide--six {
        background: url("../assets/images/artists/dark_entities-post.jpg")
            no-repeat 50% 50% / cover;
      }

      & > .swiper-slide--seven {
        background: url("../assets/images/artists/sanctuary-post.jpg")
            no-repeat 50% 50% / cover;
      }
      
      & > .swiper-slide--eight {
        background: url("../assets/images/artists/timo-post.jpg")
            no-repeat 50% 50% / cover;
      }
    }
    
    & > .swiper-pagination {
      & > .swiper-pagination-bullet,
      .swiper-pagination-bullet-active {
        background-color: var(--primary-color);
      }
    }
  }
}

main section#spotify {

  & > header {
    margin-bottom: 3rem;
  }

  & div {
    height: 50vh;
  }
}


main section#tickets {
  position: relative;

  & > header {
    margin-bottom: 3rem;
  }

  & .stars-container > img {
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
  }

  & .stars-container > a {
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    color: #fff;
    text-decoration: none;
    padding: .6rem 2rem;
    min-width: 152px;
    background-color: var(--backdrop-color);
    border: var(--primary-border);
    border-radius: 2rem;
  }
}


main section#team {
  display: grid;
  grid-template-columns: repeat(3, 3fr);
  grid-template-rows: repeat(2, 200px);
  gap: 3rem;

  & header p {
    color: var(--text-color);
    font-size: 1.5rem;
    font-weight: 100;
    letter-spacing: 0.5rem;
    text-align: center;
  }

  & .member {
    background-color: var(--backdrop-color);
    border: 2px solid var(--primary-color);
    border-radius: 1rem;
    padding: 2rem;
    display: flex;
    align-items: center;

    & img {
      height: 100%;
      margin-right: 1rem;
      border-radius: 1rem;
      
    }

    & aside p {
      color: var(--text-color);
      font-size: 1rem;
      font-weight: 100;
      letter-spacing: 0.5rem;
    }

    & aside div {
      display: flex;
      align-items: center;
      margin: 1rem 0 0 -5px;

      & i {
        font-size: 2rem;
        color: var(--text-color);
        font-weight: 500;
      }

      & a {
        font-size: 1rem;
        cursor: pointer;
        color: var(--text-color);
        font-weight: 500;
        text-decoration: none;
      }
    }
  }
}


footer {
  display: flex;
  flex-direction: column;
  align-items: center;

  & .footer-main {
    display: flex;
    justify-content: space-between;
    width: 70%;

    & > img {
      height: 8.5rem;
      align-self: center;
    }

    & aside {
      width: 50%;
      display: flex;
      flex-direction: row;
      justify-content: space-around;
      align-items: start;
      gap: 2rem;

      & div {
        display: flex;
        flex-direction: column;
        align-items: start;
        height: 100%;
        max-width: 33%;

        & > a {
          color: var(--primary-color);
          text-decoration: none;
          font-size: 1.5rem;
          font-weight: 500;
          display: flex;
          align-items: center;
          min-width: max-content;
          display: inline-block;
          margin: 1rem 0 0 0;
          cursor: pointer;

          &::after {
            content: "";
            width: 0px;
            height: 1px;
            display: block;
            transition: .2s;
            background: var(--primary-color);
          }
            
          &:hover::after {
            width: 100%;
          }

          & i {
            color: var(--primary-color) !important;
            font-size: 1rem;
            font-weight: 300;
          }
        }
        & > button {
          background-color: transparent;
          border: none;
          color: var(--primary-color);
          font-size: 1.25rem;
          font-weight: 500;
          min-width: max-content;
          margin: 1rem 0 0 0;
          cursor: pointer;

          &::after {
            content: "";
            width: 0px;
            height: 1px;
            display: block;
            transition: .2s;
            background: var(--primary-color);
          }
            
          &:hover::after {
            width: 100%;
          }

          & i {
            color: var(--primary-color) !important;
            font-size: 1rem;
            font-weight: 300;
          }
        }

        & a.VVtilburg {
          font-size: 1.25rem;
        }

        & p {
          color: var(--text-color);
          text-decoration: none;
          margin: 1rem 0 0 0;
          font-size: 0;
          width: 300px;
          opacity: 0;
          transition: all .3s ease-in-out;
        }

        & p.open {
          font-size: 14px;
          opacity: 1;
          transition: all .3s ease-in-out;
        }

        & p.parking {
         font-size: 1.25rem; 
         opacity: 1;
        }
      }
    }
  }

  & hr {
    width: 80%;
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid var(--primary-color);
    margin: 4rem 0;
  }

  & aside {
    width: 50%;
    display: flex;
    justify-content: space-around;

    & div.eternalbass-instagram {
      background-color: var(--backdrop-color);
      border-radius: 4rem;
      border: 2px solid var(--primary-color);
      padding: .5rem 1.5rem;
      display: flex;
      align-items: center;

      & i {
        font-size: 2.5rem;
        color: var(--text-color);
        font-weight: 500;
        margin-right: .5rem;
      }

      & a {
        font-size: 1rem;
        cursor: pointer;
        color: var(--text-color);
        font-weight: 500;
        text-decoration: none;
      }
    }
  }

  footer i {
    color: var(--primary-color) !important;
    font-size: 1rem;
    font-weight: 300;
  }

  & p {
    color: var(--text-color);
    font-size: 1.5rem;
    font-weight: 200;
    margin: 3rem 0 2rem;
  }
}
