#floating-call-button {
    position: fixed;
    bottom: 20px;
    left: 20px;
    right: 20px;
    background: linear-gradient(135deg, #ff4d4d, #cc0000);
    color: white;
    padding: 16px 32px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: bold;
    font-size: 17px;
    box-shadow: 0 4px 15px rgba(255, 77, 77, 0.4);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
    max-width: 480px;
    margin: 0 auto;
}

#floating-call-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(255, 77, 77, 0.5);
}

#floating-call-button:active {
    transform: translateY(0);
}

.floating-call-icon {
    font-size: 20px;
}

.floating-call-text {
    white-space: nowrap;
    letter-spacing: 1px;
}

.floating-call-hidden {
    display: none !important;
}

@media (min-width: 768px) {
    #floating-call-button {
        display: none !important;
    }
}

@media (max-width: 767px) {
    #floating-call-button.floating-call-visible {
        display: flex !important;
        animation: floating-call-slide-up 0.3s ease-out;
    }
}

@keyframes floating-call-slide-up {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
}