.card {
  width: 48.5%;
  font-family: Roboto;
  margin-bottom: 5.1%;
}

.card__media {
  position: relative;
  padding: 2.5vw 7.15vw;
  border-radius: 1.39vw;
  background-color: #ffffff;
}

.card__media:hover img:last-child, .card__media:hover .card__link a {
  opacity: 1;
}

.card__container {
  position: relative;
  width: 33.33vw;
  height: 33.33vw;
}

.card__container > img {
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}

.card__container > img:last-child {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 0;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

.card__link {
  position: absolute;
  right: 24px;
  top: 36px;
}

.card__link a, .card__link svg {
  display: block;
}

.card__link a {
  padding: 1.458vw 1.18vw 3.68vw 1.32vw;
  background-color: #F9DF58;
  border-radius: 5.56vw;
  opacity: 0;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

.card__link a:hover {
  background-color: #FFB801;
}

.card__link svg {
  width: 1.66vw;
  height: 1.66vw;
}

.card__price {
  position: absolute;
  bottom: 6.7%;
  left: 3.6%;
  padding: .7vw 1.25vw;
  font-variation-settings: 'wght' 600;
  font-size: 1.25vw;
  border-radius: 2.85vw;
  background-color: #D7E5F5;
  word-spacing: 5px;
}

.card__content {
  padding-top: 3.8%;
  width: 70%;
}

.card__title {
  font-size: 1.94vw;
  font-family: CraftWorkMedium;
}

.card__description {
  padding-top: 4%;
  font-size: 0.97vw;
  line-height: 1.4;
  font-family: Roboto;
  color: #797979;
}

@media screen and (max-width: 630px) {
  .active img:last-child {
    opacity: 1;
  }
  .active .card__link a {
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
    background-color: #F9DF58;
  }
  .card {
    width: 100%;
    display: block;
    margin-bottom: 9.23vw;
  }
  .card__container {
    width: 65.64vw;
    height: 65.64vw;
  }
  .card__media {
    border-radius: 2.56vw;
    padding: 4.85vw 14.09vw;
  }
  .card__price {
    font-size: 2.05vw;
    padding: 1.5vw;
    bottom: 5%;
    left: 3.5%;
  }
  .card__link {
    top: 5.5%;
    right: 4%;
  }
  .card__link a {
    opacity: 1;
    background-color: #fff;
    padding: 3vw 2.5vw 6.2vw 2.6vw;
  }
  .card__link svg {
    height: 2.66vw;
    width: 3vw;
  }
  .card__content {
    width: 95%;
    padding-top: 4.1vw;
  }
  .card__title {
    font-size: 5.10vw;
  }
  .card__description {
    position: relative;
    font-size: 4.08vw;
    line-height: 1.2;
  }
  .card__description button {
    color: #242424;
    margin-left: 10px;
    display: inline !important;
  }
}
