.productRoot {
  display: flex;
  justify-content: center;
  align-items: center;
}

.productContainer {
  width: 70rem;
  padding: 1rem 0.5rem;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-column: auto;
  row-gap: 2rem;
  column-gap: 1rem;
}

@media only screen and (max-width: 1124px) {
  .productContainer {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media only screen and (max-width: 855px) {
  .productContainer {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media only screen and (max-width: 426px) {
  .productContainer {
    grid-template-columns: repeat(1, 1fr);
  }
}

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

.productCardRoot:hover .productCardImage {
  transform: scale(0.98);
}

.productCardImage {
  width: 16rem;
  height: 16rem;
  background-size: 100% 100%;
  transition: all 200ms linear;
}

.productCardRoot > div {
  width: 16rem;
}

.productCardRoot > div > p {
  font-size: medium;
  padding: 0.5rem 0;
  text-align: left;
  font-weight: 600;
  color: rgb(64, 64, 64);
}

@media only screen and (max-width: 855px) {
  .productCardImage,
  .productCardRoot > div {
    width: 22.5rem;
    height: 22.5rem;
  }
}

@media only screen and (max-width: 769px) {
  .productCardImage,
  .productCardRoot > div {
    width: 20rem;
    height: 20rem;
  }
}

@media only screen and (max-width: 376px) {
  .productCardImage,
  .productCardRoot > div {
    width: 16rem;
    height: 16rem;
  }
}

@media only screen and (max-width: 270px) {
  .productCardImage,
  .productCardRoot > div {
    width: 14rem;
    height: 14rem;
  }
}

@media only screen and (max-width: 241px) {
  .productCardImage,
  .productCardRoot > div {
    width: 12.5rem;
    height: 12.5rem;
  }
}
