

/******************************************************************************
                            ON SCROLL TO VISIBLE CLASSES
******************************************************************************/

/*one time animation on scroll*/





/*this animation: fade on image un-blur*/
.efx_a{
    opacity: .0;
    filter: blur(12px);
}


/*this animation: fade on image moves up*/
.efx_b{
    opacity: .0;
    padding-top : 100px;
}

/*this animation: fade on and unblur*/
.efx_c{
    opacity: .0;
    filter: blur(32px);
/*    padding-top : 250px;*/
}


/*this animation: fade on image burns in, needs long duration*/
.efx_d{
    opacity: .0;
    filter: contrast(200%);
}



/*this animation: fade on image grows from top right*/
.efx_ccc{
    opacity: .0;
    padding-left : 450px;
}




/*this animation: fade on image left to right*/
.efx_l{
    opacity: .0;
    filter: blur(8px);
    transform: translateX(-100px);
}



/*this animation: fade on image right to left*/
.efx_r{
    opacity: .0;
    filter: blur(8px);
    transform: translateX(100px);
}






/*this animation: fade on image burns in, needs long duration*/
.efx_xx{
    opacity: .0;
    filter: contrast(200%);
}




/*this animation: fade on image tips and moves down*/
.efx_xx{
    opacity: .0;
    transform: translateY(-100px) rotateX(-90deg);
}





/*this animation: fade on image expand open looks like twist open*/
.efx_xx{
    opacity: .0;
    transform: rotateX(-90deg);
}







.transition_A{
     transition: all 0.4s ease-out;
}

.transition_B{
     transition: all 0.6s ease-out .5s;
}

.transition_C{
     transition: all 0.8s ease-out .5s;
}

.transition_D{
    transition: all 1.4s ease-out .5s;
}



/* special used by fb_special_red */
.transition_W{
    transition: all 1.8s ease-out 1.5s;
}



/******************************************************************************
                            ON SCROLL TO VISIBLE GROUP CLASSES
******************************************************************************/

/*one time animation on scroll*/





/*set efx for multi colum group effect*/
/*these efx setting will need to match the number of columns in the multi_col module*/
.multi_col_group_efx_a .multi_col_id0{
    padding-top: 50px;
    opacity: .0;
}

.multi_col_group_efx_a .multi_col_id1{
    padding-top: 50px;
    opacity: .0;
}

.multi_col_group_efx_a .multi_col_id2{
    padding-top: 50px;
    opacity: .0;
}

.grp_transition_a0{
     transition: all 0.8s ease-out;
}

.grp_transition_a1{
     transition: all .8s ease-out .5s;
}

.grp_transition_a2{
     transition: all .8s ease-out 1.0s;
}






/******************************************************************************
							TRANSITION CLASSES
******************************************************************************/



.fade_on_A{


	opacity: .0;
	-webkit-animation: fade-in 1.2s cubic-bezier(0.390, 0.575, 0.565, 1.000) 1s both;
	        animation: fade-in 1.2s cubic-bezier(0.390, 0.575, 0.565, 1.000) 1s both;

}

/*  cubic-bezier (??  ??   ??   ??)   delay  ??   */



@-webkit-keyframes fade_on_A {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}




.fade_on_B{

	opacity: .0;
	-webkit-animation: fade-in 1.2s cubic-bezier(0.390, 0.575, 0.565, 1.000) 2s both;
	        animation: fade-in 1.2s cubic-bezier(0.390, 0.575, 0.565, 1.000) 2s both;

}


@-webkit-keyframes fade_on_B {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}


@keyframes fade-in-with-pause {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 0;
  }
  16% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
	
}



.fade_on_off{

	opacity: .0;
	animation: fade-in-with-pause 5.0s cubic-bezier(0.390, 0.575, 0.565, 1.000) 4s both;
	animation-iteration-count: infinite;
	
}


/******************************************************************************
							ANNIMATION CLASSES
******************************************************************************/


/* name | duration | easing-function | delay | iteration-count | direction | fill-mode | play-state */


