!function(e){e.fn.hover3d=function(t){var s=e.extend({selector:null,perspective:1e3,sensitivity:20,invert:!1,shine:!1,hoverInClass:"hover-in",hoverOutClass:"hover-out"},t);return this.each(function(){function t(){o.addClass(s.hoverInClass),setTimeout(function(){o.removeClass(s.hoverInClass)},1e3)}function n(e){var t=i.innerWidth(),n=i.innerHeight(),r=s.invert?(t/2-e.offsetX)/s.sensitivity:-(t/2-e.offsetX)/s.sensitivity,v=s.invert?-(n/2-e.offsetY)/s.sensitivity:(n/2-e.offsetY)/s.sensitivity;dy=e.offsetY-n/2,dx=e.offsetX-t/2,theta=Math.atan2(dy,dx),angle=180*theta/Math.PI-90,angle<0&&(angle+=360),o.css({perspective:s.perspective+"px",transformStyle:"preserve-3d",transform:"rotateY("+r+"deg) rotateX("+v+"deg)"}),a.css("background","linear-gradient("+angle+"deg, rgba(255,255,255,"+e.offsetY/n*.5+") 0%,rgba(255,255,255,0) 80%)")}function r(){o.addClass(s.hoverOutClass),o.css({perspective:s.perspective+"px",transformStyle:"preserve-3d",transform:"rotateX(0) rotateY(0)"}),setTimeout(function(){o.removeClass(s.hoverOutClass)},1e3)}var i=e(this),o=i.find(s.selector);s.shine&&o.append('
');var a=e(this).find(".shine");i.css({perspective:s.perspective+"px",transformStyle:"preserve-3d"}),o.css({perspective:s.perspective+"px",transformStyle:"preserve-3d"}),a.css({position:"absolute",top:0,left:0,bottom:0,right:0,"z-index":9}),i.on("mouseenter",function(){return t()}),i.on("mousemove",function(e){return n(e)}),i.on("mouseleave",function(){return r()})})}}(jQuery);