/***************************************************
 * SCROLL REVEAL — Niaga Nusa Abadi
 * Pasangan CSS untuk assets/js/scroll-reveal.js
 ***************************************************/

/* Default state ---------------------------------------------------- */
.reveal,
.reveal-up,
.reveal-fade,
.reveal-left,
.reveal-right {
	opacity: 0;
	will-change: opacity, transform;
	transition: opacity 0.7s ease-out, transform 0.7s ease-out;
}

.reveal,
.reveal-up {
	transform: translateY(40px);
}

.reveal-fade {
	transform: none;
}

.reveal-left {
	transform: translateX(-40px);
}

.reveal-right {
	transform: translateX(40px);
}

/* Active state ----------------------------------------------------- */
.reveal.is-revealed,
.reveal-up.is-revealed,
.reveal-fade.is-revealed,
.reveal-left.is-revealed,
.reveal-right.is-revealed {
	opacity: 1;
	transform: translate(0, 0);
}

/* Lepas will-change setelah animasi selesai agar tidak membebani GPU. */
.is-revealed {
	will-change: auto;
}

/* Mobile: jarak animasi diperpendek supaya tidak terasa lambat. */
@media (max-width: 767px) {
	.reveal,
	.reveal-up {
		transform: translateY(24px);
	}

	.reveal-left,
	.reveal-right {
		transform: translateX(24px);
	}
}

/* Accessibility ---------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
	.reveal,
	.reveal-up,
	.reveal-fade,
	.reveal-left,
	.reveal-right {
		opacity: 1;
		transform: none;
		transition: none;
	}
}
