.rk-back-to-top {
    position: fixed;
    right: 24px;
    bottom: calc(24px + var(--rk-floating-whatsapp-size, 60px) + 14px);
    z-index: 1000;
    display: inline-flex;
    visibility: hidden;
    align-items: center;
    justify-content: center;
    width: var(--rk-floating-whatsapp-size, 60px);
    height: var(--rk-floating-whatsapp-size, 60px);
    padding: 0;
    color: var(--personal-navy, #4c5564);
    background: rgba(247, 244, 239, 0.94);
    border: 1px solid var(--personal-line, rgba(76, 85, 100, 0.16));
    border-radius: 50%;
    box-shadow: 0 12px 30px rgba(58, 64, 73, 0.15);
    opacity: 0;
    transform: translateY(8px);
    transition:
        opacity 0.25s ease,
        visibility 0.25s ease,
        transform 0.25s ease;
}

.rk-back-to-top.is-visible {
    visibility: visible;
    opacity: 1;
    transform: none;
}

.rk-back-to-top:hover {
    color: #fff;
    background: var(--personal-navy, #4c5564);
    transform: translateY(-2px);
}

.rk-back-to-top:focus-visible {
    outline: 3px solid #b59668;
    outline-offset: 4px;
}

@media (max-width: 767.98px) {
    .rk-back-to-top {
        right: 16px;
        bottom: calc(
            18px + env(safe-area-inset-bottom, 0px) +
                var(--rk-mobile-fixed-cta-height, 0px) +
                var(--rk-floating-whatsapp-size, 56px) + 12px
        );
        width: var(--rk-floating-whatsapp-size, 56px);
        height: var(--rk-floating-whatsapp-size, 56px);
    }
}

@media (prefers-reduced-motion: reduce) {
    .rk-back-to-top {
        transition-duration: 0.01ms;
    }
}
