/* ================= SMOOTH SCROLL ================= */
html {
    scroll-behavior: smooth;
}

/* ================= FADE IN (scroll) ================= */
.fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition: 0.8s ease;
}

.fade-in.show {
    opacity: 1;
    transform: translateY(0);
}

/* ================= SCALE IN ================= */
.scale-in {
    opacity: 0;
    transform: scale(0.9);
    transition: 0.6s ease;
}

.scale-in.show {
    opacity: 1;
    transform: scale(1);
}

/* ================= GLOW PULSE ================= */
.glow-pulse {
    animation: glowPulse 2s infinite alternate;
}

@keyframes glowPulse {
    from {
        box-shadow: 0 0 5px var(--primary);
    }
    to {
        box-shadow: 0 0 20px var(--primary);
    }
}

/* ================= HOVER FLOAT ================= */
.hover-float {
    transition: 0.3s;
}

.hover-float:hover {
    transform: translateY(-5px);
}

/* ================= PARALLAX (leve) ================= */
.parallax {
    transform: translateY(0);
    transition: transform 0.1s linear;
}

/* ================= TITLE ANIMATION ================= */

@keyframes titleFade {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}