& .pagination.navigation {
    grid-column: 1 / -1;
    margin-inline: auto;
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;

    & .nav-links {
        display: flex;

        & .page-numbers {
            position: relative;
            display: grid;
            place-content: center;
            width: 2.875rem;
            height: 2.875rem;
            transition: all .3s ease;

            &.current {
                &:before {
                    position: absolute;
                    content: '';
                    bottom: 0;
                    left: 50%;
                    transform: translateX(-50%);
                    width: 1rem;
                    height: .25rem;
                    background-color: var(--wp--preset--color--primary);
                }
            }

            &:hover:not(.current, .dots) {
                background-color: var(--wp--preset--color--secondary);

                &::before {
                    position: absolute;
                    content: '';
                    bottom: 0;
                    left: 50%;
                    transform: translateX(-50%);
                    width: 0;
                    height: .25rem;
                    background-color: var(--wp--preset--color--primary);
                    animation: mark-pagination .3s ease forwards;
                }
            }

            &:focus-visible {
                outline: none;
                background-color: var(--wp--preset--color--secondary);

                &::before {
                    position: absolute;
                    content: '';
                    bottom: 0;
                    left: 50%;
                    transform: translateX(-50%);
                    width: 0;
                    height: .25rem;
                    background-color: var(--wp--preset--color--focus);
                    animation: mark-pagination .3s ease forwards;
                }
            }
        }

        & :is(.page-numbers.prev, .page-numbers.next) {
            font-size: 0;
        }
    }
}

@keyframes mark-pagination {
    0% {
        width: 0;
    }

    100% {
        width: 1rem;
    }
}