.shake-hard{
    display: inline-block;
    transform-origin: center center; }

.shake-freeze,
.shake-constant.shake-constant--hover:hover,
.shake-trigger:hover .shake-constant.shake-constant--hover {
    animation-play-state: paused; }

.shake-freeze:hover,
.shake-trigger:hover .shake-freeze, .shake-hard:hover,
.shake-trigger:hover .shake-hard {
    animation-play-state: running; }

@keyframes shake-hard {
    0% { transform: translate(2px, 1px) rotate(0deg); }
    10% { transform: translate(-1px, -2px) rotate(-1deg); }
    20% { transform: translate(-3px, 0px) rotate(1deg); }
    30% { transform: translate(0px, 2px) rotate(0deg); }
    40% { transform: translate(1px, -1px) rotate(1deg); }
    50% { transform: translate(-1px, 2px) rotate(-1deg); }
    60% { transform: translate(-3px, 1px) rotate(0deg); }
    70% { transform: translate(2px, 1px) rotate(-1deg); }
    80% { transform: translate(-1px, -1px) rotate(1deg); }
    90% { transform: translate(2px, 2px) rotate(0deg); }
    100% { transform: translate(1px, -2px) rotate(-1deg); }
}

.shake-hard,
.shake-trigger:hover .shake-hard,
.shake-hard.shake-freeze,
.shake-hard.shake-constant {
    animation-duration: 100ms;
    animation-name: shake-hard;
    animation-timing-function: ease-in-out; }


/*Shake for cart page*/

.clearCart a:before{
    display: inline-block;
    transform-origin: center center; }

.clearCart a:hover:before{
    animation-duration: 100ms;
    animation-name: shake-hard;
    animation-timing-function: ease-in-out; }

/*END*/