.eceens-floating-btn {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 9999;
    border-radius: 20px !important;
    padding: 10px 20px !important;
    opacity: 0;
    transform: translateY(100vh);
    animation: eceens-enter-bounce 2.5s cubic-bezier(0.22, 1, 0.36, 1) 0.5s forwards;
}

.eceens-floating-btn.elementor-button:hover,
.eceens-floating-btn.elementor-button:focus,
.eceens-floating-btn.elementor-button:active {
    background-color: var(--eceens-floating-btn-bg) !important;
    color: var(--eceens-floating-btn-color) !important;
    border-color: var(--eceens-floating-btn-border) !important;
    box-shadow: inset 0 0 15px 0 rgba(0, 0, 0, 0.3) !important;
}

@keyframes eceens-enter-bounce {
    /* fade in up */
    0% {
        opacity: 0;
        transform: translateY(100vh);
    }
    40% {
        opacity: 1;
        transform: translateY(0);
    }
    /* pause */
    60% {
        transform: translateY(0);
    }
    /* bounce */
    70% {
        transform: translateY(-16px);
    }
    80% {
        transform: translateY(0);
    }
    90% {
        transform: translateY(-6px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 600px) {
    .eceens-floating-btn {
        bottom: 16px;
        right: 16px;
    }
}
