/* Product grids, category navigation and faceted filters. */
.products.row {
  row-gap: 18px;
}

.products .product-miniature .thumbnail-container {
  height: 100%;
  border: 1px solid var(--at-border);
  border-radius: var(--at-radius);
  background: var(--at-surface);
  box-shadow: var(--at-shadow-sm);
  overflow: hidden;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.products .product-miniature .product-image-container {
  background: var(--at-surface);
}

.products .product-miniature .product-description {
  padding-right: 14px;
  padding-left: 14px;
}

.products .product-miniature .product-title,
.products .product-miniature .product-title a {
  color: var(--at-text);
  font-weight: 600;
  line-height: 1.42;
  text-transform: none;
}

.products .product-miniature .product-price-and-shipping {
  color: var(--at-primary-dark);
  font-variant-numeric: tabular-nums;
}

.products .product-miniature .button-container {
  display: block !important;
  position: static;
  min-height: 44px;
}

.products .product-miniature .button-container .add-to-cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  visibility: visible;
  opacity: 1;
}

.products .product-miniature .regular-price {
  color: var(--at-muted);
}

.products .product-miniature .product-flags .product-flag,
.products .product-miniature .product-flag {
  border-radius: 4px;
  font-weight: 600;
}

.products-sort-order .select-title,
.pagination .page-list,
#search_filters,
#search_filters_brands,
#search_filters_suppliers {
  border-color: var(--at-border);
  border-radius: var(--at-radius-sm);
}

#search_filters .facet .facet-title {
  color: var(--at-text);
  font-weight: 600;
  text-transform: none;
}

#search_filters .facet .facet-label a {
  color: #394454;
  line-height: 1.4;
}

.active_filters {
  border-radius: var(--at-radius-sm);
  background: var(--at-surface-soft);
}

.pagination a,
.pagination .current a {
  min-width: 40px;
  min-height: 40px;
  border-radius: var(--at-radius-sm);
}

#subcategories .subcategory-container {
  border-color: var(--at-border);
  border-radius: var(--at-radius-sm);
  overflow: hidden;
}

@media (hover: hover) and (min-width: 768px) {
  .products .product-miniature .thumbnail-container:hover {
    border-color: #c9d3de;
    box-shadow: var(--at-shadow);
    transform: translateY(-3px);
  }
}

@media (max-width: 767px) {
  .products.row {
    row-gap: 12px;
  }

  .products .product-miniature .product-description {
    padding-right: 10px;
    padding-left: 10px;
  }

  #search_filter_controls .btn,
  #search_filters_wrapper .btn {
    min-height: 44px;
  }
}
