.hero-glow {
    box-shadow: 0 0 25px rgba(244, 37, 140, 0.4);
}
.text-gradient {
    background: linear-gradient(135deg, #ffffff 0%, #f4258c 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.overlay-vignette {
    background: radial-gradient(circle, transparent 20%, rgba(18, 8, 13, 0.8) 100%),
                linear-gradient(to top, rgba(18, 8, 13, 1) 0%, transparent 40%);
}
.nav-social-icon {
    @apply text-white/70 hover:text-primary transition-all duration-300 transform hover:scale-110;
}
.glass-card {
    background: rgba(34, 16, 25, 0.4);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.05);
}
.art-divider-wave {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3E%3Cpath fill='%23000' fill-opacity='1' d='M0,160L48,176C96,192,192,224,288,213.3C384,203,480,149,576,144C672,139,768,181,864,181.3C960,181,1056,139,1152,122.7C1248,107,1344,117,1392,122.7L1440,128L1440,320L1392,320C1344,320,1248,320,1152,320C1056,320,960,320,864,320C768,320,672,320,576,320C480,320,384,320,288,320C192,320,96,320,48,320L0,320Z'%3E%3C/path%3E%3C/svg%3E");
    mask-size: cover;
    mask-repeat: no-repeat;
}
.blob {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    z-index: 0;
    pointer-events: none;
}
.faq-accordion[open] summary .expand-icon {
    transform: rotate(180deg);
    color: #f4258c;
}
.faq-accordion summary::-webkit-details-marker {
    display: none;
}
.faq-content {
    animation: fadeIn 0.4s ease-out;
}
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-5px); }
    to { opacity: 1; transform: translateY(0); }
}
.parallax-section {
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}