/* SparklesText Effect */
.sparkles-text {
    position: relative;
    display: inline-block;
    --sparkles-first-color: #FFC107;
    --sparkles-second-color: #FF6B6B;
}

.sparkles-text strong {
    position: relative;
    z-index: 1;
}

.sparkles-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    overflow: visible;
}

.sparkle {
    position: absolute;
    pointer-events: none;
    z-index: 20;
    animation: sparkle-animation 0.8s ease-in-out infinite;
}

.sparkle svg {
    width: 21px;
    height: 21px;
}

@keyframes sparkle-animation {
    0% {
        opacity: 0;
        transform: scale(0) rotate(75deg);
    }

    50% {
        opacity: 1;
        transform: scale(1) rotate(120deg);
    }

    100% {
        opacity: 0;
        transform: scale(0) rotate(150deg);
    }
}

/* Enhanced hero text styling */
.hero-subtitle.sparkles-text {
    font-size: 2.5rem;
    font-weight: 700;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
    line-height: 1.3;
}

@media (max-width: 768px) {
    .hero-subtitle.sparkles-text {
        font-size: 1.8rem;
    }
}