.favourite {
    position: fixed;
    right: 0;
    bottom: 0;
    padding: 10px 20px;
    color: #fff;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
    z-index: 1;
    text-decoration: none;
    background: #5b3f97;
    font-weight: 100;
    font-size: 14px;
    letter-spacing: 1px;
}

.favourite--open {
    visibility: visible;
    opacity: .6;
    -webkit-animation-name: bounce;
    animation-name: bounce;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

.favourite--open:hover {
    opacity: .9;
}

.favourite__text svg {
    width: 20px;
    height: 20px;
    fill: #ffc107;
    vertical-align: text-bottom;
}

@-webkit-keyframes bounce {
    0%,
    20%,
    50%,
    80%,
    100% {
        -webkit-transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
    }
    60% {
        -webkit-transform: translateY(-15px);
    }
}

@keyframes bounce {
    0%,
    20%,
    50%,
    80%,
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    40% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    60% {
        -webkit-transform: translateY(-15px);
        transform: translateY(-15px);
    }
}

