    /* Dot pattern background */
    .dots-pattern {
        background-image: radial-gradient(circle, rgba(61, 125, 138, 0.08) 1px, transparent 1px);
        background-size: 20px 20px;
    }

    .dots-pattern-light {
        background-image: radial-gradient(circle, rgba(232, 160, 93, 0.06) 1px, transparent 1px);
        background-size: 24px 24px;
    }

    /* Card hover effects */
    .card-hover:hover {
        transform: translateY(-8px) !important;
        box-shadow: 0 20px 50px rgba(61, 125, 138, 0.25), 0 10px 25px rgba(0, 0, 0, 0.12) !important;
    }

    /* Button gradient */
    .btn-gradient-primary {
        background: linear-gradient(135deg, #ff8c42 0%, #ff6b35 100%);
        border: none;
        color: #ffffff !important;
        font-weight: 700;
        box-shadow: 0 8px 20px rgba(255, 107, 53, 0.4);
        transition: all 0.3s ease;
    }

    .btn-gradient-primary:hover {
        transform: translateY(-2px);
        box-shadow: 0 12px 28px rgba(255, 107, 53, 0.5);
        background: linear-gradient(135deg, #ff6b35 0%, #ff8c42 100%);
    }

    /* Button outline with hover */
    .btn-outline-enhanced {
        transition: all 0.3s ease;
        color: #1a5f6d !important;
        border-color: #1a5f6d !important;
    }

    .btn-outline-enhanced:hover {
        transform: translateY(-2px);
        background: #1a5f6d !important;
        color: white !important;
        box-shadow: 0 8px 20px rgba(26, 95, 109, 0.4) !important;
        border-color: #1a5f6d !important;
    }

    /* Pulse animation for icons */
    @keyframes pulse-glow {

        0%,
        100% {
            box-shadow: 0 0 0 0 rgba(232, 160, 93, 0.4);
        }

        50% {
            box-shadow: 0 0 0 10px rgba(232, 160, 93, 0);
        }
    }

    .pulse-icon {
        animation: pulse-glow 2s infinite;
    }

    /* Floating animation */
    @keyframes float {

        0%,
        100% {
            transform: translateY(0px);
        }

        50% {
            transform: translateY(-15px);
        }
    }

    .floating {
        animation: float 3s ease-in-out infinite;
    }

    /* WhatsApp Widget Styles */
    @keyframes pulse-whatsapp {

        0%,
        100% {
            box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
        }

        50% {
            box-shadow: 0 0 0 15px rgba(37, 211, 102, 0);
        }
    }

    #whatsapp-widget:hover {
        transform: translateY(-3px);
        box-shadow: 0 8px 25px rgba(37, 211, 102, 0.5) !important;
    }

    /* Responsive: nascondi testo su mobile */
    @media (max-width: 576px) {
        #whatsapp-widget {
            padding: 14px;
            border-radius: 50%;
        }

        #whatsapp-widget span {
            display: none;
        }

        #whatsapp-widget i {
            font-size: 1.8rem;
        }
    }
