.categories-hub-page-content > h1 { max-width: 1480px; margin-left: auto; margin-right: auto; }
.categories-hub { width: 100%; max-width: 1480px; margin: 0 auto; }
.categories-hub-sort { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 4px 0 18px; }
.categories-hub-sort-label { margin-right: 3px; font-weight: 600; color: #173f59; }
.categories-hub-sort-button { min-height: 42px; padding: 7px 14px; border: 1px solid #a7b9c5; border-radius: 7px; background: #fff; color: #173f59; cursor: pointer; }
.categories-hub-sort-button:hover { border-color: #0a5f90; background: #eef6fb; }
.categories-hub-sort-button.is-active, .categories-hub-sort-button.is-active:hover { border-color: #0a5f90; background: #0a5f90; color: #fff; }
.categories-hub-sort-button:focus-visible { outline: 3px solid #0a5f90; outline-offset: 2px; }
.categories-hub > p { width: 100%; font-size: 1.05rem; line-height: 1.6; }
.categories-hub-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.categories-hub-card { display: flex; align-items: center; gap: 12px; min-height: 96px; padding: 8px; border: 1px solid #ddd; border-radius: 8px; color: #173f59; text-decoration: none; }
.categories-hub-card:hover, .categories-hub-card:focus-visible { border-color: #0a5f90; text-decoration: underline; }
.categories-hub-card img { flex: 0 0 80px; object-fit: contain; background: #fff; }
.categories-hub-card span { line-height: 1.35; }
.categories-hub-ad { width: 100%; max-width: 1200px; min-height: 250px; margin: 28px auto 34px; text-align: center; }
.categories-hub-pages { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:8px; margin:28px 0 8px; }
.categories-hub-pages a, .categories-hub-current { min-width:36px; padding:8px 11px; border:1px solid #0a5f90; border-radius:6px; text-align:center; }
.categories-hub-current { color:#fff; background:#0a5f90; }
.categories-hub-pages a:focus-visible { outline:3px solid #0a5f90; outline-offset:2px; }
.categories-hub-count { text-align:center; color:#506471; }
@media (max-width: 1100px) { .categories-hub-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 700px) { .categories-hub-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .categories-hub-card img { flex-basis: 60px; width: 60px; height: 60px; } }
@media (max-width: 420px) { .categories-hub-grid { grid-template-columns: 1fr; } }
