/* Prevent horizontal scroll from slider overflow on catalog page */
.products-section {
  overflow: clip;
}

/**
 * Catalog masonry grid fix — 10-item repeating pattern
 *
 * Pattern per cycle:
 *   Row 1: [small] [small] [    large    ]
 *   Row 2: [    large    ] [small] [small]
 *   Row 3: [small] [small] [small] [small]
 *
 * Overrides nth-child(1)–nth-child(12) rules from main.css
 */

@media (min-width: 769px) {
  /* Reset old explicit nth-child positioning */
  .catalog-products__grid[data-view="catalog-list"] .product-card {
    grid-column: auto !important;
    grid-row: auto !important;
    margin-top: 0 !important;
    align-self: start;
  }

  /* 10-item repeating pattern — column placement only, rows auto-flow */
  .catalog-products__grid[data-view="catalog-list"] .product-card:nth-child(10n+1) { grid-column: 1 !important; }
  .catalog-products__grid[data-view="catalog-list"] .product-card:nth-child(10n+2) { grid-column: 2 !important; }
  .catalog-products__grid[data-view="catalog-list"] .product-card:nth-child(10n+3) { grid-column: 3 / span 2 !important; }
  .catalog-products__grid[data-view="catalog-list"] .product-card:nth-child(10n+4) { grid-column: 1 / span 2 !important; }
  .catalog-products__grid[data-view="catalog-list"] .product-card:nth-child(10n+5) { grid-column: 3 !important; }
  .catalog-products__grid[data-view="catalog-list"] .product-card:nth-child(10n+6) { grid-column: 4 !important; }
  .catalog-products__grid[data-view="catalog-list"] .product-card:nth-child(10n+7) { grid-column: 1 !important; }
  .catalog-products__grid[data-view="catalog-list"] .product-card:nth-child(10n+8) { grid-column: 2 !important; }
  .catalog-products__grid[data-view="catalog-list"] .product-card:nth-child(10n+9) { grid-column: 3 !important; }
  .catalog-products__grid[data-view="catalog-list"] .product-card:nth-child(10n)   { grid-column: 4 !important; }

  /* Large card image height */
  .catalog-products__grid[data-view="catalog-list"] .product-card--large .product-card__image-wrapper {
    height: 757px;
  }

  .catalog-products__grid[data-view="catalog-list"] .product-card--large {
    min-height: 0;
  }

  .catalog-products__grid[data-view="catalog-list"] .product-card {
    max-width: none;
  }
}
