+function($){"use strict";function Plugin(action,options){var args;return args=Array.prototype.slice.call(arguments,1),this.each(function(){var $this,data;$this=$(this),data=$this.data("vc.accordion"),data||(data=new Accordion($this,$.extend(!0,{},options)),$this.data("vc.accordion",data)),"string"==typeof action&&data[action].apply(data,args)})}var Accordion,clickHandler,old,hashNavigation;Accordion=function($element,options){this.$element=$element,this.activeClass="vc_active",this.animatingClass="vc_animating",this.useCacheFlag=void 0,this.$target=void 0,this.$targetContent=void 0,this.selector=void 0,this.$container=void 0,this.animationDuration=void 0,this.index=0},Accordion.transitionEvent=function(){var transition,transitions,el;el=document.createElement("vcFakeElement"),transitions={transition:"transitionend",MSTransition:"msTransitionEnd",MozTransition:"transitionend",WebkitTransition:"webkitTransitionEnd"};for(transition in transitions)if("undefined"!=typeof el.style[transition])return transitions[transition]},Accordion.emulateTransitionEnd=function($el,duration){var callback,called;called=!1,duration||(duration=250),$el.one(Accordion.transitionName,function(){called=!0}),callback=function(){called||$el.trigger(Accordion.transitionName)},setTimeout(callback,duration)},Accordion.DEFAULT_TYPE="collapse",Accordion.transitionName=Accordion.transitionEvent(),Accordion.prototype.controller=function(action){var $this;$this=this.$element,"string"!=typeof action&&(action=$this.data("vcAction")||this.getContainer().data("vcAction")),"undefined"==typeof action&&(action=Accordion.DEFAULT_TYPE),"string"==typeof action&&Plugin.call($this,action)},Accordion.prototype.isCacheUsed=function(){var useCache,that;return that=this,useCache=function(){return!1!==that.$element.data("vcUseCache")},"undefined"==typeof this.useCacheFlag&&(this.useCacheFlag=useCache()),this.useCacheFlag},Accordion.prototype.getSelector=function(){var findSelector,$this;return $this=this.$element,findSelector=function(){var selector;return selector=$this.data("vcTarget"),selector||(selector=$this.attr("href")),selector},this.isCacheUsed()?("undefined"==typeof this.selector&&(this.selector=findSelector()),this.selector):findSelector()},Accordion.prototype.findContainer=function(){var $container;return $container=this.$element.closest(this.$element.data("vcContainer")),$container.length||($container=$("body")),$container},Accordion.prototype.getContainer=function(){return this.isCacheUsed()?("undefined"==typeof this.$container&&(this.$container=this.findContainer()),this.$container):this.findContainer()},Accordion.prototype.getTarget=function(){var selector,that,getTarget;return that=this,selector=that.getSelector(),getTarget=function(){var element;return element=that.getContainer().find(selector),element.length||(element=that.getContainer().filter(selector)),element},this.isCacheUsed()?("undefined"==typeof this.$target&&(this.$target=getTarget()),this.$target):getTarget()},Accordion.prototype.getTargetContent=function(){var $target,$targetContent;return $target=this.getTarget(),this.isCacheUsed()?("undefined"==typeof this.$targetContent&&($targetContent=$target,$target.data("vcContent")&&($targetContent=$target.find($target.data("vcContent")),$targetContent.length||($targetContent=$target)),this.$targetContent=$targetContent),this.$targetContent):$target.data("vcContent")&&($targetContent=$target.find($target.data("vcContent")),$targetContent.length)?$targetContent:$target},Accordion.prototype.getTriggers=function(){var i;return i=0,this.getContainer().find("[data-vc-accordion]").each(function(){var accordion,$this;$this=$(this),accordion=$this.data("vc.accordion"),"undefined"==typeof accordion&&($this.vcAccordion(),accordion=$this.data("vc.accordion")),accordion&&accordion.setIndex&&accordion.setIndex(i++)})},Accordion.prototype.setIndex=function(index){this.index=index},Accordion.prototype.getIndex=function(){return this.index},Accordion.prototype.triggerEvent=function(event){var $event;"string"==typeof event&&($event=$.Event(event),this.$element.trigger($event))},Accordion.prototype.getActiveTriggers=function(){var $triggers;return $triggers=this.getTriggers().filter(function(){var $this,accordion;return $this=$(this),accordion=$this.data("vc.accordion"),accordion.getTarget().hasClass(accordion.activeClass)})},Accordion.prototype.changeLocationHash=function(){var id,$target;$target=this.getTarget(),$target.length&&(id=$target.attr("id")),id&&(history.pushState?history.pushState(null,null,"#"+id):location.hash="#"+id)},Accordion.prototype.isActive=function(){return this.getTarget().hasClass(this.activeClass)},Accordion.prototype.getAnimationDuration=function(){var findAnimationDuration,that;return that=this,findAnimationDuration=function(){var $targetContent,duration;return"undefined"==typeof Accordion.transitionName?"0s":($targetContent=that.getTargetContent(),duration=$targetContent.css("transition-duration"),duration=duration.split(",")[0])},this.isCacheUsed()?("undefined"==typeof this.animationDuration&&(this.animationDuration=findAnimationDuration()),this.animationDuration):findAnimationDuration()},Accordion.prototype.getAnimationDurationMilliseconds=function(){var duration;return duration=this.getAnimationDuration(),"ms"===duration.substr(-2)?parseInt(duration):"s"===duration.substr(-1)?Math.round(1e3*parseFloat(duration)):void 0},Accordion.prototype.isAnimated=function(){return parseFloat(this.getAnimationDuration())>0},Accordion.prototype.show=function(){var $target,that,$targetContent;that=this,$target=that.getTarget(),$targetContent=that.getTargetContent(),that.isActive()||(that.isAnimated()?(that.triggerEvent("beforeShow.vc.accordion"),$target.queue(function(next){$targetContent.one(Accordion.transitionName,function(){$target.removeClass(that.animatingClass),$targetContent.attr("style",""),that.triggerEvent("afterShow.vc.accordion")}),Accordion.emulateTransitionEnd($targetContent,that.getAnimationDurationMilliseconds()+100),next()}).queue(function(next){$targetContent.attr("style",""),$targetContent.css({position:"absolute",visibility:"hidden",display:"block"});var height=$targetContent.height();$targetContent.data("vcHeight",height),$targetContent.attr("style",""),next()}).queue(function(next){$targetContent.height(0),$targetContent.css({"padding-top":0,"padding-bottom":0}),next()}).queue(function(next){$target.addClass(that.animatingClass),$target.addClass(that.activeClass),that.changeLocationHash(),that.triggerEvent("show.vc.accordion"),next()}).queue(function(next){var height=$targetContent.data("vcHeight");$targetContent.animate({height:height},{duration:that.getAnimationDurationMilliseconds(),complete:function(){$targetContent.data("events")||$targetContent.attr("style","")}}),$targetContent.css({"padding-top":"","padding-bottom":""}),next()})):($target.addClass(that.activeClass),that.triggerEvent("show.vc.accordion")))},Accordion.prototype.hide=function(){var $target,that,$targetContent;that=this,$target=that.getTarget(),$targetContent=that.getTargetContent(),that.isActive()&&(that.isAnimated()?(that.triggerEvent("beforeHide.vc.accordion"),$target.queue(function(next){$targetContent.one(Accordion.transitionName,function(){$target.removeClass(that.animatingClass),$targetContent.attr("style",""),that.triggerEvent("afterHide.vc.accordion")}),Accordion.emulateTransitionEnd($targetContent,that.getAnimationDurationMilliseconds()+100),next()}).queue(function(next){$target.addClass(that.animatingClass),$target.removeClass(that.activeClass),that.triggerEvent("hide.vc.accordion"),next()}).queue(function(next){var height=$targetContent.height();$targetContent.height(height),next()}).queue(function(next){$targetContent.animate({height:0},that.getAnimationDurationMilliseconds()),$targetContent.css({"padding-top":0,"padding-bottom":0}),next()})):($target.removeClass(that.activeClass),that.triggerEvent("hide.vc.accordion")))},Accordion.prototype.toggle=function(){var $this;$this=this.$element,this.isActive()?Plugin.call($this,"hide"):Plugin.call($this,"show")},Accordion.prototype.dropdown=function(){var $this,that;that=this,$this=this.$element,this.isActive()?Plugin.call($this,"hide"):(Plugin.call($this,"show"),$(document).on("click.vc.accordion.data-api.dropdown",function(e){var isTarget;isTarget=$(e.target).closest(that.getTarget()).length,isTarget||(Plugin.call($this,"hide"),$(document).off(e))}))},Accordion.prototype.collapse=function(){var $this,$triggers;$this=this.$element,$triggers=this.getActiveTriggers().filter(function(){return $this[0]!==this}),$triggers.length&&Plugin.call($triggers,"hide"),Plugin.call($this,"show")},Accordion.prototype.collapseAll=function(){var $this,$triggers;$this=this.$element,$triggers=this.getActiveTriggers().filter(function(){return $this[0]!==this}),$triggers.length&&Plugin.call($triggers,"hide"),Plugin.call($this,"toggle")},Accordion.prototype.showNext=function(){var $triggers,$activeTriggers,activeIndex;if($triggers=this.getTriggers(),$activeTriggers=this.getActiveTriggers(),$triggers.length){if($activeTriggers.length){var lastActiveAccordion;lastActiveAccordion=$activeTriggers.eq($activeTriggers.length-1).vcAccordion().data("vc.accordion"),lastActiveAccordion&&lastActiveAccordion.getIndex&&(activeIndex=lastActiveAccordion.getIndex())}activeIndex>-1&&activeIndex+1<$triggers.length?Plugin.call($triggers.eq(activeIndex+1),"controller"):Plugin.call($triggers.eq(0),"controller")}},Accordion.prototype.showPrev=function(){var $triggers,$activeTriggers,activeIndex;if($triggers=this.getTriggers(),$activeTriggers=this.getActiveTriggers(),$triggers.length){if($activeTriggers.length){var lastActiveAccordion;lastActiveAccordion=$activeTriggers.eq($activeTriggers.length-1).vcAccordion().data("vc.accordion"),lastActiveAccordion&&lastActiveAccordion.getIndex&&(activeIndex=lastActiveAccordion.getIndex())}activeIndex>-1?activeIndex-1>=0?Plugin.call($triggers.eq(activeIndex-1),"controller"):Plugin.call($triggers.eq($triggers.length-1),"controller"):Plugin.call($triggers.eq(0),"controller")}},Accordion.prototype.showAt=function(index){var $triggers;$triggers=this.getTriggers(),$triggers.length&&index&&index<$triggers.length&&Plugin.call($triggers.eq(index),"controller")},Accordion.prototype.scrollToActive=function(){var that,$targetElement,offset,delay,speed;that=this,offset=1,delay=300,speed=300,$targetElement=$(this.getTarget()),$targetElement.length&&this.$element.length&&setTimeout(function(){var posY=$targetElement.offset().top-$(window).scrollTop()-that.$element.outerHeight()*offset;0>posY&&$("html, body").animate({scrollTop:$targetElement.offset().top-that.$element.outerHeight()*offset},speed)},delay)},old=$.fn.vcAccordion,$.fn.vcAccordion=Plugin,$.fn.vcAccordion.Constructor=Accordion,$.fn.vcAccordion.noConflict=function(){return $.fn.vcAccordion=old,this},clickHandler=function(e){var $this;$this=$(this),e.preventDefault(),Plugin.call($this,"controller")},hashNavigation=function(){var hash,$targetElement,$accordion,offset,delay,speed;offset=.2,delay=300,speed=0,hash=window.location.hash,hash&&($targetElement=$(hash),$targetElement.length&&($accordion=$targetElement.find("[data-vc-accordion][href="+hash+"],[data-vc-accordion][data-vc-target="+hash+"]"),$accordion.length&&(setTimeout(function(){$("html, body").animate({scrollTop:$targetElement.offset().top-$(window).height()*offset},speed)},delay),$accordion.trigger("click"))))},window.addEventListener("hashchange",hashNavigation,!1),$(document).on("click.vc.accordion.data-api","[data-vc-accordion]",clickHandler),$(document).ready(hashNavigation),$(document).on("afterShow.vc.accordion",function(e){Plugin.call($(e.target),"scrollToActive")})}(window.jQuery);