+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="gem-tta-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(options){var $this;$this=this.$element;var action=options;"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,options)}
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,opt){var $event;"string"==typeof event&&($event=$.Event(event),this.$element.trigger($event,opt))}
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(opt){var $target,that,$targetContent;that=this;$target=that.getTarget();$targetContent=that.getTargetContent();if(that.isActive()){return;}
if(that.isAnimated()){that.triggerEvent('beforeShow.vc.accordion');if(that.$container&&((that.$container.find('.gem-tta-tabs-container').length&&that.$container.find('.gem-tta-tabs-container').is(':visible'))||(that.$container.find('.vc_pagination').length&&that.$container.find('.vc_pagination').is(':visible')))){$target.clearQueue().finish().queue(function(next){$targetContent.attr('style','');$targetContent.css({display:'block',opacity:0,});that.triggerEvent('gem.show.vc.tabs',opt);if($target.parent().outerHeight()<=$targetContent.outerHeight()){$target.parent().outerHeight($targetContent.outerHeight());}
next();}).queue(function(next){that.triggerEvent('show.vc.accordion',opt);$targetContent.clearQueue().finish().animate({opacity:1},500,function(){$target.addClass(that.activeClass);("object"==typeof opt&&opt.hasOwnProperty("changeHash")&&opt.changeHash||"undefined"==typeof opt)&&that.changeLocationHash();that.triggerEvent('afterShow.vc.accordion',opt);$targetContent.attr('style','');$target.parent().attr('style','');});next();});}else{$target.queue(function(next){$targetContent.one(Accordion.transitionName,function(){$target.removeClass(that.animatingClass);$targetContent.attr('style','');that.triggerEvent('afterShow.vc.accordion',opt);that.triggerEvent('gem.show.vc.accordion',opt);});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);("object"==typeof opt&&opt.hasOwnProperty("changeHash")&&opt.changeHash||"undefined"==typeof opt)&&that.changeLocationHash();that.triggerEvent('show.vc.accordion',opt);next();}).queue(function(next){var height=$targetContent.data('vcHeight');$targetContent.animate({'height':height},{duration:that.getAnimationDurationMilliseconds(),complete:function(){if(!$targetContent.data('events')){$targetContent.attr('style','');}}});$targetContent.css({'padding-top':'','padding-bottom':''});next();});}}else{$target.addClass(that.activeClass);that.triggerEvent('show.vc.accordion',opt);}};Accordion.prototype.hide=function(opt){var $target,that,$targetContent;that=this;$target=that.getTarget();$targetContent=that.getTargetContent();if(!that.isActive()){return;}
if(that.isAnimated()){that.triggerEvent('beforeHide.vc.accordion');if(that.$container&&((that.$container.find('.gem-tta-tabs-container').length&&that.$container.find('.gem-tta-tabs-container').is(':visible'))||(that.$container.find('.vc_pagination').length&&that.$container.find('.vc_pagination').is(':visible')))){$target.queue(function(next){$targetContent.attr('style','');if($target.parent().outerHeight()<=$targetContent.outerHeight()){$target.parent().outerHeight($targetContent.outerHeight());}
$targetContent.css({display:'block',opacity:1,position:'absolute',top:'-'+$targetContent.css('border-top-width'),left:'-'+$targetContent.css('border-left-width'),right:'-'+$targetContent.css('border-right-width'),});next();}).queue(function(next){that.triggerEvent('hide.vc.accordion',opt);$targetContent.clearQueue().finish().animate({opacity:0},500,function(){$target.removeClass(that.activeClass);$targetContent.attr('style','');$target.parent().attr('style','');});next();});}else{$target.queue(function(next){$targetContent.one(Accordion.transitionName,function(){$target.removeClass(that.animatingClass);$targetContent.attr('style','');that.triggerEvent('afterHide.vc.accordion',opt);});Accordion.emulateTransitionEnd($targetContent,that.getAnimationDurationMilliseconds()+100);next();}).queue(function(next){$target.addClass(that.animatingClass);$target.removeClass(that.activeClass);that.triggerEvent('hide.vc.accordion',opt);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();});}}else{$target.removeClass(that.activeClass);that.triggerEvent('hide.vc.accordion',opt);}};Accordion.prototype.toggle=function(opt){var $this;$this=this.$element,this.isActive()?Plugin.call($this,"hide",opt):Plugin.call($this,"show",opt)}
Accordion.prototype.dropdown=function(opt){var $this;$this=this.$element,this.isActive()?Plugin.call($this,"hide",opt):(Plugin.call($this,"show",opt),$(document).on("click.vc.accordion.data-api.dropdown",function(e){Plugin.call($this,"hide",opt),$(document).off(e)}))}
Accordion.prototype.collapse=function(opt){var $this,$triggers;$this=this.$element,$triggers=this.getActiveTriggers().filter(function(){return $this[0]!==this}),$triggers.length&&Plugin.call($triggers,"hide",opt),Plugin.call($this,"show",opt)}
Accordion.prototype.collapseAll=function(opt){var $this,$triggers;$this=this.$element,$triggers=this.getActiveTriggers().filter(function(){return $this[0]!==this}),$triggers.length&&Plugin.call($triggers,"hide",opt),Plugin.call($this,"toggle",opt)}
Accordion.prototype.showNext=function(opt){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",opt):Plugin.call($triggers.eq(0),"controller",opt)}}
Accordion.prototype.showPrev=function(opt){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",opt):Plugin.call($triggers.eq($triggers.length-1),"controller",opt):Plugin.call($triggers.eq(0),"controller",opt)}}
Accordion.prototype.showAt=function(index,opt){var $triggers;$triggers=this.getTriggers(),$triggers.length&&index&&index<$triggers.length&&Plugin.call($triggers.eq(index),"controller",opt)}
Accordion.prototype.scrollToActive=function(opt){if("undefined"==typeof opt||"undefined"==typeof opt.scrollTo||opt.scrollTo){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).on("hashchange.vc.accordion",hashNavigation),$(document).on("click.vc.accordion.data-api","[data-vc-accordion]",clickHandler),$(document).on("ready.vc.accordion",hashNavigation),$(document).on("afterShow.vc.accordion",function(e,opt){Plugin.call($(e.target),"scrollToActive",opt)})}(window.jQuery);