.porto-products:has(.woocommerce-pagination.pagination.load-more) .shop-loop-after {
    display: flex !important;
    width: 100% !important;
    margin-top: 25px !important;
    justify-content: center !important;
}

.porto-products .woocommerce-pagination.pagination.load-more {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: center !important;
}

.porto-products .woocommerce-pagination.pagination.load-more .page-numbers {
    margin: 0 !important;
}

.porto-products .woocommerce-pagination.pagination.load-more .page-numbers > li {
    display: none !important;
}

.porto-products .woocommerce-pagination.pagination.load-more .page-numbers > li:last-child {
    display: block !important;
}

.porto-products .woocommerce-pagination.pagination.load-more a.next {
    display: inline-flex !important;
    width: 100% !important;
    min-width: 130px !important;
    max-width: 270px !important;
    min-height: 44px !important;
    padding: 10px 15px !important;
    border: var(--storefront-button-border-width, 0) solid var(--storefront-color-primary) !important;
    border-radius: var(--storefront-button-radius, 0) !important;
    background: var(--storefront-color-primary) !important;
    color: #fff !important;
    font-family: var(--storefront-font-ui, "Montserrat", Arial, sans-serif) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 22px !important;
    letter-spacing: .05em !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    transform: none !important;
    align-items: center !important;
    justify-content: center !important;
    transition: color 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94),
        background 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94),
        background-color 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94),
        border 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

.porto-products .woocommerce-pagination.pagination.load-more a.next:hover,
.porto-products .woocommerce-pagination.pagination.load-more a.next:focus-visible {
    background: var(--storefront-color-primary-hover) !important;
    border-color: var(--storefront-color-primary-hover) !important;
    color: var(--storefront-color-surface, #fff) !important;
}

.porto-products.storefront-show-more-is-loading
    .woocommerce-pagination.pagination.load-more a.next,
.porto-products:has(ul.products.loading)
    .woocommerce-pagination.pagination.load-more a.next {
    position: relative !important;
    background: #fff !important;
    color: #232323 !important;
    font-size: 0 !important;
    pointer-events: none !important;
    cursor: default !important;
    transition: none !important;
}

.porto-products.storefront-show-more-is-loading
    .woocommerce-pagination.pagination.load-more a.next::before,
.porto-products:has(ul.products.loading)
    .woocommerce-pagination.pagination.load-more a.next::before {
    content: "" !important;
    position: absolute !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 2 !important;
    top: 50% !important;
    left: 46% !important;
    width: 20px !important;
    height: 20px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    border-style: solid !important;
    border-width: 2px !important;
    border-top-color: #fc0 !important;
    border-right-color: #4dd4c6 !important;
    border-bottom-color: #f00 !important;
    border-left-color: #f6f6f6 !important;
    border-radius: 50% !important;
    background: transparent !important;
    box-shadow: none !important;
    pointer-events: none !important;
    animation: storefront-show-more-loader-spin 1.4s linear infinite !important;
}

@keyframes storefront-show-more-loader-spin {
    0% {
        transform: translateY(-50%) rotate(0deg);
    }

    100% {
        transform: translateY(-50%) rotate(360deg);
    }
}

@media (max-width: 575px) {
    .porto-products .woocommerce-pagination.pagination.load-more a.next {
        min-height: 38px !important;
        padding: 7px 15px !important;
    }
}

.porto-products:has(.woocommerce-pagination.pagination.load-more) ul.products.loading {
    pointer-events: none !important;
}
