.store-pagination {
    --pagination-brand: var(--p-brand, var(--blue-700, #1f3d8f));
    container-type: inline-size;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px 24px;
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid #dce3eb;
    color: #172e41;
}
.p-pagination .store-pagination { margin-top: 0; }
.store-pagination__info { margin: 0; font-size: 12px; color: #536779; }
.store-pagination__info strong { color: #172e41; font-weight: 600; }
.store-pagination__controls, .store-pagination__numbers { display: flex; align-items: center; gap: 6px; }
.store-pagination__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
    padding: 0 10px;
    border: 1px solid #dce3eb;
    border-radius: 10px;
    background: #fff;
    color: #172e41;
    line-height: 1;
    font-family: inherit;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    font-variant-numeric: tabular-nums;
}
.store-pagination__button:hover:not(:disabled) { border-color: var(--pagination-brand); color: var(--pagination-brand); }
.store-pagination__button:focus-visible { outline: 2px solid var(--pagination-brand); outline-offset: 3px; }
.store-pagination__button.is-current { background: var(--pagination-brand); border-color: var(--pagination-brand); color: #fff; cursor: default; }
.store-pagination__button:disabled { opacity: .35; cursor: default; }
.store-pagination__ellipsis { padding: 0 4px; color: #536779; }
.store-pagination__mobile { display: none; font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; }
.store-pagination__mobile span { color: #536779; font-weight: 400; }
.p-results, .catalog-layout, .precision-search, .p-projects-toolbar { scroll-margin-top: 120px; }
@media (max-width: 767px) {
    .store-pagination { justify-content: center; gap: 12px; }
    .store-pagination__info { width: 100%; text-align: center; }
    .store-pagination__controls { width: 100%; justify-content: space-between; }
    .store-pagination__numbers { display: none; }
    .store-pagination__mobile { display: inline; }
}

@container (max-width: 560px) {
    .store-pagination__info { width: 100%; text-align: center; }
    .store-pagination__controls { width: 100%; justify-content: space-between; }
    .store-pagination__numbers { display: none; }
    .store-pagination__mobile { display: inline; }
}