.blur_scale{
	animation: blur_scale 0.5s linear 0s 1 normal forwards;
	z-index: 999;
}



@keyframes blur_scale {
	0% {
		transform: scale(1);

	}

	30% {
		transform: scale(1.05);
		filter: blur(5px);
		
	}

	100% {
		transform: scale(1);
	}
}








/* use large scale of 2.0 for effect */

.blurish{
	animation: blurish 0.5s linear 0s 1 normal forwards;
}


@keyframes blurish {
	0% {
		opacity: 1.0;
		filter: blur(5px);
		transform: scale(1.0);
	}

	40% {
		opacity: 0;
		
		transform: scale(0.7);
	}

	60% {
		opacity: 0;
/* 		transform: scale(1.2); */
	}

	90%{
/* 		opacity: 0; */
	}


	100%{
		opacity: 1;
		transform: scale(1.0);
	}

}






/* use large scale of 2.0 for effect */
/* existing element zooms forward, new element arrives from behind and zooms to 100% */

.blurish_bang{
	animation: blurish_bang 0.7s linear 0s 1 normal forwards;
}


@keyframes blurish_bang {
	0% {
		opacity: 1.0;
		filter: blur(5px);
		transform: scale(1.0);
	}

	40% {
		opacity: 0;
		
		transform: scale(1.1);
	}

	60% {
		opacity: 0;
		transform: scale(0.75);
	}
	
	60% {
/* 		opacity: 0; */
/* 		transform: scale(1.2); */
	}
	

	90%{
/* 		opacity: 0; */
	}


	100%{
		opacity: 1;
		transform: scale(1.0);
	}

}








.pulse_ping{
	animation: blur_scale 0.6s linear 0s 1 normal forwards;
}


@keyframes pulse_ping {
	0% {
		opacity: 0.8;
		transform: scale(0.4);
	}

	30% {
		opacity: 0;
		transform: scale(1.2);
	}

	70% {
		opacity: 0;
		transform: scale(2.0);
	}

	90%{
		opacity: 0;
	}

	95% {
		opacity: .5;
		transform: scale(1.2);
	}

	100%{
		opacity: 1;
		transform: scale(1.0);
	}

}





.wobble-ver-left {
	-webkit-animation: wobble-ver-left 0.8s both;
	        animation: wobble-ver-left 0.8s both;
}


/* ----------------------------------------------
 * Generated by Animista on 2024-1-8 14:45:31
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation wobble-ver-left
 * ----------------------------------------
 */
@-webkit-keyframes wobble-ver-left {
  0%,
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
  }
  15% {
    -webkit-transform: translateY(-30px) rotate(-6deg);
            transform: translateY(-30px) rotate(-6deg);
  }
  30% {
    -webkit-transform: translateY(15px) rotate(6deg);
            transform: translateY(15px) rotate(6deg);
  }
  45% {
    -webkit-transform: translateY(-15px) rotate(-3.6deg);
            transform: translateY(-15px) rotate(-3.6deg);
  }
  60% {
    -webkit-transform: translateY(9px) rotate(2.4deg);
            transform: translateY(9px) rotate(2.4deg);
  }
  75% {
    -webkit-transform: translateY(-6px) rotate(-1.2deg);
            transform: translateY(-6px) rotate(-1.2deg);
  }
}
@keyframes wobble-ver-left {
  0%,
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
  }
  15% {
    -webkit-transform: translateY(-30px) rotate(-6deg);
            transform: translateY(-30px) rotate(-6deg);
  }
  30% {
    -webkit-transform: translateY(15px) rotate(6deg);
            transform: translateY(15px) rotate(6deg);
  }
  45% {
    -webkit-transform: translateY(-15px) rotate(-3.6deg);
            transform: translateY(-15px) rotate(-3.6deg);
  }
  60% {
    -webkit-transform: translateY(9px) rotate(2.4deg);
            transform: translateY(9px) rotate(2.4deg);
  }
  75% {
    -webkit-transform: translateY(-6px) rotate(-1.2deg);
            transform: translateY(-6px) rotate(-1.2deg);
  }
}




