body {
  margin: 0;
  background: #000;
  color: #CF6D70;
  font-family: sans-serif;
  font-size: calc(0.8vw + 0.6vh + 0.4vmin);
  line-height: 1.5;
}

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

a:hover {
  color: #ba9687;
}

.logo {
  margin: 0;
  text-align: center;
}

.logo__image {
  max-width: 100%;
  max-height: 12vh;
}

.title {
  margin: 1rem auto 2rem;
  padding: 0 2rem;
  font-weight: normal;
  font-size: 1rem;
  line-height: 1.5;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  max-width: 50rem;
  color: #6866B6;
}

.grid {
  list-style: none;
  margin: 0 auto;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 10px;
  grid-auto-rows: minmax(100px, auto);
  max-width: 1145px;
}

.grid__cell {
  padding: 0;
}

.grid__cell--one,
.grid__cell--two,
.grid__cell--three {
  grid-row: 1;
}

.grid__cell--four,
.grid__cell--five,
.grid__cell--six {
  grid-row: 2;
}

.grid__cell--seven,
.grid__cell--eight,
.grid__cell--nine {
  grid-row: 3;
}

.grid__cell--one,
.grid__cell--four,
.grid__cell--seven {
  grid-column: 1;
}

.grid__cell--two,
.grid__cell--five,
.grid__cell--eight {
  grid-column: 2;
}

.grid__cell--three,
.grid__cell--six,
.grid__cell--nine {
  grid-column: 3;
}

.grid__image {
  max-width: 100%;
  display: block;
}

.flyer {
  perspective: 100vh;
	height: 60vh;
}

.flyer:hover .flyer__card {
  transform: rotateY(180deg);
}

.flyer.flyer--flipped .flyer__card {
  transform: rotateY(0deg);
}

.flyer.flyer--flipped .flyer__front {
  display: none;
}

.flyer.flyer--flipped .flyer__back {
  transform: rotateY(0deg) translateX(-50%);
}

.flyer__card {
  transition: 0.6s;
	transform-style: preserve-3d;
	position: relative;
}

.flyer__front,
.flyer__back {
  backface-visibility: hidden;
	position: absolute;
	top: 0;
	left: 50%;
	height: 60vh;
	width: 90vw;
  text-align: center;
}

.flyer__front {
  z-index: 2;
  transform: rotateY(0deg) translateX(-50%);
}

.flyer__back {
  transform: rotateY(180deg) translateX(50%);
}

.flyer__image {
  max-height: 100%;
  max-width: 100%;
}

.gallery {
  margin-bottom: 4rem;
}

.gallery__link {
  display: block;
  text-align: center;
}

.gallery__title {
  margin: 2rem 0 0;
}

.gallery__date {
  margin: 0 0 1rem;
}

.gallery__image {
  max-height: 60vh;
  max-width: 80vw;
}

.comingsoon {
  margin: 8rem auto;
  padding: 0 2rem;
  font-size: calc(1.2vw + 1.2vh + 0.6vmin);
  text-align: center;
  color: #CF6D70;
}

.contact__channels {
  list-style: none;
  margin: 0 auto;
  padding: 2rem;
  display: flex;
  justify-content: space-between;
  max-width: 50rem;
}

.contact__channel {
  padding: 0;
}

@media (max-width: 33rem) {
  .contact__channels {
    flex-direction: column;
  }
  
  .contact__channel {
    margin-bottom: 1rem;
  }
}

.contact__link {
  font-size: 1rem;
  display: inline-block;
  padding-left: 2rem;
}

.contact__link--mail {
  background: transparent url(../img/icon/mail.svg) no-repeat left center;
  background-size: contain;
}

.contact__link--facebook {
  background: transparent url(../img/icon/facebook.svg) no-repeat left center;
  background-size: contain;
}

.contact__link--instagram {
  background: transparent url(../img/icon/instagram.svg) no-repeat left center;
  background-size: contain;
}
