a.eye-container, a.eye-container * {
  box-sizing: border-box;
}

a.eye-container {
  max-width: 50px;
  height: 50px;
}

svg {
  width: auto;
  overflow: visible;
  transition: all .3s ease-in-out;
}
svg g.outer {
  fill: #fff;
  transition: fill .5s ease-in;
}
svg g.outer, svg g.mid, svg g.inner, svg g.lens-flare {
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}
svg g.mid {
  fill: #bfbfbf;
  transition: fill .5s ease-in;
}
svg g.mid path {
  stroke: #bfbfbf;
}
svg g.inner {
  stroke-width: 20;
  fill: #bfbfbf;
  transition: stroke-width .5s ease-in, fill .5s ease-in;
}
svg g.lens-flare {
  opacity: .6;
  transition: opacity 1s ease-in;
}

a:hover g.outer {
  fill: #e6e6e6;
  -webkit-animation: rotate .5s ease-in-out .3s, scale .3s ease-in-out;
          animation: rotate .5s ease-in-out .3s, scale .3s ease-in-out;
}
a:hover g.mid {
  -webkit-animation: scale .4s ease-in-out .2s;
          animation: scale .4s ease-in-out .2s;
  fill: white;
}
a:hover g.inner {
  -webkit-animation: scale-inner .8s ease-in-out .3s;
          animation: scale-inner .8s ease-in-out .3s;
  fill: white;
  stroke-width: 25;
}
a:hover g.lens-flare {
  -webkit-animation: scale-flare 1s ease-in-out .3s;
          animation: scale-flare 1s ease-in-out .3s;
  opacity: .8;
}

@-webkit-keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  70% {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  90% {
    -webkit-transform: rotate(20deg);
            transform: rotate(20deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}

@keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  70% {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  90% {
    -webkit-transform: rotate(20deg);
            transform: rotate(20deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@-webkit-keyframes scale {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  30% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  70% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes scale {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  30% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  70% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes scale-inner {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  30% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  70% {
    -webkit-transform: scale(1.25);
            transform: scale(1.25);
  }
  100% {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
}
@keyframes scale-inner {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  30% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  70% {
    -webkit-transform: scale(1.25);
            transform: scale(1.25);
  }
  100% {
    -webkit-transform: scale(1.2);
            transform: scale(1.2);
  }
}
@-webkit-keyframes scale-flare {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  30% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  70% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes scale-flare {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  30% {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  70% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
