.logo-shine{
  position: relative;
  display: inline-block;
  overflow: hidden;
  line-height: 0; 
}

.logo-shine img{
  display:block;
}

.logo-shine::after{
  content:"";
  position:absolute;
  top:-30%;
  left:-60%;
  width:40%;
  height:160%;
  transform: rotate(20deg);
  background: linear-gradient(
    90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.18) 45%,
    rgba(255,255,255,.55) 50%,
    rgba(255,255,255,.18) 55%,
    rgba(255,255,255,0) 100%
  );
  mix-blend-mode: screen; 
  opacity: .9;
  animation: logoShine 4.5s ease-in-out infinite;
}

@keyframes logoShine{
  0%, 65% { left:-60%; opacity:0; }
  70% { opacity:.9; }
  85% { left:120%; opacity:.9; }
  100% { left:120%; opacity:0; }
}


.logo-shine:hover::after{
  animation-duration: 1.4s;
}