/* Custom styles for better text contrast */
.text-hero-primary {
    color: #ffffff !important;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.8);
    font-weight: 700 !important;
}

.text-hero-secondary {
    color: #ffffff !important;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.7);
    font-weight: 500 !important;
}

/* Badge Pulse Animation */
.badge-pulse {
    animation: pulse-animation 2s infinite;
    font-size: 0.5rem;
    padding: 0.2em 0.2em;
    vertical-align: middle;
    border-radius: 30rem;
    background-color: red !important;
    color: white !important;
}

@keyframes pulse-animation {
    0% {
        box-shadow: 0 0 0 0 rgba(139, 61, 255, 0.7);
    }
    70% {
        box-shadow: 0 0 0 6px rgba(139, 61, 255, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(139, 61, 255, 0);
    }
}