.catalog {
  border-top:1px solid var(--line);
  scroll-margin-top:24px;
}

.catalog-filters {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:24px;
}

.catalog-filters button {
  padding:10px 16px;
  border:1px solid var(--line);
  border-radius:25px;
  background:white;
  font-size:13px;
  min-height:44px;
}

.catalog-filters button:hover,.catalog-filters button.is-active {
  background:var(--ink);
  color:white;
  border-color:var(--ink);
}

.result-count {
  font-size:13px;
  color:var(--muted);
  margin-bottom:20px;
}

.object-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.object-card {
  min-width:0;
  overflow-wrap:anywhere;
  position:relative;
  padding:24px 30px 24px 24px;
  border:1px solid var(--line);
  border-radius:20px;
  transition:background .15s,border-color .15s;
  min-height:160px;
}

.object-card:hover {
  background:var(--tint);
  border-color:#dca99b;
}

.object-card>span {
  font-size:11px;
  color:var(--muted);
}

.object-card h3 {
  font-size:20px;
  margin:10px 0;
  line-height:1.3;
}

.object-card p {
  font-size:13px;
  color:var(--muted);
  max-width:90%;
}


.catalog-note {
  margin-top:28px;
  font-size:12px;
  color:var(--muted);
  max-width:720px;
}

.no-results {
  padding:36px;
  background:var(--tint);
  border-radius:20px;
}

.catalog-filters>a { display:flex; align-items:center; min-height:44px; border:1px solid var(--line); border-radius:24px; padding:8px 16px; text-decoration:none; }
.catalog-filters>a[aria-current] { background:var(--action); color:var(--paper); border-color:var(--action); }
.catalog .search-form { margin:16px 0; }
.catalog .search-form button { min-height:44px; }
