"use strict";(()=>{function $(m,t,i){return Math.max(m,Math.min(t,i))}var C=class{constructor(){this.isRunning=!1,this.value=0,this.from=0,this.to=0,this.currentTime=0}advance(t){var i;if(!this.isRunning)return;let e=!1;if(this.duration&&this.easing){this.currentTime+=t;let s=$(0,this.currentTime/this.duration,1);e=s>=1;let o=e?1:this.easing(s);this.value=this.from+(this.to-this.from)*o}else this.lerp?(this.value=function(o,n,h,a){return function(S,w,T){return(1-T)*S+T*w}(o,n,1-Math.exp(-h*a))}(this.value,this.to,60*this.lerp,t),Math.round(this.value)===this.to&&(this.value=this.to,e=!0)):(this.value=this.to,e=!0);e&&this.stop(),(i=this.onUpdate)===null||i===void 0||i.call(this,this.value,e)}stop(){this.isRunning=!1}fromTo(t,i,{lerp:e,duration:s,easing:o,onStart:n,onUpdate:h}){this.from=this.value=t,this.to=i,this.lerp=e,this.duration=s,this.easing=o,this.currentTime=0,this.isRunning=!0,n==null||n(),this.onUpdate=h}},V=class{constructor(t,i,{autoResize:e=!0,debounce:s=250}={}){this.wrapper=t,this.content=i,this.width=0,this.height=0,this.scrollHeight=0,this.scrollWidth=0,this.resize=()=>{this.onWrapperResize(),this.onContentResize()},this.onWrapperResize=()=>{this.wrapper instanceof Window?(this.width=window.innerWidth,this.height=window.innerHeight):(this.width=this.wrapper.clientWidth,this.height=this.wrapper.clientHeight)},this.onContentResize=()=>{this.wrapper instanceof Window?(this.scrollHeight=this.content.scrollHeight,this.scrollWidth=this.content.scrollWidth):(this.scrollHeight=this.wrapper.scrollHeight,this.scrollWidth=this.wrapper.scrollWidth)},e&&(this.debouncedResize=function(n,h){let a;return function(...c){let S=this;clearTimeout(a),a=setTimeout(()=>{a=void 0,n.apply(S,c)},h)}}(this.resize,s),this.wrapper instanceof Window?window.addEventListener("resize",this.debouncedResize,!1):(this.wrapperResizeObserver=new ResizeObserver(this.debouncedResize),this.wrapperResizeObserver.observe(this.wrapper)),this.contentResizeObserver=new ResizeObserver(this.debouncedResize),this.contentResizeObserver.observe(this.content)),this.resize()}destroy(){var t,i;(t=this.wrapperResizeObserver)===null||t===void 0||t.disconnect(),(i=this.contentResizeObserver)===null||i===void 0||i.disconnect(),this.wrapper===window&&this.debouncedResize&&window.removeEventListener("resize",this.debouncedResize,!1)}get limit(){return{x:this.scrollWidth-this.width,y:this.scrollHeight-this.height}}},N=class{constructor(){this.events={}}emit(t,...i){var e;let s=this.events[t]||[];for(let o=0,n=s.length;o{var s;this.events[t]=(s=this.events[t])===null||s===void 0?void 0:s.filter(o=>i!==o)}}off(t,i){var e;this.events[t]=(e=this.events[t])===null||e===void 0?void 0:e.filter(s=>i!==s)}destroy(){this.events={}}},U=100/6,L={passive:!1},P=class{constructor(t,i={wheelMultiplier:1,touchMultiplier:1}){this.element=t,this.options=i,this.touchStart={x:0,y:0},this.lastDelta={x:0,y:0},this.window={width:0,height:0},this.emitter=new N,this.onTouchStart=e=>{let{clientX:s,clientY:o}=e.targetTouches?e.targetTouches[0]:e;this.touchStart.x=s,this.touchStart.y=o,this.lastDelta={x:0,y:0},this.emitter.emit("scroll",{deltaX:0,deltaY:0,event:e})},this.onTouchMove=e=>{let{clientX:s,clientY:o}=e.targetTouches?e.targetTouches[0]:e,n=-(s-this.touchStart.x)*this.options.touchMultiplier,h=-(o-this.touchStart.y)*this.options.touchMultiplier;this.touchStart.x=s,this.touchStart.y=o,this.lastDelta={x:n,y:h},this.emitter.emit("scroll",{deltaX:n,deltaY:h,event:e})},this.onTouchEnd=e=>{this.emitter.emit("scroll",{deltaX:this.lastDelta.x,deltaY:this.lastDelta.y,event:e})},this.onWheel=e=>{let{deltaX:s,deltaY:o,deltaMode:n}=e;s*=n===1?U:n===2?this.window.width:1,o*=n===1?U:n===2?this.window.height:1,s*=this.options.wheelMultiplier,o*=this.options.wheelMultiplier,this.emitter.emit("scroll",{deltaX:s,deltaY:o,event:e})},this.onWindowResize=()=>{this.window={width:window.innerWidth,height:window.innerHeight}},window.addEventListener("resize",this.onWindowResize,!1),this.onWindowResize(),this.element.addEventListener("wheel",this.onWheel,L),this.element.addEventListener("touchstart",this.onTouchStart,L),this.element.addEventListener("touchmove",this.onTouchMove,L),this.element.addEventListener("touchend",this.onTouchEnd,L)}on(t,i){return this.emitter.on(t,i)}destroy(){this.emitter.destroy(),window.removeEventListener("resize",this.onWindowResize,!1),this.element.removeEventListener("wheel",this.onWheel,L),this.element.removeEventListener("touchstart",this.onTouchStart,L),this.element.removeEventListener("touchmove",this.onTouchMove,L),this.element.removeEventListener("touchend",this.onTouchEnd,L)}},W=class{constructor({wrapper:t=window,content:i=document.documentElement,eventsTarget:e=t,smoothWheel:s=!0,syncTouch:o=!1,syncTouchLerp:n=.075,touchInertiaMultiplier:h=35,duration:a,easing:c=r=>Math.min(1,1.001-Math.pow(2,-10*r)),lerp:S=.1,infinite:w=!1,orientation:T="vertical",gestureOrientation:d="vertical",touchMultiplier:v=1,wheelMultiplier:_=1,autoResize:H=!0,prevent:f,virtualScroll:B,__experimental__naiveDimensions:y=!1}={}){this._isScrolling=!1,this._isStopped=!1,this._isLocked=!1,this._preventNextNativeScrollEvent=!1,this._resetVelocityTimeout=null,this.time=0,this.userData={},this.lastVelocity=0,this.velocity=0,this.direction=0,this.animate=new C,this.emitter=new N,this.onPointerDown=r=>{r.button===1&&this.reset()},this.onVirtualScroll=r=>{if(typeof this.options.virtualScroll=="function"&&this.options.virtualScroll(r)===!1)return;let{deltaX:p,deltaY:u,event:l}=r;if(this.emitter.emit("virtual-scroll",{deltaX:p,deltaY:u,event:l}),l.ctrlKey)return;let E=l.type.includes("touch"),M=l.type.includes("wheel");if(this.isTouching=l.type==="touchstart"||l.type==="touchmove",this.options.syncTouch&&E&&l.type==="touchstart"&&!this.isStopped&&!this.isLocked)return void this.reset();let R=p===0&&u===0,X=this.options.gestureOrientation==="vertical"&&u===0||this.options.gestureOrientation==="horizontal"&&p===0;if(R||X)return;let z=l.composedPath();z=z.slice(0,z.indexOf(this.rootElement));let x=this.options.prevent;if(z.find(g=>{var O,k,A,D,q;return g instanceof HTMLElement&&(typeof x=="function"&&(x==null?void 0:x(g))||((O=g.hasAttribute)===null||O===void 0?void 0:O.call(g,"data-lenis-prevent"))||E&&((k=g.hasAttribute)===null||k===void 0?void 0:k.call(g,"data-lenis-prevent-touch"))||M&&((A=g.hasAttribute)===null||A===void 0?void 0:A.call(g,"data-lenis-prevent-wheel"))||((D=g.classList)===null||D===void 0?void 0:D.contains("lenis"))&&!(!((q=g.classList)===null||q===void 0)&&q.contains("lenis-stopped")))}))return;if(this.isStopped||this.isLocked)return void l.preventDefault();if(!(this.options.syncTouch&&E||this.options.smoothWheel&&M))return this.isScrolling="native",void this.animate.stop();l.preventDefault();let b=u;this.options.gestureOrientation==="both"?b=Math.abs(u)>Math.abs(p)?u:p:this.options.gestureOrientation==="horizontal"&&(b=p);let j=E&&this.options.syncTouch,Y=E&&l.type==="touchend"&&Math.abs(b)>5;Y&&(b=this.velocity*this.options.touchInertiaMultiplier),this.scrollTo(this.targetScroll+b,Object.assign({programmatic:!1},j?{lerp:Y?this.options.syncTouchLerp:1}:{lerp:this.options.lerp,duration:this.options.duration,easing:this.options.easing}))},this.onNativeScroll=()=>{if(this._resetVelocityTimeout!==null&&(clearTimeout(this._resetVelocityTimeout),this._resetVelocityTimeout=null),this._preventNextNativeScrollEvent)this._preventNextNativeScrollEvent=!1;else if(this.isScrolling===!1||this.isScrolling==="native"){let r=this.animatedScroll;this.animatedScroll=this.targetScroll=this.actualScroll,this.lastVelocity=this.velocity,this.velocity=this.animatedScroll-r,this.direction=Math.sign(this.animatedScroll-r),this.isScrolling="native",this.emit(),this.velocity!==0&&(this._resetVelocityTimeout=setTimeout(()=>{this.lastVelocity=this.velocity,this.velocity=0,this.isScrolling=!1,this.emit()},400))}},window.lenisVersion="1.1.13",t&&t!==document.documentElement&&t!==document.body||(t=window),this.options={wrapper:t,content:i,eventsTarget:e,smoothWheel:s,syncTouch:o,syncTouchLerp:n,touchInertiaMultiplier:h,duration:a,easing:c,lerp:S,infinite:w,gestureOrientation:d,orientation:T,touchMultiplier:v,wheelMultiplier:_,autoResize:H,prevent:f,virtualScroll:B,__experimental__naiveDimensions:y},this.dimensions=new V(t,i,{autoResize:H}),this.updateClassName(),this.targetScroll=this.animatedScroll=this.actualScroll,this.options.wrapper.addEventListener("scroll",this.onNativeScroll,!1),this.options.wrapper.addEventListener("pointerdown",this.onPointerDown,!1),this.virtualScroll=new P(e,{touchMultiplier:v,wheelMultiplier:_}),this.virtualScroll.on("scroll",this.onVirtualScroll)}destroy(){this.emitter.destroy(),this.options.wrapper.removeEventListener("scroll",this.onNativeScroll,!1),this.options.wrapper.removeEventListener("pointerdown",this.onPointerDown,!1),this.virtualScroll.destroy(),this.dimensions.destroy(),this.cleanUpClassName()}on(t,i){return this.emitter.on(t,i)}off(t,i){return this.emitter.off(t,i)}setScroll(t){this.isHorizontal?this.rootElement.scrollLeft=t:this.rootElement.scrollTop=t}resize(){this.dimensions.resize(),this.animatedScroll=this.targetScroll=this.actualScroll,this.emit()}emit(){this.emitter.emit("scroll",this)}reset(){this.isLocked=!1,this.isScrolling=!1,this.animatedScroll=this.targetScroll=this.actualScroll,this.lastVelocity=this.velocity=0,this.animate.stop()}start(){this.isStopped&&(this.isStopped=!1,this.reset())}stop(){this.isStopped||(this.isStopped=!0,this.animate.stop(),this.reset())}raf(t){let i=t-(this.time||t);this.time=t,this.animate.advance(.001*i)}scrollTo(t,{offset:i=0,immediate:e=!1,lock:s=!1,duration:o=this.options.duration,easing:n=this.options.easing,lerp:h=this.options.lerp,onStart:a,onComplete:c,force:S=!1,programmatic:w=!0,userData:T}={}){if(!this.isStopped&&!this.isLocked||S){if(typeof t=="string"&&["top","left","start"].includes(t))t=0;else if(typeof t=="string"&&["bottom","right","end"].includes(t))t=this.limit;else{let d;if(typeof t=="string"?d=document.querySelector(t):t instanceof HTMLElement&&(t!=null&&t.nodeType)&&(d=t),d){if(this.options.wrapper!==window){let _=this.rootElement.getBoundingClientRect();i-=this.isHorizontal?_.left:_.top}let v=d.getBoundingClientRect();t=(this.isHorizontal?v.left:v.top)+this.animatedScroll}}if(typeof t=="number"){if(t+=i,t=Math.round(t),this.options.infinite?w&&(this.targetScroll=this.animatedScroll=this.scroll):t=$(0,t,this.limit),t===this.targetScroll)return a==null||a(this),void(c==null||c(this));if(this.userData=T!=null?T:{},e)return this.animatedScroll=this.targetScroll=t,this.setScroll(this.scroll),this.reset(),this.preventNextNativeScrollEvent(),this.emit(),c==null||c(this),void(this.userData={});w||(this.targetScroll=t),this.animate.fromTo(this.animatedScroll,t,{duration:o,easing:n,lerp:h,onStart:()=>{s&&(this.isLocked=!0),this.isScrolling="smooth",a==null||a(this)},onUpdate:(d,v)=>{this.isScrolling="smooth",this.lastVelocity=this.velocity,this.velocity=d-this.animatedScroll,this.direction=Math.sign(this.velocity),this.animatedScroll=d,this.setScroll(this.scroll),w&&(this.targetScroll=d),v||this.emit(),v&&(this.reset(),this.emit(),c==null||c(this),this.userData={},this.preventNextNativeScrollEvent())}})}}}preventNextNativeScrollEvent(){this._preventNextNativeScrollEvent=!0,requestAnimationFrame(()=>{this._preventNextNativeScrollEvent=!1})}get rootElement(){return this.options.wrapper===window?document.documentElement:this.options.wrapper}get limit(){return this.options.__experimental__naiveDimensions?this.isHorizontal?this.rootElement.scrollWidth-this.rootElement.clientWidth:this.rootElement.scrollHeight-this.rootElement.clientHeight:this.dimensions.limit[this.isHorizontal?"x":"y"]}get isHorizontal(){return this.options.orientation==="horizontal"}get actualScroll(){return this.isHorizontal?this.rootElement.scrollLeft:this.rootElement.scrollTop}get scroll(){return this.options.infinite?function(i,e){return(i%e+e)%e}(this.animatedScroll,this.limit):this.animatedScroll}get progress(){return this.limit===0?1:this.scroll/this.limit}get isScrolling(){return this._isScrolling}set isScrolling(t){this._isScrolling!==t&&(this._isScrolling=t,this.updateClassName())}get isStopped(){return this._isStopped}set isStopped(t){this._isStopped!==t&&(this._isStopped=t,this.updateClassName())}get isLocked(){return this._isLocked}set isLocked(t){this._isLocked!==t&&(this._isLocked=t,this.updateClassName())}get isSmooth(){return this.isScrolling==="smooth"}get className(){let t="lenis";return this.isStopped&&(t+=" lenis-stopped"),this.isLocked&&(t+=" lenis-locked"),this.isScrolling&&(t+=" lenis-scrolling"),this.isScrolling==="smooth"&&(t+=" lenis-smooth"),t}updateClassName(){this.cleanUpClassName(),this.rootElement.className=`${this.rootElement.className} ${this.className}`.trim()}cleanUpClassName(){this.rootElement.className=this.rootElement.className.replace(/lenis(-\w+)?/g,"").trim()}};function I(m,t){let i=new W({lerp:.1,wheelMultiplier:.8,gestureOrientation:"vertical"});return i.on("scroll",e=>{}),i.on("scroll",m.update),t.ticker.add(e=>{i.raf(e*1e3)}),t.ticker.lagSmoothing(),i}document.addEventListener("DOMContentLoaded",()=>{function m(){return window.innerWidth<=767}function t(){return window.innerWidth<=479}let i="back.out",e="elastic.out(1, 0.5)";I(ScrollTrigger,gsap);let s=document.querySelector("[hero-section]"),o=document.querySelectorAll("[float-icon]"),n=document.querySelectorAll("[dot-cover]"),h=document.querySelector("[capsule--section]"),a=document.querySelectorAll("[capsule-item]"),c=document.querySelector("[banner-cta--section]"),S=document.querySelectorAll("[ban-text]"),w=document.querySelectorAll("[ban-cta]");f("logo--section","logo-slide",{}),f("card--section","cards-slide",{}),f("speed--section","speed-slide",{}),gsap.timeline({scrollTrigger:{trigger:h,start:"top 70%"}}).from(a,{yPercent:-100,stagger:.2,autoAlpha:0,ease:e,duration:3}),n.forEach(y=>{let r=y.parentElement,p=r==null?void 0:r.querySelector("[map-hover-reveal]"),u=gsap.timeline({paused:!0});u.from(p,{yPercent:50,duration:.5,ease:i,autoAlpha:0}),y.addEventListener("mouseover",()=>{u.play(),y.addEventListener("mouseout",()=>{u.reverse()})})}),f("faq--section","faq-slide",{}),f("media--section","media-slide",{}),f("efficient--section","effi-slide",{}),f("state-section","state-item",{});let d=document.querySelector("[card-stack--section]"),v=document.querySelectorAll("[stack-card]");if(gsap.timeline({scrollTrigger:{trigger:d,start:"top 70%"}}).from(v,{yPercent:-50,stagger:.25,autoAlpha:0,ease:e,duration:3}),!m()){let l=function(){let{scrollWidth:M}=r;return-(M-window.innerWidth)};var B=l;let y=document.querySelector("[h-scroll--section]"),r=document.querySelector("[scroll-container]"),u=r.offsetWidth-window.innerWidth;gsap.timeline({scrollTrigger:{trigger:y,start:"top top",end:()=>`+=${l()*-1}`,scrub:1,pin:!0,invalidateOnRefresh:!0}}).to(r,{x:l})}gsap.timeline({scrollTrigger:{trigger:c,start:"top 70%",toggleActions:"play none none reverse"}}).from(S,{yPercent:-100,stagger:.5,autoAlpha:0,ease:i,duration:1.6}).from(w,{yPercent:-100,autoAlpha:0},1);function f(y,r,p={}){let{start:u="top 70%",y:l=50,stagger:E=.15,autoAlpha:M=0,markers:R=!1}=p;gsap.timeline({scrollTrigger:{trigger:`[${y}]`,start:u,markers:R,toggleActions:"play none none reverse"}}).from(`[${r}]`,{y:l,stagger:E,autoAlpha:M,ease:e,duration:1.5},0)}});})();