html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}


@keyframes fadeUpSoft {
    0% {
        opacity: 0;
        transform: translateY(32px);
    }
    60% {
        opacity: 1;
        transform: translateY(0);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Animasi untuk elemen di dalam overlay */
@keyframes fadeUpSimple {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Class pembantu untuk memicu animasi langsung */
.animate-now {
    animation: fadeUpSimple 0.8s ease-out forwards;
    opacity: 0; 
}

/* sebelum page aktif */
.fade-up {
    opacity: 0;
    transform: translate3d(0, 32px, 0);
    will-change: transform, opacity;
}

/* Saat section masuk */
.fade-up.is-visible {
    animation: fadeUpSoft 5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

/* Delay bertahap */
.delay-1 { animation-delay: 1.15s; }
.delay-2 { animation-delay: 1.3s; }
.delay-3 { animation-delay: 1.45s; }
.delay-4 { animation-delay: 1.6s; }
.delay-5 { animation-delay: 1.75s; }
.delay-6 { animation-delay: 1.9s; }

/* Optional untuk teks */
.fade-text {
    letter-spacing: 0.02em;
}

/* Aksesibilitas & performa */
@media (prefers-reduced-motion: reduce) {
    .fade-up,
    .fade-up.is-visible {
        animation: none;
        opacity: 1;
        transform: none;
    }
}
