/*!


 * Animations v1.0 (https://github.com/joemottershaw/)


 * Copyright 2014 Joe Mottershaw


 * Licensed under the MIT license


 */





(function($) {


    "use strict";





    function randomClass() {


        var a = Math.ceil(Math.random() * classAmount);


        return type = classesArray[a]


    }





    function triggerOnce(a, b) {


        "random" == b && (b = randomClass()), $(a).removeClass("trigger infinite " + triggerClasses).addClass("trigger").addClass(b).one("webkitAnimationEnd oAnimationEnd MSAnimationEnd animationend", function() {


            $(this).removeClass("trigger infinite " + triggerClasses)


        })


    }





    function triggerInfinite(a, b) {


        "random" == b && (b = randomClass()), $(a).removeClass("trigger infinite " + triggerClasses).addClass("trigger infinite").addClass(b).one("webkitAnimationEnd oAnimationEnd MSAnimationEnd animationend", function() {


            $(this).removeClass("trigger infinite " + triggerClasses)


        })


    }! function(a) {


        a.fn.visible = function(b, c, d) {


            var e = a(this).eq(0),


                f = e.get(0),


                g = a(window),


                h = g.scrollTop(),


                i = h + g.height(),


                j = g.scrollLeft(),


                k = j + g.width(),


                l = e.offset().top,


                m = l + e.height(),


                n = e.offset().left,


                o = n + e.width(),


                p = b === !0 ? m : l,


                q = b === !0 ? l : m,


                r = b === !0 ? o : n,


                s = b === !0 ? n : o,


                t = c === !0 ? f.offsetWidth * f.offsetHeight : !0,


                d = d ? d : "both";


            return "both" === d ? !!t && i >= q && p >= h && k >= s && r >= j : "vertical" === d ? !!t && i >= q && p >= h : "horizontal" === d ? !!t && k >= s && r >= j : void 0


        }, a.fn.fireAnimations = function() {


            function c() {


                a(window).width() >= 960 ? a(".animate").each(function(b, c) {


                    var c = a(c),


                        d = a(this).attr("data-anim-type"),


                        e = a(this).attr("data-anim-delay");


                    c.visible(!0) && setTimeout(function() {


                        c.addClass(d)


                    }, e)


                }) : a(".animate").each(function(b, c) {


                    var c = a(c),


                        d = a(this).attr("data-anim-type"),


                        e = a(this).attr("data-anim-delay");


                    setTimeout(function() {


                        c.addClass(d)


                    }, e)


                })


            }


            a(document).ready(function() {


                a("html").removeClass("no-js").addClass("js"), c()


            }), a(window).scroll(function() {


                c(), a(window).scrollTop() + a(window).height() == a(document).height() && c()


            })


        }, a(".animate").fireAnimations()


    }(jQuery);


    var triggerClasses = "flash strobe shake bounce tada wave spin pullback wobble pulse pulsate heartbeat panic explode",


        classesArray = new Array;


    classesArray = triggerClasses.split(" ");


    var classAmount = classesArray.length;


    $(window).resize(function() {


        $(".animate").fireAnimations()


    });





})(jQuery);