jQuery(window).on("elementor/frontend/init",()=>{"use strict";elementorFrontend.hooks.addAction("frontend/element_ready/bopo-woocommerce-product-bundle-builder.default",function($scope){if(!window.elementor){return}let $shortcode_container=$scope.find(".bopobb-shortcode-form");$shortcode_container.each(function(){bopobbElementInit($shortcode_container)})});jQuery(document.body).trigger("bopobb-initial-bundle")});function bopobbElementInit($container){let item_width=parseInt($container.find(".bopobb-single-wrap .bopobb-item-top:first-child").width()*bopobbShortcodeVars.image_rate),count_item=$container.find(".bopobb-single-wrap .bopobb-items-bottom-wrap .bopobb-item-product").length,$alert=$container.find(".bopobb-alert"),ready_purchase=true;if($container.find(".bopobb-items-bottom-wrap.bopobb-template-1").length){for(let i=0;i<count_item;i++){if($container.find(".bopobb-single-wrap .bopobb-item-top.bopobb-item-"+i).attr("data-default")==0){ready_purchase=false;if(item_width){$container.find(".bopobb-single-wrap .bopobb-item-top.bopobb-item-"+i+" .bopobb-item-img-wrap.bopobb-item-change").addClass("bopobb-icon-plus2").css("min-height",item_width)}else{$container.find(".bopobb-single-wrap .bopobb-item-top.bopobb-item-"+i+" .bopobb-item-img-wrap.bopobb-item-change").addClass("bopobb-icon-plus2")}}}}else{for(let i=0;i<count_item;i++){if(!$container.find(".bopobb-single-wrap .bopobb-items-bottom-wrap .bopobb-item-product.bopobb-item-"+i).attr("data-id")){ready_purchase=false;$container.find(".bopobb-single-wrap .bopobb-items-bottom-wrap .bopobb-item-product.bopobb-item-"+i+" .bopobb-item-img").css("min-height",bopobbShortcodeVars.image_height+"px")}}}if(!ready_purchase){$container.find("p.price").hide();$alert.html(bopobbShortcodeVars.alert_empty).slideDown()}};
(function($){"use strict";$(window).on('elementor/frontend/init',function(){elementorFrontend.hooks.addAction('frontend/element_ready/column',function($scope){if($scope.hasClass('animated-slide-column')){new Waypoint({element:$scope,offset:'50%',handler:function(){$scope.addClass('col-loaded')}})}
if($scope.hasClass('animated-bg-parallax')){var $wrap=$scope.find('>[class*="elementor-column-"]');var linkImage=$wrap.css('backgroundImage').replace('url(','').replace(')','').replace(/\"/gi,"");if(linkImage==='none'){return}
$wrap.prepend('<img src="'+linkImage+'" class="img-banner-parallax" alt="banner-parallax"/>')
$wrap.find('>.img-banner-parallax').panr({moveTarget:$wrap,sensitivity:20,scale:!1,scaleOnHover:!0,scaleTo:1.1,scaleDuration:.25,panY:!0,panX:!0,panDuration:1.25,resetPanOnMouseLeave:!0})}});elementorFrontend.hooks.addAction('frontend/element_ready/section',function($scope){$(window).load(function(){if($scope.hasClass('animated-bg-parallax')){var linkImage=$scope.css('backgroundImage').replace('url(','').replace(')','').replace(/\"/gi,"");if(linkImage==='none'){return}
$scope.prepend('<img src="'+linkImage+'" class="img-banner-parallax" alt="banner-parallax" />')
$scope.find('>.img-banner-parallax').panr({moveTarget:$scope,sensitivity:20,scale:!1,scaleOnHover:!0,scaleTo:1.1,scaleDuration:.25,panY:!0,panX:!0,panDuration:1.25,resetPanOnMouseLeave:!1})}})})})})(jQuery);
(function($){var Sticky=function(element,userSettings){var $element,isSticky=!1,isFollowingParent=!1,isReachedEffectsPoint=!1,elements={},settings;var defaultSettings={to:'top',offset:0,effectsOffset:0,parent:!1,classes:{sticky:'sticky',stickyActive:'sticky-active',stickyEffects:'sticky-effects',spacer:'sticky-spacer',},};var initElements=function(){$element=$(element).addClass(settings.classes.sticky);elements.$window=$(window);if(settings.parent){if('parent'===settings.parent){elements.$parent=$element.parent()}else{elements.$parent=$element.closest(settings.parent)}}};var initSettings=function(){settings=jQuery.extend(!0,defaultSettings,userSettings)};var bindEvents=function(){elements.$window.on({scroll:onWindowScroll,resize:onWindowResize,})};var unbindEvents=function(){elements.$window.off('scroll',onWindowScroll).off('resize',onWindowResize)};var init=function(){initSettings();initElements();bindEvents();checkPosition()};var backupCSS=function($elementBackupCSS,backupState,properties){var css={},elementStyle=$elementBackupCSS[0].style;properties.forEach(function(property){css[property]=undefined!==elementStyle[property]?elementStyle[property]:''});$elementBackupCSS.data('css-backup-'+backupState,css)};var getCSSBackup=function($elementCSSBackup,backupState){return $elementCSSBackup.data('css-backup-'+backupState)};var addSpacer=function(){elements.$spacer=$element.clone().addClass(settings.classes.spacer).css({visibility:'hidden',transition:'none',animation:'none',});$element.after(elements.$spacer)};var removeSpacer=function(){elements.$spacer.remove()};var stickElement=function(){backupCSS($element,'unsticky',['position','width','margin-top','margin-bottom','top','bottom']);var css={position:'fixed',width:getElementOuterSize($element,'width'),marginTop:0,marginBottom:0,};css[settings.to]=settings.offset;css['top'===settings.to?'bottom':'top']='';$element.css(css).addClass(settings.classes.stickyActive)};var unstickElement=function(){$element.css(getCSSBackup($element,'unsticky')).removeClass(settings.classes.stickyActive)};var followParent=function(){backupCSS(elements.$parent,'childNotFollowing',['position']);elements.$parent.css('position','relative');backupCSS($element,'notFollowing',['position','top','bottom']);var css={position:'absolute',};css[settings.to]='';css['top'===settings.to?'bottom':'top']=0;$element.css(css);isFollowingParent=!0};var unfollowParent=function(){elements.$parent.css(getCSSBackup(elements.$parent,'childNotFollowing'));$element.css(getCSSBackup($element,'notFollowing'));isFollowingParent=!1};var getElementOuterSize=function($elementOuterSize,dimension,includeMargins){var computedStyle=getComputedStyle($elementOuterSize[0]),elementSize=parseFloat(computedStyle[dimension]),sides='height'===dimension?['top','bottom']:['left','right'],propertiesToAdd=[];if('border-box'!==computedStyle.boxSizing){propertiesToAdd.push('border','padding')}
if(includeMargins){propertiesToAdd.push('margin')}
propertiesToAdd.forEach(function(property){sides.forEach(function(side){elementSize+=parseFloat(computedStyle[property+'-'+side])})});return elementSize};var getElementViewportOffset=function($elementViewportOffset){var windowScrollTop=elements.$window.scrollTop(),elementHeight=getElementOuterSize($elementViewportOffset,'height'),viewportHeight=innerHeight,elementOffsetFromTop=$elementViewportOffset.offset().top,distanceFromTop=elementOffsetFromTop-windowScrollTop,topFromBottom=distanceFromTop-viewportHeight;return{top:{fromTop:distanceFromTop,fromBottom:topFromBottom,},bottom:{fromTop:distanceFromTop+elementHeight,fromBottom:topFromBottom+elementHeight,},}};var stick=function(){addSpacer();stickElement();isSticky=!0;$element.trigger('sticky:stick')};var unstick=function(){unstickElement();removeSpacer();isSticky=!1;$element.trigger('sticky:unstick')};var checkParent=function(){var elementOffset=getElementViewportOffset($element),isTop='top'===settings.to;if(isFollowingParent){var isNeedUnfollowing=isTop?elementOffset.top.fromTop>settings.offset:elementOffset.bottom.fromBottom<-settings.offset;if(isNeedUnfollowing){unfollowParent()}}else{var parentOffset=getElementViewportOffset(elements.$parent),parentStyle=getComputedStyle(elements.$parent[0]),borderWidthToDecrease=parseFloat(parentStyle[isTop?'borderBottomWidth':'borderTopWidth']),parentViewportDistance=isTop?parentOffset.bottom.fromTop-borderWidthToDecrease:parentOffset.top.fromBottom+borderWidthToDecrease,isNeedFollowing=isTop?parentViewportDistance<=elementOffset.bottom.fromTop:parentViewportDistance>=elementOffset.top.fromBottom;if(isNeedFollowing){followParent()}}};var checkEffectsPoint=function(distanceFromTriggerPoint){if(isReachedEffectsPoint&&-distanceFromTriggerPoint<settings.effectsOffset){$element.removeClass(settings.classes.stickyEffects);isReachedEffectsPoint=!1}else if(!isReachedEffectsPoint&&-distanceFromTriggerPoint>=settings.effectsOffset){$element.addClass(settings.classes.stickyEffects);isReachedEffectsPoint=!0}};var checkPosition=function(){var offset=settings.offset,distanceFromTriggerPoint;if(isSticky){var spacerViewportOffset=getElementViewportOffset(elements.$spacer);distanceFromTriggerPoint='top'===settings.to?spacerViewportOffset.top.fromTop-offset:-spacerViewportOffset.bottom.fromBottom-offset;if(settings.parent){checkParent()}
if(distanceFromTriggerPoint>0){unstick()}}else{var elementViewportOffset=getElementViewportOffset($element);distanceFromTriggerPoint='top'===settings.to?elementViewportOffset.top.fromTop-offset:-elementViewportOffset.bottom.fromBottom-offset;if(distanceFromTriggerPoint<=0){stick();if(settings.parent){checkParent()}}}
checkEffectsPoint(distanceFromTriggerPoint)};var onWindowScroll=function(){checkPosition()};var onWindowResize=function(){if(!isSticky){return}
unstickElement();stickElement();if(settings.parent){isFollowingParent=!1;checkParent()}};this.destroy=function(){if(isSticky){unstick()}
unbindEvents();$element.removeClass(settings.classes.sticky)};init()};$.fn.sticky=function(settings){var isCommand='string'===typeof settings;this.each(function(){var $this=$(this);if(!isCommand){$this.data('sticky',new Sticky(this,settings));return}
var instance=$this.data('sticky');if(!instance){throw Error('Trying to perform the `'+settings+'` method prior to initialization')}
if(!instance[settings]){throw ReferenceError('Method `'+settings+'` not found in sticky instance')}
instance[settings].apply(instance,Array.prototype.slice.call(arguments,1));if('destroy'===settings){$this.removeData('sticky')}});return this};window.Sticky=Sticky})(jQuery);
(function($,elementorFrontend,elementorModules){'use strict';var _sticky=elementorModules.frontend.handlers.Base.extend({bindEvents(){elementorFrontend.addListenerOnce(this.getUniqueHandlerID()+'sticky','resize',this.run)},unbindEvents(){elementorFrontend.removeListeners(this.getUniqueHandlerID()+'sticky','resize',this.run)},isStickyInstanceActive(){return undefined!==this.$element.data('sticky')},getResponsiveSetting(setting){const elementSettings=this.getElementSettings();return elementorFrontend.getCurrentDeviceSetting(elementSettings,setting)},getResponsiveSettingList(setting){const breakpoints=Object.keys(elementorFrontend.config.responsive.activeBreakpoints);return['',...breakpoints].map(suffix=>{return suffix?`${setting}_${suffix}`:setting})},activate(){var elementSettings=this.getElementSettings(),stickyOptions={to:elementSettings.sticky,offset:this.getResponsiveSetting('sticky_offset'),effectsOffset:this.getResponsiveSetting('sticky_effects_offset'),classes:{sticky:'elementor-sticky',stickyActive:'elementor-sticky--active elementor-section--handles-inside',stickyEffects:'elementor-sticky--effects',spacer:'elementor-sticky__spacer'}},$wpAdminBar=elementorFrontend.elements.$wpAdminBar;if(elementSettings.sticky_parent){stickyOptions.parent='.elementor-widget-wrap'}
if($wpAdminBar.length&&'top'===elementSettings.sticky&&'fixed'===$wpAdminBar.css('position')){stickyOptions.offset+=$wpAdminBar.height()}
this.$element.sticky(stickyOptions)},deactivate(){if(!this.isStickyInstanceActive()){return}
this.$element.sticky('destroy')},run(refresh){if(!this.getElementSettings('sticky')){this.deactivate();return}
var currentDeviceMode=elementorFrontend.getCurrentDeviceMode(),activeDevices=this.getElementSettings('sticky_on');if(-1!==activeDevices.indexOf(currentDeviceMode)){if(!0===refresh){this.reactivate()}else if(!this.isStickyInstanceActive()){this.activate()}}else{this.deactivate()}},reactivate(){this.deactivate();this.activate()},onElementChange(settingKey){if(-1!==['sticky','sticky_on'].indexOf(settingKey)){this.run(!0)}
const settings=[...this.getResponsiveSettingList('sticky_offset'),...this.getResponsiveSettingList('sticky_effects_offset'),'sticky_parent'];if(-1!==settings.indexOf(settingKey)){this.reactivate()}},onDeviceModeChange(){setTimeout(()=>{this.run(!0)})},onInit(){elementorModules.frontend.handlers.Base.prototype.onInit.apply(this,arguments);if(elementorFrontend.isEditMode()){elementor.listenTo(elementor.channels.deviceMode,'change',()=>this.onDeviceModeChange())}
this.run()},onDestroy(){elementorModules.frontend.handlers.Base.prototype.onDestroy.apply(this,arguments);this.deactivate()}});$(window).on('elementor/frontend/init',()=>{const addHandler=($element)=>{elementorFrontend.elementsHandler.addHandler(_sticky,{$element,})};elementorFrontend.hooks.addAction('frontend/element_ready/section',addHandler);elementorFrontend.hooks.addAction('frontend/element_ready/widget',addHandler)})}(jQuery,window.elementorFrontend,window.elementorModules));