{"version":3,"file":"script_main.pPT6DS7e.mjs","names":["serializationHash","variantClassNames","React.useContext","React.useMemo","React.Fragment","humanReadableVariantMap","getProps","Component","useRef","React.useId","sharedStyle.className","className","css","sharedStyle.css","sharedStyle.fonts","Footer","useRef","React.useId","className","PropertyOverrides","React.createElement","Main_Standard","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/1edMv8AxtRZfaSecv4Pb/os4nGB3VXANfCWrCaGUr/prECjIfGV.js","https:/framerusercontent.com/modules/fgIKwqMMwBj2c7OwYJV1/JZEK6MC9lO88nkvkBHxM/X4AsViDH5.js","framer:toplevel/main"],"sourcesContent":["// Generated by Framer (84a2f33)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,Link,RichText,SVG,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/jiHu9z0PgCKFANUKBiQA/rsABJCOXcq04NoCxO2Uv/IZUmlKmDJ.js\";const cycleOrder=[\"aP9tNF9BO\",\"WOHJMgEFT\",\"VBjObpCHd\"];const serializationHash=\"framer-2hpqy\";const variantClassNames={aP9tNF9BO:\"framer-v-1l1mno\",VBjObpCHd:\"framer-v-xwembw\",WOHJMgEFT:\"framer-v-lo7v6o\"};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 Variants=motion.create(React.Fragment);const humanReadableVariantMap={Desktop:\"aP9tNF9BO\",Phone:\"VBjObpCHd\",Tablet:\"WOHJMgEFT\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"aP9tNF9BO\"};};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:\"aP9tNF9BO\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1i27ci=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});setVariant(\"VBjObpCHd\");});const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const isDisplayed=()=>{if(baseVariant===\"VBjObpCHd\")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-1l1mno\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"aP9tNF9BO\",ref:refBinding,style:{backgroundColor:\"rgb(17, 17, 17)\",...style},...addPropertyOverrides({VBjObpCHd:{\"data-framer-name\":\"Phone\",\"data-highlight\":true,onTap:onTap1i27ci},WOHJMgEFT:{\"data-framer-name\":\"Tablet\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-10v6gb4\",layoutDependency:layoutDependency,layoutId:\"P5vJwjreL\",children:[isDisplayed()&&/*#__PURE__*/_jsx(Link,{href:{hash:\":SnwFfXhVn\",webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"DJSvBESfJ\",openInNewTab:false,scopeId:\"prECjIfGV\",smoothScroll:true,children:/*#__PURE__*/_jsxs(motion.a,{className:\"framer-ic6397 framer-t7vz52\",layoutDependency:layoutDependency,layoutId:\"DJSvBESfJ\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-15d7998\",\"data-framer-name\":\"logoPersonal\",layoutDependency:layoutDependency,layoutId:\"a2SwPLths\",children:/*#__PURE__*/_jsx(SVG,{className:\"framer-12qfnl9\",\"data-framer-name\":\"Logo\",fill:\"rgb(227, 227, 227)\",intrinsicHeight:400,intrinsicWidth:400,layoutDependency:layoutDependency,layoutId:\"eVdIyF9Fl\",svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"400\" height=\"400\"><path d=\"M178.707 31.962c-33.522 4.598-63.022 16.76-88.158 36.343-89.17 69.47-84.215 208.404 9.67 271.131 21.323 14.246 60.507 28.351 74.899 26.96l2.449-.236.207-11.407.207-11.407-9.422-1.681C81.97 326.215 27.681 230.067 60.119 149.613c46.083-114.3 198.887-129.417 266.134-26.329 53.824 82.51 5.146 197.911-92.032 218.183-4.392.916-8.499 1.921-9.126 2.232-1.407.7-2.648 13.57-1.896 19.672l.5 4.055 3.93-.514c67.501-8.818 123.303-58.362 140.063-124.354 24.863-97.9-37.112-191.965-138.034-209.507-8.381-1.457-42.893-2.194-50.951-1.089m8.365 37.095c0 2.031.187 3.88.416 4.109.732.732 1.149 16.738.458 17.62-2.373 3.032-1.792 4.939 4.091 13.427 6.301 9.093 8.768 10.846 10.85 7.71.593-.892 3.448-4.624 6.346-8.293l5.268-6.672-.526-6.083c-.289-3.346-.558-10.362-.597-15.59l-.07-9.506-13.118-.208-13.118-.208v3.694m-19.391-1.015c-14.547 2.69-31.559 8.859-31.559 11.444 0 1.4 28.521 43.58 40.472 59.856l3.76 5.121-4.437 7.094-4.438 7.093-11.405-16.193c-6.273-8.906-14.249-20.22-17.725-25.143-3.477-4.922-9.386-13.483-13.132-19.025-7.06-10.446-7.95-11.153-11.182-8.888-7.612 5.331-45.792 50.81-45.792 54.546 0 1.127 6.025 7.731 19.209 21.053 81.844 82.702 87.545 88.335 88.788 87.714.685-.343 4.001-3.703 7.368-7.467a15372.1 15372.1 0 0 1 26.009-28.897c10.938-12.129 21.925-24.962 24.415-28.517 42.597-60.803 44.292-63.173 45.001-62.923.287.102 3.313 3.895 6.723 8.43l6.2 8.245-6.343 6.584c-14.28 14.822-49.436 52.289-61.872 65.937-18.661 20.48-38.823 43.2-39.691 44.727-.7 1.229-.93 14.556-.951 54.939l-.027 53.317 3.993.479c2.195.264 8.173.483 13.283.486l9.29.007.215-52.313.215-52.313 2.385-2.25c1.312-1.237 12.07-12.516 23.907-25.063 25.133-26.642 44.259-46.666 69.333-72.587 11.402-11.788 18.054-19.229 18.049-20.189-.031-5.599-43.311-55.552-47.634-54.978-1.648.22-7.255 7.966-40.199 55.548-4.85 7.006-9.055 12.732-9.345 12.726-.289-.007-2.607-3.204-5.15-7.105l-4.625-7.093 1.821-2.211c7.99-9.7 42.799-58.999 42.775-60.581-.043-2.798-24.529-10.987-37.058-12.395l-4.753-.533v20.728l2.472.076c1.359.042 3.286.304 4.282.584l1.811.507-2.14 2.543c-2.815 3.346-13.876 17.803-22.946 29.992-3.99 5.362-7.517 9.468-7.84 9.126-.507-.539-10.6-14.763-25.936-36.554l-4.415-6.274h9.085V66.92l-2.472.069c-1.359.038-4.867.511-7.794 1.053m-42.373 66.369a1452.667 1452.667 0 0 1 14.638 20.722c6.397 9.267 24.123 33.28 29.891 40.494 2.392 2.991 3.869 3.572 4.552 1.79.403-1.049 22.74-31.568 26.087-35.643l1.729-2.104 6.162 8.348c7.427 10.059 7.443 7.92-.128 16.308-5.307 5.881-10.967 12.47-27.776 32.336l-1.666 1.969-11.21-11.787c-6.166-6.483-21.848-22.566-34.849-35.741-13.002-13.175-24.794-25.218-26.204-26.763l-2.566-2.808 3.002-3.656c1.651-2.01 4.674-5.965 6.718-8.789 2.043-2.823 3.795-5.133 3.892-5.133.097 0 3.575 4.706 7.728 10.457M65.45 160.852c-1.952 6.32-4.392 19.669-4.895 26.791l-.39 5.513h21.681c21.051 0 21.675-.043 21.439-1.479-.295-1.794-33.789-35.783-35.262-35.783-.619 0-1.663 2.012-2.573 4.958m248.392 12.157c-9.077 9.414-16.504 17.62-16.504 18.237 0 1.789 2.326 1.97 22.434 1.744l19.011-.214-.077-6.464c-.125-10.376-4.788-30.418-7.076-30.418-.706 0-8.71 7.702-17.788 17.115M60.51 210.076c1.532 18.994 5.957 35.35 13.591 50.236l4.606 8.981 32.208.286c17.715.158 32.313.394 32.441.525.127.131.041 5.317-.193 11.524l-.426 11.286-3.498-.498c-4.9-.698-11.862-4.082-16.99-8.259l-4.357-3.549h-14.515c-16.969 0-16.369-.577-8.708 8.373 16.293 19.032 42.009 34.96 65.654 40.665 3.259.787 5.85 1.063 6.247.666.375-.375.714-17.049.759-37.401l.082-36.724-3.536-4.139-3.536-4.139H91.978l-.82-2.092c-2.956-7.546-5.333-20.086-5.766-30.418l-.453-10.836H60.065l.445 5.513m31.541-3.802c.022 1.089 3.6 5.699 9.849 12.689 8.775 9.817 9.838 11.306 10.04 14.069l.227 3.09 16.92.204c21.801.264 21.915 2.543-1.071-21.307l-10.077-10.456h-12.962c-12.945 0-12.962.002-12.926 1.711m190.839-.951a.765.765 0 0 1-.763.761c-.785 0-10.816 10.231-11.288 11.514-.146.394-3.084 3.443-6.53 6.776-11.824 11.436-11.418 12.132 7.077 12.118 16.734-.013 16.827-.035 16.827-3.972 0-2.765.612-3.715 6.681-10.367 17.06-18.703 17.026-17.59.543-17.59-7.858 0-12.547.284-12.547.76m30.968 10.076c-.453 11.325-1.613 18.243-4.521 26.945l-1.732 5.185-33.323.38-33.322.38-3.797 4.563c-3.364 4.042-3.749 4.866-3.378 7.224.23 1.464.423 18.019.427 36.789l.009 34.128 2.851-.459c19.709-3.169 42.419-16.082 61.279-34.844 15.472-15.391 15.592-14.641-2.383-14.909l-13.899-.207-4.342 3.554c-4.719 3.863-13.365 8.238-17.733 8.974l-2.744.462-.415-6.662c-.229-3.665-.235-9.061-.013-11.992l.402-5.328 31.812.242 31.813.242 4.505-8.987c7.634-15.23 12.572-33.092 13.575-49.102l.464-7.414h-25.101l-.434 10.836\" fill-rule=\"evenodd\"/></svg>',withExternalLayout:true})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h5,{className:\"framer-styles-preset-791z3g\",\"data-styles-preset\":\"IZUmlKmDJ\",style:{\"--framer-text-color\":\"var(--extracted-1lwpl3i, rgb(255, 255, 255))\"},children:\"Sui Yang.Design\"})}),className:\"framer-cvh0v9\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"cjCQxsMJK\",style:{\"--extracted-1lwpl3i\":\"rgb(255, 255, 255)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})]})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1m8jdoi\",layoutDependency:layoutDependency,layoutId:\"X_3emNcW_\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--framer-font-size\":\"calc(var(--framer-root-font-size, 1rem) * 1)\",\"--framer-line-height\":\"1.1em\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(235, 235, 235))\"},children:\"\\xa9 2025 All Rights Reserved • Designed with\"})}),className:\"framer-6ow9o5\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"oH0kicgcM\",style:{\"--extracted-r6o4lv\":\"rgb(235, 235, 235)\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({VBjObpCHd:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{style:{\"--framer-font-size\":\"calc(var(--framer-root-font-size, 1rem) * 1)\",\"--framer-line-height\":\"1.1em\",\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-r6o4lv, rgb(235, 235, 235))\"},children:\"\\xa9 2025 All Rights Reserved • Designed with\"})})}},baseVariant,gestureVariant)}),/*#__PURE__*/_jsxs(SVG,{className:\"framer-1i0qu2c\",layoutDependency:layoutDependency,layoutId:\"OatqgzGAh\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 14 14\" overflow=\"visible\"><g><path d=\"M 0 0 L 14 0 L 14 14 L 0 14 Z\" fill=\"transparent\"></path><g><path d=\"M 0 0 L 14 0 L 14 14 L 0 14 Z\" fill=\"transparent\"></path><path d=\"M 1.302 8.214 L 6.242 12.827 C 6.669 13.226 7.331 13.226 7.758 12.827 L 12.698 8.214 C 13.529 7.44 14 6.355 14 5.22 L 14 5.06 C 14.001 3.479 13.048 2.053 11.588 1.448 C 10.127 0.843 8.446 1.178 7.328 2.296 L 7 2.624 L 6.672 2.296 C 5.554 1.18 3.873 0.847 2.414 1.451 C 0.954 2.056 0.001 3.48 0 5.06 L 0 5.219 C 0 6.353 0.47 7.439 1.302 8.213 Z\" fill=\"rgb(109,89,240)\"></path></g></g></svg>',withExternalLayout:true,children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-kam3il\",layoutDependency:layoutDependency,layoutId:\"Eg_WuTgPu\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 14 14\" overflow=\"visible\"><path d=\"M 0 0 L 14 0 L 14 14 L 0 14 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsxs(SVG,{className:\"framer-zbhmir\",layoutDependency:layoutDependency,layoutId:\"aHWi20Vq_\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 14 14\" overflow=\"visible\"><g><path d=\"M 0 0 L 14 0 L 14 14 L 0 14 Z\" fill=\"transparent\"></path><path d=\"M 1.302 8.214 L 6.242 12.827 C 6.669 13.226 7.331 13.226 7.758 12.827 L 12.698 8.214 C 13.529 7.44 14 6.355 14 5.22 L 14 5.06 C 14.001 3.479 13.048 2.053 11.588 1.448 C 10.127 0.843 8.446 1.178 7.328 2.296 L 7 2.624 L 6.672 2.296 C 5.554 1.18 3.873 0.847 2.414 1.451 C 0.954 2.056 0.001 3.48 0 5.06 L 0 5.219 C 0 6.353 0.47 7.439 1.302 8.213 Z\" fill=\"rgb(109,89,240)\"></path></g></svg>',withExternalLayout:true,children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-lrtous\",layoutDependency:layoutDependency,layoutId:\"AsL1doWW8\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 14 14\" overflow=\"visible\"><path d=\"M 0 0 L 14 0 L 14 14 L 0 14 Z\" fill=\"transparent\"></path></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1hzfuv6\",layoutDependency:layoutDependency,layoutId:\"gu_L13S2W\",opacity:1,requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 14 11.975\" overflow=\"visible\"><path d=\"M 1.302 7.063 L 6.242 11.676 C 6.669 12.075 7.331 12.075 7.758 11.676 L 12.698 7.063 C 13.529 6.289 14 5.205 14 4.069 L 14 3.909 C 14.001 2.328 13.048 0.903 11.588 0.298 C 10.127 -0.307 8.446 0.027 7.328 1.145 L 7 1.473 L 6.672 1.145 C 5.554 0.029 3.873 -0.304 2.414 0.301 C 0.954 0.905 0.001 2.329 0 3.909 L 0 4.068 C 0 5.202 0.47 6.288 1.302 7.062 Z\" fill=\"rgb(109,89,240)\"></path></svg>',withExternalLayout:true})]})]})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-2hpqy.framer-t7vz52, .framer-2hpqy .framer-t7vz52 { display: block; }\",\".framer-2hpqy.framer-1l1mno { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 48px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 12px 48px 12px 48px; position: relative; width: 1025px; }\",\".framer-2hpqy .framer-10v6gb4 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-2hpqy .framer-ic6397 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 39px; justify-content: center; overflow: hidden; padding: 0px; position: relative; text-decoration: none; width: min-content; z-index: 1; }\",\".framer-2hpqy .framer-15d7998 { align-content: center; align-items: center; aspect-ratio: 1 / 1; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: var(--framer-aspect-ratio-supported, 24px); justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 24px; }\",\".framer-2hpqy .framer-12qfnl9 { flex: 1 0 0px; height: 100%; position: relative; width: 1px; }\",\".framer-2hpqy .framer-cvh0v9, .framer-2hpqy .framer-6ow9o5 { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-2hpqy .framer-1m8jdoi { 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; width: min-content; }\",\".framer-2hpqy .framer-1i0qu2c { height: 14px; position: relative; width: 14px; }\",\".framer-2hpqy .framer-kam3il, .framer-2hpqy .framer-zbhmir, .framer-2hpqy .framer-lrtous { height: 14px; left: 0px; position: absolute; top: 0px; width: 14px; }\",\".framer-2hpqy .framer-1hzfuv6 { height: 12px; left: 0px; position: absolute; top: 1px; width: 14px; }\",\".framer-2hpqy.framer-v-lo7v6o.framer-1l1mno { width: 768px; }\",\".framer-2hpqy.framer-v-xwembw.framer-1l1mno { cursor: pointer; padding: 24px; width: 390px; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 63\n * @framerIntrinsicWidth 1025\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"WOHJMgEFT\":{\"layout\":[\"fixed\",\"auto\"]},\"VBjObpCHd\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerprECjIfGV=withCSS(Component,css,\"framer-2hpqy\");export default FramerprECjIfGV;FramerprECjIfGV.displayName=\"Footer\";FramerprECjIfGV.defaultProps={height:63,width:1025};addPropertyControls(FramerprECjIfGV,{variant:{options:[\"aP9tNF9BO\",\"WOHJMgEFT\",\"VBjObpCHd\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerprECjIfGV,[{explicitInter:true,fonts:[{family:\"Inter\",source:\"framer\",style:\"normal\",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\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{family:\"Inter\",source:\"framer\",style:\"normal\",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\"},{family:\"Inter\",source:\"framer\",style:\"normal\",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\"},{family:\"Inter\",source:\"framer\",style:\"normal\",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\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerprECjIfGV\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"63\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"1025\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"WOHJMgEFT\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"VBjObpCHd\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerColorSyntax\":\"true\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./prECjIfGV.map","// Generated by Framer (84a2f33)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,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/prECjIfGV/prECjIfGV.js\";const FooterFonts=getFonts(Footer);const breakpoints={BmRbOd8BL:\"(min-width: 768px) and (max-width: 1024px)\",kgNoGEfeW:\"(min-width: 1025px)\",M5JnotaUv:\"(max-width: 767px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-v3auY\";const variantClassNames={BmRbOd8BL:\"framer-v-1sqqhyp\",kgNoGEfeW:\"framer-v-10kygmn\",M5JnotaUv:\"framer-v-xzfpfp\"};const breakpointRules={};const breakpointKeys=Object.keys(breakpointRules);const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-v3auY.framer-ymm7mj, .framer-v3auY .framer-ymm7mj { display: block; }\",\".framer-v3auY.framer-10kygmn { align-content: center; align-items: center; background-color: #131314; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-v3auY .framer-1mmj4mv { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-v3auY .framer-f4jvw0-container { flex: none; height: auto; order: 1002; position: relative; width: 100%; z-index: 5; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }'];const mediaQueries={BmRbOd8BL:\"(min-width: 768px) and (max-width: 1024px)\",kgNoGEfeW:\"(min-width: 1025px)\",M5JnotaUv:\"(max-width: 767px)\"};const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const humanReadableVariantMap={Desktop:\"kgNoGEfeW\",Phone:\"M5JnotaUv\",Tablet:\"BmRbOd8BL\"};const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"kgNoGEfeW\"};};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:\"kgNoGEfeW\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: rgb(19, 19, 20); } @media (min-width: 768px) and (max-width: 1024px) { :root { font-size: 93.75%; } } @media (max-width: 767px) { :root { font-size: 87.5%; } }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-10kygmn\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-1mmj4mv\"}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:63,width:\"100vw\",y:1e3,children:/*#__PURE__*/_jsx(Container,{className:\"framer-f4jvw0-container\",nodeId:\"cQXWz7m7e\",scopeId:\"X4AsViDH5\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{BmRbOd8BL:{variant:\"WOHJMgEFT\"},M5JnotaUv:{variant:\"VBjObpCHd\"}},children:/*#__PURE__*/_jsx(Footer,{height:\"100%\",id:\"cQXWz7m7e\",layoutId:\"cQXWz7m7e\",style:{width:\"100%\"},variant:\"aP9tNF9BO\",width:\"100%\"})})})})]}),/*#__PURE__*/_jsx(\"div\",{id:\"template-overlay\"})]})});});const css=target=>{const isStaticRenderer=target===RenderTarget.canvas||target===RenderTarget.export;if(!isStaticRenderer){return[...rules,...breakpointKeys.map(key=>{const query=mediaQueries[key];return`@media ${query} { ${breakpointRules[key].join(\" \")} }`;})];}return[...rules,...breakpointKeys.flatMap(key=>{const selector=breakpointRules[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1000\n * @framerIntrinsicWidth 1025\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"BmRbOd8BL\":{\"layout\":[\"fixed\",\"fixed\"]},\"M5JnotaUv\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"kgNoGEfeW\":[\".framer-f4jvw0-container\"],\"BmRbOd8BL\":[\".framer-f4jvw0-container\"],\"M5JnotaUv\":[\".framer-f4jvw0-container\"]}\n * @framerBreakpoints {\"kgNoGEfeW\":{\"min\":1025,\"canvasClassName\":\"framer-10kygmn-override\",\"minHeight\":1000,\"name\":\"Desktop\",\"width\":1025,\"rootFontSize\":16},\"BmRbOd8BL\":{\"min\":768,\"max\":1024,\"canvasClassName\":\"framer-1sqqhyp-override\",\"minHeight\":1000,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":768,\"rootFontSize\":15},\"M5JnotaUv\":{\"max\":767,\"canvasClassName\":\"framer-xzfpfp-override\",\"minHeight\":1000,\"viewportHeight\":455,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":14}}\n * @framerDefaultVariant kgNoGEfeW\n * @framerLayoutTemplate\n */const FramerX4AsViDH5=withCSS(Component,css,\"framer-v3auY\");export default FramerX4AsViDH5;FramerX4AsViDH5.displayName=\"Main_Standard\";FramerX4AsViDH5.defaultProps={height:1e3,width:1025};addFonts(FramerX4AsViDH5,[{explicitInter:true,fonts:[]},...FooterFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerX4AsViDH5\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"1025\",\"framerIntrinsicHeight\":\"1000\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerDefaultVariant\":\"kgNoGEfeW\",\"framerBreakpoints\":\"{\\\"kgNoGEfeW\\\":{\\\"min\\\":1025,\\\"canvasClassName\\\":\\\"framer-10kygmn-override\\\",\\\"minHeight\\\":1000,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1025,\\\"rootFontSize\\\":16},\\\"BmRbOd8BL\\\":{\\\"min\\\":768,\\\"max\\\":1024,\\\"canvasClassName\\\":\\\"framer-1sqqhyp-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":768,\\\"rootFontSize\\\":15},\\\"M5JnotaUv\\\":{\\\"max\\\":767,\\\"canvasClassName\\\":\\\"framer-xzfpfp-override\\\",\\\"minHeight\\\":1000,\\\"viewportHeight\\\":455,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":14}}\",\"framerComponentViewportWidth\":\"true\",\"framerImmutableVariables\":\"true\",\"framerHitTargets\":\"{\\\"kgNoGEfeW\\\":[\\\".framer-f4jvw0-container\\\"],\\\"BmRbOd8BL\\\":[\\\".framer-f4jvw0-container\\\"],\\\"M5JnotaUv\\\":[\\\".framer-f4jvw0-container\\\"]}\",\"framerAutoSizeImages\":\"true\",\"framerLayoutTemplate\":\"\",\"framerColorSyntax\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"BmRbOd8BL\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"M5JnotaUv\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","\r\n        import * 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_Standard from \"https://framerusercontent.com/modules/fgIKwqMMwBj2c7OwYJV1/JZEK6MC9lO88nkvkBHxM/X4AsViDH5.js\";\r\n\r\n        const routes = {augiA20Il: {elements: {bXEihwL3Y: \"introduction\", EjyQYSTmF: \"footer-anchor\", fqBJ48nnz: \"works\", fUFYDCaVO: \"intro\", IuVQG8x5J: \"ise\", qPMwLkvWy: \"autodesk\", SnwFfXhVn: \"home\", VFXfcGxLs: \"halcyon\", vooBzCfXo: \"qrqc\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/kdtlglRJALsGg41bY2XW/BeX7PlS2ehDQS7IuHavW/augiA20Il.js\")), path: \"/\"}, Zt9H1Z7lM: {elements: {D3QiF2tnx: \"phase-02\", eFMA1A67a: \"other-studies\", Es7wtDS6N: \"4\", exXYQI1K0: \"6-2\", JmlRwA0cd: \"3\", KhDxL7_f7: \"1\", LAz4dnaGJ: \"6\", LoQ7t4loa: \"8\", Pi4jrXlSZ: \"phase-04\", PmS6zQb0F: \"6-1\", PukqTOrVG: \"9\", QrAK5kJuj: \"other-studies-1\", RlYnsLMuU: \"phase-01\", rWQxZc7bg: \"introduction\", sUiWtcWM4: \"phase-03\", Teb3zqvrg: \"5\", WjEtElIEG: \"tldr\", Wr3KLglA_: \"7\", x3EmVAHup: \"2\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/852tXHWawHm2viYNYhyn/EMY24AaaK0qeC28mzTer/Zt9H1Z7lM.js\")), path: \"/case_study_qrqc\"}, BqazpMXf3: {elements: {aH1ZeAmPi: \"2\", dKobbrCtD: \"9\", dkP_qoNEa: \"3\", eQW9zaewH: \"7\", FekK3sN94: \"tldr\", LQvBx96NJ: \"phase-01\", M7olBwiHn: \"phase-01-1\", MXGY2y1mU: \"5\", piYetmHPL: \"introduction\", qPlFdfSaS: \"other-studies\", qs78ujulr: \"other-studies-1\", rsYclX0XP: \"4\", SdVhxeW8U: \"1\", ulrtlNz_d: \"6\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/SMj3kVJgm6mW4oPdufa8/n19tJHNoakn0oQb2NyCW/BqazpMXf3.js\")), path: \"/case_study_ise\"}, CzTtnq6no: {elements: {D6HvCEVNE: \"4\", mO6cJtUcM: \"1\", n1yI_tPl8: \"other-studies-1\", ncER8CXOD: \"introduction\", p3T7irYci: \"2\", P6Ufe4C2p: \"tldr\", szpMnAspN: \"3\", txh79u8mL: \"other-studies\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/jt5eY2Jpb0xTer45jG0W/qPuLl4lt7Roq4vfuKyRD/CzTtnq6no.js\")), path: \"/case_study_3dsmax\"}, wjc1wbq5M: {elements: {ep8mVdyls: \"other-studies\", gbmLXr0RV: \"tldr\", GonUyXP_8: \"9\", lOoshrfcG: \"2\", oKc4TM9Hw: \"other-studies-1\", V7_IUAJHF: \"introduction\", VbTpxfJpS: \"3\", X0glFQU0o: \"1\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/VegppcLW0u09NBgWTh76/84fSIrIRCZo6vLOx4Ew3/wjc1wbq5M.js\")), path: \"/case_study_hdc2\"}, bkLHVvlDW: {elements: {nh6ISXIej: \"intro\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/MpKNIwi2ULCdqtwBrhVw/ubQx9WmF2VyIBluly5Ya/bkLHVvlDW.js\")), path: \"/about\"}}\r\n\r\n        const locales = [{code: \"en-US\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n        const collectionUtils = {}\r\n        const framerSiteId = \"8419abd9f8cae32309666a28d521dc4832ba52850e41eb7c649d8af84b3549af\"\r\n        function Template({routeId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[routeId] ?? {}\r\nswitch (routeId) {case \"augiA20Il\":\r\ncase \"d5p5v5fk6\":\r\ncase \"YHK7mgceF\":\r\ncase \"RXqdf7K38\":\r\ncase \"K3TcLhvzh\":\r\ncase \"Xw4OaLfal\":\r\ncase \"BfyA8tMvT\":\r\ncase \"Zt9H1Z7lM\":\r\ncase \"uf0pYKag6\":\r\ncase \"BqazpMXf3\":\r\ncase \"rhG2vlmNm\":\r\ncase \"CzTtnq6no\":\r\ncase \"wjc1wbq5M\":\r\ncase \"bkLHVvlDW\":\r\nreturn React.createElement(Main_Standard, {...props, key: \"Main_Standard\", routeId, style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"augiA20Il\":\r\ncase \"d5p5v5fk6\":\r\ncase \"YHK7mgceF\":\r\ncase \"RXqdf7K38\":\r\ncase \"K3TcLhvzh\":\r\ncase \"Xw4OaLfal\":\r\ncase \"BfyA8tMvT\":\r\ncase \"Zt9H1Z7lM\":\r\ncase \"uf0pYKag6\":\r\ncase \"BqazpMXf3\":\r\ncase \"rhG2vlmNm\":\r\ncase \"CzTtnq6no\":\r\ncase \"wjc1wbq5M\":\r\ncase \"bkLHVvlDW\":\r\nreturn [{hash: \"10kygmn\", mediaQuery: \"(min-width: 1025px)\"}, {hash: \"1sqqhyp\", mediaQuery: \"(min-width: 768px) and (max-width: 1024.98px)\"}, {hash: \"xzfpfp\", mediaQuery: \"(max-width: 767.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(\"__framer-not-found-page\")),\r\n                    isReducedMotion: undefined,\r\n                    localeId,\r\n                    locales,\r\n                    preserveQueryParams: undefined,\r\n                    siteCanonicalURL: \"https://suiyangportfolio.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 Editor Bar] 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                }\r\n            )\r\n\r\n            const contentWithFeaturesContext = React.createElement(\r\n                Framer.LibraryFeaturesProvider,\r\n                {\r\n                    children: content,\r\n                    value: {editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, motionDivToDivBackgroundImage: true, pauseOffscreen: true, 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: \"0%\"}, opacity: 0, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0.5, duration: 0.6, ease: [0.77, 0.01, 0.25, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"30%\"}, exit: {mask: {angle: 270, type: \"wipe\", width: \"0%\"}, opacity: 0, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0, duration: 0.6, ease: [0.77, 0.01, 0.25, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"-30%\"}}, 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            // 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. If you are the author of this website, 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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"}