/*SPECIAL FX & ANIMATION*/
.shadow {
    -webkit-box-shadow: 0px 15px 20px -20px rgba(0,0,0,0.3);
    -moz-box-shadow: 0px 15px 20px -20px rgba(0,0,0,0.3);
    box-shadow: 0px 15px 20px -20px rgba(0,0,0,0.3);
}
.shadow-sm {
    box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.25);
    -webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.25);
}

.text-shadow, .slider-text-shadow { text-shadow: 0 1px 2px rgba(0,0,0,.6); }

.flip-horizontally { transform: scaleX(-1); }

.transition {
    -webkit-transition: all 0.35s ease-in-out;
    -moz-transition: all 0.35s ease-in-out;
    -ms-transition: all 0.35s ease-in-out;
    -o-transition: all 0.35s ease-in-out;
    transition: all 0.35s ease-in-out;
}

.sepia:hover {
    -webkit-filter: sepia(100%);
    filter: sepia(100%);
}

.grow-big:hover {
    -webkit-transform: scale(1.3);
    -ms-transform: scale(1.3);
    transform: scale(1.3);
}

.grow-small:hover {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}

.shrink:hover {
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
}

.swing:hover {
    -webkit-animation: swing 1s ease;
    animation: swing 1s ease;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
}

@-webkit-keyframes swing {
    15%
    {
        -webkit-transform: translateX(5px);
        transform: translateX(5px);
    }
    30%
    {
        -webkit-transform: translateX(-5px);
        transform: translateX(-5px);
    }
    50%
    {
        -webkit-transform: translateX(3px);
        transform: translateX(3px);
    }
    65%
    {
        -webkit-transform: translateX(-3px);
        transform: translateX(-3px);
    }
    80%
    {
        -webkit-transform: translateX(2px);
        transform: translateX(2px);
    }
    100%
    {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}
@keyframes swing {
    15%
    {
        -webkit-transform: translateX(5px);
        transform: translateX(5px);
    }
    30%
    {
        -webkit-transform: translateX(-5px);
        transform: translateX(-5px);
    }
    50%
    {
        -webkit-transform: translateX(3px);
        transform: translateX(3px);
    }
    65%
    {
        -webkit-transform: translateX(-3px);
        transform: translateX(-3px);
    }
    80%
    {
        -webkit-transform: translateX(2px);
        transform: translateX(2px);
    }
    100%
    {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

.c-blur-in:hover {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-name: c-blur-in;
    animation-name: c-blur-in;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
}

@-webkit-keyframes c-blur-in {
    from { opacity:0;  -webkit-filter: blur(100px); -moz-filter: blur(100px); -o-filter: blur(100px); -ms-filter: blur(100px); filter: blur(100px); }
    to { opacity:1; -webkit-filter: blur(0px); -moz-filter: blur(0px); -o-filter: blur(0px); -ms-filter: blur(0px); filter: blur(0px);}
}

@keyframes c-blur-in {
    from { opacity:0; -webkit-filter: blur(100px); -moz-filter: blur(100px); -o-filter: blur(100px); -ms-filter: blur(100px); filter: blur(100px); }
    to { opacity:1; -webkit-filter: blur(0px); -moz-filter: blur(0px); -o-filter: blur(0px); -ms-filter: blur(0px); filter: blur(0px);}
}

.pulse { animation: pulse-animation 2s infinite; }
@keyframes pulse-animation {
    0% {
      box-shadow: 0 0 0 0px rgba(0, 0, 0, 0.2);
    }
    100% {
      box-shadow: 0 0 0 20px rgba(0, 0, 0, 0);
    }
}

.pulse-white { animation: pulse-white-animation 2s infinite; }
@keyframes pulse-white-animation {
    0% {
      box-shadow: 0 0 0 0px rgba(255, 255, 255, 0.25);
    }
    100% {
      box-shadow: 0 0 0 20px rgba(255, 255, 255, 0);
    }
}

.pulsate-bck {
    -webkit-animation: pulsate-bck 1.5s ease-in-out infinite both;
    animation: pulsate-bck 1.5s ease-in-out infinite both;
}
@-webkit-keyframes pulsate-bck {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    50% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
@keyframes pulsate-bck {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    50% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

.jump {
    animation: jump 6s ease-in-out infinite;
}

@-webkit-keyframes jump {
    0% {
        bottom: 35px;
    }
    10% {
        bottom: 60px;
    }
    20% {
        bottom: 35px;
    }
    80% {
        bottom: 35px;
    }
    90% {
        bottom: 60px;
    }
    100% {
        bottom: 35px;
    }
}
@keyframes jump {
    0% {
        bottom: 35px;
    }
    10% {
        bottom: 60px;
    }
    20% {
        bottom: 35px;
    }
    80% {
        bottom: 35px;
    }
    90% {
        bottom: 60px;
    }
    100% {
        bottom: 35px;
    }
}