.menu-icon {
  width: 60px;
  height: 52px;
  cursor: pointer;
  z-index: 50; transform: scale(0.5);
}
.menu-icon .line-1,
.menu-icon .line-2,
.menu-icon .line-3 {
  height: 8px;
  width: 100%;
  background-color: #ffffff;
  border-radius: 3px;
  transition: background-color .2s ease-in-out;	
}
.menu-icon .line-1 {
  -webkit-animation: animate-line-1-rev .7s ease-in-out;
          animation: animate-line-1-rev .7s ease-in-out;
}
.menu-icon .line-2 {
  margin: 14px 0;
  -webkit-animation: animate-line-2-rev .7s ease-in-out;
          animation: animate-line-2-rev .7s ease-in-out;
}
.menu-icon .line-3 {
  -webkit-animation: animate-line-3-rev .7s ease-in-out;
          animation: animate-line-3-rev .7s ease-in-out;
}
.menu-icon:hover .line-1,
.menu-icon:hover .line-2,
.menu-icon:hover .line-3 {
  background-color: #ffffff;
}
.menu-icon.active .line-1,
.menu-icon.active .line-2,
.menu-icon.active .line-3 {
  background-color: #da251e;
}
.menu-icon.active .line-1 {
  -webkit-animation: animate-line-1 0.7s cubic-bezier(0.3, 1, 0.7, 1) forwards;
          animation: animate-line-1 0.7s cubic-bezier(0.3, 1, 0.7, 1) forwards;
}
.menu-icon.active .line-2 {
  -webkit-animation: animate-line-2 0.7s cubic-bezier(0.3, 1, 0.7, 1) forwards;
          animation: animate-line-2 0.7s cubic-bezier(0.3, 1, 0.7, 1) forwards;
}
.menu-icon.active .line-3 {
  -webkit-animation: animate-line-3 0.7s cubic-bezier(0.3, 1, 0.7, 1) forwards;
          animation: animate-line-3 0.7s cubic-bezier(0.3, 1, 0.7, 1) forwards;
}

.no-animation {
  -webkit-animation: none !important;
  animation: none !important;
}

@-webkit-keyframes animate-line-1 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0deg);
            transform: translate3d(0, 0, 0) rotate(0deg);
  }
  50% {
    -webkit-transform: translate3d(0, 22px, 0) rotate(0);
            transform: translate3d(0, 22px, 0) rotate(0);
  }
  100% {
    -webkit-transform: translate3d(0, 22px, 0) rotate(45deg);
            transform: translate3d(0, 22px, 0) rotate(45deg);
  }
}

@keyframes animate-line-1 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0deg);
            transform: translate3d(0, 0, 0) rotate(0deg);
  }
  50% {
    -webkit-transform: translate3d(0, 22px, 0) rotate(0);
            transform: translate3d(0, 22px, 0) rotate(0);
  }
  100% {
    -webkit-transform: translate3d(0, 22px, 0) rotate(45deg);
            transform: translate3d(0, 22px, 0) rotate(45deg);
  }
}
@-webkit-keyframes animate-line-2 {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(0);
            transform: scale(0);
    opacity: 0;
  }
}
@keyframes animate-line-2 {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(0);
            transform: scale(0);
    opacity: 0;
  }
}
@-webkit-keyframes animate-line-3 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0deg);
            transform: translate3d(0, 0, 0) rotate(0deg);
  }
  50% {
    -webkit-transform: translate3d(0, -22px, 0) rotate(0);
            transform: translate3d(0, -22px, 0) rotate(0);
  }
  100% {
    -webkit-transform: translate3d(0, -22px, 0) rotate(135deg);
            transform: translate3d(0, -22px, 0) rotate(135deg);
  }
}
@keyframes animate-line-3 {
  0% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0deg);
            transform: translate3d(0, 0, 0) rotate(0deg);
  }
  50% {
    -webkit-transform: translate3d(0, -22px, 0) rotate(0);
            transform: translate3d(0, -22px, 0) rotate(0);
  }
  100% {
    -webkit-transform: translate3d(0, -22px, 0) rotate(135deg);
            transform: translate3d(0, -22px, 0) rotate(135deg);
  }
}
@-webkit-keyframes animate-line-1-rev {
  0% {
    -webkit-transform: translate3d(0, 22px, 0) rotate(45deg);
            transform: translate3d(0, 22px, 0) rotate(45deg);
  }
  50% {
    -webkit-transform: translate3d(0, 22px, 0) rotate(0);
            transform: translate3d(0, 22px, 0) rotate(0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0deg);
            transform: translate3d(0, 0, 0) rotate(0deg);
  }
}
@keyframes animate-line-1-rev {
  0% {
    -webkit-transform: translate3d(0, 22px, 0) rotate(45deg);
            transform: translate3d(0, 22px, 0) rotate(45deg);
  }
  50% {
    -webkit-transform: translate3d(0, 22px, 0) rotate(0);
            transform: translate3d(0, 22px, 0) rotate(0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0deg);
            transform: translate3d(0, 0, 0) rotate(0deg);
  }
}
@-webkit-keyframes animate-line-2-rev {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
    opacity: 0;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
}
@keyframes animate-line-2-rev {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
    opacity: 0;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
}
@-webkit-keyframes animate-line-3-rev {
  0% {
    -webkit-transform: translate3d(0, -22px, 0) rotate(135deg);
            transform: translate3d(0, -22px, 0) rotate(135deg);
  }
  50% {
    -webkit-transform: translate3d(0, -22px, 0) rotate(0);
            transform: translate3d(0, -22px, 0) rotate(0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0deg);
            transform: translate3d(0, 0, 0) rotate(0deg);
  }
}
@keyframes animate-line-3-rev {
  0% {
    -webkit-transform: translate3d(0, -22px, 0) rotate(135deg);
            transform: translate3d(0, -22px, 0) rotate(135deg);
  }
  50% {
    -webkit-transform: translate3d(0, -22px, 0) rotate(0);
            transform: translate3d(0, -22px, 0) rotate(0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0) rotate(0deg);
            transform: translate3d(0, 0, 0) rotate(0deg);
  }
}
