{
  "version": 3,
  "sources": ["framer:toplevel:framer:toplevel/default/0"],
  "sourcesContent": ["\n        import * as React from \"react\"\n        import * as ReactDOM from \"react-dom/client\"\n        import * as Framer from \"framer\"\n\n        window.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\n            return React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\n        }\n\n        // A lot of libraries assume process.env.NODE_ENV is present in runtime/buildtime, so we are polyfilling it\n        window.process = {\n            ...window.process,\n            env: {\n                ...(window.process ? window.process.env: undefined),\n                NODE_ENV: \"production\"\n            }\n        }\n\n        // Fallback support for stack gaps\n        Framer.installFlexboxGapWorkaroundIfNeeded()\n\n        ;(async () => {\n            const routes = {k8mymhMvE: {elements: {arojIC86l: \"work-5\", b41ZlS9Ca: \"work-3\", bBdrvxQ6c: \"work-2\", CqVFzZSUr: \"work-mobile\", Cxuwn1lAJ: \"work-section-5\", D6IJrp2Xi: \"work-section-1\", DmM_K8uOn: \"hero-section-2\", DY3WFi2Tu: \"work-section-3\", fOT4BUTxa: \"footer-section\", gw8YvtZNk: \"work-section-4\", GxCD6GQay: \"work\", Jgs7tt7HT: \"about-section\", JH2w2jPyL: \"hero-section-1\", NUh2s0q4c: \"services-section\", paDvJllyJ: \"services-section-1\", QZ2_mruSF: \"hero-section\", rp7bqGcmz: \"work-1\", so_x71QQ6: \"work-4\", wEU0xWUD9: \"work-section\", zDe90XGpN: \"hero-section-3\", zNz69bwhU: \"work-section-2\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/OV96nnSEhVSCgFxl1lNQ/JXJPcKkL7X6PDAjskOH9/k8mymhMvE.js\")), path: \"/\"}, X82_ntjUb: {elements: {c5nTaBgSk: \"footer-section\", h96YzREUn: \"hero-section-3\", HLaSOoaIR: \"hero-section-1\", l9DVkn0zc: \"hero-section-2\", mKpmfjVZw: \"hero-section-5\", vFj5zeHt2: \"hero-section\", X7J8ei7Vm: \"hero-section-4\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/mRQ0mn1JG8MIugjzAZpN/nuXyKczgV89tMzQeu3M5/X82_ntjUb.js\")), path: \"/work\"}, oSqiE1i1k: {elements: {cwpmO5sKB: \"hero-section-2\", G2EzsSEDs: \"work\", h1Ro3_2sj: \"hero-section-4\", t8gB4PMb0: \"hero-section-5\", urRrvIiYV: \"footer-section\", VsUTkQLm6: \"hero-section-1\", XyOF4nPYG: \"hero-section\", Z6x9HsByy: \"hero-section-3\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/70N4AKDYIUNYeNCmhy58/oE6bmHzVmGikZZjzIM9w/oSqiE1i1k.js\")), path: \"/contact\"}, z7NPxyVsv: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/f80c7KTsaE3uF918WXSA/WtySjoWZhkE2e5vFrXC4/z7NPxyVsv.js\")), path: \"/licensing\"}, KBlFSas6i: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/xBRxVPA5MsqnQTq9dwgI/lIF8GAcMcWYjjCejioRN/KBlFSas6i.js\")), path: \"/404\"}, Cxj5fj2mh: {elements: {I6fwwrKY1: \"hero-section-2\", KLB5oN_WN: \"hero-section-4\", LK97O7G58: \"footer-section\", MHtg6LWOR: \"hero-section\", TOQisahw9: \"hero-section-3\", uRyzg_k13: \"hero-section-1\", vO2HqYE54: \"hero-section-5\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/VAb7Rs8ikhQaqk1DpudG/awBUejtm4ltFevH6u0w4/Cxj5fj2mh.js\")), path: \"/blog\"}, UchV65umT: {elements: {BQFEhkGm5: \"hero-section-3\", E8jgt808a: \"work-1\", EAHuxc11h: \"work\", F7ppuLm0p: \"footer-section\", m2DlxcFFU: \"hero-section-1\", N2f7rSOQO: \"hero-section-5\", qXUihquTo: \"work-section-1\", r6B8tfNmH: \"hero-section\", rr6Uef8sN: \"work-section\", XKyUoMq6S: \"hero-section-4\", Zko3dlkxi: \"hero-section-2\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/cdq9IPV9I6jPbDX15MTY/RAaojRMlcHmK64SOsITf/UchV65umT.js\")), path: \"/work/:q6wyKlkO2\"}, GeiNjMwh_: {elements: {BQY_WW0Eg: \"hero-section-3\", FbeJhs725: \"hero-section\", kADcRLglF: \"hero-section-1\", lpBl8hJL6: \"work\", LpQfcaRvm: \"footer-section\", URp3o5w7H: \"work-section\", yQwEXX1HZ: \"hero-section-2\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/OT7PMJXuNnK66Wxl2LD3/O8tb6ny7CkSRvbpRC7YC/GeiNjMwh_.js\")), path: \"/blog/:s9F3ORfsE\"}, MOjbVA0Bl: {page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/zLprZUR7NPqII8JkP431/ElIHNTRT0q4nhMqGEYpf/MOjbVA0Bl.js\"))}}\n            const locales = [{code: \"en\", id: \"default\", name: \"English\", slug: \"\"}]\n            const notFoundPage = Framer.lazy(() => import(\"https://framerusercontent.com/modules/xBRxVPA5MsqnQTq9dwgI/lIF8GAcMcWYjjCejioRN/KBlFSas6i.js\"))\n            const container = document.getElementById(\"main\")\n\n            let routeId, localeId, pathVariables, shouldHydrate = false\n            if (\"framerHydrateV2\" in container.dataset) {\n                const routeData = JSON.parse(container.dataset.framerHydrateV2)\n                routeId = routeData.routeId\n                localeId = routeData.localeId\n                pathVariables = routeData.pathVariables\n                shouldHydrate = true\n            } else {\n                const routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname), true, locales)\n                routeId = routeData.routeId\n                localeId = routeData.localeId\n                pathVariables = routeData.pathVariables\n            }\n\n            const route = routes[routeId]\n            const RootComponent = await route.page.preload()\n            routes[routeId].page = RootComponent\n\n            const content = React.createElement(\n                Framer.PageRoot,\n                {\n                    RootComponent,\n                    isWebsite: true,\n                    routeId,\n                    pathVariables,\n                    routes,\n                    notFoundPage,\n                    isReducedMotion: undefined,\n                    localeId,\n                    locales\n                }\n            )\n\n            const page = React.createElement(Framer.PageEffectsProvider, {\n                children: content,\n                value: {routes: {}}\n            })\n\n            if (shouldHydrate) {\n                React.startTransition(() => {\n                    ReactDOM.hydrateRoot(container, page)\n                })\n            } else {\n                ReactDOM.createRoot(container).render(page)\n            }\n        })().catch(error => {\n            window.__send_framer_event && window.__send_framer_event(\"published_site_load_error\", {\n                message: String(error),\n                stack: error instanceof Error && typeof error.stack === \"string\" ? error.stack : null\n            })\n            throw error\n        })\n\n        \n    "],
  "mappings": "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",
  "names": ["window", "packageAndFilename", "exportIdentifier", "B", "ErrorPlaceholder", "installFlexboxGapWorkaroundIfNeeded", "routes", "lazy", "locales", "notFoundPage", "container", "routeId", "localeId", "pathVariables", "shouldHydrate", "routeData", "inferInitialRouteFromPath", "RootComponent", "content", "PageRoot", "page", "PageEffectsProvider", "Z", "d", "r", "error"]
}
