
.hidden {
    display: none !important;
}

.blur {
    filter: blur(13px) !important;
}

/* -------------  */

article {
  display: flex;
  align-content: center;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

.cards {
  display: flex;
  align-content: center;
  justify-content: center;
  flex-wrap: wrap;
  margin: auto;
  gap: 2.4vh;
  max-width: 1200px;
}

.card {
  width: 3.4em;
  height: 2.61em;
  display: block;
  border-radius: 2rem 0;
  box-shadow: 0px 40px 39px -23px #61616187;
  font-size: 60px;
  cursor: default;
  position: relative;
  border: 1px solid;
  transform: scale(1);
  transition: 50ms transform ease-out;
  background-size: contain;
  background-position: 50% 50%;
  text-decoration: none;
  color: inherit;
}

.card.shrink {
    transform: scale(.75);
    transition: 150ms transform ease-out;
    opacity: 0.2;
}

.card.card-small {
  width: 4em;
  height: 3.1em;
  font-size: 45px;
  border-width: 4px;
}

a.card {
    border-color: white;
    text-decoration: none;
}

.card label {
    position: absolute;
    left: 0;
    bottom: 0;
    margin: 0rem 0;
    font-size: 1rem;
    background: white;
    font-weight: 900;
    font-style: normal;
    border-radius: 0 .51rem 0 0;
    min-width: 3rem;
    line-height: 1;
    padding: .5rem .5rem .3rem;
    text-align: left;
    color: black;
}

.card label .icon {
  font-size: 1.1rem;
  display: inline-block;
  vertical-align:middle;
}

.card em {
  text-align: center;

}

@media (min-width: 1650px) {
  .card {
    /* width: 290px; */
    /* height: 225px; */
  }
}

.card-button {
      background: white;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    flex-wrap: nowrap;
}

.card-button #summary {
  width: 100%;
}

.card-aside {
  position: absolute;
  left: 100%;
  margin: 0 4rem;
  display: flex;
  height: 100%;
  justify-content: center;
  flex-direction: row;
  width: 8rem
}

.card-aside button {
  background: none;
  border: none;
  color: white;
  outline: none;
}

.card-aside .icon {
  font-size: 5.5rem;
  cursor: pointer;
}

.card-cta {
  background: transparent;
  color: black;
  font-size: 3rem;
  text-transform: uppercase;
  font-weight: 900;
  cursor: pointer !important;
  border: none;
  display: flex;
  justify-content: center;
  align-content: center;
  height: 100%;
  flex-direction: column;
  width: 100%;
  outline: none;
}

.card-cta strong,
.card-cta em {
    width: 100%;
}

.card-cta #summary {
  font-size: 0.8rem;
}

.title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: auto;
  height: 100%;
  gap: 10px;
}

.card h1,
.card p {
  padding: 0;
  margin: 0;
}

.card h1 {
  font-weight: 100;
  font-size: 6rem;
  letter-spacing: -3px;
}

.poster em {
  position: absolute;
  right: 0;
  margin: 10px;
  display: block;
  color: white;
  font-family: sans-serif;
  font-style: normal;
}

.complete .poster::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  z-index: 1;
  background: red;
  width: 1em;
  height: 1em;
  border-radius: 1rem;
  font-size: 10px;
  margin: 1.4em -5px 0 0;
}

.film-frames {
  display: flex;
  flex-direction: row;
}

.film-frames img {
  height: 100%;
  width: 102%;
  display: block;
}
