.pagination {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

.pagination a,
.pagination span {
    display: inline-flex;
    min-width: 40px;
    min-height: 40px;
    align-items: center;
    justify-content: center;
    padding-inline: 10px;
    border: 1px solid var(--color-brand-border-subtle);
    border-radius: var(--radius-md);
    background: var(--color-surface);
    color: var(--color-brand-primary-dark);
    font-weight: 700;
    text-decoration: none;
}

.pagination [aria-current="page"] {
    background: var(--color-brand-primary);
    border-color: var(--color-brand-primary);
    color: var(--color-surface);
}

@media (hover: hover) {
    .pagination a {
        transition:
            border-color 0.16s ease,
            box-shadow 0.16s ease;
    }

    .pagination a:hover {
        border-color: var(--color-brand-outline);
        box-shadow: var(--shadow-md);
    }
}

@media (max-width: 767px) {
    .pagination {
        justify-content: center;
        margin-block: 16px;
    }
}
