.results__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.6em;
}

.card {
  background-color: var(--color-bg-footer);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.05);
  height: 500px;
  display: grid;
  grid-template-rows: 60% 25% 15%;
  position: relative;
}

.card__thumb {
  width: 100%;
  overflow: hidden;
  background-color: var(--color-bg-footer);
}
.card__thumb img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.card__thumb .card__placeholder {
  box-sizing: border-box;
  padding: 0 38%;
  object-fit: contain;
}

.card__info {
  padding: 1em 1.2em;
  display: flex;
  flex-direction: column;
  row-gap: 0.8em;
}

.card__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.card__head .card__brand {
  font-weight: 600;
  font-size: 1.6em;
  color: #000;
}
.card__head .card__model {
  font-size: 1.0666666667em;
  color: var(--color-grey-text);
  margin-top: 0.2em;
}
.card__head .card__price {
  font-weight: 600;
  font-size: 1.6em;
  color: var(--color-primary);
  text-align: right;
}
.card__head .card__unit {
  font-size: 0.9333333333em;
  color: var(--color-grey-text);
  text-align: right;
}

.card__title {
  display: flex;
  flex-direction: column;
}

.card__features {
  align-items: center;
  column-gap: 1.2em;
}
.card__features .feature {
  display: inline-flex;
  align-items: center;
  gap: 0.5333333333em;
  color: var(--color-grey-text);
}
.card__features .feature img {
  width: 22px;
  height: 22px;
  display: block;
}

.card__action {
  padding: 1.2em 1.3333333333em 1.3333333333em;
  display: flex;
  align-items: center;
}
.card__action .btn {
  width: 100%;
}

.card__badge {
  display: none;
  position: absolute;
  top: 0.8em;
  right: 0.8em;
  background: var(--color-bg-footer);
  border: 1px solid var(--color-grey-border);
  border-radius: 999px;
  padding: 0.4em 0.6666666667em;
  color: var(--color-grey-text);
  font-size: 0.8666666667em;
}

.card--unavailable {
  opacity: 0.75;
}

.card--unavailable .card__badge {
  display: inline-block;
}

.no-results {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 320px;
  background: var(--color-bg-footer);
  border: 1px dashed var(--color-grey-border);
  border-radius: 20px;
  text-align: center;
  padding: 2.6666666667em;
}

.no-results__title {
  font-weight: 600;
  font-size: 1.6em;
  color: #000;
}

.no-results__subtitle {
  font-size: 1.0666666667em;
  color: var(--color-grey-text);
  margin-top: 0.5333333333em;
}

@media screen and (max-width: 1342px) {
  .results__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.3333333333em;
  }
}
@media screen and (max-width: 882px) {
  .results__grid {
    grid-template-columns: 1fr;
    gap: 1.2em;
  }
  .card {
    height: auto;
    grid-template-rows: auto;
  }
  .card__thumb {
    aspect-ratio: 4/3;
  }
  .card__info {
    align-items: stretch;
    text-align: left;
  }
  .card__head {
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.8em;
    text-align: left;
  }
  .card__title {
    align-items: flex-start;
    text-align: left;
  }
  .card__head .card__title:last-child {
    align-items: flex-end;
    text-align: right;
  }
  .card__price {
    text-align: right;
  }
  .card__unit {
    text-align: right;
  }
  .card__features {
    justify-content: center;
    flex-wrap: wrap;
    row-gap: 0.5333333333em;
  }
  .card__action {
    padding: 0.9333333333em 1.0666666667em 1.0666666667em;
  }
}
@media screen and (max-width: 568px) {
  .card__thumb {
    aspect-ratio: 1/1;
  }
}
