
html {
    scroll-behavior: smooth;
}

button:hover { 
    transition: 0.4s ease-out;
    opacity: 0.9;
}
button:active {
    transform: scale(0.94);
    transition: 0.4s ease;
}


/* faq аккордеон */
.faq-answer {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: all 0.4s ease-out;
}

.faq-item.open .faq-answer {
    opacity: 1;
    max-height: 200px;
}

.faq-icon {
    transition: all 0.4s ease-out;
}

.faq-item.open .faq-icon {
    transform: rotate(45deg);
}

.reveal {
    opacity: 0;
    transform: translateY(40px);
    transition: all 0.8s ease-out;
}
.reveal.active {
    opacity: 1;
    transform: none;
}


.reveal.slide-left {
    transform: translateX(-80px);
    transition: 0.4s ease-out;
}
.reveal.slide-left.active {
    transform: none;
}


.reveal.slide-right {
    transform: translateX(80px);
    transition: 0.4s ease-out;
}
.reveal.slide-right.active {
    transform: none;
}


.reveal.scale-up {
    transform: scale(0.9);
    transition: 0.4s ease-out;
}
.reveal.scale-up.active {
    transform: none;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}
.animate-fade-in {
    opacity: 0;
    animation: fadeIn 0.8s ease-out forwards;
}


::selection {
    background: rgba(139, 92, 246, 0.3);
    color: white;
}
