.fade-up {
	opacity: 0;
	transform: translateY(50px);
	transition: opacity 1s ease-out, transform 0.5s ease-out;
}

.fade-up.show {
	opacity: 1;
	transform: translateY(0);
}

.slide-in-left {
	opacity: 0;
	transform: translateX(-50px);
	transition: opacity 1s ease-out, transform 0.5s ease-out;
}

.slide-in-left.show {
	opacity: 1;
	transform: translateX(0);
}

.slide-in-right {
	opacity: 0;
	transform: translateX(50px);
	transition: opacity 1s ease-out, transform 0.5s ease-out;
}

.slide-in-right.show {
	opacity: 1;
	transform: translateX(0);
}

.fade-up:nth-child(0) {
	transition-delay: 0.2s;
}

.fade-up:nth-child(1) {
	transition-delay: 0.4s;
}

.fade-up:nth-child(2) {
	transition-delay: 0.6s;
}

.fade-up:nth-child(3) {
	transition-delay: 0.8s;
}

/* Delay for each element */
.slide-in-left:nth-child(0) {
	transition-delay: 0.2s;
}

.slide-in-left:nth-child(1) {
	transition-delay: 0.4s;
}

.slide-in-left:nth-child(2) {
	transition-delay: 0.6s;
}

.slide-in-left:nth-child(3) {
	transition-delay: 0.8s;
}

/* Delay for each element */
.slide-in-right:nth-child(0) {
	transition-delay: 0.2s;
}

.slide-in-right:nth-child(1) {
	transition-delay: 0.4s;
}

.slide-in-right:nth-child(2) {
	transition-delay: 0.6s;
}

.slide-in-right:nth-child(3) {
	transition-delay: 0.8s;
}

.zoomOut {
	animation: zoomOut 1s ease-out forwards;
}

/* Background zoom */
@media (min-aspect-ratio: 1/1) {
	@keyframes zoomOut {
		0% { background-size: 120vw auto; }
		100% { background-size: 100vw auto; }
	}
}

@media (max-aspect-ratio: 1/1) {
	@keyframes zoomOut {
		0% { background-size: auto 120vh; }
		100% { background-size: auto 100vh; }
	}
}

/* Example of additional styling */
