{"version":3,"file":"script_main.DacPf-qs.mjs","names":["useId","addPropertyOverrides","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","addPropertyOverrides","CTA","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","sharedStyle.className","sharedStyle1.className","sharedStyle2.className","className","shaderConfig","RichText","shaderConfig1","sharedStyle.css","sharedStyle1.css","sharedStyle2.css","sharedStyle.fonts","sharedStyle1.fonts","sharedStyle2.fonts","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","React.forwardRef","useRef","React.useId","Image1","RichText","Logo","serializationHash","variantClassNames","matchVariant","React.useContext","React.useMemo","humanReadableVariantMap","React.Fragment","getProps","React.forwardRef","useRef","React.useId","Nav","Footer2","BuyButton","useRef","React.useId","PropertyOverrides","React.createElement","HeaderAndFooter","Framer.PageRoot","Framer.lazy","Framer.useCurrentRoute","Framer.useLocaleInfo","Framer.useRouter","React.Fragment","React.memo","React.useCallback","React.useEffect","React.useRef","React.useState","React.useLayoutEffect","Framer.LazyValue","Framer.GracefullyDegradingErrorBoundary","Framer.PageEffectsProvider","Framer.patchRoutesForABTesting","Framer.inferInitialRouteFromPath","Framer.yieldToMain","React.startTransition","Framer.ErrorPlaceholder","React.Suspense","React.lazy"],"sources":["https:/framerusercontent.com/modules/TS5bPiMUGtjrWMUlvKp9/Lbun5KUVn1DOq0iJPMKK/TextShimmer_Prod.js","https:/framerusercontent.com/modules/j8tt3ulZeEr1kOV8S0Oc/DehYMJfruWxPhB30uc3t/nm_Q0C1Nc.js","https:/framerusercontent.com/modules/VHx6h9GDKMSkp9munUQE/iuO6cUEY1gVzApkGCZgp/LogoGradient.js","https:/framerusercontent.com/modules/8jq3HexDzziMSWJC98ko/5KJvWh0Z3RMD4USzMqas/QkhnH1gxg.js","https:/framerusercontent.com/modules/cQUNC5UoLjGBiopILCtM/gk9cmhnp9S30zy2OI7mx/cpQZsWQbB.js","https:/framerusercontent.com/modules/7kEZB3lPhDEIV9OEQrV9/h44YWa7dU8L7Ar3iFjEO/tuf17Ho1v.js","https:/framerusercontent.com/modules/1XzrFgPFPFiBi4P1XReF/S6XZHKI9CGXAJghDp1Gh/wsItWLJf2.js","framer:toplevel/main"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useId}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * @framerIntrinsicWidth 400\n * @framerIntrinsicHeight 200\n *\n * @framerDisableUnlink\n *\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function TextShimmer({font,content,color,shimmer,size,speed,userSelect,rotation,delay,tag,direction}){const Tag=tag;// Stable, deterministic ID (same on server + client) → no hydration mismatch.\n// useId() returns values like \":r0:\" which aren't valid in CSS selectors /\n// animation names, so strip the colons to make it CSS-safe.\nconst uid=useId().replace(/:/g,\"\");const className=`text-shimmer-${uid}`;const keyframesName=`shimmer-${uid}`;const backgroundSize=`200% 200%`;const speedFormatted=11-speed;const gradientFirst=50-size*(50-20)/100;const gradientLast=50+size*(80-50)/100;const animationDuration=speedFormatted+delay;// Calculate keyframes positions\nconst startPos=direction===\"left\"?\"-100%\":\"200%\";const endPos=direction===\"left\"?\"200%\":\"-100%\";// Build the CSS once per render. Rendered inline as a <style> tag below so it\n// exists during SSR and works on first paint — no useEffect, no document.head.\nconst css=`\n        @keyframes ${keyframesName} {\n            0%, ${delay/animationDuration*100}% {\n                background-position: ${startPos};\n            }\n            100% {\n                background-position: ${endPos};\n            }\n        }\n        .${className} {\n            background: linear-gradient(\n                ${rotation}deg,\n                transparent 0%,\n                transparent ${gradientFirst}%,\n                ${shimmer} 50%,\n                transparent ${gradientLast}%,\n                transparent 100%\n            );\n            -webkit-background-size: ${backgroundSize};\n            -moz-background-size: ${backgroundSize};\n            background-size: ${backgroundSize};\n            -webkit-background-clip: text;\n            -moz-background-clip: text;\n            background-clip: text;\n            background-repeat: no-repeat;\n            animation: ${keyframesName} ${animationDuration}s linear infinite;\n        }\n    `;return /*#__PURE__*/_jsxs(\"div\",{style:{userSelect:userSelect?\"auto\":\"none\",position:\"relative\"},children:[/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:css}}),/*#__PURE__*/_jsx(Tag,{style:{...font,color,marginBlockStart:\"0px\",marginBlockEnd:\"0px\"},children:content}),/*#__PURE__*/_jsx(Tag,{\"aria-hidden\":\"true\",className:className,style:{...font,color:\"transparent\",position:\"absolute\",top:0,left:0,right:0,bottom:0,zIndex:1,marginBlockStart:\"0px\",marginBlockEnd:\"0px\",pointerEvents:\"none\"},children:content})]});}TextShimmer.displayName=\"Text Shimmer\";addPropertyControls(TextShimmer,{font:{type:ControlType.Font,title:\"Font\",defaultValue:\"Inter\",controls:\"extended\"},content:{type:ControlType.String,title:\"Content\",defaultValue:\"Learn Framer With Framer University\"},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#FFFFFF1A\"},shimmer:{type:ControlType.Color,title:\"Shimmer\",defaultValue:\"#ffffff\"},size:{type:ControlType.Number,title:\"Size\",defaultValue:30,step:1,max:100,min:1},speed:{type:ControlType.Number,title:\"Speed\",defaultValue:5,max:10,min:1,step:1},direction:{type:ControlType.Enum,title:\"Direction\",defaultValue:\"left\",options:[\"left\",\"right\"],optionTitles:[\"Left\",\"Right\"],displaySegmentedControl:true,segmentedControlDirection:\"horizontal\",optionIcons:[\"direction-left\",\"direction-right\"]},userSelect:{title:\"User Select\",type:ControlType.Boolean,defaultValue:false},rotation:{type:ControlType.Number,title:\"Rotation\",defaultValue:90,min:45,unit:\"\\xb0\",max:135,step:1},delay:{type:ControlType.Number,title:\"Delay\",defaultValue:0,min:0,max:10,step:.1},tag:{type:ControlType.Enum,title:\"Tag\",defaultValue:\"p\",displaySegmentedControl:true,segmentedControlDirection:\"horizontal\",options:[\"h1\",\"h2\",\"h3\",\"p\"],optionTitles:[\"H1\",\"H2\",\"H3\",\"P\"],description:\"More components at [Framer University](https://frameruni.link/cc).\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"TextShimmer\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"*\",\"framerSupportedLayoutWidth\":\"any\",\"framerIntrinsicWidth\":\"400\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any\",\"framerIntrinsicHeight\":\"200\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TextShimmer_Prod.map","// Generated by Framer (39331b4)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,Link,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import TextShimmer from\"https://framerusercontent.com/modules/TS5bPiMUGtjrWMUlvKp9/Lbun5KUVn1DOq0iJPMKK/TextShimmer_Prod.js\";const TextShimmerFonts=getFonts(TextShimmer);const enabledGestures={LkJ9XT5Uf:{hover:true}};const serializationHash=\"framer-npDxn\";const variantClassNames={LkJ9XT5Uf:\"framer-v-11bgivn\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const LL390QfgK=undefined;const mPhZ0qa3X=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({buyLink,height,id,title,width,...props})=>{return{...props,LL390QfgK:buyLink??props.LL390QfgK,mPhZ0qa3X:title??props.mPhZ0qa3X??\"Claim It - $99\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,mPhZ0qa3X,LL390QfgK,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"LkJ9XT5Uf\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(Link,{href:LL390QfgK,motionChild:true,nodeId:\"LkJ9XT5Uf\",openInNewTab:true,scopeId:\"nm_Q0C1Nc\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-11bgivn\",className,classNames)} framer-17ecrtm`,\"data-border\":true,\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"LkJ9XT5Uf\",ref:refBinding,style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"rgba(255, 255, 255, 0.1)\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"var(--token-28aea7f4-558d-467f-97ba-a61135fd0a26, rgba(15, 15, 15, 0.85))\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10,boxShadow:\"0px 2px 2px 0px rgba(0, 0, 0, 0.15)\",...style},variants:{\"LkJ9XT5Uf-hover\":{\"--border-color\":\"rgba(255, 255, 255, 0.15)\"}},...addPropertyOverrides({\"LkJ9XT5Uf-hover\":{\"data-framer-name\":undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-fhuczp-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"FHF9_x4n7-container\",nodeId:\"FHF9_x4n7\",rendersWithMotion:true,scopeId:\"nm_Q0C1Nc\",style:{scale:1},variants:{\"LkJ9XT5Uf-hover\":{scale:1.05}},children:/*#__PURE__*/_jsx(TextShimmer,{color:\"rgba(255, 255, 255, 0.8)\",content:mPhZ0qa3X,delay:4,direction:\"right\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"-0.02em\",lineHeight:\"26px\"},height:\"100%\",id:\"FHF9_x4n7\",layoutId:\"FHF9_x4n7\",rotation:135,shimmer:\"rgb(255, 255, 255)\",size:24,speed:10,tag:\"p\",userSelect:false,width:\"100%\"})})})})})})})});});const css=[\".framer-npDxn.framer-17ecrtm, .framer-npDxn .framer-17ecrtm { display: block; }\",\".framer-npDxn.framer-11bgivn { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: 38px; justify-content: center; overflow: visible; padding: 4px 25px 4px 25px; position: relative; text-decoration: none; width: 142px; }\",\".framer-npDxn .framer-fhuczp-container { flex: none; height: auto; position: relative; width: auto; }\",'.framer-npDxn[data-border=\"true\"]::after, .framer-npDxn [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; corner-shape: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 38\n * @framerIntrinsicWidth 142\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"D1sKr0upC\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"mPhZ0qa3X\":\"title\",\"LL390QfgK\":\"buyLink\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const Framernm_Q0C1Nc=withCSS(Component,css,\"framer-npDxn\");export default Framernm_Q0C1Nc;Framernm_Q0C1Nc.displayName=\"Buy Button\";Framernm_Q0C1Nc.defaultProps={height:38,width:142};addPropertyControls(Framernm_Q0C1Nc,{mPhZ0qa3X:{defaultValue:\"Claim It - $99\",displayTextArea:false,title:\"Title\",type:ControlType.String},onmPhZ0qa3XChange:{changes:\"mPhZ0qa3X\",type:ControlType.ChangeHandler},LL390QfgK:{title:\"Buy Link\",type:ControlType.Link}});addFonts(Framernm_Q0C1Nc,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/UjlFhCnUjxhNfep4oYBPqnEssyo.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"}]},...TextShimmerFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framernm_Q0C1Nc\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"142\",\"framerVariables\":\"{\\\"mPhZ0qa3X\\\":\\\"title\\\",\\\"LL390QfgK\\\":\\\"buyLink\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"D1sKr0upC\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerColorSyntax\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicHeight\":\"38\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./nm_Q0C1Nc.map","import{defineShader,ControlType}from\"framer\";export default defineShader({title:\"Logo Gradient\",heightmapSource:\"image\",mouse:\"disabledByDefault\",buffers:[{name:\"push\",resolutionScale:.5,format:\"rgba16f\",fragment:`\nvoid main() {\n    float aspect = u_resolution.x / u_resolution.y;\n    vec2 aspectFix = vec2(aspect, 1.0);\n\n    vec2 texel = 1.0 / u_resolution;\n\n    // --- Read own previous frame + neighbours ---\n    vec4 prev = texture(u_push_buffer, v_uv);\n    vec2 c  = prev.xy;\n    vec2 nl = texture(u_push_buffer, v_uv - vec2(texel.x, 0.0)).xy;\n    vec2 nr = texture(u_push_buffer, v_uv + vec2(texel.x, 0.0)).xy;\n    vec2 nd = texture(u_push_buffer, v_uv - vec2(0.0, texel.y)).xy;\n    vec2 nu = texture(u_push_buffer, v_uv + vec2(0.0, texel.y)).xy;\n\n    vec2 blurred = (nl + nr + nd + nu) * 0.25;\n    vec2 field = mix(c, blurred, 0.12);\n\n    float r = clamp(u_deltaTime * 60.0, 0.0, 3.0);\n    float decay = pow(mix(0.86, 0.985, clamp(u_mousePersist, 0.0, 1.0)), r);\n    field *= decay;\n\n    // --- Smooth the cursor velocity (EMA) ---\n    // Raw .zw arrives in uneven per-frame pulses at low speeds; the EMA\n    // spreads each pulse over a few frames so the deposit reads as a\n    // continuous stream. ~0.25 blend per 60fps frame, frame-rate independent.\n    vec2 rawVel = u_mousePosition.zw * aspectFix * u_mouseHover;\n    float smoothK = 1.0 - pow(0.75, r); //or smoothK = 1. for original no smooth feeling\n    vec2 mouseVel = mix(prev.zw, rawVel, smoothK);\n\n    float speed    = length(mouseVel);\n    float brush    = max(u_mouseRadius * 0.1, 0.001);\n\n    float speedPerSec = speed / max(u_deltaTime, 1e-4);\n    float moving      = 1.0 - exp(-speedPerSec * 0.5);\n\n    vec2 dir       = speed > 1e-5 ? mouseVel / speed : vec2(1.0, 0.0);\n    vec2 ortho     = vec2(-dir.y, dir.x);\n\n    vec2 toMouse   = (v_uv - u_mousePosition.xy) * aspectFix;\n    //toMouse       -= dir * brush * 0.2 * moving;\n\n    float along    = dot(toMouse, dir);\n    float across   = dot(toMouse, ortho);\n    float ra       = brush * (1.0 + u_mouseStretch * moving);\n    float rb       = brush;\n    float d2       = (along * along) / (ra * ra) + (across * across) / (rb * rb);\n    float falloff  = exp(-d2);\n\n    field += mouseVel * falloff * (u_mousePush * 0.1) * u_mouseHover;\n\n    field = clamp(field, -1.0, 1.0);\n\n    fragColor = vec4(field, mouseVel);\n}\n`}],fragment:`\n// === CONSTANTS ===\nconst float GOLDEN_ANGLE = 2.3999632;\nconst float TAU = 6.28318530;\n\n// === PCG hash ===\nuvec3 hash3(uvec3 v) {\n    v = v * 1664525u + 1013904223u;\n    v.x += v.y * v.z;\n    v.y += v.z * v.x;\n    v.z += v.x * v.y;\n    v ^= v >> 16u;\n    v.x += v.y * v.z;\n    v.y += v.z * v.x;\n    v.z += v.x * v.y;\n    return v;\n}\n\nvec3 seedRandom(float seedVal) {\n    uvec3 s = uvec3(\n        floatBitsToUint(seedVal),\n        floatBitsToUint(seedVal * 1.5 + 7.31),\n        floatBitsToUint(seedVal * 2.7 + 13.37)\n    );\n    s = hash3(s);\n    return vec3(s) / float(0xFFFFFFFFu);\n}\n\n// === COLOR SPACE (Oklab/LCH) ===\n\nvec3 toLinear(vec3 c) {\n    return pow(c, vec3(2.2));\n}\n\nvec3 toSrgb(vec3 c) {\n    return pow(clamp(c, 0.0, 1.0), vec3(0.4545));\n}\n\nvec3 linearToOklab(vec3 c) {\n    float l = 0.4122214708 * c.r + 0.5363325363 * c.g + 0.0514459929 * c.b;\n    float m = 0.2119034982 * c.r + 0.6806995451 * c.g + 0.1073969566 * c.b;\n    float s = 0.0883024619 * c.r + 0.2817188376 * c.g + 0.6299787005 * c.b;\n\n    l = pow(max(l, 0.0), 1.0 / 3.0);\n    m = pow(max(m, 0.0), 1.0 / 3.0);\n    s = pow(max(s, 0.0), 1.0 / 3.0);\n\n    return vec3(\n        0.2104542553 * l + 0.7936177850 * m - 0.0040720468 * s,\n        1.9779984951 * l - 2.4285922050 * m + 0.4505937099 * s,\n        0.0259040371 * l + 0.7827717662 * m - 0.8086757660 * s\n    );\n}\n\nvec3 oklabToLinear(vec3 c) {\n    float l = c.x + 0.3963377774 * c.y + 0.2158037573 * c.z;\n    float m = c.x - 0.1055613458 * c.y - 0.0638541728 * c.z;\n    float s = c.x - 0.0894841775 * c.y - 1.2914855480 * c.z;\n\n    l = l * l * l;\n    m = m * m * m;\n    s = s * s * s;\n\n    return vec3(\n        +4.0767416621 * l - 3.3077115913 * m + 0.2309699292 * s,\n        -1.2684380046 * l + 2.6097574011 * m - 0.3413193965 * s,\n        -0.0041960863 * l - 0.7034186147 * m + 1.7076147010 * s\n    );\n}\n\nvec3 oklabToLch(vec3 lab) {\n    return vec3(lab.x, length(lab.yz), atan(lab.z, lab.y));\n}\n\nvec3 lchToOklab(vec3 lch) {\n    return vec3(lch.x, lch.y * cos(lch.z), lch.y * sin(lch.z));\n}\n\nvec3 mixLch(vec3 lab0, vec3 lab1, float t) {\n    vec3 lch0 = oklabToLch(lab0);\n    vec3 lch1 = oklabToLch(lab1);\n\n    if (lch0.y < 0.05) lch0.z = lch1.z;\n    if (lch1.y < 0.05) lch1.z = lch0.z;\n\n    float dh = lch1.z - lch0.z;\n    if (dh > 3.14159265) dh -= 6.28318530;\n    if (dh < -3.14159265) dh += 6.28318530;\n\n    return lchToOklab(vec3(\n        mix(lch0.x, lch1.x, t),\n        mix(lch0.y, lch1.y, t),\n        lch0.z + dh * t\n    ));\n}\n\n// === PALETTE ===\n\nvec3 getColor(int idx) {\n    if (u_colors_length < 1) return vec3(0.0);\n    int safeIdx = clamp(idx, 0, u_colors_length - 1);\n    return u_colors[safeIdx].rgb;\n}\n\nvec3 paletteN(float t, int count) {\n    if (count < 1) return vec3(0.0);\n    if (count < 2) return toLinear(getColor(0));\n\n    float segmentSize = 1.0 / float(count - 1);\n    t = clamp(t, 0.0, 1.0);\n    int idx = min(int(floor(t / segmentSize)), count - 2);\n    float localT = clamp((t - float(idx) * segmentSize) / segmentSize, 0.0, 1.0);\n\n    vec3 lab0 = linearToOklab(toLinear(getColor(idx)));\n    vec3 lab1 = linearToOklab(toLinear(getColor(idx + 1)));\n\n    return oklabToLinear(mixLch(lab0, lab1, localT));\n}\n\n// === POST-PROCESS ===\n\nvec3 softGamutMap(vec3 linearRgb) {\n    float maxC = max(linearRgb.r, max(linearRgb.g, linearRgb.b));\n    float minC = min(linearRgb.r, min(linearRgb.g, linearRgb.b));\n\n    if (minC >= 0.0 && maxC <= 1.0) return linearRgb;\n\n    vec3 lab = linearToOklab(max(linearRgb, 0.0));\n    float L = clamp(lab.x, 0.0, 1.0);\n    float C = length(lab.yz);\n    float h = atan(lab.z, lab.y);\n\n    float maxChroma = 0.4 * (1.0 - pow(abs(2.0 * L - 1.0), 2.0));\n\n    if (C > maxChroma * 0.7) {\n        float knee = maxChroma * 0.7;\n        C = knee + (maxChroma - knee) * tanh((C - knee) / (maxChroma - knee + 0.001));\n    }\n\n    return clamp(oklabToLinear(vec3(L, C * cos(h), C * sin(h))), 0.0, 1.0);\n}\n\n// === HEIGHTMAP HELPERS ===\n\nfloat blurDepth3x3(vec2 uv, vec2 dudx, vec2 dudy, vec2 texel, float radius) {\n    vec2 r = radius * texel;\n\n    float sum = 4.0 * textureGrad(u_image_heightmap, uv, dudx, dudy).r;\n\n    sum += 2.0 * textureGrad(u_image_heightmap, uv + vec2(0.0, -r.y), dudx, dudy).r;\n    sum += 2.0 * textureGrad(u_image_heightmap, uv + vec2(0.0,  r.y), dudx, dudy).r;\n    sum += 2.0 * textureGrad(u_image_heightmap, uv + vec2(-r.x, 0.0), dudx, dudy).r;\n    sum += 2.0 * textureGrad(u_image_heightmap, uv + vec2( r.x, 0.0), dudx, dudy).r;\n\n    sum += textureGrad(u_image_heightmap, uv + vec2(-r.x, -r.y), dudx, dudy).r;\n    sum += textureGrad(u_image_heightmap, uv + vec2( r.x, -r.y), dudx, dudy).r;\n    sum += textureGrad(u_image_heightmap, uv + vec2(-r.x,  r.y), dudx, dudy).r;\n    sum += textureGrad(u_image_heightmap, uv + vec2( r.x,  r.y), dudx, dudy).r;\n\n    return sum / 16.0;\n}\n\nvec2 heightGrad(vec2 uv, vec2 dudx, vec2 dudy, vec2 texel, float blurRadius) {\n    float eps = 4.0;\n    float dR = blurDepth3x3(uv + vec2(eps * texel.x, 0.0), dudx, dudy, texel, blurRadius);\n    float dL = blurDepth3x3(uv - vec2(eps * texel.x, 0.0), dudx, dudy, texel, blurRadius);\n    float dU = blurDepth3x3(uv + vec2(0.0, eps * texel.y), dudx, dudy, texel, blurRadius);\n    float dD = blurDepth3x3(uv - vec2(0.0, eps * texel.y), dudx, dudy, texel, blurRadius);\n    return vec2(dR - dL, dU - dD) / (2.0 * eps * texel);\n}\n\n// === MAIN ===\n\nvoid main() {\n    vec2 uv = vec2(v_uv.x, 1.0 - v_uv.y);\n    vec2 texSize = vec2(textureSize(u_image_heightmap, 0));\n    float imgAspect = texSize.x / texSize.y;\n    float canvasAspect = u_resolution.x / u_resolution.y;\n\n    if (canvasAspect > imgAspect) {\n        uv.x = (uv.x - 0.5) * (canvasAspect / imgAspect) + 0.5;\n    } else {\n        uv.y = (uv.y - 0.5) * (imgAspect / canvasAspect) + 0.5;\n    }\n\n    /*\n    if (uv.x < 0.0 || uv.x > 1.0 || uv.y < 0.0 || uv.y > 1.0) {\n        fragColor = vec4(u_colorBack.rgb * u_colorBack.a, u_colorBack.a);\n        return;\n    }\n    */\n\n    // 1.0 on DPR 2+, up to 2.0 on DPR 1\n    float aaScale = max(1.0, 2.0 / u_pixelRatio);\n\n    vec2 dudx = dFdx(uv);\n    vec2 dudy = dFdy(uv);\n\n    vec4 hm = textureGrad(u_image_heightmap, uv, dudx, dudy);\n    float fw_b = 0.5 * fwidth(hm.b);\n    float hardMask = smoothstep(0.5 - fw_b, 0.5 + fw_b, hm.b);\n    float opacity = hardMask * (1.0 - hm.g);\n\n    // Only fade at the letterbox boundary, not on the axis the image fills\n    float edgeDist;\n    if (canvasAspect > imgAspect) {\n        // Letterbox bars are left/right → only fade X edges\n        edgeDist = min(uv.x, 1.0 - uv.x);\n    } else if (canvasAspect < imgAspect) {\n        // Letterbox bars are top/bottom → only fade Y edges\n        edgeDist = min(uv.y, 1.0 - uv.y);\n    } else {\n        // Aspects match — no letterboxing, no seam, no fade needed\n        edgeDist = 1.0;\n    }\n    opacity *= smoothstep(0.0, 1.0 * fwidth(edgeDist), edgeDist);\n\n    if (opacity < 0.001) {\n        fragColor = vec4(u_colorBack.rgb * u_colorBack.a, u_colorBack.a);\n        return;\n    }\n\n    vec2 texel = 1.0 / texSize;\n    int colorCount = u_colors_length;\n\n    if (colorCount < 1) {\n        fragColor = vec4(u_colorBack.rgb * u_colorBack.a, u_colorBack.a);\n        return;\n    }\n\n    float rawDepth = blurDepth3x3(uv, dudx, dudy, texel, 6.0);\n    float depth = max(rawDepth, 0.001);\n\n    vec2 grad = heightGrad(uv, dudx, dudy, texel, 6.0);\n    float gradMag = min(length(grad), 5.0);\n    vec2 gradDir = gradMag > 0.001 ? normalize(grad) : vec2(0.0);\n    vec2 contourDir = vec2(-gradDir.y, gradDir.x);\n\n    float t = mod(u_time * u_speed, 3600.0);\n\n    // Motion mode: 0 = Random, 1 = Melt\n    float isMelt = step(0.5, u_motionMode);\n\n    // Seed\n    vec3 seedOffset = seedRandom(u_seed);\n    vec3 seedOffset2 = seedRandom(u_seed + 100.0);\n    float seedAngle = u_seed * GOLDEN_ANGLE;\n    vec2 seedPhase = (seedOffset2.xy - 0.5) * TAU;\n\n    // World-space coordinates anchored to the image\n    vec2 p = (uv - 0.5) * 2.0;\n    p.x *= imgAspect;\n\n    // Seed-based rotation\n    float cs = cos(seedAngle);\n    float sn = sin(seedAngle);\n    p = mat2(cs, -sn, sn, cs) * p;\n\n    // Angle — rotates the gradient flow direction\n    float ang = u_angle * 3.14159 / 180.0;\n    float cosA = cos(ang);\n    float sinA = sin(ang);\n    p = vec2(p.x * cosA - p.y * sinA, p.x * sinA + p.y * cosA);\n\n    // === MOUSE PUSH (fluid, from push buffer) ===\n    vec2 pf = texture(u_push_buffer, v_uv).xy;\n\n    // Buffer space is v_uv (Y-up); image uv is flipped → flip the vector's Y\n    // BEFORE any rotation, or the rotations scramble the error across axes.\n    pf.y = -pf.y;\n\n    // Buffer aspect-corrects with canvas aspect; p is in image-aspect space.\n    // On the tall-canvas branch the letterbox remap doesn't cancel it out.\n    if (canvasAspect <= imgAspect) {\n        pf *= imgAspect / canvasAspect;\n    }\n\n    pf = mat2(cs, -sn, sn, cs) * pf;                                  // seed rotation\n    pf = vec2(pf.x * cosA - pf.y * sinA, pf.x * sinA + pf.y * cosA);  // angle rotation\n    p -= pf * 2.0;\n\n\n    // Turbulence time\n    float tTurb = t * mix(1.0, 0.4, isMelt);\n\n    // Melt flow offset applied to q inside turbulence, not to p\n    vec2 meltOffset = vec2(1.0, 0.0) * t * 0.4 * isMelt;\n\n    // === SHAPE-AWARE COORDINATE WARPING ===\n    float edgeProximity = 1.0 - smoothstep(0.0, 0.8, depth);\n\n    float coordScale = max(0.4, 0.1 + depth * 1.0);\n    p *= coordScale;\n\n    p += contourDir * edgeProximity * u_bend * 2.0;\n    p -= gradDir * edgeProximity * u_bend * 0.5;\n    p *= max(0.5, mix(1.0, 0.4 + 0.6 * smoothstep(0.0, 0.5, depth), u_contour));\n\n    // === TURBULENCE ===\n    int turbIter = int(u_turbIter);\n    float freq = 1.0 / max(u_turbFreq, 0.01);\n\n    vec2 q = p * u_scale + meltOffset;\n\n    float a = seedPhase.x;\n    float d = seedPhase.y;\n\n    for (int j = 2; j < 10; j++) {\n        if (j >= turbIter) break;\n        float fj = float(j);\n        q += u_turbAmp * sin(length(q) / freq * fj + tTurb + vec2(a, d) + seedOffset.xy * fj) / fj;\n        a += cos(fj + d * 1.2 + q.x * 2.0 - tTurb + seedOffset2.z);\n        d += sin(fj * q.y + a + seedOffset.z + tTurb + seedOffset2.y);\n    }\n\n    float base = length(q.yx + vec2(a, d) * 0.2) * u_waveFreq + seedOffset.x;\n    float val = 0.5 + 0.125 * sin(base + 1.0) + 0.25 * sin(base + 4.0) + 0.125 * sin(base + 9.0);\n    val = clamp((val - 0.3) / 0.4, 0.0, 1.0);\n\n    // Depth-based intensity modulation\n    float innerIntensity = smoothstep(0.0, 0.4, depth);\n    float contourHeat = (1.0 - innerIntensity) * u_contour;\n    val = mix(val, val * innerIntensity + contourHeat, 0.5 + 0.5 * u_contour);\n\n    vec3 col = paletteN(val, colorCount);\n    col = softGamutMap(col);\n    col = toSrgb(col);\n\n    /*\n    // Silhouette AA — hardMask + clamped fwidth\n    float fw = fwidth(depth);\n    float effectMask = hardMask * smoothstep(0.0, max(fw, min(2.0 * fw, 0.1)), depth);\n    opacity *= effectMask;\n    */\n\n    // Alpha compositing\n    col *= opacity;\n    vec3 bgColor = u_colorBack.rgb * u_colorBack.a;\n    col = col + bgColor * (1.0 - opacity);\n    float finalAlpha = opacity + u_colorBack.a * (1.0 - opacity);\n\n    fragColor = vec4(col, finalAlpha);\n}\n`,propertyControls:{image:{type:ControlType.ResponsiveImage,title:\"Image\",defaultValue:\"data:framer/asset-reference,7XHsXmlUUmdQM95fkSvi3LRCuSk.svg?originalFilename=Path.svg&width=32&height=48\"},colors:{type:ControlType.Array,title:\"Colors\",control:{type:ControlType.Color},maxCount:8,defaultValue:[\"#000000\",\"#0051FF\",\"#0DAAFF\",\"#BDE4FF\"]},colorBack:{type:ControlType.Color,title:\"Background\",defaultValue:\"#000000\"},seed:{type:ControlType.Number,title:\"Seed\",defaultValue:6,min:0,max:1e3,step:1,section:\"Motion\"},speed:{type:ControlType.Number,title:\"Speed\",defaultValue:.6,min:0,max:2,step:.01,section:\"Motion\"},motionMode:{type:ControlType.Enum,title:\"Motion\",options:[0,1],optionTitles:[\"Random\",\"Directional\"],defaultValue:0,section:\"Motion\"},angle:{type:ControlType.Number,title:\"Angle\",defaultValue:20,min:0,max:360,step:1,section:\"Motion\"},scale:{type:ControlType.Number,title:\"Scale\",defaultValue:1.2,min:.1,max:2,step:.01,section:\"Motion\"},turbAmp:{type:ControlType.Number,title:\"Amplitude\",defaultValue:.21,min:0,max:1,step:.01,section:\"Motion\"},turbFreq:{type:ControlType.Number,title:\"Frequency\",defaultValue:1.15,min:.1,max:2,step:.01,section:\"Motion\"},turbIter:{type:ControlType.Number,title:\"Definition\",defaultValue:7,min:3,max:8,step:1,displayStepper:true,section:\"Motion\"},waveFreq:{type:ControlType.Number,title:\"Bands\",defaultValue:2.4,min:.1,max:5,step:.1,section:\"Motion\"},bend:{type:ControlType.Number,title:\"Bevel\",defaultValue:.24,min:0,max:1,step:.01,section:\"Shape\",hiddenWhenUnset:true},contour:{type:ControlType.Number,title:\"Contour\",defaultValue:.8,min:0,max:1,step:.1,section:\"Shape\",hiddenWhenUnset:true},mousePush:{type:ControlType.Number,title:\"Push\",defaultValue:.5,min:.1,max:1,step:.1,section:\"Mouse\"},mouseRadius:{type:ControlType.Number,title:\"Radius\",defaultValue:1,min:.1,max:1,step:.1,section:\"Mouse\"},mouseStretch:{type:ControlType.Number,title:\"Stretch\",defaultValue:0,min:0,max:1,step:.1,section:\"Mouse\"},mousePersist:{type:ControlType.Number,title:\"Persistence\",defaultValue:.8,min:0,max:1,step:.01,section:\"Mouse\"}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"shader\",\"name\":null,\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./LogoGradient.map","// Generated by Framer (39331b4)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,getFontsFromSharedStyle,RichText,Shader,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import shaderConfig1 from\"https://framerusercontent.com/modules/QEytd7xyjUsL7yuVUzSs/6qTRmKugUnmuF6ve5K4I/LiquidGradient.js\";import shaderConfig from\"https://framerusercontent.com/modules/VHx6h9GDKMSkp9munUQE/iuO6cUEY1gVzApkGCZgp/LogoGradient.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/4Jpx6Xtj2wjP4JPY7u1k/rvdMtwtc6EDqPdBCVrgw/AotnCx_1k.js\";import*as sharedStyle2 from\"https://framerusercontent.com/modules/8Hn7WN38wINFrQivpSj9/qIQOBFmvgSolxIobk2NA/gXX4c1X0f.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/w2n7BgMRASZscSBApVbJ/qzvGkvZLYwzdykIbxmRR/if8golVx4.js\";import CTA from\"https://framerusercontent.com/modules/u4AdFb9uyQMQbdLp0ONg/fqy2ayvRAIXIUpI8ByxK/JlJdM20yc.js\";const CTAFonts=getFonts(CTA);const cycleOrder=[\"e3Rg1hQFj\",\"lZPFxRM9B\",\"W2TP90WhI\"];const serializationHash=\"framer-TwOBI\";const variantClassNames={e3Rg1hQFj:\"framer-v-i88ukl\",lZPFxRM9B:\"framer-v-1tzwxey\",W2TP90WhI:\"framer-v-15iy6ps\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const Lgf4yIVYY=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const addImageAlt=(image,alt)=>{if(!image||typeof image!==\"object\"){return;}return{...image,alt};};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={Desktop:\"e3Rg1hQFj\",Phone:\"W2TP90WhI\",Tablet:\"lZPFxRM9B\"};const Variants=motion.create(React.Fragment);const getProps=({cTA,height,id,width,...props})=>{return{...props,Lgf4yIVYY:cTA??props.Lgf4yIVYY??true,variant:humanReadableVariantMap[props.variant]??props.variant??\"e3Rg1hQFj\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,Lgf4yIVYY,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"e3Rg1hQFj\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className,sharedStyle2.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.footer,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-i88ukl\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"e3Rg1hQFj\",ref:refBinding,style:{backgroundColor:\"rgb(0, 0, 0)\",...style},...addPropertyOverrides({lZPFxRM9B:{\"data-framer-name\":\"Tablet\"},W2TP90WhI:{\"data-framer-name\":\"Phone\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-gt07kv\",\"data-framer-name\":\"Container\",layoutDependency:layoutDependency,layoutId:\"qyfFubuEK\",children:/*#__PURE__*/_jsx(motion.div,{className:\"framer-5t9lgz\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"Hsg2ka0bj\",children:Lgf4yIVYY!==false&&/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1o63kgi\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"rICM7znb2\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1imh9z2\",\"data-framer-name\":\"Heading\",layoutDependency:layoutDependency,layoutId:\"IhovPhAWH\",children:[/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-tdyx9u-container\",layoutDependency:layoutDependency,layoutId:\"BMKgQU0lP-container\",rendersWithMotion:true,children:/*#__PURE__*/_jsx(Shader,{__fromCanvasComponent:true,animated:shaderConfig.animated,buffers:shaderConfig.buffers,fallbackImage:\"https://framerusercontent.com/images/lzSaLiM3i6MpNG3U0RjItiIK0.png?width=400&height=400\",fragmentShader:shaderConfig.fragment,height:\"100%\",heightmapSource:shaderConfig.heightmapSource,mode:\"progressive\",mouse:shaderConfig.mouse&&{enabled:shaderConfig.mouse===\"enabledByDefault\"},resolutionScale:shaderConfig.resolutionScale,skipInitialFallback:true,uniforms:{u_angle:{type:\"number\",value:20},u_bend:{type:\"number\",value:.24},u_colorBack:{type:\"color\",value:\"rgba(0, 0, 0, 0)\"},u_colors:{type:\"array\",value:[\"rgb(0, 0, 0)\",\"var(--token-fa4dcb27-7179-41c9-bbdc-0fe7fe502e97, rgb(255, 255, 255))\",\"var(--token-28aea7f4-558d-467f-97ba-a61135fd0a26, rgba(15, 15, 15, 0.85))\"]},u_contour:{type:\"number\",value:.8},u_image:{type:\"responsiveimage\",value:addImageAlt({pixelHeight:569,pixelWidth:717,src:\"https://framerusercontent.com/images/nshWZRYZVnRNmzxlksat0C8mYg.svg?width=717&height=569\",srcSet:\"https://framerusercontent.com/images/nshWZRYZVnRNmzxlksat0C8mYg.svg?scale-down-to=512&width=717&height=569 512w,https://framerusercontent.com/images/nshWZRYZVnRNmzxlksat0C8mYg.svg?width=717&height=569 717w\"},\"\")},u_motionMode:{type:\"enum\",value:0},u_mousePersist:{type:\"number\",value:.8},u_mousePush:{type:\"number\",value:.5},u_mouseRadius:{type:\"number\",value:1},u_mouseStretch:{type:\"number\",value:0},u_scale:{type:\"number\",value:1.2},u_seed:{type:\"number\",value:6},u_speed:{type:\"number\",value:.6},u_turbAmp:{type:\"number\",value:.21},u_turbFreq:{type:\"number\",value:1.15},u_turbIter:{type:\"number\",value:7},u_waveFreq:{type:\"number\",value:2.4}},vertexShader:shaderConfig.vertex,width:\"100%\",...addPropertyOverrides({lZPFxRM9B:{fallbackImage:\"https://framerusercontent.com/images/7Dwm0kn3bQdTqU9EQFVnX7qGHk.png?width=360&height=360\"},W2TP90WhI:{fallbackImage:\"https://framerusercontent.com/images/WvgILIOwzZhGf7vNvQd4xVxN3HU.png?width=240&height=240\"}},baseVariant,gestureVariant)})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h2,{className:\"framer-styles-preset-1hkgpfp\",\"data-styles-preset\":\"AotnCx_1k\",dir:\"auto\",style:{\"--framer-text-alignment\":\"center\"},children:\"Ready to Build Predictable Revenue?\"})}),className:\"framer-1a1u30w\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"p8i_GDSVq\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-q4i8e7\",\"data-framer-name\":\"Text\",layoutDependency:layoutDependency,layoutId:\"QBytidI2k\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-fb3av3\",\"data-styles-preset\":\"if8golVx4\",dir:\"auto\",style:{\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-5d3602f5-d470-4b4b-916d-5b57bbf588f8, rgba(255, 255, 255, 0.8)))\"},children:\"Book a free strategy call and we’ll map the constraint holding your pipeline back.\"})}),className:\"framer-13ippoa\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"BwVadO6zP\",style:{\"--extracted-r6o4lv\":\"var(--token-5d3602f5-d470-4b4b-916d-5b57bbf588f8, rgba(255, 255, 255, 0.8))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:108,width:`min(${componentViewport?.width||\"100vw\"} - 128px, 1072px)`,y:(componentViewport?.y||0)+80+(((componentViewport?.height||840)-112-870.8)/2+0+0)+0+0+0+309.4+0+278.8+0+152,...addPropertyOverrides({lZPFxRM9B:{width:`min(${componentViewport?.width||\"100vw\"} - 40px, 1072px)`,y:(componentViewport?.y||0)+64+(((componentViewport?.height||823)-96-870.8)/2+0+0)+0+0+0+309.4+0+278.8+0+152},W2TP90WhI:{width:`min(${componentViewport?.width||\"100vw\"} - 32px, 440px)`,y:(componentViewport?.y||0)+40+(((componentViewport?.height||761)-64-802.8)/2+0+0)+0+0+0+303.4+0+278.8+0+140}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-jug51x-container\",layoutDependency:layoutDependency,layoutId:\"kVtDZk4rW-container\",nodeId:\"kVtDZk4rW\",rendersWithMotion:true,scopeId:\"QkhnH1gxg\",children:/*#__PURE__*/_jsx(CTA,{height:\"100%\",id:\"kVtDZk4rW\",layoutId:\"kVtDZk4rW\",style:{width:\"100%\"},width:\"100%\"})})})]})]})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1droqhd\",\"data-border\":true,\"data-framer-name\":\"Footer\",layoutDependency:layoutDependency,layoutId:\"bLNJBd2Ek\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"rgb(32, 32, 38)\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\"},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1146we4\",layoutDependency:layoutDependency,layoutId:\"uqgjwj_fK\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1pityo1\",\"data-styles-preset\":\"gXX4c1X0f\",dir:\"auto\",style:{\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-5d3602f5-d470-4b4b-916d-5b57bbf588f8, rgba(255, 255, 255, 0.8)))\"},children:\"VSL Engine provides SaaS growth consulting and advisory services. Results referenced on this page reflect specific client engagements and are not typical or guaranteed. Outcomes depend on your product, market, pricing, sales cycle, and how quickly recommendations are implemented. Nothing on this page constitutes a guarantee of revenue, pipeline, or business results. All content is provided for informational purposes only.\"})}),className:\"framer-idkach\",\"data-framer-name\":\"Installed an AI Meta Ads & sales team system targeting dental practices.\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"VmS2QeBZ3\",style:{\"--extracted-r6o4lv\":\"var(--token-5d3602f5-d470-4b4b-916d-5b57bbf588f8, rgba(255, 255, 255, 0.8))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"center\",withExternalLayout:true})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1pityo1\",\"data-styles-preset\":\"gXX4c1X0f\",dir:\"auto\",style:{\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-a5ec209a-fba8-4eff-9b51-c42609360445, rgb(117, 117, 117)))\"},children:\"\\xa9 2026 VSL Engine — All rights reserved.\"})}),className:\"framer-1f36ise\",\"data-framer-name\":\"\\xa9 2026 MultiplyClients.io — All rights reserved.\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"Ee6T3LNIX\",style:{\"--extracted-r6o4lv\":\"var(--token-a5ec209a-fba8-4eff-9b51-c42609360445, rgb(117, 117, 117))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"center\",withExternalLayout:true})]}),/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-jynv0c-container\",layoutDependency:layoutDependency,layoutId:\"DhBwuCxeC-container\",rendersWithMotion:true,style:{mask:\"linear-gradient(0deg, rgb(0, 0, 0) 0%, rgb(0, 0, 0) 68%, rgba(0, 0, 0, 0.72) 82%, rgba(0, 0, 0, 0) 100%) add\",WebkitMask:\"linear-gradient(0deg, rgb(0, 0, 0) 0%, rgb(0, 0, 0) 68%, rgba(0, 0, 0, 0.72) 82%, rgba(0, 0, 0, 0) 100%) add\"},children:/*#__PURE__*/_jsx(Shader,{__fromCanvasComponent:true,animated:shaderConfig1.animated,buffers:shaderConfig1.buffers,fallbackImage:\"https://framerusercontent.com/images/lJ7umPzluNkE1gQtdCXRUq87g.png?scale-down-to=1200&width=2400&height=1680\",fragmentShader:shaderConfig1.fragment,height:\"100%\",heightmapSource:shaderConfig1.heightmapSource,mode:\"progressive\",mouse:shaderConfig1.mouse&&{enabled:shaderConfig1.mouse===\"enabledByDefault\"},resolutionScale:shaderConfig1.resolutionScale,skipInitialFallback:true,uniforms:{u_colors:{type:\"array\",value:[\"rgb(0, 0, 0)\",\"var(--token-8ee275ec-326d-4bf1-adfb-1bdb25eaaa6f, rgb(32, 32, 38))\"]},u_contrast:{type:\"number\",value:1.1},u_distBias:{type:\"number\",value:0},u_dither:{type:\"number\",value:.2},u_ditherMode:{type:\"enum\",value:2},u_exposure:{type:\"number\",value:1.1},u_jellify:{type:\"boolean\",value:false},u_loop:{type:\"number\",value:0},u_mousePersist:{type:\"number\",value:.8},u_mousePush:{type:\"number\",value:.5},u_mouseRadius:{type:\"number\",value:1},u_mouseStretch:{type:\"number\",value:0},u_saturation:{type:\"number\",value:1},u_scale:{type:\"number\",value:.79},u_seed:{type:\"number\",value:515},u_speed:{type:\"number\",value:.95},u_turbAmp:{type:\"number\",value:.26},u_turbFreq:{type:\"number\",value:1.37},u_turbIter:{type:\"number\",value:4},u_waveFreq:{type:\"number\",value:5}},vertexShader:shaderConfig1.vertex,width:\"100%\",...addPropertyOverrides({lZPFxRM9B:{fallbackImage:\"https://framerusercontent.com/images/Iwjrn7sIKYd9yBeklxFalQ48Oo.png?scale-down-to=823&width=1620&height=1646\"},W2TP90WhI:{fallbackImage:\"https://framerusercontent.com/images/EgA3rzSZpp7ZNUksMgSXnqz034.png?scale-down-to=761&width=780&height=1522\"}},baseVariant,gestureVariant)})})]})})})});});const css=[\".framer-TwOBI.framer-5e7r4g, .framer-TwOBI .framer-5e7r4g { display: block; }\",\".framer-TwOBI.framer-i88ukl { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 48px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 80px 64px 32px 64px; position: relative; width: 1200px; }\",\".framer-TwOBI .framer-gt07kv { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 48px; height: min-content; justify-content: center; max-width: 1072px; overflow: visible; padding: 0px; position: relative; width: 100%; z-index: 1; }\",\".framer-TwOBI .framer-5t9lgz { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 80px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-TwOBI .framer-1o63kgi { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-TwOBI .framer-1imh9z2 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-TwOBI .framer-tdyx9u-container { aspect-ratio: 1 / 1; flex: none; height: auto; position: relative; width: 200px; }\",\".framer-TwOBI .framer-1a1u30w { flex: none; height: auto; max-width: 557px; overflow: visible; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-TwOBI .framer-q4i8e7 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 32px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-TwOBI .framer-13ippoa { --framer-text-wrap-override: none; flex: none; height: auto; max-width: 318px; position: relative; width: 100%; }\",\".framer-TwOBI .framer-jug51x-container { flex: none; height: auto; position: relative; width: 100%; }\",\".framer-TwOBI .framer-1droqhd { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: flex-start; overflow: visible; padding: 32px; position: relative; width: 100%; z-index: 1; }\",\".framer-TwOBI .framer-1146we4 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-TwOBI .framer-idkach { flex: none; height: auto; max-width: 1000px; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-TwOBI .framer-1f36ise { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-TwOBI .framer-jynv0c-container { bottom: 0px; flex: none; left: 0px; position: absolute; right: 0px; top: 0px; z-index: 0; }\",\".framer-TwOBI.framer-v-1tzwxey.framer-i88ukl { padding: 64px 20px 32px 20px; width: 810px; }\",\".framer-TwOBI.framer-v-1tzwxey .framer-tdyx9u-container { width: 180px; }\",\".framer-TwOBI.framer-v-15iy6ps.framer-i88ukl { gap: 24px; padding: 40px 16px 24px 16px; width: 390px; }\",\".framer-TwOBI.framer-v-15iy6ps .framer-gt07kv { max-width: 440px; }\",\".framer-TwOBI.framer-v-15iy6ps .framer-tdyx9u-container { width: 120px; }\",\".framer-TwOBI.framer-v-15iy6ps .framer-q4i8e7 { gap: 20px; }\",\".framer-TwOBI.framer-v-15iy6ps .framer-1droqhd { padding: 16px; }\",...sharedStyle.css,...sharedStyle1.css,...sharedStyle2.css,'.framer-TwOBI[data-border=\"true\"]::after, .framer-TwOBI [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; corner-shape: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 840\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"lZPFxRM9B\":{\"layout\":[\"fixed\",\"auto\"]},\"W2TP90WhI\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"Lgf4yIVYY\":\"cTA\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerQkhnH1gxg=withCSS(Component,css,\"framer-TwOBI\");export default FramerQkhnH1gxg;FramerQkhnH1gxg.displayName=\"Footer 2\";FramerQkhnH1gxg.defaultProps={height:840,width:1200};addPropertyControls(FramerQkhnH1gxg,{variant:{options:[\"e3Rg1hQFj\",\"lZPFxRM9B\",\"W2TP90WhI\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum},Lgf4yIVYY:{defaultValue:true,title:\"CTA\",type:ControlType.Boolean},onLgf4yIVYYChange:{changes:\"Lgf4yIVYY\",type:ControlType.ChangeHandler}});addFonts(FramerQkhnH1gxg,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...CTAFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts),...getFontsFromSharedStyle(sharedStyle2.fonts)],{supportsExplicitInterCodegen:true});FramerQkhnH1gxg.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(CTA,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerQkhnH1gxg\",\"slots\":[],\"annotations\":{\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"lZPFxRM9B\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"W2TP90WhI\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicWidth\":\"1200\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerColorSyntax\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"840\",\"framerDisplayContentsDiv\":\"false\",\"framerAutoSizeImages\":\"true\",\"framerVariables\":\"{\\\"Lgf4yIVYY\\\":\\\"cTA\\\"}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (39331b4)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getLoadingLazyAtYPosition,Image as Image1,Link,RichText,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const cycleOrder=[\"oyXX7pnKJ\",\"w1rvhU8D7\",\"mI3Y50onC\"];const serializationHash=\"framer-1BAoH\";const variantClassNames={mI3Y50onC:\"framer-v-964oqc\",oyXX7pnKJ:\"framer-v-kqgn3n\",w1rvhU8D7:\"framer-v-sqekas\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const DEmDA8PZ6=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={Desktop:\"oyXX7pnKJ\",Mobile:\"mI3Y50onC\",Tablet:\"w1rvhU8D7\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,logoLink,width,...props})=>{return{...props,DEmDA8PZ6:logoLink??props.DEmDA8PZ6,variant:humanReadableVariantMap[props.variant]??props.variant??\"oyXX7pnKJ\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,DEmDA8PZ6,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"oyXX7pnKJ\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(Link,{href:DEmDA8PZ6,motionChild:true,nodeId:\"oyXX7pnKJ\",openInNewTab:false,scopeId:\"cpQZsWQbB\",children:/*#__PURE__*/_jsxs(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-kqgn3n\",className,classNames)} framer-5v1pxw`,\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"oyXX7pnKJ\",ref:refBinding,style:{...style},...addPropertyOverrides({mI3Y50onC:{\"data-framer-name\":\"Mobile\"},w1rvhU8D7:{\"data-framer-name\":\"Tablet\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsx(Image1,{background:{alt:\"VSL Engine logo\",fit:\"fill\",intrinsicHeight:717,intrinsicWidth:717,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+(0+((componentViewport?.height||200)-0-26)/2)),pixelHeight:717,pixelWidth:717,sizes:\"26px\",src:\"https://framerusercontent.com/images/Kb1QmSvoglwBxjrCapYq3rPBI.svg?width=717&height=717\",srcSet:\"https://framerusercontent.com/images/Kb1QmSvoglwBxjrCapYq3rPBI.svg?scale-down-to=512&width=717&height=717 512w,https://framerusercontent.com/images/Kb1QmSvoglwBxjrCapYq3rPBI.svg?width=717&height=717 717w\"},className:\"framer-1nnmk20\",layoutDependency:layoutDependency,layoutId:\"rk1pu3ku4\"}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-dbf5fe\",\"data-framer-name\":\"Container\",layoutDependency:layoutDependency,layoutId:\"KXhuQPKRw\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"SW50ZXItTWVkaXVt\",\"--framer-font-size\":\"18px\",\"--framer-font-weight\":\"500\",\"--framer-letter-spacing\":\"-0.03em\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-ada03814-c2f9-45f4-9337-d41933d527fe, rgb(246, 246, 246)))\"},children:\"VSL Engine\"})}),className:\"framer-y981ev\",\"data-framer-name\":\"MultiplyClients.io\",fonts:[\"Inter-Medium\"],layoutDependency:layoutDependency,layoutId:\"GO4XDPDvJ\",style:{\"--extracted-r6o4lv\":\"var(--token-ada03814-c2f9-45f4-9337-d41933d527fe, rgb(246, 246, 246))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"center\",withExternalLayout:true})})]})})})})});});const css=[\".framer-1BAoH.framer-5v1pxw, .framer-1BAoH .framer-5v1pxw { display: block; }\",\".framer-1BAoH.framer-kqgn3n { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-1BAoH .framer-1nnmk20 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 26px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 26px; }\",\".framer-1BAoH .framer-dbf5fe { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px 0px 0.75px 0px; position: relative; width: min-content; }\",\".framer-1BAoH .framer-y981ev { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-1BAoH.framer-v-964oqc.framer-kqgn3n { gap: 8px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 26\n * @framerIntrinsicWidth 129\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"w1rvhU8D7\":{\"layout\":[\"auto\",\"auto\"]},\"mI3Y50onC\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"DEmDA8PZ6\":\"logoLink\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramercpQZsWQbB=withCSS(Component,css,\"framer-1BAoH\");export default FramercpQZsWQbB;FramercpQZsWQbB.displayName=\"Logo\";FramercpQZsWQbB.defaultProps={height:26,width:129};addPropertyControls(FramercpQZsWQbB,{variant:{options:[\"oyXX7pnKJ\",\"w1rvhU8D7\",\"mI3Y50onC\"],optionTitles:[\"Desktop\",\"Tablet\",\"Mobile\"],title:\"Variant\",type:ControlType.Enum},DEmDA8PZ6:{title:\"Logo Link\",type:ControlType.Link}});addFonts(FramercpQZsWQbB,[{explicitInter:true,fonts:[{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/otTaNuNpVK4RbdlT7zDDdKvQBA.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/UjlFhCnUjxhNfep4oYBPqnEssyo.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/DolVirEGb34pEXEp8t8FQBSK4.woff2\",weight:\"500\"}]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramercpQZsWQbB\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicWidth\":\"129\",\"framerColorSyntax\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicHeight\":\"26\",\"framerVariables\":\"{\\\"DEmDA8PZ6\\\":\\\"logoLink\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"w1rvhU8D7\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"mI3Y50onC\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./cpQZsWQbB.map","// Generated by Framer (0116799)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,ResolveLinks,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useRouter,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Logo from\"https://framerusercontent.com/modules/cQUNC5UoLjGBiopILCtM/gk9cmhnp9S30zy2OI7mx/cpQZsWQbB.js\";const LogoFonts=getFonts(Logo);const cycleOrder=[\"SHx7bIBvG\",\"kwDKPAGTY\",\"jSFPD_wko\"];const serializationHash=\"framer-WLWg9\";const variantClassNames={jSFPD_wko:\"framer-v-1011f1z\",kwDKPAGTY:\"framer-v-18l4gkb\",SHx7bIBvG:\"framer-v-10ryk9p\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={Desktop:\"SHx7bIBvG\",Phone:\"jSFPD_wko\",Tablet:\"kwDKPAGTY\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"SHx7bIBvG\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"SHx7bIBvG\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const router=useRouter();return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-10ryk9p\",className,classNames),\"data-border\":true,\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"SHx7bIBvG\",ref:refBinding,style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"rgb(32, 32, 38)\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"0px\",backdropFilter:\"blur(10px)\",backgroundColor:\"rgba(8, 7, 14, 0)\",WebkitBackdropFilter:\"blur(10px)\",...style},...addPropertyOverrides({jSFPD_wko:{\"data-framer-name\":\"Phone\"},kwDKPAGTY:{\"data-framer-name\":\"Tablet\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"OGYUA2sGR\"},implicitPathVariables:undefined},{href:{webPageId:\"OGYUA2sGR\"},implicitPathVariables:undefined},{href:{webPageId:\"OGYUA2sGR\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:26,y:(componentViewport?.y||0)+(12+((componentViewport?.height||50)-24-26)/2),...addPropertyOverrides({jSFPD_wko:{y:(componentViewport?.y||0)+(10+((componentViewport?.height||200)-20-26)/2)},kwDKPAGTY:{y:(componentViewport?.y||0)+(12+((componentViewport?.height||47)-24-26)/2)}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-16vbk8k-container\",layoutDependency:layoutDependency,layoutId:\"Oe9NmegRE-container\",nodeId:\"Oe9NmegRE\",rendersWithMotion:true,scopeId:\"tuf17Ho1v\",children:/*#__PURE__*/_jsx(Logo,{DEmDA8PZ6:resolvedLinks[0],height:\"100%\",id:\"Oe9NmegRE\",layoutId:\"Oe9NmegRE\",variant:matchVariant(\"oyXX7pnKJ\"),width:\"100%\",...addPropertyOverrides({jSFPD_wko:{DEmDA8PZ6:resolvedLinks[2],variant:matchVariant(\"mI3Y50onC\")},kwDKPAGTY:{DEmDA8PZ6:resolvedLinks[1],variant:matchVariant(\"w1rvhU8D7\")}},baseVariant,gestureVariant)})})})})})})})});});const css=[\".framer-WLWg9.framer-1h99mx0, .framer-WLWg9 .framer-1h99mx0 { display: block; }\",\".framer-WLWg9.framer-10ryk9p { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 12px 40px 12px 40px; position: relative; width: 1280px; }\",\".framer-WLWg9 .framer-16vbk8k-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-WLWg9.framer-v-18l4gkb.framer-10ryk9p { width: 810px; }\",\".framer-WLWg9.framer-v-1011f1z.framer-10ryk9p { padding: 10px 40px 10px 40px; width: 390px; }\",'.framer-WLWg9[data-border=\"true\"]::after, .framer-WLWg9 [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; corner-shape: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 50\n * @framerIntrinsicWidth 1280\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"kwDKPAGTY\":{\"layout\":[\"fixed\",\"auto\"]},\"jSFPD_wko\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const Framertuf17Ho1v=withCSS(Component,css,\"framer-WLWg9\");export default Framertuf17Ho1v;Framertuf17Ho1v.displayName=\"Nav\";Framertuf17Ho1v.defaultProps={height:50,width:1280};addPropertyControls(Framertuf17Ho1v,{variant:{options:[\"SHx7bIBvG\",\"kwDKPAGTY\",\"jSFPD_wko\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum}});addFonts(Framertuf17Ho1v,[{explicitInter:true,fonts:[]},...LogoFonts],{supportsExplicitInterCodegen:true});Framertuf17Ho1v.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(Logo,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Framertuf17Ho1v\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"1280\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"kwDKPAGTY\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"jSFPD_wko\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerAutoSizeImages\":\"true\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerColorSyntax\":\"true\",\"framerIntrinsicHeight\":\"50\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (31f3ac5)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,forwardLoader,GeneratedComponentContext,getFonts,PropertyOverrides,RenderTarget,runTasksWithYield,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS,withOptimizedAppearEffect}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import BuyButton from\"#framer/local/canvasComponent/nm_Q0C1Nc/nm_Q0C1Nc.js\";import Footer2 from\"#framer/local/canvasComponent/QkhnH1gxg/QkhnH1gxg.js\";import Nav from\"#framer/local/canvasComponent/tuf17Ho1v/tuf17Ho1v.js\";const NavFonts=getFonts(Nav);const Footer2Fonts=getFonts(Footer2);const BuyButtonFonts=getFonts(BuyButton);const MotionDivWithOptimizedAppearEffect=withOptimizedAppearEffect(motion.div);const breakpoints={jcNBKUvNE:\"(min-width: 810px) and (max-width: 1199.98px)\",LxyB7aXe0:\"(max-width: 809.98px)\",s2EljUHYb:\"(min-width: 1200px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-6FlDh\";const variantClassNames={jcNBKUvNE:\"framer-v-19j8kab\",LxyB7aXe0:\"framer-v-s7r1b9\",s2EljUHYb:\"framer-v-dkvg8n\"};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const transition1={delay:2,duration:.4,ease:[.44,0,.56,1],type:\"tween\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:0,y:0};const animation1={opacity:.001,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:20};const breakpointRules={};const breakpointKeys=Object.keys(breakpointRules);const rules=[\".framer-6FlDh.framer-3tkxpv, .framer-6FlDh .framer-3tkxpv { display: block; }\",\".framer-6FlDh.framer-dkvg8n { align-content: center; align-items: center; background-color: #000000; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-6FlDh .framer-1pd5lb { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-6FlDh .framer-1hnerv-container { flex: none; height: auto; left: 0px; order: 1001; position: var(--framer-canvas-fixed-position, fixed); right: 0px; top: 0px; z-index: 9; }\",\".framer-6FlDh .framer-hcp36o-container { flex: none; height: auto; order: 1002; position: relative; width: 100%; }\",\".framer-6FlDh .framer-3poci0 { align-content: center; align-items: center; bottom: calc(calc(100% - min(var(--framer-viewport-height, 100%), 100%)) + 66px); display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; order: 1003; overflow: visible; padding: 0px; position: var(--framer-canvas-fixed-position, fixed); right: 20px; width: min-content; will-change: var(--framer-will-change-effect-override, transform); z-index: 9; }\",\".framer-6FlDh .framer-45hz6i-container { flex: none; height: auto; position: relative; width: auto; z-index: 1; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }'];const mediaQueries={jcNBKUvNE:\"(min-width: 810px) and (max-width: 1199.98px)\",LxyB7aXe0:\"(max-width: 809.98px)\",s2EljUHYb:\"(min-width: 1200px)\"};const humanReadableVariantMap={Desktop:\"s2EljUHYb\",Phone:\"LxyB7aXe0\",Tablet:\"jcNBKUvNE\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"s2EljUHYb\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,isLayoutTemplate:true,primaryVariantId:\"s2EljUHYb\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: rgb(0, 0, 0); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-dkvg8n\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-1pd5lb\"}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:50,width:\"100vw\",y:0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1hnerv-container\",layoutScroll:true,nodeId:\"WK97XAnGN\",scopeId:\"wsItWLJf2\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{jcNBKUvNE:{variant:matchVariant(\"kwDKPAGTY\")},LxyB7aXe0:{variant:matchVariant(\"jSFPD_wko\")}},children:/*#__PURE__*/_jsx(Nav,{height:\"100%\",id:\"WK97XAnGN\",layoutId:\"WK97XAnGN\",style:{width:\"100%\"},variant:matchVariant(\"SHx7bIBvG\"),width:\"100%\"})})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:840,width:\"100vw\",y:1e3,children:/*#__PURE__*/_jsx(Container,{className:\"framer-hcp36o-container\",nodeId:\"t76lsY21q\",scopeId:\"wsItWLJf2\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{jcNBKUvNE:{variant:matchVariant(\"lZPFxRM9B\")},LxyB7aXe0:{variant:matchVariant(\"W2TP90WhI\")}},children:/*#__PURE__*/_jsx(Footer2,{height:\"100%\",id:\"t76lsY21q\",layoutId:\"t76lsY21q\",Lgf4yIVYY:true,style:{width:\"100%\"},variant:matchVariant(\"e3Rg1hQFj\"),width:\"100%\"})})})}),/*#__PURE__*/_jsx(MotionDivWithOptimizedAppearEffect,{animate:animation,className:\"framer-3poci0\",\"data-framer-appear-id\":\"3poci0\",\"data-framer-name\":\"Promo Card (Delete This)\",initial:animation1,optimized:true,children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:38,y:896,children:/*#__PURE__*/_jsx(Container,{className:\"framer-45hz6i-container\",nodeId:\"KbOOOra8n\",scopeId:\"wsItWLJf2\",children:/*#__PURE__*/_jsx(BuyButton,{height:\"100%\",id:\"KbOOOra8n\",layoutId:\"KbOOOra8n\",LL390QfgK:\"https://framer.link/3cU7jMd\",mPhZ0qa3X:\"Get It For Free\",width:\"100%\"})})})})]}),/*#__PURE__*/_jsx(\"div\",{id:\"template-overlay\"})]})});});const css=target=>{const isStaticRenderer=target===RenderTarget.canvas||target===RenderTarget.export;if(!isStaticRenderer){return[...rules,...breakpointKeys.map(key=>{const query=mediaQueries[key];return`@media ${query} { ${breakpointRules[key].join(\" \")} }`;})];}return[...rules,...breakpointKeys.flatMap(key=>{const selector=breakpointRules[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1000\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"jcNBKUvNE\":{\"layout\":[\"fixed\",\"fixed\"]},\"LxyB7aXe0\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"s2EljUHYb\":[\".framer-1hnerv-container\",\".framer-hcp36o-container\",\".framer-3poci0\"],\"jcNBKUvNE\":[\".framer-1hnerv-container\",\".framer-hcp36o-container\",\".framer-3poci0\"],\"LxyB7aXe0\":[\".framer-1hnerv-container\",\".framer-hcp36o-container\",\".framer-3poci0\"]}\n * @framerBreakpoints {\"s2EljUHYb\":{\"min\":1200,\"canvasClassName\":\"framer-dkvg8n-override\",\"minHeight\":1000,\"name\":\"Desktop\",\"width\":1200,\"rootFontSize\":16},\"jcNBKUvNE\":{\"min\":810,\"max\":1199,\"canvasClassName\":\"framer-19j8kab-override\",\"minHeight\":1000,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":810,\"rootFontSize\":16},\"LxyB7aXe0\":{\"max\":809,\"canvasClassName\":\"framer-s7r1b9-override\",\"minHeight\":1000,\"viewportHeight\":844,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant s2EljUHYb\n * @framerLayoutTemplate true\n */const FramerwsItWLJf2=withCSS(Component,css,\"framer-6FlDh\");export default FramerwsItWLJf2;FramerwsItWLJf2.displayName=\"Header and footer\";FramerwsItWLJf2.defaultProps={height:1e3,width:1200};addFonts(FramerwsItWLJf2,[{explicitInter:true,fonts:[]},...NavFonts,...Footer2Fonts,...BuyButtonFonts],{supportsExplicitInterCodegen:true});FramerwsItWLJf2.loader={load:(props,context)=>{return runTasksWithYield([()=>forwardLoader(Nav,{},context),()=>forwardLoader(Footer2,{},context),()=>forwardLoader(BuyButton,{},context)],context);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerwsItWLJf2\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerBreakpoints\":\"{\\\"s2EljUHYb\\\":{\\\"min\\\":1200,\\\"canvasClassName\\\":\\\"framer-dkvg8n-override\\\",\\\"minHeight\\\":1000,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1200,\\\"rootFontSize\\\":16},\\\"jcNBKUvNE\\\":{\\\"min\\\":810,\\\"max\\\":1199,\\\"canvasClassName\\\":\\\"framer-19j8kab-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":810,\\\"rootFontSize\\\":16},\\\"LxyB7aXe0\\\":{\\\"max\\\":809,\\\"canvasClassName\\\":\\\"framer-s7r1b9-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerDefaultVariant\":\"s2EljUHYb\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"jcNBKUvNE\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"LxyB7aXe0\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicHeight\":\"1000\",\"framerHitTargets\":\"{\\\"s2EljUHYb\\\":[\\\".framer-1hnerv-container\\\",\\\".framer-hcp36o-container\\\",\\\".framer-3poci0\\\"],\\\"jcNBKUvNE\\\":[\\\".framer-1hnerv-container\\\",\\\".framer-hcp36o-container\\\",\\\".framer-3poci0\\\"],\\\"LxyB7aXe0\\\":[\\\".framer-1hnerv-container\\\",\\\".framer-hcp36o-container\\\",\\\".framer-3poci0\\\"]}\",\"framerLayoutTemplate\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerComponentViewportWidth\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","\r\n\t\timport * as Framer from \"framer\";\r\nimport * as React from \"react\";\r\nimport { createPortal } from \"react-dom\";\r\nimport * as ReactDOM from \"react-dom/client\";\r\nimport HeaderAndFooter from \"https://framerusercontent.com/modules/1XzrFgPFPFiBi4P1XReF/S6XZHKI9CGXAJghDp1Gh/wsItWLJf2.js\";\r\n\r\n\t\tconst routes = {OGYUA2sGR: {elements: {iTLQ_Zp7g: \"results\", lyT0iud3F: \"outcomes\", m6D3owMnn: \"hero\", pvhswYt70: \"faq\", R3j1c_BIW: \"consultant\", rpv6nrg8I: \"comparison\", T_cld1bm9: \"pricing\", UomjeXr8I: \"problem\", Y28oKWpon: \"testimonials\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/dOCBX6xyb1KIODX8fiaK/pZJD0v4hFaELULFgokIh/OGYUA2sGR.js\")), path: \"/\"}, L0mKoXhuA: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/xlxJS2FMAANALHoEOps4/F9LsaX65r3WkTD8DkP4e/L0mKoXhuA.js\")), path: \"/404\"}}\r\n\r\n\t\tconst locales = [{code: \"en\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n\t\tconst collectionUtils = {}\r\n\t\tconst serverDatabaseClient = undefined\r\n\t\tconst framerSiteId = \"98f4a95477210115a48e59ba9e1f78578883b643314c72349fa2bca751ba0261\"\r\n\t\tfunction Template({webPageId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"OGYUA2sGR\":\r\ncase \"L0mKoXhuA\":\r\nreturn React.createElement(HeaderAndFooter, {...props, key: \"HeaderAndFooter\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"OGYUA2sGR\":\r\ncase \"L0mKoXhuA\":\r\nreturn [{hash: \"dkvg8n\", mediaQuery: \"(min-width: 1200px)\"}, {hash: \"19j8kab\", mediaQuery: \"(min-width: 810px) and (max-width: 1199.98px)\"}, {hash: \"s7r1b9\", mediaQuery: \"(max-width: 809.98px)\"}]\r\ndefault: { return undefined }}}\r\n\r\n\t\tconst isBrowser = typeof document !== \"undefined\"\r\n\t\tconst isBot = isBrowser && /bot|-google|google-|yandex|ia_archiver|crawl|spider/iu.test(navigator.userAgent)\r\n\r\n\t\t\r\n\t\t\r\n\r\n\t\texport async function getPageRoot({\r\n\t\t\trouteId,\r\n\t\t\tpathVariables,\r\n\t\t\tcanonicalPathVariables,\r\n\t\t\tlocaleId,\r\n\t\t\tcollectionItemId,\r\n\t\t\tcontentLocaleId,\r\n\t\t\tshouldResolveInitialRouteContentState = false,\r\n\t\t}) {\r\n\t\t\tconst rootPreload = routes[routeId].page.preload()\r\n\r\n\t\t\t\r\n\r\n\t\t\tFramer.setLibraryFeatures({checkServerSideRouter: true, disableCustomCode: false, disableHoverOnMobile: false, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageLocalizationSupport: true, onPageMoveTool: true, onPageRichTextBlockSelection: true, scrollRestoration: true, synchronousNavigationOnDesktop: false, yieldOnTap: false})\r\n\t\t\tFramer.setCurrentSiteId(framerSiteId)\r\n\r\n\t\t\tconst content = React.createElement(\r\n\t\t\t\tFramer.PageRoot,\r\n\t\t\t\t{\r\n\t\t\t\t\tisWebsite: true,\r\n\t\t\t\t\tenvironment: \"site\",\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\tcanonicalPathVariables,\r\n\t\t\t\t\troutes,\r\n\t\t\t\t\tcollectionUtils,\r\n\t\t\t\t\tserverDatabaseClient,\r\n\t\t\t\t\tframerSiteId,\r\n\t\t\t\t\tnotFoundPage: Framer.lazy(() => import(\"https://framerusercontent.com/modules/xlxJS2FMAANALHoEOps4/F9LsaX65r3WkTD8DkP4e/L0mKoXhuA.js\")),\r\n\t\t\t\t\tisReducedMotion: undefined,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tlocales,\r\n\t\t\t\t\tpreserveQueryParams: undefined,\r\n\t\t\t\t\tsiteCanonicalURL: \"https://vslengine.framer.website\",\r\n\t\t\t\t\tEditorBar: \r\n\t\t\ttypeof window !== \"undefined\" ? (() => {\r\n\t\t\t\tif (isBot) {\r\n\t\t\t\t\tconsole.log(\"[Framer On-Page Editing] Unavailable because navigator is bot\")\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn Framer.lazy(async () => {\r\n\t\t\t\t\tconst dependencies = {\r\n\t\t\t\t\t\t__version: 3,\r\n\t\t\t\t\t\tframer: {\r\n\t\t\t\t\t\t\tuseCurrentRoute: Framer.useCurrentRoute,\r\n\t\t\t\t\t\t\tuseLocaleInfo: Framer.useLocaleInfo,\r\n\t\t\t\t\t\t\tuseRouter: Framer.useRouter,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\treact: {\r\n\t\t\t\t\t\t\tcreateElement: React.createElement,\r\n\t\t\t\t\t\t\tFragment: React.Fragment,\r\n\t\t\t\t\t\t\tmemo: React.memo,\r\n\t\t\t\t\t\t\tuseCallback: React.useCallback,\r\n\t\t\t\t\t\t\tuseEffect: React.useEffect,\r\n\t\t\t\t\t\t\tuseRef: React.useRef,\r\n\t\t\t\t\t\t\tuseState: React.useState,\r\n\t\t\t\t\t\t\tuseLayoutEffect: React.useLayoutEffect,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\"react-dom\": { createPortal },\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\twindow.__framer_editorBarDependencies = dependencies\r\n\r\n\t\t\t\t\tconst { createEditorBar } = await import(\"https://framer.com/edit/init.mjs\")\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tdefault: createEditorBar(),\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t})() : undefined\r\n\t\t,\r\n\t\t\t\t\tadaptLayoutToTextDirection: true,\r\n\t\t\t\t\tLayoutTemplate: Template,\r\n\t\t\t\t\tloadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/Q74MFx2K23ViC3DeZN0e/xAAkGd02j0ebN0yhJdxb/snippets.js\")),\r\n\t\t\t\t\tinitialCollectionItemId: collectionItemId,\r\n\t\t\t\t\tinitialContentLocaleIdOverride: contentLocaleId,\r\n\t\t\t\t}\r\n\t\t\t)\r\n\r\n\t\t\tconst contentWithGracefullyDegradingErrorBoundary = React.createElement(Framer.GracefullyDegradingErrorBoundary, {\r\n\t\t\t\tchildren: content\r\n\t\t\t})\r\n\r\n\t\t\t\r\n\t\t\tconst page = React.createElement(Framer.PageEffectsProvider, {\r\n\t\t\t\tchildren: contentWithGracefullyDegradingErrorBoundary,\r\n\t\t\t\tvalue: {routes: {}}\r\n\t\t\t})\r\n\r\n\t\t\t// We don't want the initial render to immediately have to suspend.\r\n\t\t\tawait rootPreload\r\n\t\t\treturn page\r\n\t\t}\r\n\t\r\n\r\n\t\tif (isBrowser) {\r\n\t\t\t// Note: HTTPArchive also uses this function to detect Framer sites; see https://github.com/HTTPArchive/wappalyzer/blob/371a17583f74fd9171b9077f59a5619b24062891/src/technologies/f.json#L1722-L1748.\r\n\t\t\twindow.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\r\n\t\t\t\treturn React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\r\n\t\t\t}\r\n\r\n\t\t\twindow.__framer_events = window.__framer_events || []\r\n\r\n\t\t\t// Initialize lazy modules cache for hydration\r\n\t\t\tFramer.initLazyModulesCache()\r\n\r\n\t\t\tconst container = document.getElementById(\"main\")\r\n\t\t\t// We know that #main is parsed before this script, so we don't need to wait for DOMContentLoaded or similar events.\r\n\t\t\tif (\"framerHydrateV2\" in container.dataset) main(true, container)\r\n\t\t\telse main(false, container)\r\n\t\t}\r\n\r\n\t\tfunction track() {\r\n\t\t\tif (!isBrowser) return\r\n\t\t\twindow.__framer_events.push(arguments)\r\n\t\t}\r\n\r\n\t\tasync function main(shouldHydrate, container) {\r\n\t\t\tfunction handleError(error, errorInfo, recoverable = true) {\r\n\t\t\t\tif (error.caught || window.__framer_hadFatalError) return // we already logged it\r\n\r\n\t\t\t\tconst componentStack = errorInfo?.componentStack\r\n\t\t\t\tif (recoverable) {\r\n\t\t\t\t\tconsole.warn(\"Caught a recoverable error. The site is still functional, but might have some UI flickering or degraded page load performance. If you are the author of this website, update external components and check recently added custom code or code overrides to fix the following server/client mismatches:\\n\", error, componentStack)\r\n\t\t\t\t\t// we only want to collect 1%, because this can be quite noisy (floods the data pipeline)\r\n\t\t\t\t\tif (Math.random() > 0.01) return\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.error(\"Caught a fatal error. Please report the following to the Framer team via https://www.framer.com/contact/:\\n\", error, componentStack)\r\n\t\t\t\t}\r\n\t\t\t\ttrack(recoverable ? \"published_site_load_recoverable_error\" : \"published_site_load_error\", {\r\n\t\t\t\t\tmessage: String(error),\r\n\t\t\t\t\tcomponentStack, // componentStack is more useful\r\n\t\t\t\t\tstack: componentStack ? undefined : error instanceof Error && typeof error.stack === \"string\" ? error.stack : null,\r\n\t\t\t\t})\r\n\t\t\t}\r\n\r\n\t\t\ttry {\r\n\t\t\t\tlet routeId, localeId, contentLocaleId, pathVariables, canonicalPathVariables, breakpoints, routeData\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\trouteData = JSON.parse(container.dataset[\"framerHydrateV2\"])\r\n\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\tcontentLocaleId = routeData.contentLocaleId\r\n\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\tcanonicalPathVariables = routeData.canonicalPathVariables\r\n\t\t\t\t\tbreakpoints = routeData.breakpoints\r\n\r\n\t\t\t\t\trouteId = Framer.patchRoutesForABTesting(routes, routeId) // Prioritize optimized route id to avoid flickering in browsers not supporting the server-timing header (Safari older than 16.4)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tFramer.patchRoutesForABTesting(routes, undefined) // This must happen before inferInitialRouteFromPath\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\tconst serverRoute = performance.getEntriesByType(\"navigation\")[0]?.serverTiming?.find(e => e.name === \"route\")?.description\r\n\t\t\t\t\tif (serverRoute) {\r\n\t\t\t\t\t\tconst routeData = new URLSearchParams(serverRoute)\r\n\t\t\t\t\t\trouteId = routeData.get(\"id\")\r\n\t\t\t\t\t\tlocaleId = routeData.get(\"locale\")\r\n\t\t\t\t\t\tfor (const [key, value] of routeData.entries()) {\r\n\t\t\t\t\t\t\tif (!key.startsWith(\"var.\")) continue\r\n\t\t\t\t\t\t\tpathVariables ??= {}\r\n\t\t\t\t\t\t\tpathVariables[key.slice(4)] = value\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (!routeId || !localeId) {\r\n\t\t\t\t\t\tconst routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname), true, locales)\r\n\t\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst pagePromise = getPageRoot({\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tcontentLocaleId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\tcanonicalPathVariables,\r\n\t\t\t\t\tcollectionItemId: shouldHydrate ? routeData?.collectionItemId : undefined,\r\n\t\t\t\t\tshouldResolveInitialRouteContentState: !shouldHydrate,\r\n\t\t\t\t})\r\n\r\n\t\t\t\t\r\nif (typeof window !== \"undefined\") {\r\n\tvoid (async () => {\r\n\t\tconst route = routes[routeId]\r\n\r\n\t\tconst defaultLocaleId = \"default\"\r\n\t\tconst framerLocale = locales.find(({ id }) => !localeId ? id === defaultLocaleId : id === localeId).code\r\n\r\n\t\t\r\n\t\tlet collectionItemId = routeData?.collectionItemId ?? null\r\n\t\tif (collectionItemId === null && route?.collectionId && collectionUtils) {\r\n\t\t\tconst utils = await collectionUtils[route.collectionId]?.()\r\n\t\t\tconst [slug] = Object.values(pathVariables)\r\n\t\t\tif (utils && typeof slug === \"string\") {\r\n\t\t\t\tcollectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n\t\t\t}\r\n\t\t}\r\n\t\r\n\r\n\t\tconst resolvedDateTimeOptions = Intl.DateTimeFormat().resolvedOptions()\r\n\t\tconst timezone = resolvedDateTimeOptions.timeZone\r\n\t\tconst locale = resolvedDateTimeOptions.locale\r\n\r\n\t\t// wait for the page to be activated before sending the pageview event\r\n\t\t// https://developer.chrome.com/docs/web-platform/prerender-pages#impact-on-analytics\r\n\t\tawait new Promise((resolve) => {\r\n\t\t\tif (document.prerendering) {\r\n\t\t\t\tdocument.addEventListener(\"prerenderingchange\", resolve, { once: true })\r\n\t\t\t} else {\r\n\t\t\t\tresolve()\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\twindow.__framer_events.push([\r\n\t\t\t\"published_site_pageview\",\r\n\t\t\t{\r\n\t\t\t\tframerSiteId,\r\n\t\t\t\tversion: 2,\r\n\t\t\t\troutePath: route?.path || \"/\",\r\n\t\t\t\tcollectionItemId,\r\n\t\t\t\tframerLocale: framerLocale || null,\r\n\t\t\t\twebPageId: route?.abTestingVariantId ?? routeId,\r\n\t\t\t\tabTestId: route?.abTestId,\r\n\t\t\t\treferrer: document.referrer || null,\r\n\t\t\t\turl: window.location.href,\r\n\t\t\t\thostname: window.location.hostname || null,\r\n\t\t\t\tpathname: window.location.pathname || null,\r\n\t\t\t\thash: window.location.hash || null,\r\n\t\t\t\tsearch: window.location.search || null,\r\n\t\t\t\ttimezone,\r\n\t\t\t\tlocale,\r\n\t\t\t},\r\n\t\t\t\"eager\"\r\n\t\t])\r\n\r\n\t\t// Yield to avoid blocking the main thread with the user code\r\n\t\tawait Framer.yieldToMain({ priority: \"background\", ensureContinueBeforeUnload: true, continueAfter: \"paint\" })\r\n\r\n\t\tdocument.dispatchEvent(new CustomEvent(\"framer:pageview\", {\r\n\t\t\tdetail: { framerLocale: framerLocale || null }\r\n\t\t}))\r\n\t})()\r\n}\r\n\r\n\r\n\t\t\t\tconst page = await pagePromise\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tFramer.withPerformanceMarks(\"framer-rewrite-breakpoints\", () => {\r\n\t\t\t\t\t\tFramer.removeHiddenBreakpointLayersV2(breakpoints)\r\n\t\t\t\t\t\twindow.__framer_onRewriteBreakpoints?.(breakpoints)\r\n\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tconst startTransition = isBot ? cb => cb() : React.startTransition\r\n\t\t\t\t\tstartTransition(() => {\r\n\t\t\t\t\t\tFramer.markHydrationStart()\r\n\t\t\t\t\t\tFramer.turnOffReactEventHandling()\r\n\t\t\t\t\t\tReactDOM.hydrateRoot(container, page, { onRecoverableError: handleError })\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\t\r\n\t\t\t\t\tReactDOM.createRoot(container, { onRecoverableError: handleError }).render(page)\r\n\t\t\t\t}\r\n\t\t\t} catch (error) {\r\n\t\t\t\thandleError(error, undefined, false)\r\n\t\t\t\tthrow error\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\r\n\r\n\t\t\r\n\t\t;(function () {\r\n\t\t\tif (!isBrowser) return\r\n\r\n\t\t\tReact.startTransition(() => {\r\n\t\t\t\tReactDOM.hydrateRoot(\r\n\t\t\t\t\tdocument.getElementById(\"__framer-badge-container\"),\r\n\t\t\t\t\tReact.createElement(React.Suspense, {}, React.createElement(React.lazy(() => import(\"__framer-badge\"))))\r\n\t\t\t\t)\r\n\t\t\t})\r\n\t\t})()\r\n\t"],"mappings":"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"}