* {
  box-sizing: border-box;
}

input {
  visibility: hidden;
}

body,
html {
  align-items: center;
  background: #db0a5b;
  display: flex;
  font-size: 10px;
  justify-content: center;
  margin: 0;
  min-height: 100vh;
  padding: 0;
}

@media (min-width: 768px) {
  body,
  html {
    font-size: 14px;
  }
}
@media (min-width: 992px) {
  body,
  html {
    font-size: 16px;
  }
}

.card {
  position: absolute;
  background-color: #000;
  color: #fff;
  filter: drop-shadow(5px 5px 5px #000);

  width: 20rem;
  height: 28rem;
  padding: 2.5rem;
  border-radius: 1rem;

  flex-shrink: 0;
  font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue",
    Helvetica, Arial, "Lucida Grande", sans-serif;
  font-size: 1.5rem;
  font-weight: bolder;

  transition: transform 0.25s ease-out;
}

.card:nth-of-type(1) {
  transform: translate(-40%, 0) rotate(-15deg);
}

.card__footer {
  align-items: center;
  bottom: 30px;
  display: flex;
  font-size: 0.75rem;
  left: 2.5rem;
  position: absolute;
  right: 2.5rem;
}
.card__footer img {
  margin-right: 6px;
  width: 100%;
  max-width: 100px;
}
.card--answer {
  color: #000;
  background: #fff;
}

label {
  position: absolute;
  width: 20rem;
  height: 32rem;
  transform: translate(40%, 0) rotate(15deg);
}

.card--answer {
  background-color: #fff;
  color: #000;
}

#spaces:checked ~ .card--tabs {
  transform: translate(40%, 0) rotate(15deg) translate(0, -10%);
  z-index: 1;
}

#spaces:checked ~ .card--spaces {
  transform: translate(40%, 0) rotate(15deg) translate(0, 10%);
  z-index: 2;
}

#spaces:checked ~ label[for="tabs"] {
  z-index: 3;
}

#tabs:checked ~ .card--spaces {
  transform: translate(40%, 0) rotate(15deg) translate(0, -10%);
  z-index: 1;
}

#tabs:checked ~ .card--tabs {
  transform: translate(40%, 0) rotate(15deg) translate(0, 10%);
  z-index: 2;
}

#tabs:checked ~ label[for="spaces"] {
  z-index: 3;
}
