{
  "version": 3,
  "sources": ["ssg:https://ga.jspm.io/npm:react-dom@18.1.0/client.js", "framer:toplevel:framer:toplevel/0"],
  "sourcesContent": ["import*as t from\"react-dom\";var o=\"default\"in t?t.default:t;var a={};var e=o;a.createRoot=e.createRoot;a.hydrateRoot=e.hydrateRoot;const r=a.createRoot,d=a.hydrateRoot;export{r as createRoot,a as default,d as hydrateRoot};\n\n//# sourceMappingURL=client.js.map", "\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 = {BFNedakba: {elements: {euo_6emdT: \"top\", TjYclQtBB: \"hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/qqkrEvnpa56ylduM9s3P/FTG0llr1eJkdx7tqZY7V/BFNedakba.js\")), path: \"/\"}, XYupEHKKA: {elements: {AEfgt_SMe: \"hero\", EGl_Q8270: \"top\", Gbm9RMfQS: \"services\", M5s5zSKcm: \"about\", xAIpgFQQ0: \"hero-image\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/9vBxnrVvpt9XPZlT8gzF/0VD4oiCgDHuopQr0mqTW/XYupEHKKA.js\")), path: \"/about\"}, et7_tOxnT: {elements: {E1VQBemqH: \"top\", JFPR1SFnF: \"hero-trigger\", yfJy9cc3a: \"hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/eBs2jlQiWRrmbmmttHvr/DQitNe7RIQ8xaN5xk76C/et7_tOxnT.js\")), path: \"/projects\"}, WfqxvtQDy: {elements: {C2LZuxZlA: \"top\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/iYox8l1G8jOhtYC2S0CV/2UCUd7Sbjfrr4l1nNIco/WfqxvtQDy.js\")), path: \"/contact\"}, oEXry0QQi: {elements: {ZGQHI9KjP: \"top\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/qflc1FONJPnweSPrc92B/68qldSdhN4aN0taLkOsp/oEXry0QQi.js\")), path: \"/404\"}, wGmuFfbsi: {elements: {CFq1uSm2r: \"top\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/mhcKilxvmv7AUU2iF9z0/8ecSHPLhzhfEUwSyBp3w/wGmuFfbsi.js\")), path: \"/work/:tPpUoogQ4\"}, npKeRKcOx: {page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/bEXooORz8yLvFPPsogUL/IGsi83uu3iV8jO5JSBwH/npKeRKcOx.js\"))}, mOuZeDTgl: {page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/9ERrgpUYOmkw8RbnnAPb/lvO5UcbNP2nQVHNFx6bB/mOuZeDTgl.js\"))}, n33I6RhE0: {page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/xp8d5u8UmlB91sP6R2xP/RZKqBPdTR5B79u5khUg1/n33I6RhE0.js\"))}, eAv3IhyBB: {page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/2meVdBcau3DEbHiGs1K2/6DPABQQ5MeWj0FVdBcHm/eAv3IhyBB.js\"))}, TPxYNo04B: {page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/z5dwFEurISdSaQH7YPN9/yRK4kN5q56PQkxX5ps7n/TPxYNo04B.js\"))}}\n            const notFoundPage = Framer.lazy(() => import(\"https://framerusercontent.com/modules/qflc1FONJPnweSPrc92B/68qldSdhN4aN0taLkOsp/oEXry0QQi.js\"))\n            const container = document.getElementById(\"main\")\n\n            let routeId, pathVariables, shouldHydrate = false\n            if (\"framerHydrateV2\" in container.dataset) {\n                const routeData = JSON.parse(container.dataset.framerHydrateV2)\n                routeId = routeData.routeId\n                pathVariables = routeData.pathVariables\n                shouldHydrate = true\n            } else {\n                const routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname))\n                routeId = routeData.routeId\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 element = React.createElement(\n                Framer.PageRoot,\n                {\n                    RootComponent,\n                    isWebsite: true,\n                    routeId,\n                    pathVariables,\n                    routes,\n                    notFoundPage,\n                    isReducedMotion: undefined,\n                    includeDataObserver: false,\n                }\n            )\n\n            if (shouldHydrate) {\n                React.startTransition(() => {\n                    ReactDOM.hydrateRoot(container, element)\n                })\n            } else {\n                ReactDOM.createRoot(container).render(element)\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        ;(async () => {\n            const { default: Badge } = await import(\"__framer-badge\")\n            const ContainerWithStyleAppearEffect = Framer.withStyleAppearEffect(Framer.Container)\n            React.startTransition(() => {\n                ReactDOM.createRoot(document.getElementById(\"__framer-badge-container\"))\n                    .render(React.createElement(ContainerWithStyleAppearEffect, {\n                        className: \"__framer-badge\",\n                        __framer__threshold: 0.5,\n                        __framer__animateOnce: true,\n                        __framer__opacity: 0,\n                        __framer__targetOpacity: 1,\n                        __framer__rotate: 0,\n                        __framer__x: 0,\n                        __framer__y: 10,\n                        __framer__scale: 1,\n                        __framer__transition: {\n                            \"type\": \"spring\",\n                            \"ease\": [0.44, 0, 0.56, 1],\n                            \"duration\": 0.3,\n                            \"delay\": 1,\n                            \"stiffness\": 350,\n                            \"damping\": 40,\n                            \"mass\": 1.5\n                        },\n                        __framer__rotateX: 0,\n                        __framer__rotateY: 0,\n                        __framer__perspective: 1200,\n                    }, React.createElement(Badge)))\n                })\n        })()\n    "],
  "mappings": "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",
  "names": ["o", "npm_react_dom_18_1_exports", "Ba", "a", "e", "r", "d", "window", "packageAndFilename", "exportIdentifier", "B", "ErrorPlaceholder", "installFlexboxGapWorkaroundIfNeeded", "routes", "lazy", "notFoundPage", "container", "routeId", "pathVariables", "shouldHydrate", "routeData", "inferInitialRouteFromPath", "RootComponent", "element", "PageRoot", "Z", "d", "r", "error", "Badge", "ContainerWithStyleAppearEffect", "withStyleAppearEffect", "Container"]
}
