{"version":3,"file":"shared-lib.DzcSOxoe.mjs","names":["useRef","useState","_FramerAPI.useIsStaticRenderer"],"sources":["https:/framerusercontent.com/modules/ntucotbSG0AB4dGSITvC/KW5zW4gGA9zYqpNkPGBo/hOhXG3hYd.js","https:/framerusercontent.com/modules/P4udvJf6sb0a6gOZMLv4/syoMdBonoouxn8BGSne6/AmbientFX.js","https:/framerusercontent.com/modules/1TyNm4GgPh9iF3LSWn17/6GWNXR7O2vCwWNRH8T6s/siteMetadata.js"],"sourcesContent":["// Generated by Framer (c9c30df)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;DM Sans-regular\",\"GF;DM Sans-700\",\"GF;DM Sans-700italic\",\"GF;DM Sans-italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"DM Sans\",openType:true,source:\"google\",style:\"normal\",uiFamilyName:\"DM Sans\",url:\"https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxhS2f3ZGMZpg.woff2\",weight:\"400\"},{cssFamilyName:\"DM Sans\",openType:true,source:\"google\",style:\"normal\",uiFamilyName:\"DM Sans\",url:\"https://fonts.gstatic.com/s/dmsans/v17/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwARZthS2f3ZGMZpg.woff2\",weight:\"700\"},{cssFamilyName:\"DM Sans\",openType:true,source:\"google\",style:\"italic\",uiFamilyName:\"DM Sans\",url:\"https://fonts.gstatic.com/s/dmsans/v17/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat9uCm32RmYJpso5.woff2\",weight:\"700\"},{cssFamilyName:\"DM Sans\",openType:true,source:\"google\",style:\"italic\",uiFamilyName:\"DM Sans\",url:\"https://fonts.gstatic.com/s/dmsans/v17/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDW32RmYJpso5.woff2\",weight:\"400\"}]}];export const css=['.framer-UEk3f .framer-styles-preset-1so6bva:not(.rich-text-wrapper), .framer-UEk3f .framer-styles-preset-1so6bva.rich-text-wrapper p { --framer-font-family: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-family-bold: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-family-bold-italic: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-family-italic: \"DM Sans\", \"DM Sans Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv09\\' on, \\'cv11\\' on; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0em; --framer-line-height: 1.4em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-59be294b-c654-4d38-a0c9-aede037aa61a, #1b3340); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-UEk3f\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef,useState,startTransition}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import*as _FramerAPI from\"framer\";// ═══════════════════════════════════════════════════════════════════════════════\n// FRAMER API — safe access to useIsStaticRenderer (falls back on older versions)\n// ═══════════════════════════════════════════════════════════════════════════════\nconst useIsStaticRenderer=typeof _FramerAPI.useIsStaticRenderer===\"function\"?_FramerAPI.useIsStaticRenderer:()=>false;// ═══════════════════════════════════════════════════════════════════════════════\n// DRAWING FUNCTIONS — pure, stateless, hoisted outside the component\n// (Vercel: rendering-hoist-jsx, rerender-no-inline-components)\n// ═══════════════════════════════════════════════════════════════════════════════\n// 4 alpha buckets for dot twinkling — lets dots actually fade through 0\n// while keeping state changes at O(1) per frame (4 fills regardless of count).\nconst DOT_BUCKET_THRESHOLDS=[.18,.4,.6,.8,1.01];const DOT_BUCKET_ALPHAS=[.22,.45,.7,.95];function drawDots(ctx,w,h,t,density,speed,dotSize){const spacing=Math.max(12,Math.round(60-density*.5));const cols=Math.ceil(w/spacing)+1;const rows=Math.ceil(h/spacing)+1;const timeScaled=t*speed*.8;const TAU=Math.PI*2;// Iterate the grid once per bucket — 4 fills/frame regardless of density.\n// Dots with pulse < first threshold are skipped entirely → true opacity 0.\nfor(let b=0;b<4;b++){const lo=DOT_BUCKET_THRESHOLDS[b];const hi=DOT_BUCKET_THRESHOLDS[b+1];ctx.globalAlpha=DOT_BUCKET_ALPHAS[b];ctx.beginPath();for(let i=0;i<cols;i++){const xi=i*spacing;const iPhase=i*.35;for(let j=0;j<rows;j++){const pulse=.5+.5*Math.sin(timeScaled+iPhase+j*.65);if(pulse<lo||pulse>=hi)continue;const r=dotSize*(.45+.55*pulse);const yj=j*spacing;ctx.moveTo(xi+r,yj);ctx.arc(xi,yj,r,0,TAU);}}ctx.fill();}}function drawLines(ctx,w,h,t,density,speed){const count=Math.round(density*.3)+8;const cx0=w*.5;const cy0=h*.5;ctx.lineWidth=1;for(let i=0;i<count;i++){const seed=i*137.508;const angle=(seed+t*speed*8)*(Math.PI/180);const cx=cx0+Math.sin(seed*.01+t*speed*.15)*w*.4;const cy=cy0+Math.cos(seed*.013+t*speed*.12)*h*.4;const len=40+seed%80;const cosA=Math.cos(angle);const sinA=Math.sin(angle);ctx.globalAlpha=.15+.15*Math.sin(t*speed*.5+seed);ctx.beginPath();ctx.moveTo(cx-cosA*len,cy-sinA*len);ctx.lineTo(cx+cosA*len,cy+sinA*len);ctx.stroke();}}function drawWaves(ctx,w,h,t,density,speed){const waveCount=Math.round(density*.12)+4;ctx.lineWidth=1;for(let wave=0;wave<waveCount;wave++){const yBase=h/(waveCount+1)*(wave+1);const amp=20+wave*6;const freq=.008+wave*.002;const phase=wave*1.2;const timeA=t*speed*.6+phase;const timeB=t*speed*.4+phase*.7;ctx.globalAlpha=.12+.08*Math.sin(t*speed*.3+wave);ctx.beginPath();for(let x=0;x<=w;x+=3){const xFreq=x*freq;const y=yBase+Math.sin(xFreq+timeA)*amp+Math.sin(xFreq*2.3+timeB)*amp*.3;x===0?ctx.moveTo(x,y):ctx.lineTo(x,y);}ctx.stroke();}}function drawGrid(ctx,w,h,t,density,speed){const spacing=Math.max(20,Math.round(80-density*.6));const cols=Math.ceil(w/spacing)+2;const rows=Math.ceil(h/spacing)+2;const tSpeed=t*speed;ctx.lineWidth=.5;for(let i=0;i<cols;i++){const offset=Math.sin(tSpeed*.4+i*.3)*3;ctx.globalAlpha=.08+.06*Math.sin(tSpeed*.3+i*.5);ctx.beginPath();ctx.moveTo(i*spacing+offset,0);ctx.lineTo(i*spacing-offset,h);ctx.stroke();}for(let j=0;j<rows;j++){const offset=Math.sin(tSpeed*.35+j*.4)*3;ctx.globalAlpha=.08+.06*Math.cos(tSpeed*.3+j*.5);ctx.beginPath();ctx.moveTo(0,j*spacing+offset);ctx.lineTo(w,j*spacing-offset);ctx.stroke();}ctx.globalAlpha=.2;for(let i=0;i<cols;i++){const xOffset=Math.sin(tSpeed*.4+i*.3)*3;for(let j=0;j<rows;j++){ctx.beginPath();ctx.arc(i*spacing+xOffset,j*spacing+Math.sin(tSpeed*.35+j*.4)*3,1.2,0,Math.PI*2);ctx.fill();}}}// ─── Particles: per-instance state (no module mutation) ─────────────────────────\nfunction createParticleState(){return{items:[],w:0,h:0,count:0};}function ensureParticles(state,w,h,count){if(state.w===w&&state.h===h&&state.count===count)return;const items=[];for(let i=0;i<count;i++){items.push({x:Math.random()*w,y:Math.random()*h,vx:(Math.random()-.5)*.4,vy:(Math.random()-.5)*.4,r:1+Math.random()*1.5});}state.items=items;state.w=w;state.h=h;state.count=count;}function drawParticles(state,ctx,w,h,density,speed){const count=Math.round(density*.6)+20;ensureParticles(state,w,h,count);const items=state.items;const len=items.length;for(let i=0;i<len;i++){const p=items[i];p.x+=p.vx*speed;p.y+=p.vy*speed;if(p.x<0)p.x=w;else if(p.x>w)p.x=0;if(p.y<0)p.y=h;else if(p.y>h)p.y=0;}ctx.lineWidth=.5;for(let i=0;i<len;i++){const a=items[i];for(let j=i+1;j<len;j++){const b=items[j];const dx=a.x-b.x;const dy=a.y-b.y;const distSq=dx*dx+dy*dy;if(distSq<1e4){const dist=Math.sqrt(distSq);ctx.globalAlpha=(1-dist/100)*.15;ctx.beginPath();ctx.moveTo(a.x,a.y);ctx.lineTo(b.x,b.y);ctx.stroke();}}}ctx.globalAlpha=.5;for(let i=0;i<len;i++){const p=items[i];ctx.beginPath();ctx.arc(p.x,p.y,p.r,0,Math.PI*2);ctx.fill();}}// ═══════════════════════════════════════════════════════════════════════════════\n// COMPONENT\n// ═══════════════════════════════════════════════════════════════════════════════\n/**\n * Animated Background — canvas-based ambient patterns.\n *\n * v2.0 architecture:\n *   • Canvas setup runs ONCE per mount (no scroll-induced restart).\n *   • rAF loop is a separate effect — starts/stops without touching the canvas.\n *   • Settings flow through a ref so prop changes don't rebuild the closure.\n *   • IntersectionObserver pauses work when offscreen.\n *   • Canvas editor + static renderers get a single-frame preview.\n *\n * @framerDisableUnlink\n * @framerIntrinsicWidth 600\n * @framerIntrinsicHeight 400\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function AnimatedBackground(props){const{pattern,bgColor,color,density,speed,dotSize,pauseInEditor,style,children}=props;// ─── Refs (Vercel: rerender-use-ref-transient-values) ──────────────────────\nconst wrapperRef=useRef(null);const canvasRef=useRef(null);const animRef=useRef(0);// Lazy init for per-instance particle state (Vercel: rerender-lazy-state-init)\nconst particlesRef=useRef(null);if(particlesRef.current===null){particlesRef.current=createParticleState();}// Elapsed time preserved across effect restarts → smooth resume after pause\nconst elapsedRef=useRef(0);const lastTimeRef=useRef(0);// Live settings accessible from the long-lived draw closure\nconst settingsRef=useRef({pattern,color,density,speed,dotSize});settingsRef.current={pattern,color,density,speed,dotSize};// Bridge: setup effect writes, other effects read\nconst drawFrameRef=useRef(null);// ─── Render-context gates ──────────────────────────────────────────────────\nconst[isClient,setIsClient]=useState(false);useEffect(()=>{startTransition(()=>setIsClient(true));},[]);const isOnCanvas=RenderTarget.current()===RenderTarget.canvas;const isStatic=useIsStaticRenderer();// ─── Visibility gate (IntersectionObserver) ────────────────────────────────\n// Default true so animation starts immediately — observer will flip it off\n// once we confirm the element is outside the viewport.\nconst[isVisible,setIsVisible]=useState(true);useEffect(()=>{if(!isClient||isOnCanvas)return;const el=wrapperRef.current;if(!el||typeof IntersectionObserver===\"undefined\")return;const observer=new IntersectionObserver(([entry])=>{startTransition(()=>setIsVisible(entry.isIntersecting));},{rootMargin:\"200px\"});observer.observe(el);return()=>observer.disconnect();},[isClient,isOnCanvas]);// Animation policy — decouples canvas behavior from the static-render gate\n// (on canvas, useIsStaticRenderer() returns true, so we need this split)\nconst shouldAnimate=isOnCanvas?!pauseInEditor:!isStatic&&isVisible;// ─── Effect 1 — Canvas setup (mount-only, stable across the whole lifetime) ─\nuseEffect(()=>{if(!isClient)return;const c=canvasRef.current;if(!c)return;const ctx=c.getContext(\"2d\");if(!ctx)return;const dpr=Math.min(window.devicePixelRatio||1,2);const resizeCanvas=()=>{const rect=c.getBoundingClientRect();const w=Math.round(rect.width*dpr);const h=Math.round(rect.height*dpr);if(w>0&&h>0&&(c.width!==w||c.height!==h)){c.width=w;c.height=h;}};// Closure reads settings from ref, so it never goes stale and never\n// needs to be rebuilt (Vercel: advanced-use-latest equivalent)\nconst drawFrame=t=>{const w=c.width/dpr;const h=c.height/dpr;if(w<=0||h<=0)return;const s=settingsRef.current;ctx.setTransform(dpr,0,0,dpr,0,0);ctx.globalAlpha=1;ctx.clearRect(0,0,w,h);ctx.fillStyle=s.color;ctx.strokeStyle=s.color;switch(s.pattern){case\"dots\":drawDots(ctx,w,h,t,s.density,s.speed,s.dotSize);break;case\"lines\":drawLines(ctx,w,h,t,s.density,s.speed);break;case\"waves\":drawWaves(ctx,w,h,t,s.density,s.speed);break;case\"grid\":drawGrid(ctx,w,h,t,s.density,s.speed);break;case\"particles\":drawParticles(particlesRef.current,ctx,w,h,s.density,s.speed);break;}ctx.globalAlpha=1;};drawFrameRef.current=drawFrame;resizeCanvas();drawFrame(elapsedRef.current);const ro=new ResizeObserver(()=>{resizeCanvas();drawFrame(elapsedRef.current);});ro.observe(c);return()=>{ro.disconnect();drawFrameRef.current=null;};},[isClient]);// ─── Effect 2 — Static redraw on settings change (no rAF churn) ────────────\nuseEffect(()=>{if(!isClient||shouldAnimate)return;drawFrameRef.current?.(elapsedRef.current);},[isClient,shouldAnimate,pattern,color,density,speed,dotSize]);// ─── Effect 3 — rAF lifecycle (starts/stops only, no canvas touch) ─────────\nuseEffect(()=>{if(!isClient||!shouldAnimate)return;lastTimeRef.current=performance.now();const loop=()=>{const now=performance.now();const delta=(now-lastTimeRef.current)*.001;lastTimeRef.current=now;elapsedRef.current+=delta;drawFrameRef.current?.(elapsedRef.current);animRef.current=requestAnimationFrame(loop);};animRef.current=requestAnimationFrame(loop);return()=>{if(animRef.current)cancelAnimationFrame(animRef.current);};},[isClient,shouldAnimate]);// ─── Render ────────────────────────────────────────────────────────────────\nreturn /*#__PURE__*/_jsxs(\"div\",{ref:wrapperRef,style:{position:\"relative\",width:\"100%\",height:\"100%\",// Fallbacks so the Framer preview panel has enough room to show\n// the pattern when no parent sizing is provided. Matches the\n// @framerIntrinsicWidth / @framerIntrinsicHeight annotations.\nminWidth:600,minHeight:400,overflow:\"hidden\",background:bgColor,...style},children:[/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,\"aria-hidden\":\"true\",style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",pointerEvents:\"none\",display:\"block\",zIndex:0}}),children&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",zIndex:1,width:\"100%\",height:\"100%\"},children:children})]});}AnimatedBackground.displayName=\"Animated Background\";AnimatedBackground.defaultProps={pattern:\"dots\",bgColor:\"#0a0a0a\",color:\"rgba(255, 255, 255, 0.35)\",density:50,speed:1,dotSize:1.2,pauseInEditor:true};// ═══════════════════════════════════════════════════════════════════════════════\n// PROPERTY CONTROLS\n// ═══════════════════════════════════════════════════════════════════════════════\naddPropertyControls(AnimatedBackground,{pattern:{type:ControlType.Enum,title:\"Pattern\",defaultValue:\"dots\",options:[\"dots\",\"lines\",\"waves\",\"grid\",\"particles\"],optionTitles:[\"Dots\",\"Lines\",\"Waves\",\"Grid\",\"Particles\"],displaySegmentedControl:false,description:\"Which ambient pattern to render behind your content.\"},bgColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#0a0a0a\",description:\"Solid color drawn behind the animated pattern.\"},color:{type:ControlType.Color,title:\"Pattern Color\",defaultValue:\"rgba(255, 255, 255, 0.35)\",description:\"Color used for dots, lines, and particles. Use low alpha for subtle patterns.\"},density:{type:ControlType.Number,title:\"Density\",defaultValue:50,min:0,max:100,step:1,displayStepper:false,description:\"How many elements are drawn. Higher = denser.\"},speed:{type:ControlType.Number,title:\"Speed\",defaultValue:1,min:0,max:5,step:.1,displayStepper:false,description:\"Animation speed multiplier. 0 freezes the pattern.\"},dotSize:{type:ControlType.Number,title:\"Dot Size\",defaultValue:1.2,min:.5,max:6,step:.1,displayStepper:false,hidden:props=>props.pattern!==\"dots\",description:\"Radius of each dot, in pixels.\"},pauseInEditor:{type:ControlType.Boolean,title:\"Editor\",defaultValue:true,enabledTitle:\"Static\",disabledTitle:\"Live\",description:\"Freeze the animation on the canvas to keep the editor snappy.\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"AnimatedBackground\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"* @framerIntrinsicWidth 600\",\"framerIntrinsicHeight\":\"400\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\",\"framerSupportedLayoutWidth\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./AmbientFX.map","// Generated by Framer (4cfe617)\nexport default function metadata(params,activeLocale){return{description:\"Enter India and win revenue faster with Innovalus, your single accountable India Execution Office across strategy, regulatory structuring, sales and delivery.\",favicon:\"https://framerusercontent.com/assets/qVBUvKsxT9JJquwIdd69oTnDo.png\",robots:\"max-image-preview:large\",title:\"Innovalus | India Entry, Built for Revenue\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}