{"version":3,"file":"script_main.BVkM70Wb.mjs","names":["breakpoints","serializationHash","variantClassNames","breakpointRules","breakpointKeys","selectors","rules","mediaQueries","HTMLStyle","humanReadableVariantMap","getProps","Component","useRef","React.useId","css","mask","SVG","getProps","Icon","mask","SVG","getProps","Icon","getProps","useMemo","BlurGradientFonts","BlurGradient","serializationHash","variantClassNames","transition1","React.useContext","React.useMemo","React.Fragment","humanReadableVariantMap","getProps","useRef","React.useId","Nav","BlurGradient","IconLinkedin","IconDribbble","Mail","useRef","React.useId","PropertyOverrides","React.createElement","HomeLayout","InnerLayout","Framer.PageRoot","Framer.lazy","Framer.useCurrentRoute","Framer.useLocaleInfo","Framer.useRouter","React.Fragment","React.memo","React.useCallback","React.useEffect","React.useRef","React.useState","Framer.LibraryFeaturesProvider","Framer.GracefullyDegradingErrorBoundary","Framer.PageEffectsProvider","breakpoints","Framer.patchRoutesForABTesting","Framer.inferInitialRouteFromPath","Framer.yieldToMain","React.startTransition","Framer.ErrorPlaceholder"],"sources":["https:/framerusercontent.com/modules/kRVzEuptTOb3lnlcCzSB/2voQYVwD3EmrNUGLVFCq/ExBgovve2.js","https:/framerusercontent.com/modules/2lukjN685io0R2nzbrjX/vcnxgiVAwIgLStownmGs/VFD0vAErg.js","https:/framerusercontent.com/modules/FAENEqXQQUnFXXPgPiah/iidR8pruOrBK3RlWOYc4/drYWPnMeR.js","https:/framerusercontent.com/modules/QL65NekRyGlej8APmFiL/EfJhiBMusrx6SCmF9LfF/aE7ozwXux.js","https:/framerusercontent.com/modules/rofp3mS0LNY15cjhHzia/mqQEarGIByho1rG31aTv/BlurGradient_Prod.js","https:/framerusercontent.com/modules/raqnNGxX6eHDagAXYq2N/xfl4aU3T7USswbB5mKEY/h3Lv4e_xP.js","https:/framerusercontent.com/modules/WP91xQrb5fiUqf5zFibB/S8rPURtoo5Vb77NlOppu/Dynamic_year.js","https:/framerusercontent.com/modules/ube63np3k2VUOemNWhAf/HQbhyPSssuYrkerpF8Uy/SzVDEXNL1.js","framer:toplevel/main"],"sourcesContent":["// Generated by Framer (d8b0f12)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,cx,GeneratedComponentContext,RenderTarget,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const breakpoints={fO47LEVoQ:\"(min-width: 1440px)\",hKSM_y3uF:\"(min-width: 1025px) and (max-width: 1439.98px)\",UCoNkeVIl:\"(min-width: 700px) and (max-width: 1024.98px)\",YStzoNh7J:\"(max-width: 699.98px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-2WoDg\";const variantClassNames={fO47LEVoQ:\"framer-v-1a75pn5\",hKSM_y3uF:\"framer-v-u5eccd\",UCoNkeVIl:\"framer-v-t72il6\",YStzoNh7J:\"framer-v-vr2iup\"};const breakpointRules={YStzoNh7J:[\".framer-2WoDg.framer-1a75pn5 { gap: 64px; }\",'.framer-2WoDg .framer-10exdqu, [data-layout-template=\"true\"] > #overlay { margin-bottom: -64px; }']};const breakpointKeys=Object.keys(breakpointRules);const selectors={YStzoNh7J:\".framer-vr2iup-override\"};const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-2WoDg.framer-72xklu, .framer-2WoDg .framer-72xklu { display: block; }\",\".framer-2WoDg.framer-1a75pn5 { -webkit-tap-highlight-color: rgba(0, 0, 0, 0); align-content: center; align-items: center; background-color: var(--token-62d5ebd4-5867-40fc-ba4d-ed46a167a079, #000000); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-2WoDg .framer-10exdqu { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -16px; position: relative; width: 0px; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -16px; }'];const mediaQueries={fO47LEVoQ:\"(min-width: 1440px)\",hKSM_y3uF:\"(min-width: 1025px) and (max-width: 1439.98px)\",UCoNkeVIl:\"(min-width: 700px) and (max-width: 1024.98px)\",YStzoNh7J:\"(max-width: 699.98px)\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const humanReadableVariantMap={Desktop:\"fO47LEVoQ\",Laptop:\"hKSM_y3uF\",Phone:\"YStzoNh7J\",Tablet:\"UCoNkeVIl\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"fO47LEVoQ\"};};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:{isLayoutTemplate:true,primaryVariantId:\"fO47LEVoQ\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: var(--token-62d5ebd4-5867-40fc-ba4d-ed46a167a079, rgb(0, 0, 0)); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-1a75pn5\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-10exdqu\"})]}),/*#__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=selectors[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 800\n * @framerIntrinsicWidth 1440\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"hKSM_y3uF\":{\"layout\":[\"fixed\",\"fixed\"]},\"UCoNkeVIl\":{\"layout\":[\"fixed\",\"fixed\"]},\"YStzoNh7J\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {}\n * @framerBreakpoints {\"fO47LEVoQ\":{\"min\":1440,\"canvasClassName\":\"framer-1a75pn5-override\",\"minHeight\":800,\"name\":\"Desktop\",\"width\":1440,\"rootFontSize\":16},\"hKSM_y3uF\":{\"min\":1025,\"max\":1439,\"canvasClassName\":\"framer-u5eccd-override\",\"minHeight\":800,\"viewportHeight\":860,\"name\":\"Laptop\",\"width\":1025,\"rootFontSize\":16},\"UCoNkeVIl\":{\"min\":700,\"max\":1024,\"canvasClassName\":\"framer-t72il6-override\",\"minHeight\":800,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":700,\"rootFontSize\":16},\"YStzoNh7J\":{\"max\":699,\"canvasClassName\":\"framer-vr2iup-override\",\"minHeight\":800,\"viewportHeight\":844,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant fO47LEVoQ\n * @framerLayoutTemplate\n */const FramerExBgovve2=withCSS(Component,css,\"framer-2WoDg\");export default FramerExBgovve2;FramerExBgovve2.displayName=\"Home Layout\";FramerExBgovve2.defaultProps={height:800,width:1440};addFonts(FramerExBgovve2,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerExBgovve2\",\"slots\":[],\"annotations\":{\"framerDefaultVariant\":\"fO47LEVoQ\",\"framerColorSyntax\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerLayoutTemplate\":\"\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"hKSM_y3uF\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"UCoNkeVIl\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"YStzoNh7J\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerBreakpoints\":\"{\\\"fO47LEVoQ\\\":{\\\"min\\\":1440,\\\"canvasClassName\\\":\\\"framer-1a75pn5-override\\\",\\\"minHeight\\\":800,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1440,\\\"rootFontSize\\\":16},\\\"hKSM_y3uF\\\":{\\\"min\\\":1025,\\\"max\\\":1439,\\\"canvasClassName\\\":\\\"framer-u5eccd-override\\\",\\\"minHeight\\\":800,\\\"viewportHeight\\\":860,\\\"name\\\":\\\"Laptop\\\",\\\"width\\\":1025,\\\"rootFontSize\\\":16},\\\"UCoNkeVIl\\\":{\\\"min\\\":700,\\\"max\\\":1024,\\\"canvasClassName\\\":\\\"framer-t72il6-override\\\",\\\"minHeight\\\":800,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":700,\\\"rootFontSize\\\":16},\\\"YStzoNh7J\\\":{\\\"max\\\":699,\\\"canvasClassName\\\":\\\"framer-vr2iup-override\\\",\\\"minHeight\\\":800,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerIntrinsicHeight\":\"800\",\"framerIntrinsicWidth\":\"1440\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerHitTargets\":\"{}\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (808fccf)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 48 48\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 46 23.004 C 46 35.698 35.706 46 23 46 L 21.134 46 L 21.134 45.917 C 9.31 44.966 0 35.062 0 22.996 C 0 10.302 10.294 0 23 0 C 35.706 0 46 10.311 46 23.004 Z M 28.082 41.593 C 30.904 36.522 31.754 30.433 30.582 24.753 C 23.79 27.278 17.856 32.927 15.666 40.815 C 17.927 41.747 20.404 42.262 23 42.262 L 23.572 42.262 C 25.097 42.218 26.611 41.993 28.082 41.592 Z M 27.608 17.117 C 25.868 17.831 24.058 18.36 22.207 18.695 C 18.949 19.283 15.601 19.303 12.334 18.704 C 9.766 18.247 7.276 17.424 4.941 16.262 C 4.159 18.358 3.731 20.627 3.731 22.996 C 3.731 29.675 7.136 35.563 12.305 39.02 C 15.025 30.242 21.796 23.952 29.548 21.16 C 29.03 19.754 28.381 18.4 27.608 17.117 Z M 34.178 23.726 C 35.298 28.897 34.959 34.376 33.171 39.369 C 38.476 36.066 42.057 30.257 42.26 23.602 C 39.623 23.124 36.874 23.182 34.179 23.726 Z M 42.001 19.782 C 41.405 16.255 39.836 12.965 37.471 10.281 C 35.575 12.325 33.383 14.073 30.968 15.467 C 31.838 16.95 32.566 18.512 33.144 20.132 C 36.077 19.505 39.08 19.372 42 19.782 Z M 13.003 15.034 C 15.828 15.544 18.721 15.541 21.545 15.024 C 22.846 14.789 24.123 14.44 25.363 13.986 C 24.199 12.608 22.889 11.36 21.457 10.263 C 21.359 10.195 21.25 10.114 21.162 10.048 L 20.937 9.879 L 20.785 9.765 C 20.635 9.652 20.484 9.542 20.331 9.434 L 20.323 9.428 L 20.268 9.397 L 20.204 9.353 C 20.108 9.289 20.023 9.23 19.945 9.176 L 19.945 9.175 C 19.775 9.058 19.638 8.963 19.499 8.881 L 19.408 8.827 L 19.327 8.765 L 19.321 8.762 C 19.17 8.666 19.017 8.573 18.863 8.482 C 18.687 8.379 18.526 8.287 18.399 8.215 L 18.246 8.127 L 18.241 8.124 L 18.211 8.107 L 18.196 8.099 C 18.108 8.052 18.02 8.003 17.934 7.952 C 17.803 7.87 17.669 7.793 17.533 7.721 L 17.529 7.718 C 17.115 7.519 16.7 7.322 16.284 7.128 L 16.26 7.117 L 16.16 7.067 C 15.808 6.904 15.387 6.745 14.915 6.565 L 14.914 6.565 L 14.599 6.445 C 14.308 6.341 14.005 6.246 13.689 6.146 L 13.688 6.146 L 13.666 6.139 C 10.763 7.751 8.322 10.083 6.58 12.91 C 8.605 13.921 10.765 14.636 12.993 15.032 Z M 23 3.729 C 21.557 3.729 20.15 3.889 18.797 4.189 L 19.167 4.366 L 19.211 4.386 L 19.255 4.409 L 19.29 4.429 L 19.292 4.43 C 19.45 4.513 19.606 4.601 19.759 4.694 L 19.809 4.724 L 19.823 4.734 C 19.88 4.766 19.937 4.798 19.994 4.829 L 20.011 4.839 L 20.061 4.866 L 20.062 4.868 C 20.08 4.877 20.098 4.887 20.115 4.898 L 20.215 4.954 C 20.345 5.029 20.554 5.148 20.748 5.262 C 20.998 5.404 21.243 5.557 21.481 5.719 C 21.724 5.867 21.99 6.052 22.168 6.175 L 22.255 6.235 C 22.379 6.312 22.5 6.393 22.618 6.479 C 22.751 6.575 22.896 6.682 23.028 6.782 L 23.198 6.91 L 23.211 6.92 L 23.397 7.06 C 23.454 7.104 23.513 7.147 23.572 7.188 L 23.586 7.198 L 23.634 7.23 L 23.681 7.266 C 25.616 8.743 27.357 10.459 28.861 12.373 C 31.054 11.141 33.04 9.574 34.749 7.728 C 31.497 5.221 27.423 3.73 23 3.73 Z\" fill=\"var(--imqvxc, var(--token-982e90d2-acd5-47d1-b121-118641205d07, rgb(0, 0, 0)))\" height=\"46px\" id=\"nnG55Opz1\" transform=\"translate(1 1)\" width=\"46px\"/></svg>\\') alpha no-repeat center / auto var(--framer-icon-mask-mode, add), var(--framer-icon-mask, none)';const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.div,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"div\",{...rest,ref:ref});});const getProps=({fill,height,id,width,...props})=>{return{...props,kpQERrwzF:fill??props.kpQERrwzF??\"var(--token-982e90d2-acd5-47d1-b121-118641205d07, rgb(0, 0, 0))\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,kpQERrwzF,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-QRavv\",className),layoutId:layoutId,ref:ref,style:{\"--imqvxc\":kpQERrwzF,...style}});});const css=[`.framer-QRavv { -webkit-mask: ${mask}; aspect-ratio: 1; background-color: var(--imqvxc); mask: ${mask}; width: 48px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 48\n * @framerIntrinsicHeight 48\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"kpQERrwzF\":\"fill\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"icon-dribbble\",\"color\":{\"type\":\"variable\",\"value\":\"imqvxc\"},\"set\":{\"localId\":\"vectorSet/D_vC1d_Q4\",\"id\":\"D_vC1d_Q4\",\"moduleId\":\"cqJ8JeOTr2a5aw85MDbo\"}}\n */const Icon=withCSS(Component,css,\"framer-QRavv\");Icon.displayName=\"icon-dribbble\";export default Icon;addPropertyControls(Icon,{kpQERrwzF:{defaultValue:\"var(--token-982e90d2-acd5-47d1-b121-118641205d07, rgb(0, 0, 0))\",hidden:false,title:\"Fill\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"48\",\"framerImmutableVariables\":\"true\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerVector\":\"{\\\"name\\\":\\\"icon-dribbble\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"imqvxc\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/D_vC1d_Q4\\\",\\\"id\\\":\\\"D_vC1d_Q4\\\",\\\"moduleId\\\":\\\"cqJ8JeOTr2a5aw85MDbo\\\"}}\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerVariables\":\"{\\\"kpQERrwzF\\\":\\\"fill\\\"}\",\"framerIntrinsicWidth\":\"48\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (808fccf)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 48 48\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 9.878 44 L 0.735 44 L 0.735 14.595 L 9.879 14.595 L 9.879 44 Z M 5.306 10.588 C 3.9 10.59 2.551 10.034 1.556 9.041 C 0.56 8.048 0.001 6.7 0 5.294 C 0.001 3.888 0.56 2.54 1.556 1.547 C 2.551 0.554 3.9 -0.002 5.306 0 C 8.23 0 10.6 2.37 10.6 5.294 C 10.596 8.216 8.228 10.584 5.306 10.588 Z M 44.096 44 L 34.965 44 L 34.965 29.706 C 34.965 26.301 34.905 21.91 30.213 21.91 C 25.46 21.91 24.739 25.628 24.739 29.466 L 24.739 44 L 15.619 44 L 15.619 14.595 L 24.378 14.595 L 24.378 18.613 L 24.498 18.613 C 25.713 16.303 28.697 13.861 33.137 13.861 C 42.389 13.861 44.097 19.949 44.097 27.866 L 44.097 44 Z\" fill=\"var(--imqvxc, var(--token-982e90d2-acd5-47d1-b121-118641205d07, rgb(0, 0, 0)))\" height=\"44.00000789642334px\" id=\"TvwbdiwmA\" transform=\"translate(1.5 0)\" width=\"44.09700043487549px\"/></svg>\\') alpha no-repeat center / auto var(--framer-icon-mask-mode, add), var(--framer-icon-mask, none)';const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.div,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"div\",{...rest,ref:ref});});const getProps=({fill,height,id,width,...props})=>{return{...props,kpQERrwzF:fill??props.kpQERrwzF??\"var(--token-982e90d2-acd5-47d1-b121-118641205d07, rgb(0, 0, 0))\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,kpQERrwzF,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-Umd4I\",className),layoutId:layoutId,ref:ref,style:{\"--imqvxc\":kpQERrwzF,...style}});});const css=[`.framer-Umd4I { -webkit-mask: ${mask}; aspect-ratio: 1; background-color: var(--imqvxc); mask: ${mask}; width: 48px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 48\n * @framerIntrinsicHeight 48\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"kpQERrwzF\":\"fill\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"icon-linkedin\",\"color\":{\"type\":\"variable\",\"value\":\"imqvxc\"},\"set\":{\"localId\":\"vectorSet/D_vC1d_Q4\",\"id\":\"D_vC1d_Q4\",\"moduleId\":\"cqJ8JeOTr2a5aw85MDbo\"}}\n */const Icon=withCSS(Component,css,\"framer-Umd4I\");Icon.displayName=\"icon-linkedin\";export default Icon;addPropertyControls(Icon,{kpQERrwzF:{defaultValue:\"var(--token-982e90d2-acd5-47d1-b121-118641205d07, rgb(0, 0, 0))\",hidden:false,title:\"Fill\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"48\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerVector\":\"{\\\"name\\\":\\\"icon-linkedin\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"imqvxc\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/D_vC1d_Q4\\\",\\\"id\\\":\\\"D_vC1d_Q4\\\",\\\"moduleId\\\":\\\"cqJ8JeOTr2a5aw85MDbo\\\"}}\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"48\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerVariables\":\"{\\\"kpQERrwzF\\\":\\\"fill\\\"}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (6ca5d98)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 2 0 L 18 0 C 19.1 0 20 0.9 20 2 L 20 14 C 20 15.1 19.1 16 18 16 L 2 16 C 0.9 16 0 15.1 0 14 L 0 2 C 0 0.9 0.9 0 2 0 Z\" fill=\"transparent\" height=\"16px\" id=\"NvQOXSS14\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" stroke=\"var(--43q7um, rgb(0,0,0))\" transform=\"translate(2 4)\" width=\"20px\"/><path d=\"M 20 0 L 10 7 L 0 0\" fill=\"transparent\" height=\"7px\" id=\"XYqf_BtA8\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" stroke=\"var(--43q7um, rgb(0,0,0))\" transform=\"translate(2 6)\" width=\"20px\"/></svg>\\') alpha no-repeat center / auto var(--framer-icon-mask-mode, add), var(--framer-icon-mask, none)';const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(motion.div,{...rest,layoutId:layoutId,ref:ref}):/*#__PURE__*/_jsx(\"div\",{...rest,ref:ref});});const getProps=({height,id,stroke,width,...props})=>{return{...props,UO5clYVeQ:stroke??props.UO5clYVeQ??\"rgb(0, 0, 0)\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,UO5clYVeQ,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-erqbn\",className),layoutId:layoutId,ref:ref,style:{\"--43q7um\":UO5clYVeQ,...style}});});const css=[`.framer-erqbn { -webkit-mask: ${mask}; aspect-ratio: 1; background-color: var(--43q7um); mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"UO5clYVeQ\":\"stroke\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Mail\",\"color\":{\"type\":\"variable\",\"value\":\"43q7um\"},\"set\":{\"localId\":\"vectorSet/T8qKXkLfy\",\"id\":\"T8qKXkLfy\",\"moduleId\":\"fiHEoJwBMFnT6QLOcpPz\"}}\n * @framerDisableUnlink true\n */const Icon=withCSS(Component,css,\"framer-erqbn\");Icon.displayName=\"Mail\";export default Icon;addPropertyControls(Icon,{UO5clYVeQ:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Stroke\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerVariables\":\"{\\\"UO5clYVeQ\\\":\\\"stroke\\\"}\",\"framerIntrinsicHeight\":\"24\",\"framerContractVersion\":\"1\",\"framerImmutableVariables\":\"true\",\"framerVector\":\"{\\\"name\\\":\\\"Mail\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"43q7um\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/T8qKXkLfy\\\",\\\"id\\\":\\\"T8qKXkLfy\\\",\\\"moduleId\\\":\\\"fiHEoJwBMFnT6QLOcpPz\\\"}}\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"24\",\"framerDisableUnlink\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx}from\"react/jsx-runtime\";import{useMemo}from\"react\";import{motion}from\"framer-motion\";import{addPropertyControls,ControlType}from\"framer\";/**\n * @framerDisableUnlink\n *\n * @framerIntrinsicWidth 240\n * @framerIntrinsicHeight 240\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */function BlurGradient({blur,borderRadius,direction,transition}){const blurSteps=useMemo(()=>[{blur:`${blur/2/2/2/2/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 12.5%, rgba(0, 0, 0, 1) 25%, rgba(0, 0, 0, 0) 37.5%`},{blur:`${blur/2/2/2/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 12.5%, rgba(0, 0, 0, 1) 25%, rgba(0, 0, 0, 1) 37.5%, rgba(0, 0, 0, 0) 50%`},{blur:`${blur/2/2/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 1) 37.5%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 62.5%`},{blur:`${blur/2/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 37.5%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 1) 62.5%, rgba(0, 0, 0, 0) 75%`},{blur:`${blur/2/2/2}px`,gradient:`rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 1) 62.5%, rgba(0, 0, 0, 1) 75%, rgba(0, 0, 0, 0) 87.5%`},{blur:`${blur/2/2}px`,gradient:`rgba(0, 0, 0, 0) 62.5%, rgba(0, 0, 0, 1) 75%, rgba(0, 0, 0, 1) 87.5%, rgba(0, 0, 0, 0) 100%`},{blur:`${blur/2}px`,gradient:`rgba(0, 0, 0, 0) 75%, rgba(0, 0, 0, 1) 87.5%, rgba(0, 0, 0, 1) 100%`},{blur:`${blur}px`,gradient:`rgba(0, 0, 0, 0) 87.5%, rgba(0, 0, 0, 1) 100%`}],[blur]);return /*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,overflow:\"hidden\"},children:blurSteps.map((step,index)=>/*#__PURE__*/_jsx(motion.div,{transition:transition,initial:{backdropFilter:`blur(${step.blur})`},animate:{backdropFilter:`blur(${step.blur})`},style:{opacity:1,position:\"absolute\",inset:0,zIndex:index+1,maskImage:`linear-gradient(${direction}, ${step.gradient})`,WebkitMaskImage:`linear-gradient(${direction}, ${step.gradient})`,borderRadius:borderRadius,pointerEvents:\"none\"}},index))});}BlurGradient.defaultProps={blur:10,borderRadius:\"0px\",direction:\"toBottom\",transition:{duration:.3}};addPropertyControls(BlurGradient,{blur:{title:\"Blur\",type:ControlType.Number,defaultValue:10,min:0,max:100,step:1,description:\"Large blur values (10<) can impact performance.\"},borderRadius:{title:\"Radius\",type:ControlType.BorderRadius,defaultValue:\"0px\",description:\"Blur Gradient component's parent frame can't have border radius (it will break the component). If you need corner radius, apply it directly to the Blur Gradient component here.\"},direction:{title:\"Direction\",type:ControlType.SegmentedEnum,options:[\"to bottom\",\"to top\",\"to left\",\"to right\"],optionTitles:[\"↓\",\"↑\",\"←\",\"→\"],defaultValue:\"to bottom\"},transition:{type:ControlType.Transition,defaultValue:{duration:.3},title:\"Transition\",description:\"Control how the blur animates when used on hover states or any othe interaction.\\n\\nMore components at [Framer University](https://frameruni.link/cc).\"}});BlurGradient.displayName=\"Blur Gradient\";export default BlurGradient;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BlurGradient\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"240\",\"framerIntrinsicWidth\":\"240\",\"framerDisableUnlink\":\"*\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BlurGradient_Prod.map","// Generated by Framer (6aa4fc0)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,SmartComponentScopedContainer,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import BlurGradient from\"https://framerusercontent.com/modules/rofp3mS0LNY15cjhHzia/mqQEarGIByho1rG31aTv/BlurGradient_Prod.js\";const BlurGradientFonts=getFonts(BlurGradient);const cycleOrder=[\"amVTajLCM\",\"qQS8eRAac\"];const serializationHash=\"framer-IgQyG\";const variantClassNames={amVTajLCM:\"framer-v-s43ql8\",qQS8eRAac:\"framer-v-59jlpe\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={damping:60,delay:0,mass:1,stiffness:500,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 humanReadableVariantMap={Hide:\"qQS8eRAac\",Show:\"amVTajLCM\"};const getProps=({blur,height,id,width,...props})=>{return{...props,p4Ecax7Xe:blur??props.p4Ecax7Xe??6,variant:humanReadableVariantMap[props.variant]??props.variant??\"amVTajLCM\"};};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,p4Ecax7Xe,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"amVTajLCM\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(baseVariant===\"qQS8eRAac\")return false;return true;};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-s43ql8\",className,classNames),\"data-framer-name\":\"Show\",layoutDependency:layoutDependency,layoutId:\"amVTajLCM\",ref:refBinding,style:{...style},...addPropertyOverrides({qQS8eRAac:{\"data-framer-name\":\"Hide\"}},baseVariant,gestureVariant),children:isDisplayed()&&/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-16nfsn3-container\",\"data-framer-name\":\"Blur Gradient (Bottom)\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"eOpr9GmCC-container\",name:\"Blur Gradient (Bottom)\",nodeId:\"eOpr9GmCC\",rendersWithMotion:true,scopeId:\"h3Lv4e_xP\",children:/*#__PURE__*/_jsx(BlurGradient,{blur:p4Ecax7Xe,borderRadius:\"0px\",direction:\"to top\",height:\"100%\",id:\"eOpr9GmCC\",layoutId:\"eOpr9GmCC\",name:\"Blur Gradient (Bottom)\",style:{height:\"100%\",width:\"100%\"},transition:{delay:0,duration:.3,ease:[.44,0,.56,1],type:\"tween\"},width:\"100%\"})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-IgQyG.framer-bntgcy, .framer-IgQyG .framer-bntgcy { display: block; }\",\".framer-IgQyG.framer-s43ql8 { height: 96px; overflow: hidden; position: relative; width: 780px; }\",\".framer-IgQyG .framer-16nfsn3-container { bottom: 0px; flex: none; height: 96px; left: 0px; pointer-events: none; position: absolute; right: 0px; z-index: 1; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 96\n * @framerIntrinsicWidth 780\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"qQS8eRAac\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"p4Ecax7Xe\":\"blur\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const Framerh3Lv4e_xP=withCSS(Component,css,\"framer-IgQyG\");export default Framerh3Lv4e_xP;Framerh3Lv4e_xP.displayName=\"Blur Gradient\";Framerh3Lv4e_xP.defaultProps={height:96,width:780};addPropertyControls(Framerh3Lv4e_xP,{variant:{options:[\"amVTajLCM\",\"qQS8eRAac\"],optionTitles:[\"Show\",\"Hide\"],title:\"Variant\",type:ControlType.Enum},p4Ecax7Xe:{defaultValue:6,max:100,min:0,step:1,title:\"Blur\",type:ControlType.Number}});addFonts(Framerh3Lv4e_xP,[{explicitInter:true,fonts:[]},...BlurGradientFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerh3Lv4e_xP\",\"slots\":[],\"annotations\":{\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"qQS8eRAac\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerVariables\":\"{\\\"p4Ecax7Xe\\\":\\\"blur\\\"}\",\"framerIntrinsicHeight\":\"96\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicWidth\":\"780\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./h3Lv4e_xP.map","import{jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";export default function AutoYearFooter({textColor,fontSize,fontFamily}){const year=new Date().getFullYear();return /*#__PURE__*/_jsxs(\"p\",{style:{color:textColor,fontSize:`${fontSize}px`,fontFamily:fontFamily,textAlign:\"center\",margin:0},children:[\"\\xa9 \",year,\" Sihan Liu\"]});}addPropertyControls(AutoYearFooter,{textColor:{type:ControlType.Color,title:\"Text Color\",defaultValue:\"#999999\"},fontSize:{type:ControlType.Number,title:\"Font Size\",defaultValue:14,min:8,max:48,displayStepper:true},fontFamily:{type:ControlType.String,title:\"Font Family\",defaultValue:\"Inter, sans-serif\",placeholder:\"e.g., Inter, Arial, sans-serif\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"AutoYearFooter\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Dynamic_year.map","// Generated by Framer (d8b0f12)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,Container,ControlType,cx,GeneratedComponentContext,getFonts,PropertyOverrides,RenderTarget,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS,withFX}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import IconDribbble from\"https://framerusercontent.com/modules/2lukjN685io0R2nzbrjX/vcnxgiVAwIgLStownmGs/VFD0vAErg.js\";import IconLinkedin from\"https://framerusercontent.com/modules/FAENEqXQQUnFXXPgPiah/iidR8pruOrBK3RlWOYc4/drYWPnMeR.js\";import Mail from\"https://framerusercontent.com/modules/QL65NekRyGlej8APmFiL/EfJhiBMusrx6SCmF9LfF/aE7ozwXux.js\";import BlurGradient from\"#framer/local/canvasComponent/h3Lv4e_xP/h3Lv4e_xP.js\";import Nav from\"#framer/local/canvasComponent/rD0JqOcZx/rD0JqOcZx.js\";import AutoYearFooter from\"#framer/local/codeFile/Arx3R8t/Dynamic_year.js\";const NavFonts=getFonts(Nav);const ContainerWithFX=withFX(Container);const BlurGradientFonts=getFonts(BlurGradient);const AutoYearFooterFonts=getFonts(AutoYearFooter);const IconLinkedinFonts=getFonts(IconLinkedin);const IconDribbbleFonts=getFonts(IconDribbble);const MailFonts=getFonts(Mail);const breakpoints={AcgZXdi7Y:\"(min-width: 1025px) and (max-width: 1439.98px)\",BrVdHogPW:\"(min-width: 1440px)\",iN9n2ycX6:\"(max-width: 699.98px)\",KFnfwJ763:\"(min-width: 700px) and (max-width: 1024.98px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-FODus\";const variantClassNames={AcgZXdi7Y:\"framer-v-1m3fvgp\",BrVdHogPW:\"framer-v-1jwfxas\",iN9n2ycX6:\"framer-v-tf34sc\",KFnfwJ763:\"framer-v-1urrekl\"};const gza9HRoQF=undefined;const vWJ7JHdyP=undefined;const eymw4Dg_g=undefined;const ph3huHB6I=undefined;const bt1ya_t6P=undefined;const rF17HE23J=undefined;const numberToPixelString=value=>{if(typeof value!==\"number\")return value;if(!Number.isFinite(value))return undefined;return Math.max(0,value)+\"px\";};const transition1={damping:60,delay:.1,mass:1,stiffness:400,type:\"spring\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:0,y:-76};const getNumericColumnGap=gap=>{if(Number.isFinite(gap)&&gap>=0)return gap;if(typeof gap!==\"string\")return 0;const firstSegment=gap.split(\" \")[0];const parsedGap=parseFloat(firstSegment);return Number.isFinite(parsedGap)&&parsedGap>=0?parsedGap:0;};const breakpointRules={iN9n2ycX6:[\".framer-FODus.framer-1jwfxas { gap: 64px; }\",'.framer-FODus .framer-zrvem7, [data-layout-template=\"true\"] > #overlay { margin-bottom: -64px; }',\".framer-FODus .framer-9ysmd4 { padding: 0px 16px 0px 16px; }\",\".framer-FODus .framer-eteayp, .framer-FODus .framer-rt8hfu, .framer-FODus .framer-to2y89 { height: var(--framer-aspect-ratio-supported, 24px); }\"],KFnfwJ763:[\".framer-FODus .framer-9ysmd4 { padding: 0px 24px 0px 24px; }\",\".framer-FODus .framer-eteayp, .framer-FODus .framer-rt8hfu, .framer-FODus .framer-to2y89 { height: var(--framer-aspect-ratio-supported, 24px); }\"]};const breakpointKeys=Object.keys(breakpointRules);const selectors={iN9n2ycX6:\".framer-tf34sc-override\",KFnfwJ763:\".framer-1urrekl-override\"};const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-FODus.framer-9xgogr, .framer-FODus .framer-9xgogr { display: block; }\",\".framer-FODus.framer-1jwfxas { -webkit-tap-highlight-color: rgba(0, 0, 0, 0); align-content: center; align-items: center; background-color: var(--token-62d5ebd4-5867-40fc-ba4d-ed46a167a079, #000000); display: flex; flex-direction: column; flex-wrap: nowrap; gap: var(--14x6k3p); height: min-content; justify-content: flex-start; overflow: visible; padding: var(--uefbev); position: relative; width: 100%; }\",\".framer-FODus .framer-e3v91k-container { flex: none; height: auto; max-width: 1920px; mix-blend-mode: difference; order: -1000; position: sticky; top: 0px; width: 100%; z-index: 4; }\",\".framer-FODus .framer-zrvem7 { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: var(--191dq0); position: relative; width: 0px; }\",\".framer-FODus .framer-7qmm0i-container { -webkit-user-select: none; flex: none; height: 96px; left: 0px; order: 1002; pointer-events: none; position: var(--framer-canvas-fixed-position, fixed); right: 0px; top: 0px; user-select: none; z-index: 3; }\",\".framer-FODus .framer-9ysmd4 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; height: 100px; justify-content: space-between; max-width: 1920px; order: 1003; overflow: hidden; padding: 0px 32px 0px 32px; position: relative; width: 100%; }\",\".framer-FODus .framer-27obwm-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-FODus .framer-bzdc1j { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 30px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-FODus .framer-eteayp, .framer-FODus .framer-rt8hfu { --imqvxc: var(--token-7ee959de-16ba-497f-8ade-571d1e1a5f07, rgba(0, 0, 0, 0.8)); aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 20px); position: relative; width: 20px; }\",\".framer-FODus .framer-to2y89 { --43q7um: var(--token-7ee959de-16ba-497f-8ade-571d1e1a5f07, rgba(0, 0, 0, 0.8)); aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 20px); position: relative; width: 20px; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: var(--191dq0); }'];const mediaQueries={AcgZXdi7Y:\"(min-width: 1025px) and (max-width: 1439.98px)\",BrVdHogPW:\"(min-width: 1440px)\",iN9n2ycX6:\"(max-width: 699.98px)\",KFnfwJ763:\"(min-width: 700px) and (max-width: 1024.98px)\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const humanReadableVariantMap={Desktop:\"BrVdHogPW\",Laptop:\"AcgZXdi7Y\",Phone:\"iN9n2ycX6\",Tablet:\"KFnfwJ763\"};const getProps=({backLink,blurGradient,gap,height,id,navLabel,padding,position,width,...props})=>{return{...props,bt1ya_t6P:backLink??props.bt1ya_t6P,eymw4Dg_g:navLabel??props.eymw4Dg_g??\"Home\",gza9HRoQF:gap??props.gza9HRoQF,ph3huHB6I:position??props.ph3huHB6I??\"Design & Art Director\",rF17HE23J:blurGradient??props.rF17HE23J??true,variant:humanReadableVariantMap[props.variant]??props.variant??\"BrVdHogPW\",vWJ7JHdyP:padding??props.vWJ7JHdyP??\"0px\"};};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,gza9HRoQF,vWJ7JHdyP,rF17HE23J,eymw4Dg_g,ph3huHB6I,bt1ya_t6P,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:{isLayoutTemplate:true,primaryVariantId:\"BrVdHogPW\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: var(--token-62d5ebd4-5867-40fc-ba4d-ed46a167a079, rgb(0, 0, 0)); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-1jwfxas\",className),\"data-layout-template\":true,ref:refBinding,style:{\"--14x6k3p\":numberToPixelString(gza9HRoQF),\"--191dq0\":`-${getNumericColumnGap(gza9HRoQF)}px`,\"--uefbev\":numberToPixelString(vWJ7JHdyP),...style},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:76,width:`min(100vw - ${vWJ7JHdyP*2}px, 1920px)`,children:/*#__PURE__*/_jsx(ContainerWithFX,{__framer__animate:{transition:transition1},__framer__animateOnce:false,__framer__scrollDirection:{direction:\"down\",target:animation},__framer__styleAppearEffectEnabled:true,__framer__threshold:.5,__perspectiveFX:false,__targetOpacity:1,className:\"framer-e3v91k-container\",nodeId:\"KTymjHMdN\",rendersWithMotion:true,scopeId:\"SzVDEXNL1\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{iN9n2ycX6:{variant:\"NktlPJpSy\"},KFnfwJ763:{variant:\"nrfrLHug9\"}},children:/*#__PURE__*/_jsx(Nav,{cAtzncPer:eymw4Dg_g,fWBH2HA7b:false,hcub15Msy:true,height:\"100%\",id:\"KTymjHMdN\",layoutId:\"KTymjHMdN\",MjfGjNDud:ph3huHB6I,mO0CDvk_7:bt1ya_t6P,NFDjggJY2:true,style:{maxWidth:\"100%\",width:\"100%\"},variant:\"RSqCSoNz4\",width:\"100%\"})})})}),children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-zrvem7\"}),rF17HE23J&&/*#__PURE__*/_jsx(ComponentViewportProvider,{height:96,width:\"100vw\",y:0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-7qmm0i-container\",layoutScroll:true,nodeId:\"JD7jvajvA\",scopeId:\"SzVDEXNL1\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{iN9n2ycX6:{p4Ecax7Xe:6}},children:/*#__PURE__*/_jsx(BlurGradient,{height:\"100%\",id:\"JD7jvajvA\",layoutId:\"JD7jvajvA\",p4Ecax7Xe:8,style:{height:\"100%\",width:\"100%\"},variant:\"amVTajLCM\",width:\"100%\"})})})}),/*#__PURE__*/_jsxs(\"footer\",{className:\"framer-9ysmd4\",\"data-framer-name\":\"Footer\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-27obwm-container\",isAuthoredByUser:true,nodeId:\"vJYivj_dy\",scopeId:\"SzVDEXNL1\",children:/*#__PURE__*/_jsx(AutoYearFooter,{fontFamily:\"Sora\",fontSize:15,height:\"100%\",id:\"vJYivj_dy\",layoutId:\"vJYivj_dy\",textColor:\"var(--token-7ee959de-16ba-497f-8ade-571d1e1a5f07, rgba(0, 0, 0, 0.8))\",width:\"100%\"})})}),/*#__PURE__*/_jsxs(\"div\",{className:\"framer-bzdc1j\",children:[/*#__PURE__*/_jsx(IconLinkedin,{animated:false,className:\"framer-eteayp\",kpQERrwzF:true,layoutId:\"QAouyN5Ir\"}),/*#__PURE__*/_jsx(IconDribbble,{animated:false,className:\"framer-rt8hfu\",kpQERrwzF:true,layoutId:\"Coeya0kiU\"}),/*#__PURE__*/_jsx(Mail,{animated:false,className:\"framer-to2y89\",layoutId:\"nOzqnm4Rw\",UO5clYVeQ:true})]})]})]}),/*#__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=selectors[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 800\n * @framerIntrinsicWidth 1440\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"AcgZXdi7Y\":{\"layout\":[\"fixed\",\"fixed\"]},\"KFnfwJ763\":{\"layout\":[\"fixed\",\"fixed\"]},\"iN9n2ycX6\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"gza9HRoQF\":\"gap\",\"vWJ7JHdyP\":\"padding\",\"rF17HE23J\":\"blurGradient\",\"eymw4Dg_g\":\"navLabel\",\"ph3huHB6I\":\"position\",\"bt1ya_t6P\":\"backLink\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"BrVdHogPW\":[\".framer-e3v91k-container\",\".framer-9ysmd4\"],\"AcgZXdi7Y\":[\".framer-e3v91k-container\",\".framer-9ysmd4\"],\"KFnfwJ763\":[\".framer-e3v91k-container\",\".framer-9ysmd4\"],\"iN9n2ycX6\":[\".framer-e3v91k-container\",\".framer-9ysmd4\"]}\n * @framerBreakpoints {\"BrVdHogPW\":{\"min\":1440,\"canvasClassName\":\"framer-1jwfxas-override\",\"minHeight\":800,\"name\":\"Desktop\",\"width\":1440,\"rootFontSize\":16},\"AcgZXdi7Y\":{\"min\":1025,\"max\":1439,\"canvasClassName\":\"framer-1m3fvgp-override\",\"minHeight\":800,\"viewportHeight\":860,\"name\":\"Laptop\",\"width\":1025,\"rootFontSize\":16},\"KFnfwJ763\":{\"min\":700,\"max\":1024,\"canvasClassName\":\"framer-1urrekl-override\",\"minHeight\":800,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":700,\"rootFontSize\":16},\"iN9n2ycX6\":{\"max\":699,\"canvasClassName\":\"framer-tf34sc-override\",\"minHeight\":800,\"viewportHeight\":844,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant BrVdHogPW\n * @framerLayoutTemplate\n */const FramerSzVDEXNL1=withCSS(Component,css,\"framer-FODus\");export default FramerSzVDEXNL1;FramerSzVDEXNL1.displayName=\"Inner Layout\";FramerSzVDEXNL1.defaultProps={height:800,width:1440};addPropertyControls(FramerSzVDEXNL1,{gza9HRoQF:{defaultValue:0,min:0,title:\"Gap\",type:ControlType.Number},vWJ7JHdyP:{defaultValue:\"0px\",title:\"Padding\",type:ControlType.Padding},rF17HE23J:{defaultValue:true,title:\"Blur Gradient?\",type:ControlType.Boolean},eymw4Dg_g:{defaultValue:\"Home\",description:\"\",displayTextArea:false,title:\"Nav Label\",type:ControlType.String},ph3huHB6I:{defaultValue:\"Design & Art Director\",description:\"Write your position here\",displayTextArea:false,title:\"Position\",type:ControlType.String},bt1ya_t6P:{title:\"Back Link\",type:ControlType.Link}});addFonts(FramerSzVDEXNL1,[{explicitInter:true,fonts:[]},...NavFonts,...BlurGradientFonts,...AutoYearFooterFonts,...IconLinkedinFonts,...IconDribbbleFonts,...MailFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerSzVDEXNL1\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"800\",\"framerVariables\":\"{\\\"gza9HRoQF\\\":\\\"gap\\\",\\\"vWJ7JHdyP\\\":\\\"padding\\\",\\\"rF17HE23J\\\":\\\"blurGradient\\\",\\\"eymw4Dg_g\\\":\\\"navLabel\\\",\\\"ph3huHB6I\\\":\\\"position\\\",\\\"bt1ya_t6P\\\":\\\"backLink\\\"}\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerDefaultVariant\":\"BrVdHogPW\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicWidth\":\"1440\",\"framerBreakpoints\":\"{\\\"BrVdHogPW\\\":{\\\"min\\\":1440,\\\"canvasClassName\\\":\\\"framer-1jwfxas-override\\\",\\\"minHeight\\\":800,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1440,\\\"rootFontSize\\\":16},\\\"AcgZXdi7Y\\\":{\\\"min\\\":1025,\\\"max\\\":1439,\\\"canvasClassName\\\":\\\"framer-1m3fvgp-override\\\",\\\"minHeight\\\":800,\\\"viewportHeight\\\":860,\\\"name\\\":\\\"Laptop\\\",\\\"width\\\":1025,\\\"rootFontSize\\\":16},\\\"KFnfwJ763\\\":{\\\"min\\\":700,\\\"max\\\":1024,\\\"canvasClassName\\\":\\\"framer-1urrekl-override\\\",\\\"minHeight\\\":800,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":700,\\\"rootFontSize\\\":16},\\\"iN9n2ycX6\\\":{\\\"max\\\":699,\\\"canvasClassName\\\":\\\"framer-tf34sc-override\\\",\\\"minHeight\\\":800,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"AcgZXdi7Y\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"KFnfwJ763\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"iN9n2ycX6\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerLayoutTemplate\":\"\",\"framerContractVersion\":\"1\",\"framerHitTargets\":\"{\\\"BrVdHogPW\\\":[\\\".framer-e3v91k-container\\\",\\\".framer-9ysmd4\\\"],\\\"AcgZXdi7Y\\\":[\\\".framer-e3v91k-container\\\",\\\".framer-9ysmd4\\\"],\\\"KFnfwJ763\\\":[\\\".framer-e3v91k-container\\\",\\\".framer-9ysmd4\\\"],\\\"iN9n2ycX6\\\":[\\\".framer-e3v91k-container\\\",\\\".framer-9ysmd4\\\"]}\",\"framerColorSyntax\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","\r\n        import * as Framer from \"framer\";\r\nimport { ResolveLinks } from \"framer\";\r\nimport * as React from \"react\";\r\nimport { createPortal } from \"react-dom\";\r\nimport * as ReactDOM from \"react-dom/client\";\r\nimport HomeLayout from \"https://framerusercontent.com/modules/kRVzEuptTOb3lnlcCzSB/2voQYVwD3EmrNUGLVFCq/ExBgovve2.js\";\r\nimport InnerLayout from \"https://framerusercontent.com/modules/ube63np3k2VUOemNWhAf/HQbhyPSssuYrkerpF8Uy/SzVDEXNL1.js\";\r\n\r\n        const routes = {augiA20Il: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/iNg43gUvWri6h6pWMT2Z/GV5DaTDdgcVfaRSCZNhJ/augiA20Il.js\")), path: \"/\"}, sK3Qycp36: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/tWarHjQYkd4mn6XieS9j/54cJEjvysyk4TpvjI3eW/sK3Qycp36.js\")), path: \"/about\"}, APn30jGVo: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/k4tEYeHsKVuLq1Kvz5U2/YdEcvzoCCKpM8aAHBfxO/APn30jGVo.js\")), path: \"/portfolio\"}, auQTnh1XA: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/i7c4tl9Gze3pND8DwDgp/QoreAni0oTFYkt63J4Ka/auQTnh1XA.js\")), path: \"/contact\"}, Eke7njGIB: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/l8gqpAolfYsWdHP1DN1L/VFoTYkaBh5K2sempM5Yg/Eke7njGIB.js\")), path: \"/404\"}, BI7ZQ0OEo: {collectionId: \"avuvYYzgc\", elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/1q9CG7t4IzOuOebas5nI/zFlQMQYyCangUqx1trWT/BI7ZQ0OEo.js\")), path: \"/portfolio/:T7gBS1DsS\"}, oe4pPCKFY: {page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/cS5HSuepGuLkJ6JfOVgs/jd1w32WTS9GyGLsZw6ot/oe4pPCKFY.js\"))}}\r\n\r\n        const locales = [{code: \"en-CA\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n        const collectionUtils = {avuvYYzgc: async () => (await import(\"https://framerusercontent.com/modules/nppzOLL94lk8utU4GuS5/0OncYwpDRA4Abr7L2Tlf/avuvYYzgc.js\"))?.[\"utils\"]}\r\n        const framerSiteId = \"621cd49dfebf34d37fbea642fe6c3bd08acb95654f303dd64eabfeb1c24c7327\"\r\n        function Template({webPageId, children, style, ...rest}) {const props1 = {bt1ya_t6P: {href: {webPageId: \"augiA20Il\"}}, eymw4Dg_g: \"Home\", gza9HRoQF: 80, ph3huHB6I: \"Design & Art Director\", rF17HE23J: true, vWJ7JHdyP: \"0px 0px 0px 0px\"}\r\nconst props2 = {...props1, gza9HRoQF: 0, rF17HE23J: false}\r\nconst props3 = {...props1, bt1ya_t6P: {href: {webPageId: \"APn30jGVo\"}}, eymw4Dg_g: \"Back\"}\r\nconst templateProps = {APn30jGVo: props1, auQTnh1XA: props1, BI7ZQ0OEo: props3, Eke7njGIB: props2, sK3Qycp36: props1}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"augiA20Il\":\r\nreturn React.createElement(HomeLayout, {...props, key: \"HomeLayout\", style}, children(true));\r\ncase \"sK3Qycp36\":\r\ncase \"APn30jGVo\":\r\ncase \"auQTnh1XA\":\r\ncase \"Eke7njGIB\":\r\ncase \"BI7ZQ0OEo\":\r\nreturn React.createElement(ResolveLinks, {links: [props[\"bt1ya_t6P\"]]}, (resolvedLinks) => React.createElement(InnerLayout, {...props, bt1ya_t6P: resolvedLinks[0], key: \"InnerLayout\", style}, children(true)));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"augiA20Il\":\r\nreturn [{hash: \"1a75pn5\", mediaQuery: \"(min-width: 1440px)\"}, {hash: \"u5eccd\", mediaQuery: \"(min-width: 1025px) and (max-width: 1439.98px)\"}, {hash: \"t72il6\", mediaQuery: \"(min-width: 700px) and (max-width: 1024.98px)\"}, {hash: \"vr2iup\", mediaQuery: \"(max-width: 699.98px)\"}]\r\ncase \"sK3Qycp36\":\r\ncase \"APn30jGVo\":\r\ncase \"auQTnh1XA\":\r\ncase \"Eke7njGIB\":\r\ncase \"BI7ZQ0OEo\":\r\nreturn [{hash: \"1jwfxas\", mediaQuery: \"(min-width: 1440px)\"}, {hash: \"1m3fvgp\", mediaQuery: \"(min-width: 1025px) and (max-width: 1439.98px)\"}, {hash: \"1urrekl\", mediaQuery: \"(min-width: 700px) and (max-width: 1024.98px)\"}, {hash: \"tf34sc\", mediaQuery: \"(max-width: 699.98px)\"}]\r\ndefault: { return undefined }}}\r\n\r\n        export async function getPageRoot({ routeId, pathVariables, localeId }) {\r\n            const rootPreload = routes[routeId].page.preload()\r\n\r\n            const content = React.createElement(\r\n                Framer.PageRoot,\r\n                {\r\n                    isWebsite: true,\r\n                    routeId,\r\n                    pathVariables,\r\n                    routes,\r\n                    collectionUtils,\r\n                    framerSiteId,\r\n                    notFoundPage: Framer.lazy(() => import(\"https://framerusercontent.com/modules/l8gqpAolfYsWdHP1DN1L/VFoTYkaBh5K2sempM5Yg/Eke7njGIB.js\")),\r\n                    isReducedMotion: undefined,\r\n                    localeId,\r\n                    locales,\r\n                    preserveQueryParams: undefined,\r\n                    siteCanonicalURL: \"https://www.sihanliu.com\",\r\n                    EditorBar: \r\n            typeof window !== \"undefined\" ? (() => {\r\n                const isBot = /bot|-google|google-|yandex|ia_archiver|crawl|spider/iu.test(navigator.userAgent)\r\n                if (isBot) {\r\n                    console.log(\"[Framer On-Page Editing] Unavailable because navigator is bot\")\r\n                    return\r\n                }\r\n\r\n                return Framer.lazy(async () => {\r\n                    const dependencies = {\r\n                        __version: 2,\r\n                        framer: {\r\n                            useCurrentRoute: Framer.useCurrentRoute,\r\n                            useLocaleInfo: Framer.useLocaleInfo,\r\n                            useRouter: Framer.useRouter,\r\n                        },\r\n                        react: {\r\n                            createElement: React.createElement,\r\n                            Fragment: React.Fragment,\r\n                            memo: React.memo,\r\n                            useCallback: React.useCallback,\r\n                            useEffect: React.useEffect,\r\n                            useRef: React.useRef,\r\n                            useState: React.useState,\r\n                        },\r\n                        \"react-dom\": { createPortal },\r\n                    }\r\n\r\n                    window.__framer_editorBarDependencies = dependencies\r\n\r\n                    const { createEditorBar } = await import(\"https://framer.com/edit/init.mjs\")\r\n                    return {\r\n                        default: createEditorBar(),\r\n                    }\r\n                })\r\n            })() : undefined\r\n        ,\r\n                    adaptLayoutToTextDirection: false,\r\n                    LayoutTemplate: Template,\r\n                    loadSnippetsModule: undefined,\r\n                }\r\n            )\r\n\r\n            const contentWithFeaturesContext = React.createElement(\r\n                Framer.LibraryFeaturesProvider,\r\n                {\r\n                    children: content,\r\n                    value: {advancedSpamProtection: true, customCodeSiteSettings: false, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageLocalizationSupport: false, onPageMoveTool: false, synchronousNavigationOnDesktop: false, yieldOnTap: false}\r\n                }\r\n            )\r\n\r\n            const contentWithGracefullyDegradingErrorBoundary = React.createElement(Framer.GracefullyDegradingErrorBoundary, {\r\n                children: contentWithFeaturesContext\r\n            })\r\n\r\n            \r\n            const page = React.createElement(Framer.PageEffectsProvider, {\r\n                children: contentWithGracefullyDegradingErrorBoundary,\r\n                value: {global: {enter: {mask: {angle: 270, type: \"wipe\", width: \"100%\"}, opacity: 0, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0.2, duration: 0.6, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"5%\"}, exit: {mask: {angle: 270, type: \"wipe\", width: \"100%\"}, opacity: 0, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0, duration: 0.6, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"-5%\"}}, routes: {}}\r\n            })\r\n\r\n            // We don't want the initial render to immediately have to suspend.\r\n            await rootPreload\r\n            return page\r\n        }\r\n\r\n        const isBrowser = typeof document !== \"undefined\"\r\n        if (isBrowser) {\r\n            window.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\r\n                return React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\r\n            }\r\n\r\n            window.__framer_events = window.__framer_events || []\r\n\r\n            // Initialize lazy modules cache for hydration\r\n            Framer.initLazyModulesCache()\r\n\r\n            // Fallback support for stack gaps\r\n            Framer.installFlexboxGapWorkaroundIfNeeded()\r\n\r\n            const container = document.getElementById(\"main\")\r\n            // We know that #main is parsed before this script, so we don't need to wait for DOMContentLoaded or similar events.\r\n            if (\"framerHydrateV2\" in container.dataset) main(true, container)\r\n            else main(false, container)\r\n        }\r\n\r\n        function track() {\r\n            if (!isBrowser) return\r\n            window.__framer_events.push(arguments)\r\n        }\r\n\r\n        async function main(shouldHydrate, container) {\r\n            function handleError(error, errorInfo, recoverable = true) {\r\n                if (error.caught || window.__framer_hadFatalError) return // we already logged it\r\n\r\n                const componentStack = errorInfo?.componentStack\r\n                if (recoverable) {\r\n                    console.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                    // we only want to collect 1%, because this can be quite noisy (floods the data pipeline)\r\n                    if (Math.random() > 0.01) return\r\n                } else {\r\n                    console.error(\"Caught a fatal error. Please report the following to the Framer team via https://www.framer.com/contact/:\\n\", error, componentStack)\r\n                }\r\n                track(recoverable ? \"published_site_load_recoverable_error\" : \"published_site_load_error\", {\r\n                    message: String(error),\r\n                    componentStack, // componentStack is more useful\r\n                    stack: componentStack ? undefined : error instanceof Error && typeof error.stack === \"string\" ? error.stack : null,\r\n                })\r\n            }\r\n\r\n            try {\r\n                let routeId, localeId, pathVariables, breakpoints\r\n                if (shouldHydrate) {\r\n                    const routeData = JSON.parse(container.dataset[\"framerHydrateV2\"])\r\n                    routeId = routeData.routeId\r\n                    localeId = routeData.localeId\r\n                    pathVariables = routeData.pathVariables\r\n                    breakpoints = routeData.breakpoints\r\n\r\n                    routeId = 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                } else {\r\n                    Framer.patchRoutesForABTesting(routes, undefined) // This must happen before inferInitialRouteFromPath\r\n\r\n                    \r\n                    const routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname), true, locales)\r\n                    routeId = routeData.routeId\r\n                    localeId = routeData.localeId\r\n                    pathVariables = routeData.pathVariables\r\n                    \r\n                }\r\n\r\n                const pagePromise = getPageRoot({ routeId, localeId, pathVariables })\r\n\r\n                \r\nif (typeof window !== \"undefined\") {\r\n    void (async () => {\r\n        const route = routes[routeId]\r\n\r\n        const defaultLocaleId = \"default\"\r\n        const framerLocale = locales.find(({ id }) => !localeId ? id === defaultLocaleId : id === localeId).code\r\n\r\n        let collectionItemId = null\r\n        if (route?.collectionId && collectionUtils) {\r\n              const utils = await collectionUtils[route.collectionId]?.()\r\n              const [slug] = Object.values(pathVariables)\r\n              if (utils && typeof slug === \"string\") {\r\n                  collectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n              }\r\n        }\r\n\r\n        const resolvedDateTimeOptions = Intl.DateTimeFormat().resolvedOptions()\r\n        const timezone = resolvedDateTimeOptions.timeZone\r\n        const locale = resolvedDateTimeOptions.locale\r\n\r\n        // wait for the page to be activated before sending the pageview event\r\n        // https://developer.chrome.com/docs/web-platform/prerender-pages#impact-on-analytics\r\n        await new Promise((resolve) => {\r\n            if (document.prerendering) {\r\n                document.addEventListener(\"prerenderingchange\", resolve, { once: true })\r\n            } else {\r\n                resolve()\r\n            }\r\n        })\r\n\r\n        window.__framer_events.push([\r\n            \"published_site_pageview\",\r\n            {\r\n                framerSiteId: framerSiteId ?? null,\r\n                version: 2,\r\n                routePath: route?.path || \"/\",\r\n                collectionItemId,\r\n                framerLocale: framerLocale || null,\r\n                webPageId: route?.abTestingVariantId ?? routeId,\r\n                abTestId: route?.abTestId,\r\n                referrer: document.referrer || null,\r\n                url: window.location.href,\r\n                hostname: window.location.hostname || null,\r\n                pathname: window.location.pathname || null,\r\n                hash: window.location.hash || null,\r\n                search: window.location.search || null,\r\n                timezone,\r\n                locale,\r\n            },\r\n            \"eager\"\r\n        ])\r\n\r\n        // Yield to avoid blocking the main thread with the user code\r\n        await Framer.yieldToMain({ priority: \"background\", ensureContinueBeforeUnload: true, continueAfter: \"paint\" })\r\n\r\n        document.dispatchEvent(new CustomEvent(\"framer:pageview\", {\r\n            detail: { framerLocale: framerLocale || null }\r\n        }))\r\n    })()\r\n}\r\n\r\n\r\n                const page = await pagePromise\r\n                if (shouldHydrate) {\r\n                    \r\n\r\n                    Framer.withPerformanceMarks(\"framer-rewrite-breakpoints\", () => {\r\n                        Framer.removeHiddenBreakpointLayersV2(breakpoints)\r\n                        window.__framer_onRewriteBreakpoints?.(breakpoints)\r\n                    })\r\n\r\n                    \r\n\r\n                    const startTransition = React.startTransition\r\n                    startTransition(() => {\r\n                        Framer.markHydrationStart()\r\n                        if (true) Framer.turnOffReactEventHandling()\r\n                        ReactDOM.hydrateRoot(container, page, { onRecoverableError: handleError })\r\n                    })\r\n                } else {\r\n                    \r\n                    ReactDOM.createRoot(container, { onRecoverableError: handleError }).render(page)\r\n                }\r\n            } catch (error) {\r\n                handleError(error, undefined, false)\r\n                throw error\r\n            }\r\n        }\r\n\r\n        \r\n\r\n        \r\n    "],"mappings":"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"}