/* Efecto de Flotar */
@keyframes floating {
  0% {
    transform: translatey(0px);
  }
  50% {
    transform: translatey(-10px);
  }
  100% {
    transform: translatey(0px);
  }
}

.efecto-flotante {
  display:block;
  width:auto;
  animation: 5s infinite alternate floating;
}

@keyframes scale-right {
  0% {
	transform: scaleX(0.4);
	transform-origin: 100% 100%;
  }

  100% {
	transform: scaleX(1);
	transform-origin: 100% 100%;
  }
}
.scale-right{
  animation: scale-right 3s ease 0s 1 normal none;
}

@keyframes scale-left {
  0% {
	transform: scaleX(0.4);
	transform-origin: 0% 0%;
  }

  100% {
	transform: scaleX(1);
	transform-origin: 0% 0%;
  }
}
.scale-left{
  animation: scale-left 3s ease 0s 1 normal none;
}
.scale-left-long{
  animation: scale-left 5s ease 0s 1 normal none;
}
@keyframes scale-center {
  0% {
    transform: scale(0.5);
  }
  0% {
    transform: scale(0.75);
  }
  100% {
    transform: scale(1);
  }
}

.img-form-boy {
  transform: scale(0.5);
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
}

.img-form-boy.in-viewport {
  animation: scale-center 1s ease forwards;
  opacity: 1;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.pulso{
  animation: pulso 3s cubic-bezier(0.68, -0.6, 0.32, 1.6) 0s infinite normal none;
}

@keyframes pulso {
  0% {
	transform: scale(1);
  }

  50% {
	transform: scale(1.2);
  }

  100% {
	transform: scale(1);
  }
}

/***ANIMACIÓN REVOTE***/
.bounce-animation {
  animation: bounce 5s ease 0s infinite normal none;
}

@keyframes bounce {
  0% {
    animation-timing-function: ease-in;
    opacity: 1;
    transform: translateY(-45px);
  }
  24% {
    opacity: 1;
  }
  40% {
    animation-timing-function: ease-in;
    transform: translateY(-24px);
  }
  65% {
    animation-timing-function: ease-in;
    transform: translateY(-12px);
  }
  82% {
    animation-timing-function: ease-in;
    transform: translateY(-6px);
  }
  93% {
    animation-timing-function: ease-in;
    transform: translateY(-4px);
  }
  25%, 55%, 75%, 87% {
    animation-timing-function: ease-out;
    transform: translateY(0px);
  }
  100% {
    animation-timing-function: ease-out;
    opacity: 1;
    transform: translateY(0px);
  }
}

/***  ***/
.wobble-animation{
  animation: tambalearBottom 5s ease 0s infinite normal none;
}

@keyframes tambalearBottom {
  0%,
  100% {
	transform: translateX(0%);
	transform-origin: 50% 50%;
  }

  15% {
	transform: translateX(-30px) rotate(-6deg);
  }

  30% {
	transform: translateX(15px) rotate(6deg);
  }

  45% {
	transform: translateX(-15px) rotate(-3.6deg);
  }

  60% {
	transform: translateX(9px) rotate(2.4deg);
  }

  75% {
	transform: translateX(-6px) rotate(-1.2deg);
  }
}

/*** ***/
.jelly-animation{
  animation: jellyHorizontal 5s ease 0s 1 normal none;
}

@keyframes jellyHorizontal {
  0% {
	transform: scale3d(1, 1, 1);
  }

  30% {
	transform: scale3d(1.15, 0.75, 1);
  }

  40% {
	transform: scale3d(0.75, 1.15, 1);
  }

  50% {
	transform: scale3d(1.09, 0.85, 1);
  }

  65% {
	transform: scale3d(0.95, 1.05, 1);
  }

  75% {
	transform: scale3d(1.05, 0.95, 1);
  }

  100% {
	transform: scale3d(1, 1, 1);
  }
}
