{"version":3,"file":"shared-lib.CSNxifFu.mjs","names":["useRef","useRef"],"sources":["https:/framerusercontent.com/modules/aZv0IBlbtH8fqAvXTwno/s0RxNfCLzRyk5RgEeddt/Sparkles_prod.js","https:/ga.jspm.io/npm:lenis@1.1.9/dist/lenis.mjs","https:/framerusercontent.com/modules/Yppqt3Cs3Y8TZqvASnXl/PGrowqBrgWCViHduGfsA/SmoothScroll_Prod.js","https:/framerusercontent.com/modules/cTB7t71sipdxKcFH1w0T/ClD3CBqKUfRViO019wFs/siteMetadata.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";// CSS variable token and color parsing (hex/rgba/var())\nconst cssVariableRegex=/var\\s*\\(\\s*(--[\\w-]+)(?:\\s*,\\s*((?:[^)(]+|\\((?:[^)(]+|\\([^)(]*\\))*\\))*))?\\s*\\)/;function extractDefaultValue(cssVar){if(!cssVar||!cssVar.startsWith(\"var(\"))return cssVar;const match=cssVariableRegex.exec(cssVar);if(!match)return cssVar;const fallback=(match[2]||\"\").trim();if(fallback.startsWith(\"var(\"))return extractDefaultValue(fallback);return fallback||cssVar;}function resolveTokenColor(input){if(!input||typeof input!==\"string\")return input||\"\";if(!input.startsWith(\"var(\"))return input;return extractDefaultValue(input);}function parseColorToRgba(input){if(!input)return{r:0,g:0,b:0,a:1};const str=input.trim();// Handle rgba() format\nconst rgbaMatch=str.match(/rgba?\\(\\s*([\\d.]+)\\s*,\\s*([\\d.]+)\\s*,\\s*([\\d.]+)\\s*(?:,\\s*([\\d.]+)\\s*)?\\)/i);if(rgbaMatch){const r=Math.max(0,Math.min(255,parseFloat(rgbaMatch[1])))/255;const g=Math.max(0,Math.min(255,parseFloat(rgbaMatch[2])))/255;const b=Math.max(0,Math.min(255,parseFloat(rgbaMatch[3])))/255;const a=rgbaMatch[4]!==undefined?Math.max(0,Math.min(1,parseFloat(rgbaMatch[4]))):1;return{r,g,b,a};}// Handle hex formats\nconst hex=str.replace(/^#/,\"\");if(hex.length===8){return{r:parseInt(hex.slice(0,2),16)/255,g:parseInt(hex.slice(2,4),16)/255,b:parseInt(hex.slice(4,6),16)/255,a:parseInt(hex.slice(6,8),16)/255};}if(hex.length===6){return{r:parseInt(hex.slice(0,2),16)/255,g:parseInt(hex.slice(2,4),16)/255,b:parseInt(hex.slice(4,6),16)/255,a:1};}if(hex.length===4){return{r:parseInt(hex[0]+hex[0],16)/255,g:parseInt(hex[1]+hex[1],16)/255,b:parseInt(hex[2]+hex[2],16)/255,a:parseInt(hex[3]+hex[3],16)/255};}if(hex.length===3){return{r:parseInt(hex[0]+hex[0],16)/255,g:parseInt(hex[1]+hex[1],16)/255,b:parseInt(hex[2]+hex[2],16)/255,a:1};}return{r:0,g:0,b:0,a:1};}function rgbaToCanvasColor(rgba){const r=Math.round(rgba.r*255);const g=Math.round(rgba.g*255);const b=Math.round(rgba.b*255);if(rgba.a===1){return`rgb(${r}, ${g}, ${b})`;}return`rgba(${r}, ${g}, ${b}, ${rgba.a})`;}const DEFAULTS={background:\"#000000\",particleColor:\"#ffffff\",particleDensity:.5,minSize:.5,maxSize:1,speed:.5,particleSpeed:.5};// Mapping function: UI 0.1..1 → internal 0.5..12\nfunction mapFlickerUiToInternal(ui){const clamped=Math.max(.1,Math.min(1,ui));const t=(clamped-.1)/.9;return .5+t*11.5// Maps to 0.5..12\n;}// Mapping function: UI 0.1..1 → internal 5..60\nfunction mapDensityUiToInternal(ui){const clamped=Math.max(.1,Math.min(1,ui));const t=(clamped-.1)/.9;return 5+t*55// Maps to 5..60\n;}/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 600\n * @framerIntrinsicHeight 400\n * @framerDisableUnlink\n */export default function Sparkles({preview=false,background=DEFAULTS.background,particleColor=DEFAULTS.particleColor,particleDensity=DEFAULTS.particleDensity,minSize=DEFAULTS.minSize,maxSize=DEFAULTS.maxSize,speed=DEFAULTS.speed,particleSpeed=DEFAULTS.particleSpeed,style}){const canvasRef=useRef(null);const containerRef=useRef(null);const zoomProbeRef=useRef(null);const particlesRef=useRef([]);const animationRef=useRef(null);const lastFrameTimeRef=useRef(0)// Track last frame time for delta-time\n;const lastRef=useRef({w:0,h:0,aspect:0,ts:0});// Initialize particles\nconst initParticles=(width,height)=>{const particles=[];const area=width*height;const mappedDensity=mapDensityUiToInternal(particleDensity);const count=Math.floor(area/1e4*mappedDensity);const velocityMultiplier=particleSpeed*.5// Maps 0-1 to 0-0.5\n;for(let i=0;i<count;i++){particles.push({x:Math.random()*width,y:Math.random()*height,vx:(Math.random()-.5)*velocityMultiplier,vy:(Math.random()-.5)*velocityMultiplier,size:minSize+Math.random()*(maxSize-minSize),opacity:Math.random(),opacityVel:(Math.random()-.5)*.04});}particlesRef.current=particles;};// Main canvas setup and animation\nuseEffect(()=>{const canvas=canvasRef.current;const container=containerRef.current;if(!canvas||!container)return;const ctx=canvas.getContext(\"2d\");if(!ctx)return;const resize=()=>{const dpr=window.devicePixelRatio||1;const width=container.clientWidth||container.offsetWidth||1;const height=container.clientHeight||container.offsetHeight||1;canvas.width=width*dpr;canvas.height=height*dpr;canvas.style.width=`${width}px`;canvas.style.height=`${height}px`;ctx.scale(dpr,dpr);initParticles(width,height);};resize();const isCanvasMode=RenderTarget.current()===RenderTarget.canvas;const shouldAnimate=!isCanvasMode||preview;const mappedSpeed=mapFlickerUiToInternal(speed);// Parse colors with token and opacity support\nconst resolvedBackground=resolveTokenColor(background);const backgroundRgba=parseColorToRgba(resolvedBackground);const backgroundColor=rgbaToCanvasColor(backgroundRgba);const resolvedParticleColor=resolveTokenColor(particleColor);const particleColorRgba=parseColorToRgba(resolvedParticleColor);const particleColorBase=rgbaToCanvasColor({...particleColorRgba,a:1})// Base color without alpha\n;const animate=currentTime=>{if(!canvas||!ctx)return;// Calculate delta time (time since last frame) for frame-rate independent animation\n// Target 60fps (16.67ms) as baseline\nconst deltaTime=lastFrameTimeRef.current===0?1:Math.min((currentTime-lastFrameTimeRef.current)/16.67,3)// Cap at 3x to prevent huge jumps\n;lastFrameTimeRef.current=currentTime;const width=canvas.width/(window.devicePixelRatio||1);const height=canvas.height/(window.devicePixelRatio||1);// Clear canvas completely first, then draw background\nctx.clearRect(0,0,width,height);ctx.fillStyle=backgroundColor;ctx.fillRect(0,0,width,height);// Update and draw particles\nconst particles=particlesRef.current;const particleCount=particles.length;const baseAlpha=particleColorRgba.a;// Set fill style once for all particles (performance optimization)\nctx.fillStyle=particleColorBase;for(let i=0;i<particleCount;i++){const particle=particles[i];// Update position\nif(shouldAnimate){particle.x+=particle.vx*deltaTime;particle.y+=particle.vy*deltaTime;// Wrap around edges\nif(particle.x<0)particle.x=width;if(particle.x>width)particle.x=0;if(particle.y<0)particle.y=height;if(particle.y>height)particle.y=0;// Update opacity (flicker effect) - frame-rate independent\nparticle.opacity+=particle.opacityVel*mappedSpeed*.5*deltaTime;// Bounce opacity at boundaries and clamp\nif(particle.opacity<=.1){particle.opacity=.1;particle.opacityVel=Math.abs(particle.opacityVel)// Make positive\n;}else if(particle.opacity>=1){particle.opacity=1;particle.opacityVel=-Math.abs(particle.opacityVel)// Make negative\n;}}// Draw particle with combined opacity (particleColor alpha * particle opacity)\nctx.globalAlpha=baseAlpha*particle.opacity;ctx.beginPath();ctx.arc(particle.x,particle.y,particle.size,0,Math.PI*2);ctx.fill();}ctx.globalAlpha=1;if(shouldAnimate){animationRef.current=requestAnimationFrame(animate);}};// Reset frame time and start animation\nlastFrameTimeRef.current=0;animationRef.current=requestAnimationFrame(animate);// Canvas resize detection for Framer Canvas\nlet resizeRafId=0;if(RenderTarget.current()===RenderTarget.canvas){const TICK_MS=250;const EPSPECT=.001;const tick=now=>{const container=containerRef.current;if(container){const cw=container.clientWidth||container.offsetWidth||1;const ch=container.clientHeight||container.offsetHeight||1;const aspect=cw/ch;const timeOk=!lastRef.current.ts||(now||performance.now())-lastRef.current.ts>=TICK_MS;const aspectChanged=Math.abs(aspect-lastRef.current.aspect)>EPSPECT;const sizeChanged=Math.abs(cw-lastRef.current.w)>1||Math.abs(ch-lastRef.current.h)>1;if(timeOk&&(aspectChanged||sizeChanged)){lastRef.current={w:cw,h:ch,aspect,ts:now||performance.now()};resize();if(!shouldAnimate){// Render one frame in canvas mode when preview is off\nconst particles=particlesRef.current;const particleCount=particles.length;const baseAlpha=particleColorRgba.a;ctx.clearRect(0,0,cw,ch);ctx.fillStyle=backgroundColor;ctx.fillRect(0,0,cw,ch);ctx.fillStyle=particleColorBase;for(let i=0;i<particleCount;i++){const particle=particles[i];ctx.globalAlpha=baseAlpha*particle.opacity;ctx.beginPath();ctx.arc(particle.x,particle.y,particle.size,0,Math.PI*2);ctx.fill();}ctx.globalAlpha=1;}}}resizeRafId=requestAnimationFrame(tick);};resizeRafId=requestAnimationFrame(tick);}else{window.addEventListener(\"resize\",resize);}return()=>{if(animationRef.current){cancelAnimationFrame(animationRef.current);}if(resizeRafId){cancelAnimationFrame(resizeRafId);}window.removeEventListener(\"resize\",resize);};},[background,particleColor,particleDensity,minSize,maxSize,speed,particleSpeed,preview]);// Force render when colors change in canvas mode\nuseEffect(()=>{const canvas=canvasRef.current;if(!canvas)return;const isCanvasMode=RenderTarget.current()===RenderTarget.canvas;const shouldAnimate=!isCanvasMode||preview;if(isCanvasMode&&!shouldAnimate){const ctx=canvas.getContext(\"2d\");if(!ctx)return;// Parse colors\nconst resolvedBackground=resolveTokenColor(background);const backgroundRgba=parseColorToRgba(resolvedBackground);const backgroundColor=rgbaToCanvasColor(backgroundRgba);const resolvedParticleColor=resolveTokenColor(particleColor);const particleColorRgba=parseColorToRgba(resolvedParticleColor);const particleColorBase=rgbaToCanvasColor({...particleColorRgba,a:1});const width=canvas.width/(window.devicePixelRatio||1);const height=canvas.height/(window.devicePixelRatio||1);// Force render with new colors\nconst particles=particlesRef.current;const particleCount=particles.length;const baseAlpha=particleColorRgba.a;ctx.clearRect(0,0,width,height);ctx.fillStyle=backgroundColor;ctx.fillRect(0,0,width,height);ctx.fillStyle=particleColorBase;for(let i=0;i<particleCount;i++){const particle=particles[i];ctx.globalAlpha=baseAlpha*particle.opacity;ctx.beginPath();ctx.arc(particle.x,particle.y,particle.size,0,Math.PI*2);ctx.fill();}ctx.globalAlpha=1;}},[background,particleColor,preview]);return /*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:{...style,position:\"relative\",width:\"100%\",height:\"100%\",overflow:\"hidden\"},children:[/*#__PURE__*/_jsx(\"div\",{ref:zoomProbeRef,style:{position:\"absolute\",width:20,height:20,opacity:0,pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",display:\"block\"}})]});}addPropertyControls(Sparkles,{preview:{type:ControlType.Boolean,title:\"Preview\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},particleDensity:{type:ControlType.Number,title:\"Density\",min:.1,max:1,step:.05,defaultValue:DEFAULTS.particleDensity},minSize:{type:ControlType.Number,title:\"Min Size\",min:.5,max:10,step:.5,defaultValue:DEFAULTS.minSize,unit:\"px\"},maxSize:{type:ControlType.Number,title:\"Max Size\",min:.5,max:15,step:.5,defaultValue:DEFAULTS.maxSize,unit:\"px\"},speed:{type:ControlType.Number,title:\"Flicker\",min:.1,max:1,step:.05,defaultValue:DEFAULTS.speed},particleSpeed:{type:ControlType.Number,title:\"Speed\",min:0,max:1,step:.1,defaultValue:DEFAULTS.particleSpeed},particleColor:{type:ControlType.Color,title:\"Sparkle\",defaultValue:DEFAULTS.particleColor},background:{type:ControlType.Color,title:\"Background\",defaultValue:DEFAULTS.background,description:\"More components at [Framer University](https://frameruni.link/cc).\"}});Sparkles.displayName=\"Sparkles\";\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Sparkles\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"400\",\"framerIntrinsicWidth\":\"600\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Sparkles_prod.map","function clamp(t,i,e){return Math.max(t,Math.min(i,e))}class Animate{constructor(){this.isRunning=!1,this.value=0,this.from=0,this.to=0,this.duration=0,this.currentTime=0}advance(t){var i;if(!this.isRunning)return;let e=!1;if(this.duration&&this.easing){this.currentTime+=t;const i=clamp(0,this.currentTime/this.duration,1);e=i>=1;const s=e?1:this.easing(i);this.value=this.from+(this.to-this.from)*s}else this.lerp?(this.value=function damp(t,i,e,s){return function lerp(t,i,e){return(1-e)*t+e*i}(t,i,1-Math.exp(-e*s))}(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(),null===(i=this.onUpdate)||void 0===i||i.call(this,this.value,e)}stop(){this.isRunning=!1}fromTo(t,i,{lerp:e,duration:s,easing:o,onStart:n,onUpdate:l}){this.from=this.value=t,this.to=i,this.lerp=e,this.duration=s,this.easing=o,this.currentTime=0,this.isRunning=!0,null==n||n(),this.onUpdate=l}}class Dimensions{constructor({wrapper:t,content:i,autoResize:e=!0,debounce:s=250}={}){this.width=0,this.height=0,this.scrollWidth=0,this.scrollHeight=0,this.resize=()=>{this.onWrapperResize(),this.onContentResize()},this.onWrapperResize=()=>{this.wrapper===window?(this.width=window.innerWidth,this.height=window.innerHeight):this.wrapper instanceof HTMLElement&&(this.width=this.wrapper.clientWidth,this.height=this.wrapper.clientHeight)},this.onContentResize=()=>{this.wrapper===window?(this.scrollHeight=this.content.scrollHeight,this.scrollWidth=this.content.scrollWidth):this.wrapper instanceof HTMLElement&&(this.scrollHeight=this.wrapper.scrollHeight,this.scrollWidth=this.wrapper.scrollWidth)},this.wrapper=t,this.content=i,e&&(this.debouncedResize=function debounce(t,i){let e;return function(){let s=arguments,o=this;clearTimeout(e),e=setTimeout((function(){t.apply(o,s)}),i)}}(this.resize,s),this.wrapper===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;null===(t=this.wrapperResizeObserver)||void 0===t||t.disconnect(),null===(i=this.contentResizeObserver)||void 0===i||i.disconnect(),window.removeEventListener(\"resize\",this.debouncedResize,!1)}get limit(){return{x:this.scrollWidth-this.width,y:this.scrollHeight-this.height}}}class Emitter{constructor(){this.events={}}emit(t,...i){let e=this.events[t]||[];for(let t=0,s=e.length;t<s;t++)e[t](...i)}on(t,i){var e;return(null===(e=this.events[t])||void 0===e?void 0:e.push(i))||(this.events[t]=[i]),()=>{var e;this.events[t]=null===(e=this.events[t])||void 0===e?void 0:e.filter((t=>i!==t))}}off(t,i){var e;this.events[t]=null===(e=this.events[t])||void 0===e?void 0:e.filter((t=>i!==t))}destroy(){this.events={}}}const t=100/6;class VirtualScroll{constructor(i,{wheelMultiplier:e=1,touchMultiplier:s=1}){this.lastDelta={x:0,y:0},this.windowWidth=0,this.windowHeight=0,this.onTouchStart=t=>{const{clientX:i,clientY:e}=t.targetTouches?t.targetTouches[0]:t;this.touchStart.x=i,this.touchStart.y=e,this.lastDelta={x:0,y:0},this.emitter.emit(\"scroll\",{deltaX:0,deltaY:0,event:t})},this.onTouchMove=t=>{var i,e,s,o;const{clientX:n,clientY:l}=t.targetTouches?t.targetTouches[0]:t,r=-(n-(null!==(e=null===(i=this.touchStart)||void 0===i?void 0:i.x)&&void 0!==e?e:0))*this.touchMultiplier,h=-(l-(null!==(o=null===(s=this.touchStart)||void 0===s?void 0:s.y)&&void 0!==o?o:0))*this.touchMultiplier;this.touchStart.x=n,this.touchStart.y=l,this.lastDelta={x:r,y:h},this.emitter.emit(\"scroll\",{deltaX:r,deltaY:h,event:t})},this.onTouchEnd=t=>{this.emitter.emit(\"scroll\",{deltaX:this.lastDelta.x,deltaY:this.lastDelta.y,event:t})},this.onWheel=i=>{let{deltaX:e,deltaY:s,deltaMode:o}=i;e*=1===o?t:2===o?this.windowWidth:1,s*=1===o?t:2===o?this.windowHeight:1,e*=this.wheelMultiplier,s*=this.wheelMultiplier,this.emitter.emit(\"scroll\",{deltaX:e,deltaY:s,event:i})},this.onWindowResize=()=>{this.windowWidth=window.innerWidth,this.windowHeight=window.innerHeight},this.element=i,this.wheelMultiplier=e,this.touchMultiplier=s,this.touchStart={x:null,y:null},this.emitter=new Emitter,window.addEventListener(\"resize\",this.onWindowResize,!1),this.onWindowResize(),this.element.addEventListener(\"wheel\",this.onWheel,{passive:!1}),this.element.addEventListener(\"touchstart\",this.onTouchStart,{passive:!1}),this.element.addEventListener(\"touchmove\",this.onTouchMove,{passive:!1}),this.element.addEventListener(\"touchend\",this.onTouchEnd,{passive:!1})}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),this.element.removeEventListener(\"touchstart\",this.onTouchStart),this.element.removeEventListener(\"touchmove\",this.onTouchMove),this.element.removeEventListener(\"touchend\",this.onTouchEnd)}}class Lenis{constructor({wrapper:t=window,content:i=document.documentElement,wheelEventsTarget:e=t,eventsTarget:s=e,smoothWheel:o=!0,syncTouch:n=!1,syncTouchLerp:l=.075,touchInertiaMultiplier:r=35,duration:h,easing:a=(t=>Math.min(1,1.001-Math.pow(2,-10*t))),lerp:c=.1,infinite:d=!1,orientation:u=\"vertical\",gestureOrientation:p=\"vertical\",touchMultiplier:m=1,wheelMultiplier:v=1,autoResize:g=!0,prevent:w,virtualScroll:S,__experimental__naiveDimensions:f=!1}={}){this.__isScrolling=!1,this.__isStopped=!1,this.__isLocked=!1,this.userData={},this.lastVelocity=0,this.velocity=0,this.direction=0,this.onPointerDown=t=>{1===t.button&&this.reset()},this.onVirtualScroll=t=>{if(\"function\"==typeof this.options.virtualScroll&&!1===this.options.virtualScroll(t))return;const{deltaX:i,deltaY:e,event:s}=t;if(this.emitter.emit(\"virtual-scroll\",{deltaX:i,deltaY:e,event:s}),s.ctrlKey)return;const o=s.type.includes(\"touch\"),n=s.type.includes(\"wheel\");this.isTouching=\"touchstart\"===s.type||\"touchmove\"===s.type;if(this.options.syncTouch&&o&&\"touchstart\"===s.type&&!this.isStopped&&!this.isLocked)return void this.reset();const l=0===i&&0===e,r=\"vertical\"===this.options.gestureOrientation&&0===e||\"horizontal\"===this.options.gestureOrientation&&0===i;if(l||r)return;let h=s.composedPath();h=h.slice(0,h.indexOf(this.rootElement));const a=this.options.prevent;if(h.find((t=>{var i,e,s,l,r;return t instanceof Element&&(\"function\"==typeof a&&(null==a?void 0:a(t))||(null===(i=t.hasAttribute)||void 0===i?void 0:i.call(t,\"data-lenis-prevent\"))||o&&(null===(e=t.hasAttribute)||void 0===e?void 0:e.call(t,\"data-lenis-prevent-touch\"))||n&&(null===(s=t.hasAttribute)||void 0===s?void 0:s.call(t,\"data-lenis-prevent-wheel\"))||(null===(l=t.classList)||void 0===l?void 0:l.contains(\"lenis\"))&&!(null===(r=t.classList)||void 0===r?void 0:r.contains(\"lenis-stopped\")))})))return;if(this.isStopped||this.isLocked)return void s.preventDefault();if(!(this.options.syncTouch&&o||this.options.smoothWheel&&n))return this.isScrolling=\"native\",void this.animate.stop();s.preventDefault();let c=e;\"both\"===this.options.gestureOrientation?c=Math.abs(e)>Math.abs(i)?e:i:\"horizontal\"===this.options.gestureOrientation&&(c=i);const d=o&&this.options.syncTouch,u=o&&\"touchend\"===s.type&&Math.abs(c)>5;u&&(c=this.velocity*this.options.touchInertiaMultiplier),this.scrollTo(this.targetScroll+c,Object.assign({programmatic:!1},d?{lerp:u?this.options.syncTouchLerp:1}:{lerp:this.options.lerp,duration:this.options.duration,easing:this.options.easing}))},this.onNativeScroll=()=>{if(clearTimeout(this.__resetVelocityTimeout),delete this.__resetVelocityTimeout,this.__preventNextNativeScrollEvent)delete this.__preventNextNativeScrollEvent;else if(!1===this.isScrolling||\"native\"===this.isScrolling){const t=this.animatedScroll;this.animatedScroll=this.targetScroll=this.actualScroll,this.lastVelocity=this.velocity,this.velocity=this.animatedScroll-t,this.direction=Math.sign(this.animatedScroll-t),this.isScrolling=\"native\",this.emit(),0!==this.velocity&&(this.__resetVelocityTimeout=setTimeout((()=>{this.lastVelocity=this.velocity,this.velocity=0,this.isScrolling=!1,this.emit()}),400))}},window.lenisVersion=\"1.1.9\",t&&t!==document.documentElement&&t!==document.body||(t=window),this.options={wrapper:t,content:i,wheelEventsTarget:e,eventsTarget:s,smoothWheel:o,syncTouch:n,syncTouchLerp:l,touchInertiaMultiplier:r,duration:h,easing:a,lerp:c,infinite:d,gestureOrientation:p,orientation:u,touchMultiplier:m,wheelMultiplier:v,autoResize:g,prevent:w,virtualScroll:S,__experimental__naiveDimensions:f},this.animate=new Animate,this.emitter=new Emitter,this.dimensions=new Dimensions({wrapper:t,content:i,autoResize:g}),this.updateClassName(),this.userData={},this.time=0,this.velocity=this.lastVelocity=0,this.isLocked=!1,this.isStopped=!1,this.isScrolling=!1,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 VirtualScroll(s,{touchMultiplier:m,wheelMultiplier:v}),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()}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){const 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:l=this.options.lerp,onStart:r,onComplete:h,force:a=!1,programmatic:c=!0,userData:d={}}={}){if(!this.isStopped&&!this.isLocked||a){if(\"string\"==typeof t&&[\"top\",\"left\",\"start\"].includes(t))t=0;else if(\"string\"==typeof t&&[\"bottom\",\"right\",\"end\"].includes(t))t=this.limit;else{let e;if(\"string\"==typeof t?e=document.querySelector(t):t instanceof HTMLElement&&(null==t?void 0:t.nodeType)&&(e=t),e){if(this.options.wrapper!==window){const t=this.rootElement.getBoundingClientRect();i-=this.isHorizontal?t.left:t.top}const s=e.getBoundingClientRect();t=(this.isHorizontal?s.left:s.top)+this.animatedScroll}}if(\"number\"==typeof t&&(t+=i,t=Math.round(t),this.options.infinite?c&&(this.targetScroll=this.animatedScroll=this.scroll):t=clamp(0,t,this.limit),t!==this.targetScroll)){if(this.userData=d,e)return this.animatedScroll=this.targetScroll=t,this.setScroll(this.scroll),this.reset(),this.preventNextNativeScrollEvent(),this.emit(),null==h||h(this),void(this.userData={});c||(this.targetScroll=t),this.animate.fromTo(this.animatedScroll,t,{duration:o,easing:n,lerp:l,onStart:()=>{s&&(this.isLocked=!0),this.isScrolling=\"smooth\",null==r||r(this)},onUpdate:(t,i)=>{this.isScrolling=\"smooth\",this.lastVelocity=this.velocity,this.velocity=t-this.animatedScroll,this.direction=Math.sign(this.velocity),this.animatedScroll=t,this.setScroll(this.scroll),c&&(this.targetScroll=t),i||this.emit(),i&&(this.reset(),this.emit(),null==h||h(this),this.userData={},this.preventNextNativeScrollEvent())}})}}}preventNextNativeScrollEvent(){this.__preventNextNativeScrollEvent=!0,requestAnimationFrame((()=>{delete this.__preventNextNativeScrollEvent}))}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\"horizontal\"===this.options.orientation}get actualScroll(){return this.isHorizontal?this.rootElement.scrollLeft:this.rootElement.scrollTop}get scroll(){return this.options.infinite?function modulo(t,i){return(t%i+i)%i}(this.animatedScroll,this.limit):this.animatedScroll}get progress(){return 0===this.limit?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\"smooth\"===this.isScrolling}get className(){let t=\"lenis\";return this.isStopped&&(t+=\" lenis-stopped\"),this.isLocked&&(t+=\" lenis-locked\"),this.isScrolling&&(t+=\" lenis-scrolling\"),\"smooth\"===this.isScrolling&&(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()}}export{Lenis as default};\n//# sourceMappingURL=lenis.mjs.map\n","import{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,withCSS}from\"framer\";import Lenis from\"lenis\";import{useEffect,useRef}from\"react\";function SmoothScrollComponent(props){const{intensity}=props;const lenis=useRef(null);useEffect(()=>{if(lenis.current){try{lenis.current.scrollTo(0,{immediate:true});}catch(error){console.error(\"Error scrolling to top:\",error);}}},[lenis]);// Watch for stop scroll elements\nuseEffect(()=>{const checkForStopScroll=()=>{try{const stopScrollElement=document.querySelector(\"[data-frameruni-stop-scroll]\");const htmlElement=document.documentElement;const hasHiddenOverflow=htmlElement&&htmlElement.style&&htmlElement.style.overflow===\"hidden\";if(lenis.current){if(stopScrollElement||hasHiddenOverflow){lenis.current.stop();}else{lenis.current.start();}}}catch(error){console.error(\"Error in checkForStopScroll:\",error);}};// Initial check\ncheckForStopScroll();// Set up observers\nlet stopScrollObserver;let htmlStyleObserver;try{stopScrollObserver=new MutationObserver(checkForStopScroll);htmlStyleObserver=new MutationObserver(checkForStopScroll);// Observe document for data-frameruni-stop-scroll attribute\nif(document&&document.documentElement){stopScrollObserver.observe(document.documentElement,{childList:true,subtree:true,attributes:true,attributeFilter:[\"data-frameruni-stop-scroll\"]});// Observe only the HTML element for style changes\nhtmlStyleObserver.observe(document.documentElement,{attributes:true,attributeFilter:[\"style\"]});}}catch(error){console.error(\"Error setting up observers:\",error);}return()=>{try{if(stopScrollObserver)stopScrollObserver.disconnect();if(htmlStyleObserver)htmlStyleObserver.disconnect();}catch(error){console.error(\"Error disconnecting observers:\",error);}};},[]);useEffect(()=>{try{if(!document)return;const allElements=document.getElementsByTagName(\"*\");for(let i=0;i<allElements.length;i++){const element=allElements[i];if(!element)continue;try{const computedStyle=window.getComputedStyle(element);if(computedStyle&&computedStyle.getPropertyValue(\"overflow\")===\"auto\"){element.setAttribute(\"data-lenis-prevent\",\"true\");}}catch(styleError){console.error(\"Error getting computed style:\",styleError);}}}catch(error){console.error(\"Error in overflow detection:\",error);}},[]);useEffect(()=>{try{if(typeof Lenis!==\"function\"){console.error(\"Lenis is not available\");return;}lenis.current=new Lenis({duration:(intensity||10)/10});const raf=time=>{if(lenis.current){try{lenis.current.raf(time);requestAnimationFrame(raf);}catch(error){console.error(\"Error in animation frame:\",error);}}};const animationId=requestAnimationFrame(raf);return()=>{cancelAnimationFrame(animationId);if(lenis.current){try{lenis.current.destroy();lenis.current=null;}catch(error){console.error(\"Error destroying Lenis:\",error);}}};}catch(error){console.error(\"Error initializing Lenis:\",error);return()=>{};}},[intensity]);//https://github.com/darkroomengineering/lenis?tab=readme-ov-file#anchor-links\nuseEffect(()=>{try{if(!document||!lenis.current)return;// Get all anchor links and store click handlers with their targets\nconst anchorLinksData=Array.from(document.querySelectorAll(\"a[href]\")||[]).filter(element=>{if(!element)return false;const anchor=element;if(!anchor.href)return false;// Only handle internal anchor links\nconst isInternalLink=anchor.href.startsWith(window.location.origin)||anchor.href.startsWith(\"./\")||anchor.href.startsWith(\"/\");const hasHash=anchor.href.includes(\"#\");return isInternalLink&&hasHash;}).map(anchor=>{try{const anchorElement=anchor;const href=anchorElement.href.includes(\"#\")?`#${anchorElement.href.split(\"#\").pop()}`:\"\";const decodedHref=href?decodeURIComponent(href):\"\";let scrollMargin=0;try{if(decodedHref){const targetElement=document.querySelector(decodedHref);if(targetElement){const marginStyle=window.getComputedStyle(targetElement).scrollMarginTop;scrollMargin=marginStyle?parseInt(marginStyle)||0:0;}}}catch(targetError){console.error(\"Error finding target element:\",targetError);}return{href,scrollMargin,anchorElement:anchorElement};}catch(anchorError){console.error(\"Error processing anchor:\",anchorError);return null;}}).filter(Boolean);const handleClick=(e,href,scrollMargin)=>{try{if(e&&e.preventDefault)e.preventDefault();if(lenis.current&&href){lenis.current.scrollTo(href,{offset:-(scrollMargin||0)});}}catch(error){console.error(\"Error in anchor click handler:\",error);}};const handlers=anchorLinksData.map(({href,scrollMargin})=>e=>handleClick(e,href,scrollMargin));anchorLinksData.forEach(({anchorElement},index)=>{if(anchorElement&&handlers[index]){anchorElement.addEventListener(\"click\",handlers[index]);}});return()=>{anchorLinksData.forEach(({anchorElement},index)=>{if(anchorElement&&handlers[index]){anchorElement.removeEventListener(\"click\",handlers[index]);}});};}catch(error){console.error(\"Error setting up anchor links:\",error);return()=>{};}},[lenis]);return /*#__PURE__*/_jsx(\"div\",{style:props.style});}/**\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n *\n * @framerDisableUnlink\n */const SmoothScroll=withCSS(SmoothScrollComponent,[\"html.lenis { height: auto; }\",\".lenis.lenis-smooth { scroll-behavior: auto !important; }\",\".lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }\",\".lenis.lenis-stopped { overflow: hidden; }\",\".lenis.lenis-scrolling iframe { pointer-events: none; }\"],\"\");export default SmoothScroll;SmoothScroll.displayName=\"Smooth Scroll\";addPropertyControls(SmoothScroll,{intensity:{title:\"Intensity\",type:ControlType.Number,defaultValue:10,min:0,description:\"More components at [Framer University](https://frameruni.link/cc).\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"SmoothScroll\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"auto\",\"framerDisableUnlink\":\"\",\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SmoothScroll_Prod.map","// Generated by Framer (27dd866)\nexport default function metadata(params,activeLocale){return{favicon:\"https://framerusercontent.com/assets/kpEIw8CkHsdDbvRuKFUbczBac.png\",robots:\"max-image-preview:large\",title:\"Root\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}