:root{
	--PMdurAnim: 800ms;
	--PMease: cubic-bezier(0.5, 1, 0.89, 1);
	--PMtopAnim: 200px; /*value in px*/
	--PMbottomAnim: -200px; /*value in px*/
}
span.pm_anim{
	display: inline-block;
}
.pm_anim{
	will-change: translate, transform, scale, opacity;
	transition-property: translate, transform, scale, opacity;
	transition-duration: var(--PMdurAnim);
	transition-timing-function: var(--PMease);
	transition-delay: var(--animDelay, 0ms);
	opacity: var(--animOffOpacity, 0);
	translate: var(--animOffX, 50%) var(--animOffY, 50%) 0;
	scale: var(--animOffSc, 1);

	/* default offset percent */
	--animOffSc: 1;
	--animOffOpacity: 0;
	--animOffX: 0;
	--animOffY: 0;
}

.pm_anim.top_anim{
	--animOffX: 0;
	--animOffY: var(--PMtopAnim);
}

.pm_anim.bottom_anim{
	--animOffX: 0;
	--animOffY: var(--PMbottomAnim);
}

.pm_anim.left_anim{
	--animOffX: 50%;
	--animOffY: 0;
}

.pm_anim.right_anim{
	--animOffX: -50%;
	--animOffY: 0;
}

.pm_anim.scale_in_anim{
	--animOffSc: 0.2;
	--animOffX: 0;
	--animOffY: 0;
}

.pm_anim.scale_out_anim{
	--animOffSc: 2;
	--animOffX: 0;
	--animOffY: 0;
}

.pm_anim.forceInitial{
	transition-property: none !important;
}
.pm_anim.active{
  opacity: 1;
  translate: 0 0 0;
  scale: 1;
}