.cgap-box .products.cgap-grid {
  display: grid;
  grid-template-columns: repeat(var(--cgap-columns, 4), minmax(0, 1fr));
  gap: var(--cgap-gap, 20px);
  margin: 0;
  width: 100%;
}

.cgap-box .products.cgap-grid:before,
.cgap-box .products.cgap-grid:after {
  display: none;
}

.cgap-box .products.cgap-grid > .column-item {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  float: none;
  flex: none;
  list-style: none;
}

.cgap-box .products.cgap-grid img {
  max-width: 100%;
  height: auto;
}

.cgap-empty {
  padding: 20px;
  border: 1px dashed #888;
  line-height: 1.6;
}

.cgap-box > .klbth-module-header {
  margin-bottom: 20px;
}

@media (max-width: 1024px) {
  .cgap-box .products.cgap-grid {
    grid-template-columns: repeat(var(--cgap-columns, 2), minmax(0, 1fr));
  }
}

/* Override scorrimento orizzontale Mobile */
@media screen and (max-width: 767px) {
  div.cgap-box ul.products.cgap-grid,
  .cgap-box .products.cgap-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 15px !important;
    padding-bottom: 15px !important;
    scrollbar-width: none; /* Nasconde scrollbar su Firefox */
  }

  div.cgap-box ul.products.cgap-grid::-webkit-scrollbar,
  .cgap-box .products.cgap-grid::-webkit-scrollbar {
    display: none; /* Nasconde scrollbar su Chrome/Safari */
  }

  div.cgap-box ul.products.cgap-grid > .column-item,
  .cgap-box .products.cgap-grid > .column-item {
    flex: 0 0 75% !important;
    width: 75% !important;
    max-width: 75% !important;
    min-width: 75% !important;
    scroll-snap-align: start;
  }
}