PageSourceSearch

https://solarspy.ai/wp-content/plugins/my-elementor-widget/assets/dist/js/public.min.js?ver=753311626

js solarspy.ai collected 2026-10-05 12:39:20 UTC 36,757 bytes, 1 lines download raw bytes

1!function($){const debounce=(func,wait,immediate)=>{let timeoutId;return function(...args){const context=this,shouldCallImmediately=immediate&&!timeoutId;clearTimeout(timeoutId),timeoutId=setTimeout((()=>{timeoutId=null,immediate||func.apply(context,args)}),wait),shouldCallImmediately&&func.apply(context,args)}},percentLine=$scope=>{const percent=$scope.find(".cew-percent-line").data("percent");gsap.fromTo($scope.find("  .chart-fill"),{width:"0"},{width:percent+"%",ease:"bounce.out",duration:2,scrollTrigger:{trigger:$scope.find("  .chart-fill"),start:"0% 90%",end:"250% 80%"}})};$(window).on("elementor/frontend/init",(function(){elementorFrontend.hooks.addAction("frontend/element_ready/cew-image-comparison-id.default",initializeImageComparison),elementorFrontend.hooks.addAction("frontend/element_ready/cew-team-member-id.default",initializeTeamMember),elementorFrontend.hooks.addAction("frontend/element_ready/cew-job-id.default",initializeJob),elementorFrontend.hooks.addAction("frontend/element_ready/nested-accordion.default",initializeAccordionAdditionalSettings),elementorFrontend.hooks.addAction("frontend/element_ready/nested-tabs.default",initializeTabsAdditionalSettings),elementorFrontend.hooks.addAction("frontend/element_ready/nested-carousel.default",initializeCarouselAdditionalSettings),elementorFrontend.hooks.addAction("frontend/element_ready/CEW-faq-id.default",initializeFaq),elementorFrontend.hooks.addAction("frontend/element_ready/cew-scrolling-text-id.default",initializeScrollingText),elementorFrontend.hooks.addAction("frontend/element_ready/cew-scrolling-tabs-id.default",initializeScrollingTabs),elementorFrontend.hooks.addAction("frontend/element_ready/cew-dot-lottie-id.default",initializeDotLottie),elementorFrontend.hooks.addAction("frontend/element_ready/cew-percent-in-circle-id.default",initializePercentInCircle),elementorFrontend.hooks.addAction("frontend/element_ready/cew-percent-line-id.default",percentLine),elementorFrontend.hooks.addAction("frontend/element_ready/cew-timeline-id.default",initializeTimeline),elementorFrontend.hooks.addAction("frontend/element_ready/heading.default",initializeScribbleText),elementorFrontend.hooks.addAction("frontend/element_ready/image.default",initializeImageAdditionalSettings),elementorFrontend.hooks.addAction("frontend/element_ready/cew-loop-slider-id.default",initializeLoopSlider),elementorFrontend.hooks.addAction("frontend/element_ready/cew-quote-id.default",initializeQuote),elementorFrontend.hooks.addAction("frontend/element_ready/mega-menu.default",initializeMegaMenuAnimation),elementorFrontend.hooks.addAction("frontend/element_ready/container",initializeGlowContainer),elementorFrontend.hooks.addAction("frontend/element_ready/container",initializeMorphingGradientsBackground),elementorFrontend.hooks.addAction("frontend/element_ready/section",initializeMorphingGradientsBackground)}));const initializeAccordionAdditionalSettings=$scope=>{const{settings:settings}=$scope.data()||{},isSettings=JSON.stringify(settings)?.includes("default_open");if(isSettings){function toggleDetails(){const deviceModeSuffix=`_${elementorFrontend.getCurrentDeviceMode()}`.replace("_desktop",""),isOpen="yes"===settings[`default_open${deviceModeSuffix}`];$scope.find("details").prop("open",isOpen)}toggleDetails(),$(window).resize(toggleDetails)}const toggleAccordionClass=settings?.toggle_accordion_class?.replace("{accordion_id}",`[data-id='${$scope.attr("data-id")}']`);toggleAccordionClass&&$(toggleAccordionClass).on("click",(()=>$scope.find("details summary").click()))};document.body.classList.contains("cew-active-transparent-navbar")&&window.addEventListener("scroll",(()=>{document.body.classList.toggle("navbar-transparent",0===document.documentElement.scrollTop)})),$(window).on("elementor/frontend/init",(function(){const animation=[];var FloatingFxHandler,ModuleHandler=elementorModules.frontend.handlers.Base;FloatingFxHandler=ModuleHandler.extend({bindEvents:function(){this.run()},getDefaultSettings:function(){const el=this.$element[0];return{targets:el,from:{},to:{},scrollTrigger:{trigger:el,markers:!1,start:"0 100%",end:"100% 0%"}}},onElementChange:debounce((function(prop){-1!==prop.indexOf("cew_animation")&&this.run()}),400),onDeviceModeChange:debounce((function(prop){-1!==prop.indexOf("cew_animation")&&this.run()}),400),getValDevice:function(key){const activeDevice=elementorFrontend.getCurrentDeviceMode(),settings=["mobile","tablet","desktop"].map((device=>{const suffix="desktop"===device?"":`_${device}`;return this.getElementSettings(`cew_animation_${key}${suffix}`)})),mergeSettings=(primary,fallback)=>{let hasFallback=!1;const merged={};for(const[key,value]of Object.entries(primary))""===value?(merged[key]=fallback[key],hasFallback=!0):merged[key]=value;return hasFallback&&("unit"in primary&&(merged.unit=fallback.unit),"isLinked"in primary&&(merged.isLinked=fallback.isLinked)),merged},tabletSettings=mergeSettings(settings[1],settings[2]),mobileSettings=mergeSettings(settings[0],tabletSettings);return{desktop:settings[2],tablet:tabletSettings,mobile:mobileSettings}[activeDevice]},getVal:function(key){return this.getElementSettings("cew_animation_"+key)},run:function(){const config=this.getDefaultSettings();if("yes"===this.getVal("enable")&&"yes"!==this.getCurrentDeviceSetting("cew_animation_disabled")){if(this.getVal("markers_toggle")&&(config.scrollTrigger.markers="yes"===this.getVal("markers_toggle")),this.getVal("yoyo")&&(config.to.yoyo="yes"===this.getVal("yoyo")),this.getVal("repeat")&&(config.to.yoyo=this.getVal("repeat")),this.getVal("trigger")&&(config.scrollTrigger.trigger=document.querySelector(this.getVal("trigger"))),"yes"===this.getVal("scrub")&&(config.scrollTrigger.scrub=!this.getVal("scrub_value")||this.getVal("scrub_value")),this.getVal("delay")&&(config.to.delay=this.getVal("delay")),this.getVal("ease")&&(config.to.ease=this.getVal("ease")),this.getVal("duration")&&(config.to.duration=this.getVal("duration")),this.getVal("start_toggle")&&void 0!==this.getVal("start_window").size&&this.getVal("start_window").unit&&void 0!==this.getVal("start_element").size&&this.getVal("start_element").unit&&(config.scrollTrigger.start=this.getVal("start_element").size+this.getVal("start_element").unit+" "+this.getVal("start_window").size+this.getVal("start_window").unit),this.getVal("end_toggle")&&void 0!==this.getVal("end_window").size&&this.getVal("end_window").unit&&void 0!==this.getVal("end_element").size&&this.getVal("end_element").unit&&(config.scrollTrigger.end=this.getVal("end_element").size+this.getVal("end_element").unit+" "+this.getVal("end_window").size+this.getVal("end_window").unit),this.getVal("translate_x_toggle")&&(void 0!==this.getVal("from_translate_x").size&&this.getVal("from_translate_x").unit&&(config.from.x=this.getVal("from_translate_x").size+this.getVal("from_translate_x").unit),void 0!==this.getVal("to_translate_x").size&&this.getVal("to_translate_x").unit&&(config.to.x=this.getVal("to_translate_x").size+this.getVal("to_translate_x").unit)),this.getVal("translate_y_toggle")&&(void 0!==this.getVal("from_translate_y").size&&this.getVal("from_translate_y").unit&&(config.from.y=this.getVal("from_translate_y").size+this.getVal("from_translate_y").unit),void 0!==this.getVal("to_translate_y").size&&this.getVal("to_translate_y").unit&&(config.to.y=this.getVal("to_translate_y").size+this.getVal("to_translate_y").unit)),this.getVal("clipPath_toggle")){console.log(this.getValDevice("borderRadius"));
1let{top:b_top,left:b_left,right:b_right,bottom:b_bottom,unit:b_unit}=this.getValDevice("borderRadius")||{};if("custom"===b_unit&&(b_unit=""),this.getVal("from_clipPath_inset")){let{top:top,right:right,bottom:bottom,left:left,unit:unit}=this.getValDevice("from_clipPath_inset")||{};"custom"===unit&&(unit=""),config.from.clipPath=`inset(${top}${unit} ${right}${unit} ${bottom}${unit} ${left}${unit} round 0px 0px 0px 0px)`}if(this.getVal("to_clipPath_inset")){let{top:top,right:right,bottom:bottom,left:left,unit:unit}=this.getValDevice("to_clipPath_inset")||{};"custom"===unit&&(unit=""),config.to.clipPath=`inset(${top}${unit} ${right}${unit} ${bottom}${unit} ${left}${unit} round ${b_top}${b_unit} ${b_right}${b_unit} ${b_bottom}${b_unit} ${b_left}${b_unit})`}}this.getVal("opacity_toggle")&&(config.from.opacity=this.getVal("from_opacity"),config.to.opacity=this.getVal("to_opacity")),this.getVal("scale_toggle")&&(config.from.scale=this.getVal("from_scale"),config.to.scale=this.getVal("to_scale")),animation.forEach(((anim,index)=>{anim.id===this.getID()&&(anim.animation.kill(),animation.splice(index,1))})),animation.push({id:this.getID(),animation:gsap.fromTo(config.targets,config.from,{scrollTrigger:config.scrollTrigger,...config.to})})}}}),elementorFrontend.hooks.addAction("frontend/element_ready/container",(function($scope){elementorFrontend.elementsHandler.addHandler(FloatingFxHandler,{$element:$scope})})),elementorFrontend.hooks.addAction("frontend/element_ready/section",(function($scope){elementorFrontend.elementsHandler.addHandler(FloatingFxHandler,{$element:$scope})})),elementorFrontend.hooks.addAction("frontend/element_ready/widget",(function($scope){elementorFrontend.elementsHandler.addHandler(FloatingFxHandler,{$element:$scope})}))}));const initializeCarouselAdditionalSettings=$scope=>{const data=$scope.data()||{},{cew_next_slide_class:next_slide_class,cew_prev_slide_class:prev_slide_class,cew_enable_free_mode:freeMode}=data.settings||{};setTimeout((()=>{const swiper=$scope.find(".swiper")[0].swiper;freeMode&&(swiper.params.freeMode={enabled:!0,momentum:!0,momentumRatio:1,momentumBounce:!0,momentumBounceRatio:5,momentumVelocityRatio:1,sticky:!1,minimumVelocity:.02},swiper.update()),next_slide_class&&$(`.${next_slide_class}`).on("click",(()=>{swiper.slideNext()})),prev_slide_class&&$(`.${prev_slide_class}`).on("click",(()=>{swiper.slidePrev()}))}),500)};let synchronizedPointer=!1;const syncPointer=({x:x,y:y})=>{gsap.to(document.documentElement,{duration:1,ease:"elastic.out(1,0.3)","--x":x.toFixed(2),"--y":y.toFixed(2),"--xp":(x/window.innerWidth).toFixed(2),"--yp":(y/window.innerHeight).toFixed(2)})},initializeGlowContainer=$scope=>{const{settings:settings={}}=$scope.data()||{},enableGlow=settings?.enable_glow_container;"yes"===enableGlow&&(synchronizedPointer||(document.body.addEventListener("pointermove",syncPointer),synchronizedPointer=!0),$scope.addClass("glow-container"),$scope.prepend("<div data-glow></div>"))},initializeImageAdditionalSettings=$scope=>{const{settings:settings={}}=$scope.data()||{},active_parallax=settings?.active_parallax;if("yes"===active_parallax){const{parallax_margin:parallax_margin}=settings,image=$scope.find("img");gsap.fromTo(image,{y:`-${parallax_margin.size}${parallax_margin.unit}`},{y:`${parallax_margin.size}${parallax_margin.unit}`,scrollTrigger:{trigger:image,start:"0 100%",end:"100% 0",scrub:.2}})}},initializeMegaMenuAnimation=$scope=>
1{const navbarContainer=document.querySelector(".navbarContainer");let lastScrollTop=0,lastDirection=null,isMenuOpen=!1,currentDirection="down";const onScroll=()=>{const currentScroll=$(window).scrollTop();(currentScroll=>{const isBelowNavbar=currentScroll<navbarContainer.clientHeight,isScrollBeyondNavbar=currentScroll>navbarContainer.clientHeight;currentDirection=currentScroll>lastScrollTop?"down":currentScroll<lastScrollTop?"up":currentDirection,"down"===currentDirection&&isBelowNavbar?(gsap.set(navbarContainer,{position:"absolute"}),navbarContainer.classList.remove("cew-backgroundMenuActive")):"down"!==currentDirection||isBelowNavbar?"up"===currentDirection&&0===currentScroll&&navbarContainer.classList.remove("cew-backgroundMenuActive"):navbarContainer.classList.add("cew-backgroundMenuActive"),currentDirection!==lastDirection&&("down"===currentDirection&&isScrollBeyondNavbar?gsap.to(navbarContainer,{duration:.2,opacity:0}):"up"===currentDirection&&isScrollBeyondNavbar&&gsap.fromTo(navbarContainer,{opacity:0},{position:"fixed",duration:.2,opacity:1})),lastScrollTop=currentScroll,lastDirection=currentDirection})(currentScroll),lastScrollTop=Math.max(currentScroll,0)},handleMouseEnter=()=>navbarContainer.classList.add("cew-backgroundMenuActive"),handleMouseLeave=()=>{0!==document.documentElement.scrollTop||isMenuOpen||navbarContainer.classList.remove("cew-backgroundMenuActive")};if(window.innerWidth<1024||"yes"!==$scope.data().settings?.cew_custom_animation)return;navbarContainer&&(window.addEventListener("scroll",onScroll),onScroll(),navbarContainer.addEventListener("mouseenter",handleMouseEnter),navbarContainer.addEventListener("mouseleave",handleMouseLeave)),$scope.find(".e-n-menu-content").addClass("e-n-menu-content-animation");const menuContent=document.querySelector(".e-n-menu-content"),navbar=document.querySelector(".e-n-menu-heading"),menuTitles=document.querySelectorAll(".e-n-menu-heading .e-n-menu-title.e-click"),dropdownTitles=document.querySelectorAll(".e-n-menu-heading .e-n-menu-title:not(.e-click)");gsap.set(menuContent.children,{y:"-120%"});const mouseMoveHandler=event=>{window.innerWidth<1024||(((event,targets)=>targets.some((target=>target.contains(event.target))))(event,[...dropdownTitles])||!navbar.contains(event.target)&&!menuContent.contains(event.target))&&closeMenu(!navbarContainer.contains(event.target))},closeMenu=touchMenuContainer=>{window.innerWidth<1024||(menuContent.classList.remove("e-active","active"),isMenuOpen=!1,gsap.to(menuContent.children,{y:"-120%",duration:.5,ease:"power4.out",onComplete:()=>!isMenuOpen&&gsap.set(menuContent.children,{display:"none"})}),setTimeout((()=>
1!isMenuOpen&&touchMenuContainer&&navbarContainer.classList.remove("cew-backgroundMenuActive")),200),document.removeEventListener("scroll",mouseMoveHandler),document.removeEventListener("mousemove",mouseMoveHandler))};menuTitles.forEach(((el,index)=>el.addEventListener("mouseenter",(()=>(index=>{window.innerWidth<1024||(gsap.set(menuContent.children,{display:"none"}),menuContent.children[index].style.display="block",menuContent.classList.add("e-active","active"),isMenuOpen=!0,gsap.to(menuContent.children,{delay:0===document.documentElement.scrollTop?.2:0,y:"0%",duration:.5,ease:"power4.out"}),document.addEventListener("scroll",mouseMoveHandler),document.addEventListener("mousemove",mouseMoveHandler))})(index)))))},morphingGradientsBackgroundType2=$scope=>{Math.sqrt(3),Math.sqrt(3);const G3=1/6;Math.sqrt(5),Math.sqrt(5);const simplex=new class{constructor(randomOrSeed){const random="function"==typeof randomOrSeed?randomOrSeed:randomOrSeed?function(){let s0=0,s1=0,s2=0,c=1,mash=function(){let n=4022871197;return function(data){data=data.toString();for(let i=0;i<data.length;i++){n+=data.charCodeAt(i);let h=.02519603282416938*n;n=h>>>0,h-=n,h*=n,n=h>>>0,h-=n,n+=4294967296*h}return 2.3283064365386963e-10*(n>>>0)}}();s0=mash(" "),s1=mash(" "),s2=mash(" ");for(let i=0;i<arguments.length;i++)s0-=mash(arguments[i]),s0<0&&(s0+=1),s1-=mash(arguments[i]),s1<0&&(s1+=1),s2-=mash(arguments[i]),s2<0&&(s2+=1);return mash=null,function(){const t=2091639*s0+2.3283064365386963e-10*c;return s0=s1,s1=s2,s2=t-(c=0|t)}}(randomOrSeed):Math.random;this.p=function(random){const p=new Uint8Array(256);for(let i=0;i<256;i++)p[i]=i;for(let i=0;i<255;i++){const r=i+~~(random()*(256-i)),aux=p[i];p[i]=p[r],p[r]=aux}return p}(random),this.perm=new Uint8Array(512),this.permMod12=new Uint8Array(512);for(let i=0;i<512;i++)this.perm[i]=this.p[255&i],this.permMod12[i]=this.perm[i]%12}grad3=new Float32Array([1,1,0,-1,1,0,1,-1,0,-1,-1,0,1,0,1,-1,0,1,1,0,-1,-1,0,-1,0,1,1,0,-1,1,0,1,-1,0,-1,-1]);noise3D(xin,yin,zin){const permMod12=this.permMod12,perm=this.perm,grad3=this.grad3;let n0,n1,n2,n3;const s=.3333333333333333*(xin+yin+zin),i=Math.floor(xin+s),j=Math.floor(yin+s),k=Math.floor(zin+s),t=(i+j+k)*G3,x0=xin-(i-t),y0=yin-(j-t),z0=zin-(k-t);let i1,j1,k1,i2,j2,k2;x0>=y0?y0>=z0?(i1=1,j1=0,k1=0,i2=1,j2=1,k2=0):x0>=z0?(i1=1,j1=0,k1=0,i2=1,j2=0,k2=1):(i1=0,j1=0,k1=1,i2=1,j2=0,k2=1):y0<z0?(i1=0,j1=0,k1=1,i2=0,j2=1,k2=1):x0<z0?(i1=0,j1=1,k1=0,i2=0,j2=1,k2=1):(i1=0,j1=1,k1=0,i2=1,j2=1,k2=0);const x1=x0-i1+G3,y1=y0-j1+G3,z1=z0-k1+G3,x2=x0-i2+2*G3,y2=y0-j2+2*G3,z2=z0-k2+2*G3,x3=x0-1+.5,y3=y0-1+.5,z3=z0-1+.5,ii=255&i,jj=255&j,kk=255&k;let t0=.6-x0*x0-y0*y0-z0*z0;if(t0<0)n0=0;else{const gi0=3*permMod12[ii+perm[jj+perm[kk]]];t0*=t0,n0=t0*t0*(grad3[gi0]*x0+grad3[gi0+1]*y0+grad3[gi0+2]*z0)}let t1=.6-x1*x1-y1*y1-z1*z1;if(t1<0)n1=0;else{const gi1=3*permMod12[ii+i1+perm[jj+j1+perm[kk+k1]]];t1*=t1,n1=t1*t1*(grad3[gi1]*x1+grad3[gi1+1]*y1+grad3[gi1+2]*z1)}let t2=.6-x2*x2-y2*y2-z2*z2;if(t2<0)n2=0;else{const gi2=3*permMod12[ii+i2+perm[jj+j2+perm[kk+k2]]];t2*=t2,n2=t2*t2*(grad3[gi2]*x2+grad3[gi2+1]*y2+grad3[gi2+2]*z2)}let t3=.6-x3*x3-y3*y3-z3*z3;if(t3<0)n3=0;else{const gi3=3*permMod12[ii+1+perm[jj+1+perm[kk+1]]];t3*=t3,n3=t3*t3*(grad3[gi3]*x3+grad3[gi3+1]*y3+grad3[gi3+2]*z3)}return 32*(n0+n1+n2+n3)}};class NectarGradient{constructor(container){this.container=container,this.row=container,this.setup(),this.events(),this.rafLoop(),setTimeout((()=>this.container.classList.add("loaded")))}setup(){this.canvas=this.row,this.ctx=this.canvas.getContext("2d"),this.onMobile=window.innerWidth<690,this.orientationChanged=!1,this.clock=0,this.resolution=this.onMobile?90:110,this.resPercentageNormalized=1/this.resolution,this.canvas.height=this.canvas.width=this.resolution,this.imgdata=this.ctx.getImageData(0,0,this.resolution,this.resolution),[this.cx,this.cy]=[this.canvas.width/2,this.canvas.height/2],this.data=this.imgdata.data,this.settings={speed:+this.row.getAttribute("data-speed"),color_1:this.row.getAttribute("data-color1"),color_2:this.row.getAttribute("data-color2"),blending_mode:this.row.getAttribute("data-blendingMode")},console.log(this.settings),this.colorSpeed=1300===this.settings.speed?.5:.9,this.colors=[this.settings.color_1,this.settings.color_2].filter((c=>c)).map(this.rgbObj),this.singleColor=this.colors.length<2}events(){window.addEventListener("resize",(()=>{this.onMobile&&!this.orientationChanged||this.resize()})),window.addEventListener("orientationchange",(()=>this.orientationChanged=!0)),this.resize(),this.trackInView()}resize(){[this.containerW,this.containerH]=[this.container.clientWidth,this.container.clientHeight];let containerRatio=this.containerH/this.containerW;this.aspectMod=containerRatio<1?{x:1.4,y:1.4*containerRatio}:{x:containerRatio/3,y:1}}trackInView(){new IntersectionObserver((entries=>
1entries.forEach((entry=>this.inView=entry.isIntersecting))),{rootMargin:"250px"}).observe(this.container)}rgbObj(hex){const match=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);return!!match&&{r:parseInt(match[1],16),g:parseInt(match[2],16),b:parseInt(match[3],16)}}mix(v1,v2,a){return v1*(1-a)+v2*a}mixed(channel,x,y,noise){if(this.singleColor)return this.colors[0][channel];let blendFactor=this.rotate(x,y,this.clock*this.colorSpeed)*this.resPercentageNormalized*("organic"===this.settings.blending_mode?3.5:2);return this.mix(this.colors[0][channel],this.colors[1][channel],blendFactor*noise/2)}rotate(x,y,angle){let radians=Math.PI/180*angle,cos=Math.cos(radians),sin=Math.sin(radians);return cos*(x-this.cx)+sin*(y-this.cy)+this.cx}rafLoop(){if(this.inView){for(let x=0;x<this.resolution;x++)for(let y=0;y<this.resolution;y++){const noise=simplex.noise3D(x*this.aspectMod.x/this.resolution,y*this.aspectMod.y/this.resolution,this.clock/this.settings.speed);this.data[4*(x+y*this.resolution)]=this.mixed("r",x,y,noise),this.data[4*(x+y*this.resolution)+1]=this.mixed("g",x,y,noise),this.data[4*(x+y*this.resolution)+2]=this.mixed("b",x,y,noise),this.data[4*(x+y*this.resolution)+3]=265*noise}this.clock++,this.ctx.putImageData(this.imgdata,0,0)}requestAnimationFrame((()=>this.rafLoop()))}}!function(){const row=$scope.find("canvas")[0];row&&new NectarGradient(row)}()},initializeMorphingGradientsBackground=$scope=>{const data=$scope.data("morphing-gradients-background"),backendEl=$scope.find("> .cew_morphingGradientsBackground");(data||backendEl.length)&&(data&&$scope.prepend(data),($scope.find("> .cew_morphingGradientsBackground canvas")||data?.includes("canvas"))&&morphingGradientsBackgroundType2($scope),$scope.find(".interactive")&&($scope=>{const interBubble=$scope.find(".interactive");let curX=0,curY=0,targetX=0,targetY=0;const move=()=>{curX+=(targetX-curX)/20,curY+=(targetY-curY)/20,interBubble.css("transform",`translate(${Math.round(curX)}px, ${Math.round(curY)}px)`),requestAnimationFrame(move)};window.addEventListener("mousemove",(event=>{targetX=event.clientX,targetY=event.clientY})),move()})($scope))},scribbleType={circle:'<svg class="cew-scribble circle" viewBox="0 0 800 350" preserveAspectRatio="none"><path   transform="matrix(0.9791300296783447,0,0,0.9791300296783447,400,179)" stroke-linejoin="miter" fill-opacity="0" pathLength="1" stroke-miterlimit="4"  stroke-opacity="1"   d=" M253,-161 C253,-161 -284.78900146484375,-201.4600067138672 -376,-21 C-469,163 67.62300109863281,174.2100067138672 256,121 C564,34 250.82899475097656,-141.6929931640625 19.10700035095215,-116.93599700927734"></path></svg>',sketchUnderline:'<svg class="cew-scribble sketch-underline" viewBox="-158.17 -22.0172 289.2 53.8" preserveAspectRatio="none"><path  d="M -153.17 20.736 C -153.17 20.736 -135 -1 -118 -1 C -99 -1 -136.093 33.632 -117 26 C -105 18 -80 5 -74 1 C -51 -10 -63 9 -58.375 20.387 C -54.89 29.449 -26 3 -9 -1 C 14 -8 -17.599 24.918 1.917 22.827 C 21.434 20.735 37 3 49 0 C 62 -3 55.24 32.585 75 23 C 95 12 95 -1 114 -2"  pathLength="1"  fill="none"></path></svg>',basicUnderline:'<svg class="cew-scribble basicUnderline" role="presentation" viewBox="-400 -55 730 60" preserveAspectRatio="none"><path d="m -383.25 -6 c 55.25 -22 130.75 -33.5 293.25 -38 c 54.5 -0.5 195 -2.5 401 15" pathLength="1" fill="none"></path> </svg>',squiggleUnderline:'<svg class="cew-scribble squiggle-underline" viewBox="-347 -30.1947 694 96.19" preserveAspectRatio="none"><path  d="M-335,54 C-335,54 -171,-58 -194,-3 C-217,52 -224.1199951171875,73.552001953125 -127,11 C-68,-27 -137,50 -33,42 C31.43899917602539,37.042999267578125 147.14700317382812,-29.308000564575195 335,2"  pathLength="1"   fill="none"></path></svg>',squiggleUnderline2:'<svg class="cew-scribble squiggle-underline-2" viewBox="-320 -70.8161 640.4 59.82" preserveAspectRatio="none"><path   d="M-300,-56 C-50,-72 298,-65 300,-59 C332,-53 -239,-36 -255,-27 C-271,-18 -88,-24 91,-20"  pathLength="1" stroke-width="4.4444444444444" fill="none"></path></svg>'},initializeScribbleText=$scope=>{const{settings:settings={}}=$scope.data()||{};let type=$scope.data("scribble-type")||$scope.find("[data-scribble-type]").data("scribble-type");type&&$scope.find("i").each((function(){ScrollTrigger.create({trigger:this,start:"top 70%",onEnter:()=>{$(this).append(scribbleType[type])}})}));
1const animationType=settings?.["custom-text-animation"];if("type1"===animationType){const{"animation-type-1-start":start,"animation-type-1-end":end,"animation-type-1-scrub":scrub}=settings,text=$scope.find(".elementor-heading-title"),{chars:chars}=new SplitType(text,{types:"chars"});chars.forEach((el=>{el.innerHTML=`<span>${el.innerHTML}</span>`})),gsap.set(text,{opacity:"1"}),gsap.fromTo(chars,{opacity:0,"--rotation":"90deg","--translateZ":"0"},{delay:1,opacity:1,"--rotation":"0.01deg","--translateZ":"3vw",ease:"cubic-bezier(0.425, 0.005, 0, 1)",duration:1.1,stagger:.03,scrollTrigger:{trigger:text,start:start||"center 80%",end:end||"center 20%",scrub:"yes"===scrub&&2}})}else if("type2"===animationType){const{"animation-type-2-delay":delay}=settings,text=$scope.find(".elementor-heading-title"),{chars:chars}=new SplitType(text,{types:"lines, chars"});gsap.set(text,{opacity:"1"}),gsap.fromTo(chars,{y:"135%",skewY:"-20deg"},{y:"0%",skewY:"0deg",duration:.6,stagger:.03,ease:"Power4.easeOut",delay:delay||0,scrollTrigger:{trigger:text,start:"center 80%"}})}else if("type3"===animationType){const text=$scope.find(".elementor-heading-title"),{words:words}=new SplitType(text,{types:"lines, words"});gsap.fromTo(words,{y:"100%"},{y:"0%",duration:.8,stagger:.05,ease:"cubic-bezier(0.25,1,0.5,1)",delay:0,scrollTrigger:{trigger:text,start:"center 95%"}})}},initializeTabsAdditionalSettings=$scope=>{const{settings:settings}=$scope.data()||{},{enable_center_tabs:enable_center_tabs}=settings||{};if("yes"===enable_center_tabs){const container=document.querySelector(".e-n-tabs-heading"),elements=[...document.querySelectorAll(".e-n-tabs-heading > button")],widths=elements.map((el=>el.clientWidth)),heightButton=elements[0].clientHeight,heightContainer=container.clientHeight,rows=Math.floor(heightContainer/heightButton),elementsNumber=elements.length,elementInColumn=Math.floor(elementsNumber/rows);for(let i=1;i<=rows;i++){const end=elementInColumn*i-1,start=elementInColumn*i-elementInColumn,width=[...widths].slice(start,end).reduce(((i,x)=>i+x),0),margin=(container.clientWidth-width)/2-widths[start];elements[end].style.marginRight=margin+"px",elements[start].style.marginLeft=margin+"px"}}},initializeDotLottie=$scope=>
1{const $container=$scope.find(".cew-dot-lottie"),delay=$container.data("delay"),scroll=$container.data("scroll"),hover=$container.data("hover"),lottiePlayer=$container.find("dotlottie-player ")[0];if("yes"===hover){let canPlayAgain=!0;$container.on("mouseenter",(()=>{canPlayAgain&&(lottiePlayer.seek(0),lottiePlayer.play(),canPlayAgain=!1)})),lottiePlayer.addEventListener("complete",(()=>{canPlayAgain=!0}))}if("scroll"!==scroll)return;let observer=new IntersectionObserver(((entries,observer)=>{entries.forEach((entry=>{entry.isIntersecting&&(observer.unobserve(entry.target),setTimeout((()=>{lottiePlayer.play()}),1e3*delay))}))}),{threshold:.1}),target=$container[0];observer.observe(target)},initializeFaq=$scope=>{$scope.find(".animated_text").each(((_,elem)=>{gsap.fromTo($(elem).find("div"),{scale:0},{scale:1,ease:"elastic(1.005,0,995)",stagger:.02,transformOrigin:"bottom",scrollTrigger:{trigger:elem,start:"center 55%",end:"center 25%",ease:"expo.inOut",scrub:1}})})),$scope.on("click",".faq_item",(function(){const $this=$(this),$answerEl=$this.find(".faq_answer");$scope.find(".faq_item").not($this).find(".faq_answer").removeClass("faq_answer_open").slideUp(300),$answerEl.slideToggle(300).toggleClass("faq_answer_open")}))},initializeImageComparison=$scope=>{const $container=$scope.find(".cew_imageComparison");$scope.find(".slider").on("input",(function(e){$container.css("--position",e.target.value+"%")}))},initializeJob=$scope=>{$scope.find(".job_item").each((function(){$(this).find("button").on("click",(()=>{$(this).find(".job_dropdown").slideToggle(300)}))}))},initializeLoopSlider=async $scope=>{const{swiper:Swiper}=elementorFrontend.utils,slider=$scope.find(".cew_loopSlider"),speed=slider.data("speed"),reverseDirection=slider.data("reversedirection"),content=slider.find(".swiper-slide"),sumWidth=content.toArray().reduce(((total,el)=>total+el.offsetWidth),0),container=slider.find("> div"),containerWidth=container.width();if(console.log(sumWidth,containerWidth,content.toArray()),sumWidth>0&&sumWidth<containerWidth){const duplicateTimes=Math.ceil(containerWidth/sumWidth);Array.from({length:duplicateTimes-1}).forEach((()=>content.clone().appendTo(container)))}const swiperInstance=await new Swiper(slider,{loop:!0,speed:speed,slidesPerView:"auto",centeredSlides:!0,autoplay:{delay:0,disableOnInteraction:!1,reverseDirection:reverseDirection}});slider.on("touchstart mousedown",(()=>{swiperInstance.params.autoplay.delay=0,swiperInstance.autoplay.start()})),slider.on("touchend mouseup",(()=>{swiperInstance.params.autoplay.delay=originalDelay,swiperInstance.autoplay.start()}))};$(window).on("elementor/frontend/init",(()=>{class LottieHandler extends elementorModules.frontend.handlers.Base{onInit(){super.onInit(),this.initLottieAnimation(),this.attachEvents()}initLottieAnimation(){this.lottieAnimation=this.$element[0].querySelector("dotlottie-player"),this.frameStartFrom=this.getElementSettings("frame_start_from"),this.frameStartTo=this.getElementSettings("frame_start_to"),this.frameEndFrom=this.getElementSettings("frame_end_from"),this.frameEndTo=this.getElementSettings("frame_end_to"),this.direction="bottom",this.lottieAnimation.seek(this.frameStartFrom),this.lottieAnimation.play(),this.setupAnimationListeners(),this.prevScrollY=0}setupAnimationListeners(){let firstPlay=!0;this.lottieAnimation.addEventListener("ready",(()=>{this.frameStartFrom=this.getElementSettings("frame_start_from"),this.frameStartTo=this.getElementSettings("frame_start_to"),this.frameEndFrom=this.getElementSettings("frame_end_from"),this.frameEndTo=this.getElementSettings("frame_end_to")})),this.lottieAnimation.addEventListener("frame",(e=>{const currentFrame=e.detail.frame;firstPlay?this.frameStartTo<=currentFrame&&(this.lottieAnimation.pause(),firstPlay=!1):this.checkFrameAndPause(currentFrame)}))}checkFrameAndPause(currentFrame){"bottom"===this.direction?this.frameEndTo>=this.frameEndFrom?this.frameEndTo<=currentFrame&&this.lottieAnimation.pause():this.frameEndTo>=currentFrame&&this.lottieAnimation.pause():this.frameEndTo>=this.frameEndFrom?this.frameEndFrom>=currentFrame&&this.lottieAnimation.pause():this.frameEndFrom<=currentFrame&&this.lottieAnimation.pause()}attachEvents(){document.addEventListener("scroll",this.handleScroll.bind(this))}handleScroll(){const currentScrollY=window.scrollY,isNearTop=currentScrollY<25,wasNearTop=this.prevScrollY<25;this.updateAnimationDirection(isNearTop,wasNearTop),this.prevScrollY=currentScrollY}updateAnimationDirection(isNearTop,wasNearTop){const animationDirection=this.frameEndTo>=this.frameEndFrom?1:-1;if(isNearTop!==wasNearTop){this.direction=isNearTop?"top":"bottom";const newDirection=isNearTop?-animationDirection:animationDirection;this.lottieAnimation.setDirection(newDirection),console.log(newDirection,this.direction)}this.lottieAnimation.play()}}elementorFrontend.hooks.addAction("frontend/element_ready/cew-lottie-logo-id.default",($scope=>{elementorFrontend.elementsHandler.addHandler(LottieHandler,{$element:$scope})}))}));const initializePercentInCircle=$scope=>{const percent=$scope.find(".cew-percent-in-circle").data("percent"),offset=percent/100*580;console.log(offset,percent),gsap.to($scope.find(" .circle-two"),{strokeDashoffset:1300-offset,ease:"bounce.out",duration:3,scrollTrigger:{trigger:$scope.find(".circle-two"),start:"0% 70%",end:"100% 80%"}})},initializeQuote=$scope=>{ScrollTrigger.addEventListener("refreshInit",(()=>($scope=>{const el=$scope.find(".cew-quote"),bg=el.find("h3.bg");bg.html(bg.text());const{lines:lines}=new SplitType(bg,{types:"line"});gsap.fromTo(el,{scale:.9},{scale:1,scrollTrigger:{trigger:el,start:"0% 50%",end:"100% 50%",scrub:1}});const tl=gsap.timeline({scrollTrigger:{trigger:el,start:"0% 50%",end:"100% 50%",scrub:1}});
1lines.forEach((line=>{tl.fromTo(line,{clipPath:"polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%)"},{clipPath:"polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)"},"+=0")}))})($scope)))},animateOpacity=(element,opacityValue,mediaType)=>{1===opacityValue&&"lottie"===mediaType&&element.querySelector("dotlottie-player").seek(0),gsap.to(element,{opacity:opacityValue,duration:.3,zIndex:opacityValue?1:0,delay:opacityValue?0:.3,onComplete:function(){1===opacityValue&&"lottie"===mediaType&&element.querySelector("dotlottie-player").play()}})},initializeScrollingTabs=$scope=>{const $container=$scope.find(".cew_scrollingTabs"),$mediaChildren=$container.find(" > .media").children(),mediaType=$container.data("media-type");let currentIndex=0;$container.find(".tab").each((function(i){const triggerElement=this,isLast=i===$container.find(".tab").length-1,isFirst=0===i;"heading"!==mediaType?gsap.to($mediaChildren[i],{scrollTrigger:{trigger:triggerElement,start:"top 30%",end:"bottom 30%",onEnter:()=>animateOpacity($mediaChildren[i],1,mediaType),onLeave:()=>!isLast&&animateOpacity($mediaChildren[i],0,mediaType),onEnterBack:()=>animateOpacity($mediaChildren[i],1,mediaType),onLeaveBack:()=>!isFirst&&animateOpacity($mediaChildren[i],0,mediaType)}}):gsap.to($mediaChildren[i],{scrollTrigger:{trigger:triggerElement,start:"top center",end:"bottom center",onEnter:()=>{currentIndex=i,gsap.to($mediaChildren,{opacity:0,duration:.1,onComplete:()=>{i===currentIndex&&gsap.to($mediaChildren[i],{opacity:1,duration:.1})}})},onEnterBack:()=>{currentIndex=i,gsap.to($mediaChildren,{opacity:0,duration:.1,onComplete:()=>{i===currentIndex&&gsap.to($mediaChildren[i],{opacity:1,duration:.1})}})}}})}))},initializeScrollingText=$scope=>{const animateOpacity=(element,opacityValue,textElement)=>{1===opacityValue&&element.querySelector("dotlottie-player").seek(0),gsap.to(textElement,{color:opacityValue?"red":"#000",duration:.3,delay:opacityValue?0:.3}),gsap.to(element,{opacity:opacityValue,duration:.3,zIndex:opacityValue?1:0,delay:opacityValue?0:.3,onComplete:function(){1===opacityValue&&element.querySelector("dotlottie-player").play()}})},$container=$scope.find(".cew_scrollingText"),$mediaChildren=$container.find(" > .media").children();$container.find(".text").each((function(i){const triggerElement=this,isLast=i===$container.find(".text").length-1,isFirst=0===i;gsap.to($mediaChildren[i],{scrollTrigger:{trigger:triggerElement,start:"top center",end:"bottom center",onEnter:()=>{gsap.to(this,{opacity:1}),animateOpacity($mediaChildren[i],1,triggerElement)},onLeave:()=>!isLast&&animateOpacity($mediaChildren[i],0,triggerElement),onEnterBack:()=>animateOpacity($mediaChildren[i],1,triggerElement),onLeaveBack:()=>!isFirst&&animateOpacity($mediaChildren[i],0,triggerElement)}})}))},initializeTeamMember=$scope=>{const container=$scope.find(".cew_teamMember"),allContainers=$('[data-widget_type="cew-team-member-id.default"]'),indexCurrentContainer=allContainers.index($scope),popup=$scope.find(".cew_teamMember_popup"),contents=popup.find(".content > div >*"),image=popup.find(".image"),imageMask=popup.find(".imageMask"),cursor=$scope.find(".cursor"),nextMember=$scope.find(".nextMember"),prevMember=$scope.find(".prevMember"),openPopupClass=container.data("open-popup-class"),onPopstate=()=>{onClose()},cursorMove=e=>{gsap.to(cursor,{x:e.clientX,y:e.clientY,duration:.5})},onOpen=e=>{history.pushState({page:1},"openPopup","#openPopup"),window.addEventListener("popstate",onPopstate),gsap.to(popup,{duration:.5,x:0,ease:"power3.inOut"}),gsap.fromTo(contents,{y:100,opacity:0},{duration:.5,opacity:1,delay:.4,y:0,ease:"cubic-bezier(.2,1,.2,1)",stagger:.1}),gsap.fromTo(image,{scale:1.1},{scale:1,duration:15,ease:"cubic-bezier(.15,0,.7,1)"}),gsap.fromTo(imageMask,{scaleX:1},{scaleX:0,duration:.7,transformOrigin:"left",ease:"cubic-bezier(.25,1,.2,1)"}),gsap.to(cursor,{opacity:1,duration:.5}),cursorMove(e),window.addEventListener("mousemove",cursorMove)},onClose=e=>{gsap.to(popup,{duration:.5,x:"100%",ease:"power3.inOut"}),gsap.to(cursor,{opacity:0,duration:.5}),window.removeEventListener("popstate",onPopstate),window.removeEventListener("mousemove",curs
1orMove)};openPopupClass&&$(`.${openPopupClass}`).on("click",onOpen),container.on("click",onOpen),popup.on("click",onClose),nextMember.on("click",(e=>{onClose(e),$(allContainers[(indexCurrentContainer+1)%allContainers.length]).find(".cew_teamMember").click()})),prevMember.on("click",(e=>{onClose(e);const prevIndex=(indexCurrentContainer-1+allContainers.length)%allContainers.length;$(allContainers[prevIndex]).find(".cew_teamMember").click()}))},initializeTimeline=$scope=>{const stages=$scope.find(".stage .content"),setupAnimation=(element,fromVars,toVars)=>{gsap.fromTo(element,fromVars,{...toVars,opacity:1,scrollTrigger:{trigger:element,start:"center 80%",end:"center 20%"}})};stages.each(((index,element)=>{const reinitializeAnimation=()=>((el,index)=>{setupAnimation(el,{x:index%2?"-30%":"-80%",opacity:0},{x:"-50%"}),ScrollTrigger.matchMedia({"(max-width: 1024px)":()=>setupAnimation(el,{x:200,opacity:0},{x:0}),"(min-width: 1024px)":()=>setupAnimation(el,{x:index%2?"30%":"-30%",opacity:0},{x:"0%"})})})(element,index);reinitializeAnimation(),ScrollTrigger.addEventListener("refreshInit",reinitializeAnimation)}));const animateDots=()=>{const dotsContainer=$scope.find(".dots"),size=+dotsContainer.attr("data-size"),height=$scope.find(".cew_timeline").height(),numberOfDots=Math.floor(height/(6*size));dotsContainer.empty();for(let i=0;i<numberOfDots;i++)dotsContainer.append("<div></div>");dotsContainer.find("div").each(((_,dot)=>{gsap.timeline({scrollTrigger:createScrollTrigger(dot)}).to(dot,{scale:4}).to(dot,{scale:1}),gsap.timeline({scrollTrigger:createScrollTrigger(dot,95,5)}).to(dot,{opacity:1}).to(dot,{opacity:0},"+=1")}))},createScrollTrigger=(element,start=80,end=20)=>({trigger:element,start:`center ${start}%`,end:`center ${end}%`,scrub:2});animateDots(),ScrollTrigger.addEventListener("refreshInit",animateDots)}}(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.