.bounce-left {
	-webkit-animation: bounce-left 0.8s both;
	        animation: bounce-left 0.8s both;
}


/* ----------------------------------------------
 * Generated by Animista on 2024-1-8 14:48:11
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation bounce-left
 * ----------------------------------------
 */
@-webkit-keyframes bounce-left {
  0% {
    -webkit-transform: translateX(-48px);
            transform: translateX(-48px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    opacity: 1;
  }
  24% {
    opacity: 1;
  }
  40% {
    -webkit-transform: translateX(-26px);
            transform: translateX(-26px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  65% {
    -webkit-transform: translateX(-13px);
            transform: translateX(-13px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  82% {
    -webkit-transform: translateX(-6.5px);
            transform: translateX(-6.5px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  93% {
    -webkit-transform: translateX(-4px);
            transform: translateX(-4px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  25%,
  55%,
  75%,
  87%,
  98% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    opacity: 1;
  }
}

@keyframes bounce-left {
  0% {
    -webkit-transform: translateX(-48px);
            transform: translateX(-48px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    opacity: 1;
  }
  24% {
    opacity: 1;
  }
  40% {
    -webkit-transform: translateX(-26px);
            transform: translateX(-26px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  65% {
    -webkit-transform: translateX(-13px);
            transform: translateX(-13px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  82% {
    -webkit-transform: translateX(-6.5px);
            transform: translateX(-6.5px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  93% {
    -webkit-transform: translateX(-4px);
            transform: translateX(-4px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  25%,
  55%,
  75%,
  87%,
  98% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    opacity: 1;
  }
}




.bounce-right {
	-webkit-animation: bounce-right 0.8s both;
	        animation: bounce-right 0.8s both;
}


/* ----------------------------------------------
 * Generated by Animista on 2024-1-8 15:57:34
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation bounce-right
 * ----------------------------------------
 */
@-webkit-keyframes bounce-right {
  0% {
    -webkit-transform: translateX(48px);
            transform: translateX(48px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    opacity: 1;
  }
  24% {
    opacity: 1;
  }
  40% {
    -webkit-transform: translateX(26px);
            transform: translateX(26px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  65% {
    -webkit-transform: translateX(13px);
            transform: translateX(13px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  82% {
    -webkit-transform: translateX(6.5px);
            transform: translateX(6.5px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  93% {
    -webkit-transform: translateX(4px);
            transform: translateX(4px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  25%,
  55%,
  75%,
  87%,
  98% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    opacity: 1;
  }
}
@keyframes bounce-right {
  0% {
    -webkit-transform: translateX(48px);
            transform: translateX(48px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    opacity: 1;
  }
  24% {
    opacity: 1;
  }
  40% {
    -webkit-transform: translateX(26px);
            transform: translateX(26px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  65% {
    -webkit-transform: translateX(13px);
            transform: translateX(13px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  82% {
    -webkit-transform: translateX(6.5px);
            transform: translateX(6.5px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  93% {
    -webkit-transform: translateX(4px);
            transform: translateX(4px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  25%,
  55%,
  75%,
  87%,
  98% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  100% {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    opacity: 1;
  }
}















.slide-bck-center {
	-webkit-animation: slide-bck-center 0.45s cubic-bezier(0.470, 0.000, 0.745, 0.715) both;
	        animation: slide-bck-center 0.45s cubic-bezier(0.470, 0.000, 0.745, 0.715) both;
}

/* ----------------------------------------------
 * Generated by Animista on 2024-1-8 15:45:41
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation slide-bck-center
 * ----------------------------------------
 */
@-webkit-keyframes slide-bck-center {
  0% {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
  100% {
    -webkit-transform: translateZ(-400px);
            transform: translateZ(-400px);
  }
}
@keyframes slide-bck-center {
  0% {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
  100% {
    -webkit-transform: translateZ(-400px);
            transform: translateZ(-400px);
  }
}
