/* Candidate only: test-injected on /luxury-packaging/category.html. Not deployed. */
main.page#main-content {
  box-sizing: border-box;
  width: 100%;
  max-width: 1360px;
  padding: clamp(40px, 4.6vw, 64px) clamp(20px, 4vw, 56px);
}

main.page#main-content > #products.catalog-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin-top: 32px;
}

#products.catalog-grid > .product-card,
#products.catalog-grid > .product-card > a,
#products.catalog-grid .visual,
#products.catalog-grid .visual strong,
#products.catalog-grid .product-copy {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
}

#products.catalog-grid .visual strong,
#products.catalog-grid .product-copy h3,
#products.catalog-grid .product-copy p,
#products.catalog-grid .product-copy small {
  overflow-wrap: anywhere;
  word-break: normal;
}

#products.catalog-grid .product-copy > * {
  min-width: 0;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
}

#products.catalog-grid .visual:has(.print-image) {
  height: 232px;
  min-height: 0;
}

#products.catalog-grid .visual img.print-image {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
  min-width: 0;
  object-fit: contain;
}

@media (max-width: 1100px) {
  main.page#main-content {
    max-width: 100%;
    padding: 48px 32px;
  }

  main.page#main-content > #products.catalog-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
  }
}

@media (max-width: 800px) {
  main.page#main-content {
    padding: 36px 20px;
  }

  main.page#main-content > #products.catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 24px;
  }

  #products.catalog-grid .visual:has(.print-image) {
    height: 200px;
  }
}

@media (max-width: 520px) {
  main.page#main-content {
    padding: 30px 16px 36px;
  }

  main.page#main-content > #products.catalog-grid {
    gap: 12px;
  }

  main.page#main-content .listing-toolbar {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 12px;
    align-items: end;
  }

  main.page#main-content .listing-toolbar > label:first-child {
    grid-column: 1 / -1;
  }

  main.page#main-content .listing-toolbar > label,
  main.page#main-content .listing-toolbar input,
  main.page#main-content .listing-toolbar select {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
  }

  #products.catalog-grid .visual:has(.print-image) {
    height: 176px;
  }

  #products.catalog-grid .product-copy > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    gap: 8px;
    min-width: 0;
  }

  #products.catalog-grid .product-copy > div > *,
  #products.catalog-grid .product-copy .cta {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
  }
}
