/*--------------------------------------------------------------
>>> FOOTER
--------------------------------------------------------------*/

.site-footer {
    margin-top: auto;
    background: var(--abr-color-dark);
    color: var(--abr-color-white);
    padding: var(--abr-space-2xl) 0 var(--abr-space-lg);
}

.footer-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: var(--abr-space-xl);
    margin-bottom: var(--abr-space-xl);
}

.site-info {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding-top: var(--abr-space-lg);
    text-align: center;
    font-size: var(--abr-fs-sm);
    color: var(--abr-color-gray-light);
}

/*rtl:begin:ignore*/
[dir="rtl"] .footer-grid {
    direction: rtl;
}



/*rtl:end:ignore*/

/* Footer Widget Reset */
.site-footer .widget {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
    margin-bottom: var(--abr-space-xl);
}

.site-footer .widget:hover {
    transform: none;
    box-shadow: none;
}

.site-footer .widget-title {
    color: var(--abr-color-white);
    font-size: var(--abr-fs-lg);
    margin-bottom: var(--abr-space-lg);
}

.site-footer .widget-title::after {
    background: var(--abr-color-primary);
    width: 30px;
}

.site-footer .widget ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-footer .widget ul li {
    padding-block: 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.site-footer .widget ul li a,
.site-footer .footer-column a:not(.wp-block-button__link) {
    color: var(--abr-color-gray-light);
    transition: all var(--abr-trans-fast);
}

.site-footer .widget ul li a:hover,
.site-footer .footer-column a:not(.wp-block-button__link):hover {
    color: var(--abr-color-white);
    padding-inline-start: 0;
}

/*--------------------------------------------------------------
>>> BACK TO TOP BUTTON
--------------------------------------------------------------*/
.abr-back-to-top {
    position: fixed;
    inset-inline-end: 25px;
    bottom: 25px;
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--abr-btn-bg, var(--abr-color-primary));
    background-image: var(--abr-btn-gradient, var(--abr-gradient-primary));
    color: var(--abr-btn-text, #ffffff);
    border: none;
    border-radius: var(--abr-radius-full, 9999px);
    box-shadow: var(--abr-shadow-lg, 0 10px 25px -5px rgba(0, 0, 0, 0.2));
    cursor: pointer;
    z-index: 990;
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px) scale(0.9);
    transition: opacity var(--abr-trans-base), transform var(--abr-trans-base), visibility var(--abr-trans-base), background var(--abr-trans-fast), color var(--abr-trans-fast), box-shadow var(--abr-trans-fast);
}

.abr-back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
}

.abr-back-to-top:hover {
    background: var(--abr-btn-hover-bg, var(--abr-color-primary-dark));
    color: var(--abr-btn-hover-text, #ffffff);
    transform: translateY(-4px) scale(1.06);
    box-shadow: 0 15px 35px -5px rgba(0, 0, 0, 0.3);
}

.abr-back-to-top:active {
    transform: translateY(0) scale(0.96);
}

.abr-back-to-top i,
.abr-back-to-top svg {
    font-size: 16px;
    line-height: 1;
    color: inherit;
    transition: transform var(--abr-trans-fast);
}

.abr-back-to-top:hover i,
.abr-back-to-top:hover svg {
    transform: translateY(-2px);
}

/* Offset when mobile bottom nav is active */
body.has-mobile-bottom-nav .abr-back-to-top {
    bottom: calc(85px + env(safe-area-inset-bottom));
}

@media (max-width: 639px) {
    .abr-back-to-top {
        inset-inline-end: 15px;
        bottom: 15px;
        width: 42px;
        height: 42px;
    }
}