.presentation-animation:not(.presentation-animation-children) , 
.presentation-animation.presentation-animation-children  > * {
	transition-property: opacity, transform;
	transition-duration: 0.25s;
}

.presentation-animation.presentation-animation-presented:not(.presentation-animation-children), 
.presentation-animation.presentation-animation-presented.presentation-animation-children > * {
	opacity: unset !important;
	transform: unset !important;
}

.presentation-animation.presentation-animation-children > * {
	--delay: 0.25s;
	&:nth-child(1) { transition-delay: calc(var(--delay) * 0)};
	&:nth-child(2) { transition-delay: calc(var(--delay) * 1)};
	&:nth-child(3) { transition-delay: calc(var(--delay) * 2)};
	&:nth-child(4) { transition-delay: calc(var(--delay) * 3)};
	&:nth-child(5) { transition-delay: calc(var(--delay) * 4)};
	&:nth-child(6) { transition-delay: calc(var(--delay) * 5)};
	&:nth-child(7) { transition-delay: calc(var(--delay) * 6)};
	&:nth-child(8) { transition-delay: calc(var(--delay) * 7)};
	&:nth-child(9) { transition-delay: calc(var(--delay) * 8)};
	&:nth-child(10) { transition-delay: calc(var(--delay) * 9)};
	&:nth-child(11) { transition-delay: calc(var(--delay) * 10)};
	&:nth-child(12) { transition-delay: calc(var(--delay) * 11)};
}

.presentation-animation {

	&.presentation-animation-slide:not(.presentation-animation-children),
	&.presentation-animation-children.presentation-animation-slide > * {
		transition-timing-function: cubic-bezier(0.185, 0.017, 0.018, 0.991);
	}

	&.presentation-animation-bounce:not(.presentation-animation-children),
	&.presentation-animation-children.presentation-animation-bounce > * {
		transition-timing-function: linear(0, 0.49 7.4%, 0.864 15.3%, 1.005 19.4%, 1.12 23.7%, 1.206 28.1%, 1.267 32.8%, 1.296 36.4%, 1.311 40.2%, 1.313 44.2%, 1.301 48.6%, 1.252 56.9%, 1.105 74.4%, 1.048 82.5%, 1.011 91.1%, 1);
	}

	&.presentation-animation-from-below:not(.presentation-animation-children),
	&.presentation-animation-children.presentation-animation-from-below > * {
		opacity: 0;
		transform: translateY(40px);
	}
	&.presentation-animation-from-left:not(.presentation-animation-children),
	&.presentation-animation-children.presentation-animation-from-left > * {
		opacity: 0;
		transform: translateY(-40px);
	}
}

.page-load-animation {
	transition-property: transform, opacity;
	transition-timing-function: ease-in;
	transition-duration: 0.5s;
}

.page-load-animation.page-load-animation-loaded {
	opacity: unset !important;
	transform: unset !important;
}

.page-load-animation {
	&.page-load-animation-slide-up {
		opacity: 0;
		transform: translateY(20px);
	}
}

