{"version":3,"file":"script_main.DfTd6C4H.mjs","names":["addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","className","RichText","Image1","mask","SVG","getProps","Icon","className","fonts","css","className","css","getProps","className","Linkedin","Email","serializationHash","variantClassNames","React.useContext","React.useMemo","humanReadableVariantMap","React.Fragment","getProps","useRef","React.useId","sharedStyle.className","sharedStyle1.className","className","RichText","sharedStyle.css","sharedStyle1.css","sharedStyle.fonts","sharedStyle1.fonts","Navigation","Footer","useRef","React.useId","className","PropertyOverrides","React.createElement","Main","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.LibraryFeaturesProvider","Framer.GracefullyDegradingErrorBoundary","Framer.PageEffectsProvider","breakpoints","Framer.patchRoutesForABTesting","routeData","Framer.inferInitialRouteFromPath","Framer.yieldToMain","React.startTransition","Framer.ErrorPlaceholder"],"sources":["https:/framerusercontent.com/modules/iXnZXNI1aRrXbcYuG3Ie/iW2VFhU0H7V9oYGeGZce/gErTJ91Yb.js","https:/framerusercontent.com/modules/OVq4gHEro5rSqRJqmrqc/2k1MKUipgF25yoKCWzAt/aQCVXa8to.js","https:/framerusercontent.com/modules/2y68h64RKZk9bhxAqpNf/zsdx7aeftcOhi8tVTJiV/fHQH9rNkH.js","https:/framerusercontent.com/modules/CkClCyblOuZAoLzytqQg/Sl2PSYMWGJS1yU1lVgaY/XDTyIc6zw.js","https:/framerusercontent.com/modules/T9GxEhFRYPToznUAdmIf/VMNsLf0piFIJxEb0NeMy/JkRuEMt0S.js","https:/framerusercontent.com/modules/p60hJhZTNmCFBEV0dMBg/dKmjxAMzjzJFffEFii1b/RMTIifO8H.js","https:/framerusercontent.com/modules/uJZlzyRLH2PJhg7Pv0In/dyZVcb1BxqyJ1pBqTB6b/ew0qQxcm2.js","framer:toplevel/main"],"sourcesContent":["// Generated by Framer (265a357)\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=[\"rD_Sp7i5j\",\"Hz8hGzm8I\",\"z4xOc3Hfx\"];const serializationHash=\"framer-xcRw8\";const variantClassNames={Hz8hGzm8I:\"framer-v-n3ezao\",rD_Sp7i5j:\"framer-v-1b3632j\",z4xOc3Hfx:\"framer-v-1b0mp9u\"};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 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:\"rD_Sp7i5j\",Phone:\"z4xOc3Hfx\",Tablet:\"Hz8hGzm8I\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"rD_Sp7i5j\"};};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:\"rD_Sp7i5j\",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(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1b3632j\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"rD_Sp7i5j\",ref:refBinding,style:{backgroundColor:\"rgba(255, 242, 232, 0.5)\",...style},...addPropertyOverrides({Hz8hGzm8I:{\"data-framer-name\":\"Tablet\"},z4xOc3Hfx:{\"data-framer-name\":\"Phone\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-oa2jp9\",layoutDependency:layoutDependency,layoutId:\"f6zI1fdcE\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-8h389a\",layoutDependency:layoutDependency,layoutId:\"Yg11k7jBp\",style:{backgroundColor:\"rgba(20, 20, 20, 0.12)\",borderBottomLeftRadius:10,borderBottomRightRadius:10,borderTopLeftRadius:10,borderTopRightRadius:10}}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-b27fdl\",layoutDependency:layoutDependency,layoutId:\"wuhtBJzwt\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--framer-font-size\":\"14px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgba(0, 0, 0, 0.5))\"},children:\"Designed & Built by Eason Sun\"})}),className:\"framer-xrsacq\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"T0O_BCgaJ\",style:{\"--extracted-r6o4lv\":\"rgba(0, 0, 0, 0.5)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({z4xOc3Hfx:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsxs(motion.p,{dir:\"auto\",style:{\"--framer-font-size\":\"14px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgba(0, 0, 0, 0.5))\"},children:[\"Designed & Built by \",/*#__PURE__*/_jsx(motion.br,{}),\"Eason Sun\"]})})}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsx(Link,{href:\"https://uwaterloo.ca/\",motionChild:true,nodeId:\"caeO3qWES\",openInNewTab:true,scopeId:\"gErTJ91Yb\",children:/*#__PURE__*/_jsx(Image1,{as:\"a\",background:{alt:\"\",fit:\"fill\",intrinsicHeight:166.66666666666666,intrinsicWidth:166.66666666666666,loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+(((componentViewport?.height||163)-0-88)/2+0+0)+0+47+-9),pixelHeight:250,pixelWidth:250,sizes:\"34px\",src:\"https://framerusercontent.com/images/i4Q5UStOcNlHybwnWrkslC0OonQ.png?width=250&height=250\"},className:\"framer-158b536 framer-44pgaj\",\"data-framer-name\":\"Image\",fitImageDimension:\"height\",layoutDependency:layoutDependency,layoutId:\"caeO3qWES\"})})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-xcRw8.framer-44pgaj, .framer-xcRw8 .framer-44pgaj { display: block; }\",\".framer-xcRw8.framer-1b3632j { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 10px; height: 163px; justify-content: center; overflow: visible; padding: 0px 210px 0px 210px; position: relative; width: 1100px; }\",\".framer-xcRw8 .framer-oa2jp9 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: 88px; justify-content: center; max-width: 1100px; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-xcRw8 .framer-8h389a { flex: none; height: 2px; overflow: visible; position: relative; width: 100%; }\",\".framer-xcRw8 .framer-b27fdl { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; height: 16px; justify-content: space-between; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-xcRw8 .framer-xrsacq { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-xcRw8 .framer-158b536 { flex: none; height: auto; overflow: visible; position: relative; text-decoration: none; width: 34px; }\",\".framer-xcRw8.framer-v-n3ezao.framer-1b3632j { padding: 0px 64px 0px 64px; width: 768px; }\",\".framer-xcRw8.framer-v-1b0mp9u.framer-1b3632j { padding: 0px 16px 0px 16px; width: 200px; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 163\n * @framerIntrinsicWidth 1100\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"Hz8hGzm8I\":{\"layout\":[\"fixed\",\"fixed\"]},\"z4xOc3Hfx\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramergErTJ91Yb=withCSS(Component,css,\"framer-xcRw8\");export default FramergErTJ91Yb;FramergErTJ91Yb.displayName=\"footer\";FramergErTJ91Yb.defaultProps={height:163,width:1100};addPropertyControls(FramergErTJ91Yb,{variant:{options:[\"rD_Sp7i5j\",\"Hz8hGzm8I\",\"z4xOc3Hfx\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramergErTJ91Yb,[{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\"}]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramergErTJ91Yb\",\"slots\":[],\"annotations\":{\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"Hz8hGzm8I\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"z4xOc3Hfx\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"1100\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"163\",\"framerComponentViewportWidth\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./gErTJ91Yb.map","// Generated by Framer (08b35c4)\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 NY80X9Fq5=undefined;const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 40 40\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 29.997 0 L 3.333 0 C 1.5 0 0.017 1.5 0.017 3.333 L 0 23.331 C 0 25.164 1.5 26.664 3.333 26.664 L 29.997 26.664 C 31.83 26.664 33.33 25.164 33.33 23.331 L 33.33 3.333 C 33.33 1.5 31.83 0 29.997 0 M 29.997 6.666 L 16.665 14.998 L 3.333 6.666 L 3.333 3.333 L 16.665 11.665 L 29.997 3.333 Z\" fill=\"var(--1ygg0ew, var(--token-a3f70aa4-08e2-4a37-beba-99c64979604b, rgb(2, 2, 2)))\" height=\"26.663999999999987px\" id=\"a8Lnksrsy\" transform=\"translate(3 7)\" width=\"33.329999999999984px\"/></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=({color,height,id,width,...props})=>{return{...props,NY80X9Fq5:color??props.NY80X9Fq5??\"var(--token-a3f70aa4-08e2-4a37-beba-99c64979604b, rgb(2, 2, 2))\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,NY80X9Fq5,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-JyAmV\",className),layoutId:layoutId,ref:ref,style:{\"--1ygg0ew\":NY80X9Fq5,...style}});});const css=[`.framer-JyAmV { -webkit-mask: ${mask}; aspect-ratio: 1; background-color: var(--1ygg0ew); mask: ${mask}; width: 40px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 40\n * @framerIntrinsicHeight 40\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"NY80X9Fq5\":\"color\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Email\",\"color\":{\"type\":\"variable\",\"value\":\"1ygg0ew\"},\"set\":{\"localId\":\"vectorSet/KaicVKh5D\",\"id\":\"KaicVKh5D\",\"moduleId\":\"X4K2fbO0UsuzOvnBcvC2\"}}\n */const Icon=withCSS(Component,css,\"framer-JyAmV\");Icon.displayName=\"Email\";export default Icon;addPropertyControls(Icon,{NY80X9Fq5:{defaultValue:'var(--token-a3f70aa4-08e2-4a37-beba-99c64979604b, rgb(2, 2, 2)) /* {\"name\":\"Content\"} */',hidden:false,title:\"Color\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerVector\":\"{\\\"name\\\":\\\"Email\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"1ygg0ew\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/KaicVKh5D\\\",\\\"id\\\":\\\"KaicVKh5D\\\",\\\"moduleId\\\":\\\"X4K2fbO0UsuzOvnBcvC2\\\"}}\",\"framerVariables\":\"{\\\"NY80X9Fq5\\\":\\\"color\\\"}\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"40\",\"framerIntrinsicWidth\":\"40\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerImmutableVariables\":\"true\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (f2f96df)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-icgpP .framer-styles-preset-1b6m7mz:not(.rich-text-wrapper), .framer-icgpP .framer-styles-preset-1b6m7mz.rich-text-wrapper a { --framer-link-current-text-color: #111111; --framer-link-current-text-decoration: none; --framer-link-hover-text-background-corner-shape: superellipse(1); --framer-link-hover-text-decoration: none; --framer-link-text-color: #000000; transition-delay: 0s; transition-duration: 0.4s; transition-property: color; transition-timing-function: cubic-bezier(0.44, 0, 0.56, 1); }\"];export const className=\"framer-icgpP\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (f2f96df)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;Manrope-500\",\"Inter-Bold\",\"Inter-BoldItalic\",\"Inter-Italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Manrope\",source:\"google\",style:\"normal\",uiFamilyName:\"Manrope\",url:\"https://fonts.gstatic.com/s/manrope/v20/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk7PFO_A87jxeN7B.woff2\",weight:\"500\"},{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/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{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/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{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/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{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/syRNPWzAMIrcJ3wIlPIP43KjQs.woff2\",weight:\"700\"},{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/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/H89BbHkbHDzlxZzxi8uPzTsp90.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/u6gJwDuwB143kpNK1T1MDKDWkMc.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/43sJ6MfOPh1LCJt46OvyDuSbA6o.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/wccHG0r4gBDAIRhfHiOlq6oEkqw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/WZ367JPwf9bRW6LdTHN8rXgSjw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/ia3uin3hQWqDrVloC1zEtYHWw.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/2A4Xx7CngadFGlVV4xrO06OBHY.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/CfMzU8w2e7tHgF4T4rATMPuWosA.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/867QObYax8ANsfX4TGEVU9YiCM.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Oyn2ZbENFdnW7mt2Lzjk1h9Zb9k.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/cdAe8hgZ1cMyLu9g005pAW3xMo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/DOfvtmE1UplCq161m6Hj8CSQYg.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/pKRFNWFoZl77qYCAIp84lN1h944.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"italic\",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/tKtBcDnBMevsEEJKdNGhhkLzYo.woff2\",weight:\"400\"}]}];export const css=['.framer-0XWVj .framer-styles-preset-jr47t6:not(.rich-text-wrapper), .framer-0XWVj .framer-styles-preset-jr47t6.rich-text-wrapper p { --framer-font-family: \"Manrope\", \"Manrope Placeholder\", sans-serif; --framer-font-family-bold: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-family-italic: \"Inter\", \"Inter Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 20px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0em; --framer-line-height: 2em; --framer-paragraph-spacing: 20px; --framer-text-alignment: left; --framer-text-color: #6b6b6b; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-0XWVj\";\nexport const __FramerMetadata__ = {\"exports\":{\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (f2f96df)\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 NY80X9Fq5=undefined;const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 40 40\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 30 2.206 L 30 27.794 C 30 28.379 29.768 28.94 29.354 29.354 C 28.94 29.768 28.379 30 27.794 30 L 2.206 30 C 1.621 30 1.06 29.768 0.646 29.354 C 0.232 28.94 0 28.379 0 27.794 L 0 2.206 C 0 1.621 0.232 1.06 0.646 0.646 C 1.06 0.232 1.621 0 2.206 0 L 27.794 0 C 28.379 0 28.94 0.232 29.354 0.646 C 29.768 1.06 30 1.621 30 2.206 Z M 8.823 11.471 L 4.412 11.471 L 4.412 25.588 L 8.823 25.588 Z M 9.221 6.618 C 9.223 6.284 9.16 5.953 9.034 5.644 C 8.908 5.335 8.723 5.053 8.489 4.816 C 8.255 4.578 7.976 4.389 7.668 4.259 C 7.361 4.129 7.031 4.061 6.697 4.059 L 6.618 4.059 C 5.939 4.059 5.288 4.328 4.808 4.808 C 4.328 5.288 4.059 5.939 4.059 6.618 C 4.059 7.296 4.328 7.947 4.808 8.427 C 5.288 8.907 5.939 9.177 6.618 9.177 L 6.618 9.177 C 6.951 9.185 7.284 9.127 7.595 9.007 C 7.906 8.887 8.191 8.706 8.433 8.476 C 8.675 8.246 8.869 7.97 9.004 7.665 C 9.139 7.36 9.213 7.031 9.221 6.697 Z M 25.588 17.012 C 25.588 12.768 22.888 11.118 20.206 11.118 C 19.328 11.074 18.453 11.261 17.67 11.66 C 16.886 12.06 16.221 12.657 15.741 13.394 L 15.618 13.394 L 15.618 11.471 L 11.471 11.471 L 11.471 25.588 L 15.882 25.588 L 15.882 18.079 C 15.819 17.31 16.061 16.547 16.556 15.956 C 17.052 15.364 17.761 14.992 18.529 14.921 L 18.697 14.921 C 20.1 14.921 21.141 15.803 21.141 18.026 L 21.141 25.588 L 25.553 25.588 Z\" fill=\"var(--1ygg0ew, var(--token-a3f70aa4-08e2-4a37-beba-99c64979604b, rgb(2, 2, 2)))\" height=\"30px\" id=\"P78OQcRtQ\" transform=\"translate(5 5)\" width=\"30px\"/></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=({color,height,id,width,...props})=>{return{...props,NY80X9Fq5:color??props.NY80X9Fq5??\"var(--token-a3f70aa4-08e2-4a37-beba-99c64979604b, rgb(2, 2, 2))\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,NY80X9Fq5,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-CuLZW\",className),layoutId:layoutId,ref:ref,style:{\"--1ygg0ew\":NY80X9Fq5,...style}});});const css=[`.framer-CuLZW { -webkit-mask: ${mask}; aspect-ratio: 1; background-color: var(--1ygg0ew); mask: ${mask}; width: 40px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 40\n * @framerIntrinsicHeight 40\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"NY80X9Fq5\":\"color\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Linkedin\",\"color\":{\"type\":\"variable\",\"value\":\"1ygg0ew\"},\"set\":{\"localId\":\"vectorSet/r2H0_Yzbo\",\"id\":\"r2H0_Yzbo\",\"moduleId\":\"ZSKKA1qRfOvoVGtBTemQ\"}}\n */const Icon=withCSS(Component,css,\"framer-CuLZW\");Icon.displayName=\"Linkedin\";export default Icon;addPropertyControls(Icon,{NY80X9Fq5:{defaultValue:'var(--token-a3f70aa4-08e2-4a37-beba-99c64979604b, rgb(2, 2, 2)) /* {\"name\":\"Content\"} */',hidden:false,title:\"Color\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"40\",\"framerVector\":\"{\\\"name\\\":\\\"Linkedin\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"1ygg0ew\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/r2H0_Yzbo\\\",\\\"id\\\":\\\"r2H0_Yzbo\\\",\\\"moduleId\\\":\\\"ZSKKA1qRfOvoVGtBTemQ\\\"}}\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerImmutableVariables\":\"true\",\"framerVariables\":\"{\\\"NY80X9Fq5\\\":\\\"color\\\"}\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"40\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (265a357)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFonts,getFontsFromSharedStyle,Link,RichText,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Email from\"https://framerusercontent.com/modules/OVq4gHEro5rSqRJqmrqc/2k1MKUipgF25yoKCWzAt/aQCVXa8to.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/2y68h64RKZk9bhxAqpNf/zsdx7aeftcOhi8tVTJiV/fHQH9rNkH.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/CkClCyblOuZAoLzytqQg/Sl2PSYMWGJS1yU1lVgaY/XDTyIc6zw.js\";import Linkedin from\"https://framerusercontent.com/modules/T9GxEhFRYPToznUAdmIf/VMNsLf0piFIJxEb0NeMy/JkRuEMt0S.js\";const LinkedinFonts=getFonts(Linkedin);const EmailFonts=getFonts(Email);const cycleOrder=[\"XR3KwPlhe\",\"kUbzgqLYa\",\"dKaOon5M9\"];const serializationHash=\"framer-jTJPi\";const variantClassNames={dKaOon5M9:\"framer-v-umgy1w\",kUbzgqLYa:\"framer-v-dq0l0a\",XR3KwPlhe:\"framer-v-10f2rdx\"};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 transition2={bounce:.2,delay:0,duration:.4,type:\"spring\"};const animation={opacity:.75,rotate:0,rotateX:0,rotateY:0,scale:1.15,skewX:0,skewY:0,transition:transition2};const animation1={opacity:.5,rotate:0,rotateX:0,rotateY:0,scale:1.05,skewX:0,skewY:0,transition:transition2};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:\"XR3KwPlhe\",Phone:\"dKaOon5M9\",Tablet:\"kUbzgqLYa\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"XR3KwPlhe\"};};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:\"XR3KwPlhe\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1ej445n=activeVariantCallback(async(...args)=>{setVariant(\"XR3KwPlhe\");});const onTap15em7xd=activeVariantCallback(async(...args)=>{setVariant(\"dKaOon5M9\");});const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(baseVariant===\"dKaOon5M9\")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-10f2rdx\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"XR3KwPlhe\",ref:refBinding,style:{backdropFilter:\"blur(3px)\",WebkitBackdropFilter:\"blur(3px)\",...style},...addPropertyOverrides({dKaOon5M9:{\"data-framer-name\":\"Phone\"},kUbzgqLYa:{\"data-framer-name\":\"Tablet\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.nav,{\"aria-label\":\"Main navigation\",className:\"framer-1y5ayfq\",\"data-framer-name\":\"Content\",layoutDependency:layoutDependency,layoutId:\"KY8iqmhFa\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-lxlb9c\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"sxuntbQnv\",onTap:onTap1ej445n,...addPropertyOverrides({dKaOon5M9:{onTap:onTap15em7xd}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-jr47t6\",\"data-styles-preset\":\"XDTyIc6zw\",dir:\"auto\",children:/*#__PURE__*/_jsx(Link,{href:{webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"GGlZRh2OT\",openInNewTab:false,relValues:[],scopeId:\"RMTIifO8H\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-1b6m7mz\",\"data-styles-preset\":\"fHQH9rNkH\",children:/*#__PURE__*/_jsx(motion.strong,{children:\"Eason\"})})})})}),className:\"framer-19gp1in\",fonts:[\"Inter\",\"Inter-Bold\"],layoutDependency:layoutDependency,layoutId:\"GGlZRh2OT\",verticalAlignment:\"top\",whileHover:animation,withExternalLayout:true})}),isDisplayed()&&/*#__PURE__*/_jsx(motion.div,{className:\"framer-1rxo88u\",\"data-framer-name\":\"Navigation\",layoutDependency:layoutDependency,layoutId:\"l6egtv5uo\"}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-rqutvk\",\"data-framer-name\":\"Navigation\",layoutDependency:layoutDependency,layoutId:\"E3XpzBbP9\",children:[/*#__PURE__*/_jsx(Link,{href:\"https://www.linkedin.com/in/eason-sun/\",motionChild:true,nodeId:\"Cy_UIeD0i\",openInNewTab:true,scopeId:\"RMTIifO8H\",children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-11l8hmx framer-1tb8lt5\",layoutDependency:layoutDependency,layoutId:\"Cy_UIeD0i\",children:/*#__PURE__*/_jsx(Linkedin,{animated:true,className:\"framer-yrr07b\",layoutDependency:layoutDependency,layoutId:\"x_WLYF528\",style:{\"--1ygg0ew\":\"rgb(17, 101, 186)\"},whileHover:animation1})})}),/*#__PURE__*/_jsx(Link,{href:\"mailto:e64sun@uwaterloo.ca\",motionChild:true,nodeId:\"Grrx8n53w\",openInNewTab:true,scopeId:\"RMTIifO8H\",children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-y0jmi4 framer-1tb8lt5\",layoutDependency:layoutDependency,layoutId:\"Grrx8n53w\",children:/*#__PURE__*/_jsx(Email,{animated:true,className:\"framer-1tiuxmm\",layoutDependency:layoutDependency,layoutId:\"fWmBdGqZb\",style:{\"--1ygg0ew\":\"rgba(0, 0, 0, 0.8)\"},whileHover:animation1})})})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-jTJPi.framer-1tb8lt5, .framer-jTJPi .framer-1tb8lt5 { display: block; }\",\".framer-jTJPi.framer-10f2rdx { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 24px 80px 24px 80px; position: relative; width: 1200px; }\",\".framer-jTJPi .framer-1y5ayfq { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; max-width: 1100px; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-jTJPi .framer-lxlb9c { align-content: center; align-items: center; cursor: pointer; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 46px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-jTJPi .framer-19gp1in { flex: none; height: auto; position: relative; white-space: pre; width: auto; will-change: var(--framer-will-change-effect-override, transform); }\",\".framer-jTJPi .framer-1rxo88u { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 40px; height: min-content; justify-content: flex-start; min-height: 30px; min-width: 62px; overflow: hidden; padding: 0px; position: relative; width: min-content; }\",\".framer-jTJPi .framer-rqutvk { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 40px; height: min-content; justify-content: flex-end; overflow: hidden; padding: 0px; position: relative; width: 1px; }\",\".framer-jTJPi .framer-11l8hmx, .framer-jTJPi .framer-y0jmi4 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-jTJPi .framer-yrr07b, .framer-jTJPi .framer-1tiuxmm { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 40px); position: relative; width: 40px; will-change: var(--framer-will-change-effect-override, transform); }\",\".framer-jTJPi.framer-v-dq0l0a.framer-10f2rdx { padding: 24px 40px 24px 40px; width: 810px; }\",\".framer-jTJPi.framer-v-dq0l0a .framer-1y5ayfq, .framer-jTJPi.framer-v-umgy1w .framer-19gp1in { order: 0; }\",\".framer-jTJPi.framer-v-umgy1w.framer-10f2rdx { flex-direction: column; gap: 24px; justify-content: flex-start; padding: 16px; width: 390px; }\",\".framer-jTJPi.framer-v-umgy1w .framer-1y5ayfq { flex: none; max-width: 100%; order: 0; width: 100%; }\",\".framer-jTJPi.framer-v-umgy1w .framer-lxlb9c { flex: 1 0 0px; gap: unset; justify-content: space-between; padding: 10px; width: 1px; }\",\".framer-jTJPi.framer-v-umgy1w .framer-rqutvk { flex: none; padding: 10px; width: min-content; }\",...sharedStyle.css,...sharedStyle1.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 94\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"kUbzgqLYa\":{\"layout\":[\"fixed\",\"auto\"]},\"dKaOon5M9\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerRMTIifO8H=withCSS(Component,css,\"framer-jTJPi\");export default FramerRMTIifO8H;FramerRMTIifO8H.displayName=\"Navigation\";FramerRMTIifO8H.defaultProps={height:94,width:1200};addPropertyControls(FramerRMTIifO8H,{variant:{options:[\"XR3KwPlhe\",\"kUbzgqLYa\",\"dKaOon5M9\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerRMTIifO8H,[{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\"},{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/DpPBYI0sL4fYLgAkX8KXOPVt7c.woff2\",weight:\"700\"},{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/4RAEQdEOrcnDkhHiiCbJOw92Lk.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/1K3W8DizY3v4emK8Mb08YHxTbs.woff2\",weight:\"700\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/tUSCtfYVM1I1IchuyCwz9gDdQ.woff2\",weight:\"700\"},{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/VgYFWiwsAC5OYxAycRXXvhze58.woff2\",weight:\"700\"},{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/syRNPWzAMIrcJ3wIlPIP43KjQs.woff2\",weight:\"700\"},{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/GIryZETIX4IFypco5pYZONKhJIo.woff2\",weight:\"700\"}]},...LinkedinFonts,...EmailFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerRMTIifO8H\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"94\",\"framerAutoSizeImages\":\"true\",\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"kUbzgqLYa\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"dKaOon5M9\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerDisplayContentsDiv\":\"false\",\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"1200\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./RMTIifO8H.map","// Generated by Framer (72b52f5)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,forwardLoader,GeneratedComponentContext,getFonts,PropertyOverrides,RenderTarget,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import Footer from\"#framer/local/canvasComponent/gErTJ91Yb/gErTJ91Yb.js\";import Navigation from\"#framer/local/canvasComponent/RMTIifO8H/RMTIifO8H.js\";const NavigationFonts=getFonts(Navigation);const FooterFonts=getFonts(Footer);const breakpoints={vOzFhJ8kc:\"(min-width: 1100px)\",YySim5R5q:\"(max-width: 767.98px)\",ZCHrgzrB7:\"(min-width: 768px) and (max-width: 1099.98px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-7IMis\";const variantClassNames={vOzFhJ8kc:\"framer-v-rwtoxc\",YySim5R5q:\"framer-v-1pttw4e\",ZCHrgzrB7:\"framer-v-1wess2\"};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const breakpointRules={YySim5R5q:[\".framer-7IMis .framer-p34yk0-container { max-width: unset; }\"]};const breakpointKeys=Object.keys(breakpointRules);const selectors={YySim5R5q:\".framer-1pttw4e-override\"};const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-7IMis.framer-1ie9itr, .framer-7IMis .framer-1ie9itr { display: block; }\",\".framer-7IMis.framer-rwtoxc { align-content: center; align-items: center; background-color: var(--token-e16847f2-b192-48e1-a890-7bbcce11cc6e, #ffffff); 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-7IMis .framer-p34yk0-container { flex: none; height: 94px; left: 0px; max-width: 100%; order: -1000; position: var(--framer-canvas-fixed-position, fixed); right: 0px; top: 0px; z-index: 10; }\",\".framer-7IMis .framer-935x54 { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-7IMis .framer-qjobf-container { flex: none; height: 163px; order: 1002; position: relative; width: 100%; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }'];const mediaQueries={vOzFhJ8kc:\"(min-width: 1100px)\",YySim5R5q:\"(max-width: 767.98px)\",ZCHrgzrB7:\"(min-width: 768px) and (max-width: 1099.98px)\"};const humanReadableVariantMap={Desktop:\"vOzFhJ8kc\",Phone:\"YySim5R5q\",Tablet:\"ZCHrgzrB7\"};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??\"vOzFhJ8kc\"};};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:\"vOzFhJ8kc\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: var(--token-e16847f2-b192-48e1-a890-7bbcce11cc6e, rgb(255, 255, 255)); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-rwtoxc\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:94,width:\"100vw\",y:0,children:/*#__PURE__*/_jsx(Container,{className:\"framer-p34yk0-container\",layoutScroll:true,nodeId:\"bhImHD0Sl\",scopeId:\"ew0qQxcm2\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{YySim5R5q:{style:{height:\"100%\",width:\"100%\"},variant:matchVariant(\"dKaOon5M9\")},ZCHrgzrB7:{variant:matchVariant(\"kUbzgqLYa\")}},children:/*#__PURE__*/_jsx(Navigation,{height:\"100%\",id:\"bhImHD0Sl\",layoutId:\"bhImHD0Sl\",style:{height:\"100%\",maxWidth:\"100%\",width:\"100%\"},variant:matchVariant(\"XR3KwPlhe\"),width:\"100%\"})})})}),children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-935x54\"}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:163,width:\"100vw\",y:1e3,children:/*#__PURE__*/_jsx(Container,{className:\"framer-qjobf-container\",nodeId:\"AXcl4ZyiY\",scopeId:\"ew0qQxcm2\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{YySim5R5q:{variant:matchVariant(\"z4xOc3Hfx\")},ZCHrgzrB7:{variant:matchVariant(\"Hz8hGzm8I\")}},children:/*#__PURE__*/_jsx(Footer,{height:\"100%\",id:\"AXcl4ZyiY\",layoutId:\"AXcl4ZyiY\",style:{height:\"100%\",width:\"100%\"},variant:matchVariant(\"rD_Sp7i5j\"),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=selectors[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1000\n * @framerIntrinsicWidth 1100\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"ZCHrgzrB7\":{\"layout\":[\"fixed\",\"fixed\"]},\"YySim5R5q\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"vOzFhJ8kc\":[\".framer-p34yk0-container\",\".framer-qjobf-container\"],\"ZCHrgzrB7\":[\".framer-p34yk0-container\",\".framer-qjobf-container\"],\"YySim5R5q\":[\".framer-p34yk0-container\",\".framer-qjobf-container\"]}\n * @framerBreakpoints {\"vOzFhJ8kc\":{\"min\":1100,\"canvasClassName\":\"framer-rwtoxc-override\",\"minHeight\":1000,\"name\":\"Desktop\",\"width\":1100,\"rootFontSize\":16},\"ZCHrgzrB7\":{\"min\":768,\"max\":1099,\"canvasClassName\":\"framer-1wess2-override\",\"minHeight\":1000,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":768,\"rootFontSize\":16},\"YySim5R5q\":{\"max\":767,\"canvasClassName\":\"framer-1pttw4e-override\",\"minHeight\":1000,\"viewportHeight\":844,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant vOzFhJ8kc\n * @framerLayoutTemplate true\n */const Framerew0qQxcm2=withCSS(Component,css,\"framer-7IMis\");export default Framerew0qQxcm2;Framerew0qQxcm2.displayName=\"Main\";Framerew0qQxcm2.defaultProps={height:1e3,width:1100};addFonts(Framerew0qQxcm2,[{explicitInter:true,fonts:[]},...NavigationFonts,...FooterFonts],{supportsExplicitInterCodegen:true});Framerew0qQxcm2.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(Navigation,{},context),forwardLoader(Footer,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerew0qQxcm2\",\"slots\":[],\"annotations\":{\"framerLayoutTemplate\":\"true\",\"framerDefaultVariant\":\"vOzFhJ8kc\",\"framerIntrinsicWidth\":\"1100\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"ZCHrgzrB7\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"YySim5R5q\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerColorSyntax\":\"true\",\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"1000\",\"framerBreakpoints\":\"{\\\"vOzFhJ8kc\\\":{\\\"min\\\":1100,\\\"canvasClassName\\\":\\\"framer-rwtoxc-override\\\",\\\"minHeight\\\":1000,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1100,\\\"rootFontSize\\\":16},\\\"ZCHrgzrB7\\\":{\\\"min\\\":768,\\\"max\\\":1099,\\\"canvasClassName\\\":\\\"framer-1wess2-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":768,\\\"rootFontSize\\\":16},\\\"YySim5R5q\\\":{\\\"max\\\":767,\\\"canvasClassName\\\":\\\"framer-1pttw4e-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerAutoSizeImages\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerHitTargets\":\"{\\\"vOzFhJ8kc\\\":[\\\".framer-p34yk0-container\\\",\\\".framer-qjobf-container\\\"],\\\"ZCHrgzrB7\\\":[\\\".framer-p34yk0-container\\\",\\\".framer-qjobf-container\\\"],\\\"YySim5R5q\\\":[\\\".framer-p34yk0-container\\\",\\\".framer-qjobf-container\\\"]}\"}},\"__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 Main from \"https://framerusercontent.com/modules/uJZlzyRLH2PJhg7Pv0In/dyZVcb1BxqyJ1pBqTB6b/ew0qQxcm2.js\";\r\n\r\n\t\tconst routes = {augiA20Il: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/6MhJu9le04sqGL6JU4sk/2v3tUbXikilF0PBqxkPK/augiA20Il.js\")), path: \"/\"}, SBZJc642p: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/juShWkNCyCFb3TqQ1cDT/R1FwKagakBtuo9FpiA9Q/SBZJc642p.js\")), path: \"/individual-projects/duct-mold\"}, o_gofZdaf: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/x36d73knNpYD4bfXFZRw/aXCEAt8lC0ud1Jms3ZLz/o_gofZdaf.js\")), path: \"/individual-projects/mass-analysis\"}, pdd2dmfTh: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/w5mVgi28hngDMSUf9knt/dV6tjICj8Rh2qoZECaVm/pdd2dmfTh.js\")), path: \"/individual-projects/lv-battery-enclosure\"}, I3jiT6iK2: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/UglYE0QbggGGmb5GytXW/r1eiyutFVGV4lm6vwCTH/I3jiT6iK2.js\")), path: \"/individual-projects/headrest-layup\"}, ZlIaTsEjn: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/aIlurH7bBdpQJyOYUIEq/GIoY0s9wo9OF52XQm9oG/ZlIaTsEjn.js\")), path: \"/individual-projects/kevlar-lid\"}, kogweW0Tp: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/8Mjaxrs6USiyxnDcN5Ab/wugjFKXEhYx8c8emLmSX/kogweW0Tp.js\")), path: \"/individual-projects/gauge-design\"}, Nl1NWCM72: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Z8e0c0Wxur0ZUdMapGQg/UT2h3X96FLqK0qbGaDnq/Nl1NWCM72.js\")), path: \"/individual-projects/harness-mounts-and-jigs\"}, IDpZ90_LG: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/fTmTwiVsrJQGsihXBzSR/dniHkxzzOfFJUT7V7m7g/IDpZ90_LG.js\")), path: \"/individual-projects/brake-light-mount\"}, dwUPlYzV1: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/BA8lEUoMuhIo2xdL9Fbp/wDZMfPyUB1qsImb5SA7p/dwUPlYzV1.js\")), path: \"/individual-projects/heat-sink-project\"}, uhVdtjndi: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/EWa5Kl8M0jYg6uA2Lzdu/FVueS0mNWYMOYHcaNKFJ/uhVdtjndi.js\")), path: \"/individual-projects/ev-inspection\"}, CgGQ1l6Eq: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/jRYMxJYtcwJU0JTduGNG/tXIFmVQNOpk7exDwBrrF/CgGQ1l6Eq.js\")), path: \"/individual-projects/transponder-mount\"}, e635fEd9J: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/1cgybrILY3yjI4yqbZmq/EALzHZMDGP57e5rcqekU/e635fEd9J.js\")), path: \"/uwfe\"}, rogoRKPRk: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/z14ASG9cBoWfjgdWPrEP/GGjcRSNmehW194yrzau7/rogoRKPRk.js\")), path: \"/work\"}, J1fYztwaF: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/p7Zl4nFN9wUeuxNTDJlp/SRWbGCIYLxd4VW1Q47dL/J1fYztwaF.js\")), path: \"/all-projects\"}, h4zTT3Q7c: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/KBh6KQqZMdYnm9LpVIf0/sFiyAV0vIXHyJIaVsUxa/h4zTT3Q7c.js\")), path: \"/propulsion\"}, Htj1qrZ8b: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/rjCr7irQkYMZvxb5n6mG/6LPCTEMkPMp7ok69GKE7/Htj1qrZ8b.js\")), path: \"/enclosures\"}, TSX2_XgOR: {page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/evB1H0XpdfRSMHefOkb4/TXSGeTBCLisndHtcpZFh/TSX2_XgOR.js\"))}}\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 framerSiteId = \"b815398017417af4589b471336d15814e773c98bbb105535d9368081cea38512\"\r\n\t\tfunction Template({webPageId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"augiA20Il\":\r\ncase \"SBZJc642p\":\r\ncase \"o_gofZdaf\":\r\ncase \"pdd2dmfTh\":\r\ncase \"I3jiT6iK2\":\r\ncase \"ZlIaTsEjn\":\r\ncase \"kogweW0Tp\":\r\ncase \"Nl1NWCM72\":\r\ncase \"IDpZ90_LG\":\r\ncase \"dwUPlYzV1\":\r\ncase \"uhVdtjndi\":\r\ncase \"CgGQ1l6Eq\":\r\ncase \"e635fEd9J\":\r\ncase \"rogoRKPRk\":\r\ncase \"J1fYztwaF\":\r\ncase \"h4zTT3Q7c\":\r\ncase \"Htj1qrZ8b\":\r\nreturn React.createElement(Main, {...props, key: \"Main\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"augiA20Il\":\r\ncase \"SBZJc642p\":\r\ncase \"o_gofZdaf\":\r\ncase \"pdd2dmfTh\":\r\ncase \"I3jiT6iK2\":\r\ncase \"ZlIaTsEjn\":\r\ncase \"kogweW0Tp\":\r\ncase \"Nl1NWCM72\":\r\ncase \"IDpZ90_LG\":\r\ncase \"dwUPlYzV1\":\r\ncase \"uhVdtjndi\":\r\ncase \"CgGQ1l6Eq\":\r\ncase \"e635fEd9J\":\r\ncase \"rogoRKPRk\":\r\ncase \"J1fYztwaF\":\r\ncase \"h4zTT3Q7c\":\r\ncase \"Htj1qrZ8b\":\r\nreturn [{hash: \"rwtoxc\", mediaQuery: \"(min-width: 1100px)\"}, {hash: \"1wess2\", mediaQuery: \"(min-width: 768px) and (max-width: 1099.98px)\"}, {hash: \"1pttw4e\", mediaQuery: \"(max-width: 767.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\texport async function getPageRoot({ routeId, pathVariables, localeId, collectionItemId }) {\r\n\t\t\tconst rootPreload = routes[routeId].page.preload()\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\troutes,\r\n\t\t\t\t\tcollectionUtils,\r\n\t\t\t\t\tframerSiteId,\r\n\t\t\t\t\tnotFoundPage: Framer.lazy(() => import(\"__framer-not-found-page\")),\r\n\t\t\t\t\tisReducedMotion: false,\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://easonsun.ca\",\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: false,\r\n\t\t\t\t\tLayoutTemplate: Template,\r\n\t\t\t\t\tloadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/9ofHbUjdwTnME27xmETN/7itrNBOjppcW4CBfsz3w/snippets.js\")),\r\n\t\t\t\t\tinitialCollectionItemId: collectionItemId,\r\n\t\t\t\t}\r\n\t\t\t)\r\n\r\n\t\t\tconst contentWithFeaturesContext = React.createElement(\r\n\t\t\t\tFramer.LibraryFeaturesProvider,\r\n\t\t\t\t{\r\n\t\t\t\t\tchildren: content,\r\n\t\t\t\t\tvalue: {autobahnNavigation: true, disableCustomCode: false, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageLocalizationSupport: true, onPageMoveTool: true, synchronousNavigationOnDesktop: false, yieldOnTap: false}\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: contentWithFeaturesContext\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: {global: {enter: {opacity: 0, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0, duration: 0.2, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"0px\"}}, 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\r\n\t\tif (isBrowser) {\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\t\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\t// Fallback support for stack gaps\r\n\t\t\tFramer.installFlexboxGapWorkaroundIfNeeded()\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, pathVariables, 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\tpathVariables = routeData.pathVariables\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 serverRouteExperimentEnabled = true\r\n\t\t\t\t\tconst serverRoute = serverRouteExperimentEnabled && 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\tpathVariables,\r\n\t\t\t\t\tcollectionItemId: routeData?.collectionItemId,\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\tlet collectionItemId = routeData?.collectionItemId ?? null\r\n\t\tif (collectionItemId === null && route?.collectionId && collectionUtils) {\r\n\t\t\t  const utils = await collectionUtils[route.collectionId]?.()\r\n\t\t\t  const [slug] = Object.values(pathVariables)\r\n\t\t\t  if (utils && typeof slug === \"string\") {\r\n\t\t\t\t  collectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n\t\t\t  }\r\n\t\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: framerSiteId ?? null,\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\tif (true) Framer.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"],"mappings":"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"}