/* Keep long advertiser names/domains within their own columns. */
.catalog-page .offerst { table-layout: fixed; width: 100%; }
.catalog-page .offerst th,
.catalog-page .offerst td { overflow-wrap: anywhere; }
.catalog-filters { display: flex; justify-content: center; flex-wrap: wrap; gap: 0 12px; }
.catalog-filters .inputbox { width: 200px; max-width: 100%; }
.catalog-pagination { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px 20px; margin-top: 24px; }
.catalog-pagination a { max-width: 100%; overflow-wrap: anywhere; }
.catalog-empty { text-align: center; padding: 30px 0; }

@media (max-width: 767px) {
    .catalog-page .catalog-heading { display: none; }
    .catalog-page .catalog-entry { display: block; border: 1px solid #dce5e8; border-radius: 12px; background: #fff; }
    .catalog-entry tbody,
    .catalog-entry tr { display: block; width: 100%; }
    .catalog-page .catalog-entry td { display: block; width: 100% !important; padding: 10px 16px; text-align: left; border: 0; }
    .catalog-page .catalog-entry td + td { border-top: 1px solid #edf1f3; }
    .catalog-entry td::before { content: attr(data-label); display: block; margin-bottom: 4px; color: #536776; font-size: 13px; font-weight: 600; }
    .catalog-entry img { height: auto; }
    .catalog-filters .inputbox { flex: 1 1 200px; }
}
