!function(){"use strict";if(window.SR7??={},window._tpt??={},SR7.A??={},SR7.F??={},SR7.D??={},void 0===SR7.A.mousetrap){var e={rx:"rotationX",ry:"rotationY",rz:"rotation",sx:"scaleX",sy:"scaleY",op:"opacity"};SR7.A.mousetrap={style:".sr-mousetrap {pointer-events: none !important;} .sr-mousetrap-inner {width:auto;height:auto;position:relative;display:inherit;pointer-events: none;}.sr-mousetrap-npe,.sr-mousetrap-npe * { pointer-events: none !important;}",getLayerBasics:(e={},t)=>{let s="migrate"==t;return{u:"compare"===t?void 0:e.u??!0,center:e.center??e.mcenter??!1,follow:{bx:e.follow?.bx??e.follow?.blockx??!1,by:e.follow?.by??e.follow?.blocky??!1,d:s?parseInt(e.follow?.delay??0)/1e3:e.follow?.d??0,e:e.follow?.e??e.follow?.ease??"none",mode:e.follow?.mode??"disabled",olayer:e.follow?.olayer??[99999,99999,99999,99999,99999],pointer:e.follow?.pointer??!1,r:e.follow?.r??_tpt.fillArray(_tpt.DNTMtoArr(e.follow?.radius??0),5)},offset:{x:s?_tpt.fillArray(_tpt.DNTMtoArr(e.offset?.x??0),5):e.offset?.x??[0,0,0,0,0],y:s?_tpt.fillArray(_tpt.DNTMtoArr(e.offset?.y??0),5):e.offset?.y??[0,0,0,0,0]},revert:{u:e.revert?.use??e.revert?.u??!1,e:e.revert?.ease??e.revert?.e??"none",s:s?parseInt(e.revert?.speed??0)/1e3:e.revert?.s??0},rules:{e:e.rules?.ease??"none",s:s?parseInt(e.rules?.speed??0)/1e3:e.rules?.s??0,op:{min:e.rules?.op?.min??0,max:e.rules?.op?.max??1,a:e.rules?.op?.a??e.rules?.op?.axis??"none",c:e.rules?.op?.c??e.rules?.op?.calc??"distance",o:e.rules?.op?.o??e.rules?.op?.offset??"0%"},rx:{min:e.rules?.rx?.min??0,max:e.rules?.rx?.max??0,a:e.rules?.rx?.a??e.rules?.rx?.axis??"none",c:e.rules?.rx?.c??e.rules?.rx?.calc??"distance",o:e.rules?.rx?.o??e.rules?.rx?.offset??"0%"},ry:{min:e.rules?.ry?.min??0,max:e.rules?.ry?.max??0,a:e.rules?.ry?.a??e.rules?.ry?.axis??"none",c:e.rules?.ry?.c??e.rules?.ry?.calc??"distance",o:e.rules?.ry?.o??e.rules?.ry?.offset??"0%"},rz:{min:e.rules?.rz?.min??0,max:e.rules?.rz?.max??0,a:e.rules?.rz?.a??e.rules?.rz?.axis??"none",c:e.rules?.rz?.c??e.rules?.rz?.calc??"distance",o:e.rules?.rz?.o??e.rules?.rz?.offset??"0%"},sx:{min:e.rules?.sx?.min??0,max:e.rules?.sx?.max??0,a:e.rules?.sx?.a??e.rules?.sx?.axis??"none",c:e.rules?.sx?.c??e.rules?.sx?.calc??"distance",o:e.rules?.sx?.o??e.rules?.sx?.offset??"0%"},sy:{min:e.rules?.sy?.min??0,max:e.rules?.sy?.max??0,a:e.rules?.sy?.a??e.rules?.sy?.axis??"none",c:e.rules?.sy?.c??e.rules?.sy?.calc??"distance",o:e.rules?.sy?.o??e.rules?.sy?.offset??"0%"}}}},getModuleBasics:(e={},t)=>({u:"compare"==t?void 0:e.u??e.enable??!0}),touch:{x:0,y:0,block:!1,threshold:10,radMin:Math.PI/2-.4,radMax:Math.PI/2+.4,setTouch:function(e){this.x=e.clientX,this.y=e.clientY,this.block=!1},calculateTouch:function(e){const t=this.x-e.clientX,s=this.y-e.clientY;if(Math.abs(t)>this.threshold||Math.abs(s)>this.threshold){const e=Math.abs(Math.atan2(s,t));this.block=!(e>this.radMin&&e<this.radMax)}}},getLayerWraps:(e,t)=>{const s=SR7.M[e];if(""+(s.settings?.addOns?.mousetrap?.u??!1)=="false")return;t.addOns.mousetrap=SR7.A.mousetrap.getLayerBasics(t.addOns.mousetrap,"normalize");const r=t.addOns.mousetrap;if(void 0===r)return;let o=!1;for(let e in r.rules)"e"!=e&&"s"!=e&&"none"!=r.rules[e].a&&(o=!0);return{innerWrap:o?{use:!0,class:"sr-mousetrap-inner"}:void 0,wrap:{use:!0,class:"sr-mousetrap"}}},init:e=>{void 0===SR7.A.mousetrapcss&&(_tpt.injectCssJs(SR7.A.mousetrap.style,void 0,void 0,"mousetrap_global_styles"),SR7.A.mousetrapcss=!0),SR7.M[e].c.moduleListeners??={},SR7.M[e].c.moduleListeners.mousetrap??={},SR7.A.mousetrap.defCursor=SR7.M[e].c.module.style.cursor,_tpt.scrollObserver.observe(SR7.M[e].c.module),SR7.F.module.listeners.init(e),SR7.A.mousetrap.listeners.init(e)},prepareLayer:(e,t,s)=>{if("false"==String(t?.addOns?.mousetrap?.u??!1))return;let r=t?.addOns?.mousetrap?.follow?.mode??"",o=SR7.M[e].c.layers[s];"slider"!=r&&"events"!=r||(SR7.A.mousetrap.listeners.onSlider??=[],-1==SR7.A.mousetrap.listeners.onSlider.indexOf(o.el.id)&&SR7.A.mousetrap.listeners.onSlider.push(o.el.id)),o.addOns??={},o.addOns.mtrap??={},o.addOns.mtrap.tl??={},"events"==r?o.addOns.mtrap.follow??=!1:o.addOns.mtrap.follow=!0,o.addOns.mtrap.cache={}},postProcessLayer:(e,t,s,r)=>{if("false"==String(t?.addOns?.mousetrap?.u??!1))return;let o=t?.addOns?.mousetrap?.follow?.mode??"";if(SR7.A.mousetrap.listeners.onLayer??={},s.LME=s.addonWrap?"addonWrap":s.parallax?"parallax":s.loop?"loop":s.mask?"mask":"el","olayer"==o){SR7.A.mousetrap.listeners.onLayer??={};for(let o of t?.addOns?.mousetrap?.follow?.olayer??[]){if(!o||99999==o)continue;let{c:t}=SR7.F.getLayer({id:e,skey:r,lkey:o});null!=t&&(s[s.LME].style.pointerEvents="none",s[s.LME].classList.add("sr-mousetrap-npe"),SR7.A.mousetrap.listeners.onLayer[t.el.id]??=[],-1==SR7.A.mousetrap.listeners.onLayer[t.el.id].indexOf(s.el.id)&&SR7.A.mousetrap.listeners.onLayer[t.el.id].push(s.el.id),SR7.F.manageLayerListeners(t,void 0,!0,"mousetrap",[_tpt.tEvt("mouseenter"),_tpt.tEvt("mousemove"),_tpt.tEvt("mouseleave")],SR7.A.mousetrap.processOnLayer))}}},listeners:{init:e=>{SR7.A.mousetrap.listenersAdded?.[e]||(SR7.M[e].c.moduleListeners.mousetrap.sliderEnter??=SR7.F.module.listeners.reg(e,_tpt.tEvt("mouseenter"),(function(e,t){SR7.A.mousetrap.processOnSlide(e,t)})),SR7.M[e].c.moduleListeners.mousetrap.sliderProcess??=SR7.F.module.listeners.reg(e,_tpt.tEvt("mousemove"),(function(e,t){SR7.A.mousetrap.processOnSlide(e,t)}),_tpt.is_mobile),SR7.M[e].c.moduleListeners.mousetrap.sliderLeave??=SR7.F.module.listeners.reg(e,_tpt.tEvt("mouseleave"),(function(e,t){SR7.A.mousetrap.processOnSlide(e,t)})),SR7.M[e].c.moduleListeners.mousetrap.scroll??=SR7.F.module.listeners.reg(e,"scroll",(function(e){SR7.A.mousetrap.processOnSlide(e,{type:"scroll"})})),SR7.A.mousetrap.listenersAdded||document.addEventListener("sr.layer.action",(function(t){if("mtrap_follow"==t.eventtype){let{c:s,layer:r}=SR7.F.getLayer({id:t.id,skey:t.skey,lkey:t.lkey});s?.addOns?.mtrap&&(s.addOns.mtrap.follow=!0),SR7.A.mousetrap.doAnimate({id:e,c:s,A:r?.addOns?.mousetrap??void 0,type:_tpt.tEvt("mousemove")})}else if("mtrap_unfollow"==t.eventtype){let{c:s,layer:r}=SR7.F.getLayer({id:t.id,skey:t.skey,lkey:t.lkey});s?.addOns?.mtrap&&(s.addOns.mtrap.follow=!1),SR7.A.mousetrap.doAnimate({id:e,c:s,A:r?.addOns?.mousetrap??void 0,type:_tpt.tEvt("mouseleave")})}if("enterstage"==t.eventtype)switch(t.layersettings?.addOns?.mousetrap?.follow?.mode??""){case"slider":case"events":SR7.A.mousetrap.listeners.onSlider??=[],-1==SR7.A.mousetrap.listeners.onSlider.indexOf(t.c.el.id)&&SR7.A.mousetrap.listeners.onSlider.push(t.c.el.id);break;case"self":let{c:e}=SR7.F.getLayer({id:t.id,skey:t.c.skey,lkey:t.c.lkey});SR7.A.mousetrap.listeners.onLayer??={},SR7.A.mousetrap.listeners.onLayer[e.el.id]??=[],-1==SR7.A.mousetrap.listeners.onLayer[e.el.id].indexOf(t.c.el.id)&&SR7.A.mousetrap.listeners.onLayer[e.el.id].push(t.c.el.id),SR7.F.manageLayerListeners(t.c,void 0,!0,"mousetrap",[_tpt.tEvt("mouseenter"),_tpt.tEvt("mousemove"),_tpt.tEvt("mouseleave")],SR7.A.mousetrap.processOnLayer)}else if("leavestage"==t.eventtype){if(t.caller="action")return;switch(t.layersettings?.addOns?.mousetrap?.follow?.mode??""){case"events":case"slider":-1!=SR7.A.mousetrap.listeners.onSlider.indexOf(t.c.el.id)&&SR7.A.mousetrap.listeners.onSlider.splice(SR7.A.mousetrap.listeners.onSlider.indexOf(t.c.el.id),1)}}})),SR7.A.mousetrap.listenersAdded??={},SR7.A.mousetrap.listenersAdded[e]=!0)},remove:e=>{}},processOnLayer:(e,t,s)=>{if(!SR7.M[e]?.states?.inViewPort)return;if(s??=SR7.A.mousetrap.lastSensor,null==s||!SR7.M[e].c.layers[s.el.id]?.animState?.stageState)return;SR7.A.mousetrap.lastSensor=s;let r=0;_tpt.is_mobile&&SR7.F.module.listeners.updateMouseCoordinates(e,t);for(let o in SR7.A.mousetrap.listeners.onLayer[s.el.id]){if(!_tpt.hop(SR7.A.mousetrap.listeners.onLayer[s.el.id],o))continue;const a=SR7.A.mousetrap.listeners.onLayer[s.el.id][o];if(!1===(SR7.M[e].c.layers[a]?.addOns?.mtrap?.follow??!0))continue;const l=SR7.M[e].c.layers[a];r=SR7.A.mousetrap.doAnimate({id:e,c:l,A:SR7.M[e].slides[l.skey].layers[l.lkey]?.addOns?.mousetrap??void 0,type:t.type,container:{w:s.cw,h:s.ch},mouse:{x:t.offsetX??t.layerX,y:t.offsetY??t.layerY}})}0!==r&&("none"!==SR7.A.mousetrap.lastCursor&&r||"none"==SR7.A.mousetrap.lastCursor&&!r)?SR7.A.mousetrap.lastPOLCursor=SR7.A.mousetrap.lastCursor=SR7.M[e].c.module.style.cursor=r?"none":SR7.A.mousetrap.defCursor:t.type==_tpt.tEvt("mouseleave")&&SR7.A.mousetrap.lastCursor&&(SR7.A.mousetrap.lastPOLCursor=SR7.A.mousetrap.lastCursor=SR7.M[e].c.module.style.cursor=SR7.A.mousetrap.defCursor),clearTimeout(SR7.A.mousetrap.lastPOLCursorTimer),SR7.A.mousetrap.lastPOLCursorTimer=setTimeout((()=>{delete SR7.A.mousetrap.lastPOLCursor}),100)},processOnSlide:(e,t,s)=>{if(SR7.M[e]?.states?.inViewPort&&(SR7.M[e]?.states?.overModule||t.type===_tpt.tEvt("mouseleave"))&&(!SR7.M[e].sbtFreeze||"scroll"!=t.type)){if("touchstart"==t.type&&t.touches&&t.touches.length>0&&SR7.A.mousetrap.touch.setTouch(t.touches[0]),"touchmove"==t.type&&t.touches&&t.touches.length>0){const e=SR7.A.mousetrap.touch;e.calculateTouch(t.touches[0]),e.block&&t.preventDefault()}!s&&SR7.M[e].mTrapSlideRequests&&cancelAnimationFrame(SR7.M[e].mTrapSlideRequests),SR7.M[e].mTrapSlideRequests=requestAnimationFrame((()=>{const s=SR7.M[e];SR7.F.module.listeners.updateMouseCoordinates(e,t);let r=0,o=!1;t.type==_tpt.tEvt("mouseenter")&&(SR7.A.mousetrap.scrollY=_tpt.scrollObserver.y);for(let a in SR7.A.mousetrap.listeners.onSlider){if(!_tpt.hop(SR7.A.mousetrap.listeners.onSlider,a))continue;const l=SR7.A.mousetrap.listeners.onSlider[a];null!=s.c.layers?.[l]&&!1!==(s.c.layers[l]?.addOns?.mtrap?.follow??!0)&&(r=SR7.A.mousetrap.doAnimate({hide:r,id:e,c:s.c.layers[l],A:s.slides[s.c.layers[l].skey].layers[s.c.layers[l].lkey]?.addOns?.mousetrap??void 0,type:t.type}),o=!0)}0!==r&&("none"!==SR7.A.mousetrap.lastCursor&&r||"none"==SR7.A.mousetrap.lastCursor&&!r)?SR7.A.mousetrap.lastCursor=SR7.M[e].c.module.style.cursor=r?"none":SR7.A.mousetrap.defCursor:t.type==_tpt.tEvt("mouseleave")&&SR7.A.mousetrap.lastCursor?SR7.A.mousetrap.lastCursor=SR7.M[e].c.module.style.cursor=SR7.A.mousetrap.defCursor:0==r&&0==o&&SR7.A.mousetrap.lastCursor!==SR7.A.mousetrap.defCursor?"none"!==SR7.A.mousetrap.lastPOLCursor&&(SR7.A.mousetrap.lastCursor=SR7.M[e].c.module.style.cursor=SR7.A.mousetrap.defCursor):r&&SR7.A.mousetrap.lastCursor!=SR7.M[e].c.module.style.cursor&&(SR7.M[e].c.module.style.cursor=SR7.A.mousetrap.lastCursor)}))}},doAnimate:t=>{let{id:s,c:r,A:o,type:a,hide:l,mouse:n,container:i}=t;if(!r.addOns.mtrap||!SR7.M[s].c?.moduleListeners?.mousetrap)return;const u=SR7.M[s];let p,d={x:0,y:0,ease:"none",duration:0},m=SR7.gVal(o.offset.x??0,s,0),c=SR7.gVal(o.offset.y??0,s,0);a="dragmove"==a?"mousemove":a,l="false"!=String(l)&&o.follow.pointer,r.calcOffset=SR7.F.getParOffsets(r);let y=SR7.F.getParRowMP(r.el);if(r.calcOffset.top+=y.y,r.calcOffset.left+=y.x,a==_tpt.tEvt("mouseenter")||a==_tpt.tEvt("mousemove")||"scroll"==a){let e=u.slides[r.skey]?.slide?.global||"carousel"!=u.settings.type||u.settings.carousel.stretch?0:u.dims.CFC?.[u.current.id]?.x??u.dims.CFC?.x;d.x=u.mouse.relX-r.calcOffset.left-(o.center?r.cw/2:m)-e,d.y=u.mouse.relY-r.calcOffset.top-(o.center?r.ch/2:c),d.x=isNaN(d.x)?0:d.x,d.y=isNaN(d.y)?0:d.y}if(a==_tpt.tEvt("mouseenter")&&(d.ease=o.follow.e,d.duration=o.follow.d),a==_tpt.tEvt("mousemove")||"scroll"==a){if(void 0!==r.addOns.mtrap.tl.mousetrap_mouseleave&&(_tpt.gsap.killTweensOf(r.addonWrap),r.addonInnerWrap&&_tpt.gsap.killTweensOf(r.addonInnerWrap)),d.ease=o.follow.e,d.duration=o.follow.d,r.addonInnerWrap){let t,s,a=r.addOns.mtrap.cache;p??={ease:o.rules.e,duration:o.rules.s,transformOrigin:m+"px "+c+"px"};for(let l in o.rules){if("e"==l||"s"==l||"none"==o.rules[l].a)continue;let y=o.rules[l];if("both"===y.a||"center"===y.a)p.rotation=a.rotation??0,a.x??=d.x,a.y??=d.y,a.ufr??={x:a.x,y:a.y},t=("both"==y.a?a.ufr.x:0)-d.x,s=("both"==y.a?a.ufr.y:0)-d.y,Math.sqrt(t*t+s*s)>20&&(a.ufr.x=d.x,a.ufr.y=d.y,a.rotation=p.rotation=Math.round(Math.atan2(s,t)*tpGS.RAD2DEG)-90||p.rotation);else if("distance"===y.c){let t=i?.w??u.dims.content.w,s=i?.h??u.dims.content.h,r=n?.x??u.mouse.relX,o=n?.y??u.mouse.relY,a=0,d=parseInt(y.o),m="horizontal"===y.a?0!==d?t*(d/100):t:0!==d?s*(d/100):s;0!==d&&(a="horizontal"===y.a?(t-m)/2:(s-m)/2);let c="horizontal"===y.a?(r-a)/m:(o-a)/m;0!==d&&(c=c<0?0:c>1?1:c),p[e[l]]=parseInt(y.min)+(y.max-y.min)*c}else if("direction"===y.c){let t="vertical"===y.a?(a.y??0)-d.y:(a.x??0)-d.x;Math.abs(t)>2&&(p[e[l]]=(a[e[l]]??0)+.5*t,a[e[l]]=p[e[l]]=Math.min(y.max,Math.max(p[e[l]],y.min))),"vertical"==y.a?a.y=d.y:a.x=d.x}p.transformOrigin=o.center?Math.round(r.cw/2)+"px "+Math.round(r.ch/2)+"px":m+"px "+c+"px",p.transformPerspective=r.perspective??u.settings.general.perspective??"600px",p.rotationX=isNaN(p.rotationX)?0:p.rotationX,p.rotationY=isNaN(p.rotationY)?0:p.rotationY}}}else a==_tpt.tEvt("mouseleave")&&o.revert.u&&(d.duration=o.revert.s,d.ease=o.revert.e,r.addOns.mtrap.tl.mousetrap_mouseenter&&r.addOns.mtrap.tl.mousetrap_mouseenter.kill(),r.addOns.mtrap.tl.mousetrap_mouseenter_mod&&r.addOns.mtrap.tl.mousetrap_mouseenter_mod.kill(),r.addOns.mtrap.tl.mousetrap_mousemove&&r.addOns.mtrap.tl.mousetrap_mousemove.kill(),r.addOns.mtrap.tl.mousetrap_mousemove_mod&&r.addOns.mtrap.tl.mousetrap_mousemove_mod.kill(),_tpt.gsap.killTweensOf(r.addonWrap),r.addonInnerWrap&&_tpt.gsap.killTweensOf(r.addonInnerWrap),p={duration:o.revert.s,ease:o.revert.e,rotationX:0,rotationY:0,rotation:0,scaleX:1,scaleY:1,opacity:1});let f=SR7.gVal(o.follow.r??0,s,0);if(0==f&&_tpt.is_mobile&&"slider"==o.follow.mode&&0!==parseInt(o.follow?.r?.[3]??0)&&(f=parseInt(o.follow?.r?.[3]??0)),0!==f)if(Math.sqrt(d.x*d.x+d.y*d.y)>f&&0!==d.x&&0!==d.y){let e=d.x<0?-1:1,t=Math.atan(d.y/d.x);d.x=Math.cos(t)*f*e,d.y=Math.sin(t)*f*e}else d.x=d.x>f?f:d.x<-f?-f:d.x,d.y=d.y>f?f:d.y<-f?-f:d.y;else"olayer"!==o.follow.mode&&"slider"!==o.follow.mode&&_tpt.is_mobile&&(d.x=0,d.y=0);if(d.x=isNaN(d.x)||o.follow.bx?0:d.x,d.y=isNaN(d.y)||o.follow.by?0:d.y,d.perspective="600px",a!=_tpt.tEvt("mouseleave")||o.revert.u){if("self"!==o.follow.mode&&(0==d.duration?_tpt.gsap.set(r.addonWrap,d):r.addOns.mtrap.tl["mousetrap_"+a]=_tpt.gsap.to(r.addonWrap,d)),null==p)return l;p.rotationX=isNaN(p.rotationX)?0:p.rotationX,p.rotationY=isNaN(p.rotationY)?0:p.rotationY,p.rotation=isNaN(p.rotation)?0:p.rotation+"_short",p.scaleX=isNaN(p.scaleX)?1:p.scaleX,p.scaleY=isNaN(p.scaleY)?1:p.scaleY,0==p.duration?(r.addOns.mtrap.tl["mousetrap_"+a+"_mod"]&&r.addOns.mtrap.tl["mousetrap_"+a+"_mod"].kill(),p.overwrite=!0,_tpt.gsap.set(r.addonInnerWrap,p)):(r.addOns.mtrap.tl["mousetrap_"+a+"_mod"]&&r.addOns.mtrap.tl["mousetrap_"+a+"_mod"].kill(),r.addOns.mtrap.tl["mousetrap_"+a+"_mod_ever"]||(p.duration=2*p.duration),r.addOns.mtrap.tl["mousetrap_"+a+"_mod_ever"]=!0,_tpt.gsap.set(r.addonInnerWrap,{transformPerspective:d.perspective,transformOrigin:p.transformOrigin}),r.addOns.mtrap.tl["mousetrap_"+a+"_mod"]=_tpt.gsap.to(r.addonInnerWrap,p))}return l}},_tpt.R??={},_tpt.R.mousetrap=_tpt.extend?_tpt.extend(_tpt.R.mousetrap,{status:2,version:"1.0"}):{status:2,version:"1.0"},window.dispatchEvent(new CustomEvent("SR7MouseTrapReady"))}}();