.shop {
  padding: 140px 0;
}

@media only screen and (max-width: 1200px) {
  .shop {
    padding: 110px 0;
  }
}

@media only screen and (max-width: 768px) {
  .shop {
    padding: 90px 0;
  }
}

@media only screen and (max-width: 575px) {
  .shop {
    padding: 70px 0;
  }
}

.shop__title {
  margin-bottom: 64px;
  font-weight: 700 !important;
  text-align: center;
}

@media only screen and (max-width: 1200px) {
  .shop__title {
    margin-bottom: 45px;
  }
}

@media only screen and (max-width: 768px) {
  .shop__title {
    font-size: 54px !important;
    margin-bottom: 35px;
  }
}

@media only screen and (max-width: 575px) {
  .shop__title {
    font-size: 36px !important;
    margin-bottom: 25px;
  }
}

.shop__items {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 35px 24px;
}

@media only screen and (max-width: 1200px) {
  .shop__items {
    max-width: 900px;
    gap: 35px;
    margin: 0 auto;
  }
}

@media only screen and (max-width: 575px) {
  .shop__items {
    max-width: 700px;
    margin: 0 auto;
  }
}

.shop__item {
  width: calc(25% - 18px);
  color: #27383f;
  display: flex;
  flex-direction: column;
}

@media only screen and (max-width: 1200px) {
  .shop__item {
    width: calc(50% - 19px);
  }
}

@media only screen and (max-width: 575px) {
  .shop__item {
    width: 100%;
  }
}

.shop__item--image {
  background-color: #f6f6f6;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 312 / 320;
  margin-bottom: 20px;
}

.shop__item--image img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  object-position: center center;
}

.shop__item--content {
  flex: 1;
  display: flex;
  flex-direction: column;
  row-gap: 32px;
}

@media only screen and (max-width: 575px) {
  .shop__item--content {
    row-gap: 20px;
  }
}

.shop__item--brand {
  font-size: 12px;
  line-height: 1.33;
  font-weight: 700;
  color: #3593ff;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.shop__item--name {
  font-size: 18px;
  line-height: 1.33;
  font-weight: 700;
  margin-bottom: 16px;
}

.shop__item--sizes {
  font-size: 12px;
  line-height: 1.33;
  font-weight: 700;
}

.shop__item--content-footer {
  margin-top: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

@media only screen and (max-width: 575px) {
  .shop__item--content-footer {
    gap: 6px;
  }
}

.shop__item--price {
  font-size: 24px;
  line-height: 1.1;
  font-weight: 700;
}

@media only screen and (max-width: 768px) {
  .shop__item--price {
    font-size: 20px;
  }
}
