.section-recommended-product {
  overflow-x: clip;
}

.section-recommended-product .block-heading {
  margin: 0;
}

.section-recommended-product theme-recommended-product,
.section-recommended-product .block-product-list__carousel {
  width: 100%;
  max-width: 100%;
  overflow: visible !important;
}

.section-recommended-product .block-product-list {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-flow: row !important;
  grid-auto-columns: auto !important;
  gap: 22px;
  width: 100% !important;
  max-width: 100%;
  margin: 0;
  padding: 0;
  overflow: visible !important;
  transform: none !important;
  transition: none !important;
  will-change: auto !important;
}

.section-recommended-product .block-product-list > li {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: 0 1 auto !important;
  transform: none !important;
  list-style: none;
}

.section-recommended-product product-item,
.section-recommended-product theme-product-card {
  display: flex !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 100%;
}

.section-recommended-product .block-product-card {
  flex-direction: column !important;
  gap: 10px;
  min-width: 0;
}

.section-recommended-product .block-product-image__layer-image-wrapper,
.section-recommended-product .block-product-image__layer-image-wrapper > a,
.section-recommended-product .block-product-image__image-wrapper {
  display: block;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}

.section-recommended-product .block-product-image__layer-image-wrapper {
  border-radius: 8px;
  background: #fff;
}

.section-recommended-product .block-product-image__image {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #fff;
}

.section-recommended-product .block-product-image__layer-wrapper,
.section-recommended-product .block-product-card__layer {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  pointer-events: none;
}

.section-recommended-product .block-product-card__quick-add {
  pointer-events: auto;
}

.section-recommended-product .block-product-card-info {
  display: flex !important;
  flex: 1 1 auto;
  flex-direction: column !important;
  gap: 8px;
  width: 100% !important;
  min-height: 154px;
}

.section-recommended-product .block-product-title {
  display: -webkit-box;
  min-height: 44px;
  overflow: hidden;
  color: #111827;
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
  word-break: normal !important;
  overflow-wrap: break-word;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.section-recommended-product .block-product-price {
  min-height: 22px;
  font-weight: 800;
}

.section-recommended-product .block-product-card__description {
  min-height: 22px;
  color: #374151;
}

.section-recommended-product .block-product-buy-button-wrapper {
  margin-top: auto;
  width: 100% !important;
}

.section-recommended-product .block-product-buy-button-wrapper form,
.section-recommended-product .block-product-buy-button {
  width: 100% !important;
}

.section-recommended-product .block-product-buy-button {
  min-height: 40px;
  border-radius: 5px;
}

@media (max-width: 1023px) {
  .section-recommended-product .block-product-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }
}

@media (max-width: 767px) {
  .section-recommended-product {
    padding-inline: 0;
  }

  .section-recommended-product .block-product-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    width: 100% !important;
    max-width: 100% !important;
    transform: none !important;
  }

  .section-recommended-product .block-product-list > li {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .section-recommended-product .block-product-card {
    gap: 8px;
  }

  .section-recommended-product .block-product-card-info {
    min-height: 146px;
    gap: 7px;
  }

  .section-recommended-product .block-product-title {
    min-height: 40px;
    font-size: 14px;
  }

  .section-recommended-product .block-product-card__description {
    font-size: 12px;
  }

  .section-recommended-product .block-product-buy-button {
    min-height: 38px;
  }
}
