{"version":3,"file":"script_main.RBkaYSHR.mjs","names":["useState","useRef","useRef","React.useId","React.createElement","ScrollBlur","Framer.PageRoot","Framer.lazy","Framer.useCurrentRoute","Framer.useLocaleInfo","Framer.useRouter","React.Fragment","React.memo","React.useCallback","React.useEffect","React.useRef","React.useState","Framer.LazyValue","Framer.LibraryFeaturesProvider","Framer.GracefullyDegradingErrorBoundary","Framer.PageEffectsProvider","breakpoints","Framer.patchRoutesForABTesting","Framer.inferInitialRouteFromPath","Framer.yieldToMain","React.startTransition","Framer.ErrorPlaceholder"],"sources":["https:/framerusercontent.com/modules/3OEbnaDsj6XU8xqUNF0I/E8KaMA4Pcbb8SHDDcB6q/ScrollBlur.js","https:/framerusercontent.com/modules/a4CbQqFCROv3OWZYwwLX/VBVg9Je2Jb5seWDMavKt/nymeeJsIw.js","framer:toplevel/main"],"sourcesContent":["// Dynamic background blur for top/bottom edges, fading softly to the middle, responsive to scroll speed, with adjustable zones, intensity, sensitivity, and tint.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef,useState,startTransition}from\"react\";import{addPropertyControls,ControlType,RenderTarget,useIsStaticRenderer}from\"framer\";function clamp(val,min,max){return Math.max(min,Math.min(max,val));}/**\n * ScrollBlur\n *\n * Adds a dynamic background blur to the top and/or bottom edges of the screen, fading softly to the middle, responsive to scroll speed.\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerIntrinsicWidth 40\n * @framerIntrinsicHeight 40\n */export default function ScrollBlur(props){const{applyTo,topSize,bottomSize,maxBlur,sensitivity,tintColor,style}=props;const[blur,setBlur]=useState(0);const lastScrollY=useRef(0);const lastTimestamp=useRef(0);const fadeTimeout=useRef(null);const isStatic=useIsStaticRenderer();useEffect(()=>{if(isStatic||typeof window===\"undefined\")return;let ticking=false;let lastBlur=0;let fadeRAF=null;function fadeBlur(){// Instantly set blur to 0\nlastBlur=0;startTransition(()=>setBlur(0));fadeRAF=null;}function onScroll(){if(!ticking){window.requestAnimationFrame(()=>{const now=performance.now();const y=window.scrollY;const dt=now-(lastTimestamp.current||now);const dy=y-lastScrollY.current;lastScrollY.current=y;lastTimestamp.current=now;const speed=Math.abs(dy)/(dt||1);const blurValue=clamp(speed*maxBlur*(sensitivity||1),0,maxBlur);lastBlur=blurValue;startTransition(()=>setBlur(blurValue));if(fadeRAF)cancelAnimationFrame(fadeRAF);if(fadeTimeout.current)clearTimeout(fadeTimeout.current);fadeTimeout.current=setTimeout(()=>{fadeRAF=requestAnimationFrame(fadeBlur);},80);ticking=false;});ticking=true;}}window.addEventListener(\"scroll\",onScroll,{passive:true});// Trigger blur on initial mount if already scrolling\nif(window.scrollY!==0)onScroll();return()=>{window.removeEventListener(\"scroll\",onScroll);if(fadeTimeout.current)clearTimeout(fadeTimeout.current);if(fadeRAF)cancelAnimationFrame(fadeRAF);};},[maxBlur,sensitivity,isStatic]);if(RenderTarget.current()===RenderTarget.thumbnail||isStatic)return null;// Soft fade mask for blur: fade to transparent at the middle of the blur zone\nfunction getMask(position){if(position===\"top\"){// Smoother, longer fade, no visible edge\nreturn`linear-gradient(to bottom, black 0%, black 60%, rgba(0,0,0,0.5) 80%, transparent 100%)`;}else{return`linear-gradient(to top, black 0%, black 60%, rgba(0,0,0,0.5) 80%, transparent 100%)`;}}// Blur layer style\nconst blurLayer=(position,size)=>/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":\"true\",style:{pointerEvents:\"none\",position:\"fixed\",left:0,[position]:0,width:\"100vw\",height:`calc(${size}vh)`,zIndex:9999,backdropFilter:`blur(${blur}px)`,WebkitBackdropFilter:`blur(${blur}px)`,background:tintColor?`linear-gradient(to ${position===\"top\"?\"bottom\":\"top\"}, ${tintColor} 0%, transparent 100%)`:undefined,transition:\"backdrop-filter 0.25s, -webkit-backdrop-filter 0.25s, opacity 0.7s cubic-bezier(.4,0,.2,1)\",opacity:blur>0?Math.min(1,blur/(maxBlur*.7)):0,willChange:\"backdrop-filter, opacity\",maskImage:getMask(position),WebkitMaskImage:getMask(position)}});return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",minWidth:5,minHeight:5,width:\"100%\",height:\"100%\"},children:[(applyTo===\"top\"||applyTo===\"both\")&&topSize>0&&blurLayer(\"top\",topSize),(applyTo===\"bottom\"||applyTo===\"both\")&&bottomSize>0&&blurLayer(\"bottom\",bottomSize)]});}addPropertyControls(ScrollBlur,{applyTo:{type:ControlType.Enum,title:\"Apply To\",options:[\"top\",\"bottom\",\"both\"],optionTitles:[\"Top\",\"Bottom\",\"Both\"],defaultValue:\"both\",displaySegmentedControl:true},topSize:{type:ControlType.Number,title:\"Top Size\",defaultValue:10,min:1,max:50,step:.1,unit:\"%\",hidden:({applyTo})=>applyTo===\"bottom\"},bottomSize:{type:ControlType.Number,title:\"Bottom Size\",defaultValue:10,min:1,max:50,step:.1,unit:\"%\",hidden:({applyTo})=>applyTo===\"top\"},maxBlur:{type:ControlType.Number,title:\"Max Blur\",defaultValue:32,min:1,max:10,step:1,unit:\"px\"},sensitivity:{type:ControlType.Number,title:\"Sensitivity\",defaultValue:.5,min:.01,max:1,step:.01},tintColor:{type:ControlType.Color,title:\"Tint Color\",defaultValue:\"rgba(255,255,255,0.12)\",optional:true}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ScrollBlur\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"40\",\"framerIntrinsicWidth\":\"40\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ScrollBlur.map","// Generated by Framer (272f3bc)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,GeneratedComponentContext,getFonts,RenderTarget,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import ScrollBlur from\"#framer/local/codeFile/AQq6IaF/ScrollBlur.js\";const ScrollBlurFonts=getFonts(ScrollBlur);const breakpoints={};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-Rc95I\";const variantClassNames={EnOVW8KGj:\"framer-v-1i1cp05\"};const breakpointRules={};const breakpointKeys=Object.keys(breakpointRules);const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-Rc95I.framer-1u0xj46, .framer-Rc95I .framer-1u0xj46 { display: block; }\",\".framer-Rc95I.framer-1i1cp05 { align-content: center; align-items: center; background-color: #000000; 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-Rc95I .framer-1ibze75 { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-Rc95I .framer-10br96k-container { -webkit-user-select: auto; flex: none; height: 40px; left: 0px; order: 1001; pointer-events: none; position: var(--framer-canvas-fixed-position, fixed); top: 0px; user-select: auto; width: 40px; z-index: 9; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }'];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};};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:\"EnOVW8KGj\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: rgb(0, 0, 0); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-1i1cp05\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-1ibze75\"}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-10br96k-container\",\"data-code-component-plugin-id\":\"84d4c1\",isAuthoredByUser:true,layoutScroll:true,nodeId:\"sKSAgp6TR\",scopeId:\"nymeeJsIw\",children:/*#__PURE__*/_jsx(ScrollBlur,{applyTo:\"top\",bottomSize:25,height:\"100%\",id:\"sKSAgp6TR\",layoutId:\"sKSAgp6TR\",maxBlur:5,sensitivity:1,style:{height:\"100%\",width:\"100%\"},tintColor:\"rgba(0, 0, 0, 0.2)\",topSize:30,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=breakpointRules[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 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"EnOVW8KGj\":[\".framer-10br96k-container\"]}\n * @framerBreakpoints {\"EnOVW8KGj\":{\"canvasClassName\":\"framer-1i1cp05-override\",\"minHeight\":1000,\"name\":\"Desktop\",\"width\":1200,\"rootFontSize\":16}}\n * @framerDefaultVariant EnOVW8KGj\n * @framerLayoutTemplate\n */const FramernymeeJsIw=withCSS(Component,css,\"framer-Rc95I\");export default FramernymeeJsIw;FramernymeeJsIw.displayName=\"Scroll Blur\";FramernymeeJsIw.defaultProps={height:1e3,width:1200};addFonts(FramernymeeJsIw,[{explicitInter:true,fonts:[]},...ScrollBlurFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramernymeeJsIw\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\",\"framerLayoutTemplate\":\"\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerHitTargets\":\"{\\\"EnOVW8KGj\\\":[\\\".framer-10br96k-container\\\"]}\",\"framerBreakpoints\":\"{\\\"EnOVW8KGj\\\":{\\\"canvasClassName\\\":\\\"framer-1i1cp05-override\\\",\\\"minHeight\\\":1000,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1200,\\\"rootFontSize\\\":16}}\",\"framerIntrinsicHeight\":\"1000\",\"framerDefaultVariant\":\"EnOVW8KGj\"}},\"__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 ScrollBlur from \"https://framerusercontent.com/modules/a4CbQqFCROv3OWZYwwLX/VBVg9Je2Jb5seWDMavKt/nymeeJsIw.js\";\r\n\r\n        const routes = {uG235EohL: {elements: {aVsciwYSX: \"menu-trigger\", BKjmwrBsn: \"6-1\", bNILcTrqI: \"3\", dJxkxwvuF: \"2-1\", e95qs6Num: \"colapsed\", eReMGHMgb: \"5\", etu_Vfllh: \"2\", GXg9jsuEL: \"7-1\", gYK6JEY6B: \"5-1\", H2XnoGuZ0: \"4\", HnNCwTVvT: \"3-1\", Kyo0Y9jnh: \"project-card\", lY70teEgq: \"main-home\", LYKk5R8UG: \"1-1\", NPUmN5SF3: \"cards\", nVw4z5yl0: \"4-1\", O8lZLqcWo: \"7\", oQy6QRMXU: \"projects\", uxDACP7Mm: \"1\", uzA5YWDOp: \"newsletter\", yEWkA08Df: \"6\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/ibhyXJjQQuydIro3s1uy/VUEgxbMJKSs5ZXPneylI/uG235EohL.js\")), path: \"/\"}, PF56lGvQq: {elements: {ASt9uZwYY: \"videotextcombo-container\", bAUbg_KXv: \"intro-haydee\", dRFtxVCwo: \"5\", EUi9782As: \"home\", fGztMAi8a: \"2\", FXtPUkASg: \"6-1\", GHqI0uhJl: \"2-1\", HVcHXCEnw: \"8\", IbNVSUNlt: \"7\", IXanxl7Co: \"videotextcombo\", KF6WTF0oy: \"intro-1\", L_aKGZN51: \"7-1\", m2mIkranH: \"1-1\", mSNI7yVT5: \"videotextcombo-1\", mYrsvaeDe: \"videotextcombo-pre-1\", O94HNWlcU: \"1\", OcL_8SABx: \"3\", OSVLHssdP: \"6\", RjyJmdxG7: \"4-1\", Tdp28WDdc: \"8-1\", to0SpnCdp: \"videotextcombo-pre\", TsQJIXXuc: \"videotextcombo-container-1\", VfQGWc9MN: \"intro\", w3ADpLfEI: \"home-1\", wkDREGboy: \"5-1\", YeijR6Koe: \"4\", YNEfrpVl7: \"3-1\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/KuBU3RSe7OdRW3AucOS5/vWmw4gqktLhNgpgFtEIJ/PF56lGvQq.js\")), path: \"/ecos-paralelos-\"}, hYU90vFsN: {elements: {chdf9D6Qh: \"about-top\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/0zAR29soMnQ2uNGA7BPS/446xKo5nBK3jJhL5sUx4/hYU90vFsN.js\")), path: \"/about\"}, Wqw2quoXL: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/0WmcZt5GWx0DRs4h4Ahg/zEmOJTgRBgCfugoI48A1/Wqw2quoXL.js\")), path: \"/masswithdrawal\"}, NTYsXz9Nn: {elements: {edFB34dyk: \"nav-hide\", Yj4Cotwo7: \"contact\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/51jShsAc64tCnu74m4s8/8KpsV0H8GLB6UAD49ckb/NTYsXz9Nn.js\")), path: \"/contact\"}, u8qS0Sg9l: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/fAQbSxYO8TVHCA2nl9O8/hWv3t2kDACNwStYlGa9u/u8qS0Sg9l.js\")), path: \"/the-limits-we-share\"}, XplSzRyyC: {elements: {cN9jS5Uzu: \"intro-haydee\", Hf_A81d7F: \"intro-haydee-1\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/TZ0Fa0AeU72kbGTdvxlf/Ei5vsck4reZt23I2K7Cj/XplSzRyyC.js\")), path: \"/ad-2215\"}, p7TlXnqVx: {elements: {AOdNPvIfH: \"intro-haydee\", KP1b0_CtN: \"intro-haydee-1\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/WHswXESTGc8PcmcmpZZa/DmPONXKEW1ONuIZRRm4D/p7TlXnqVx.js\")), path: \"/i-just-want-to-be-loved\"}, LKKjyEB0d: {elements: {V73qcFV_n: \"intro-haydee\", wBkxkngNK: \"intro-haydee-1\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/vQNruZHkXmDzfclletDd/Lia2WsJolLerLKsCqfsU/LKKjyEB0d.js\")), path: \"/hard-enough-to-touch-close-enough-to-miss\"}, fCJAsFKo1: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/MEgFiH9Zyt4sQXpjpYHD/UCq8I92N48a8gWJm9Dar/fCJAsFKo1.js\")), path: \"/where-we-stand-shapes-what-we-see\"}, CGnlkAofV: {elements: {AQksN7Unu: \"intro-haydee\", OgZml5rFO: \"intro-haydee-1\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/zD2XfAjuJflJfavBHTr6/M1prNhX2DaFZzhdB0CO8/CGnlkAofV.js\")), path: \"/correct-degrees-of-separation\"}, evhJWJ1Dx: {elements: {mrYq1ZZPo: \"intro-haydee\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Tbim3NStc1or6zA8dc6h/y2b0DM6NgBafTyH4ei26/evhJWJ1Dx.js\")), path: \"/in-lieu-of\"}, Q6X9mtGfu: {elements: {BS7AFDmnT: \"videotextcombo\", Cn1cviQ22: \"videotextcombo-container\", ejX7QaazZ: \"intro-1\", GRORACcAl: \"intro\", jKvbyg2gr: \"home\", TAyO5cku9: \"videotextcombo-pre\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/3Tw2wocnn3bM660txVVA/nttqRXjTZPSmjlZ7bmHF/Q6X9mtGfu.js\")), path: \"/mirage-\"}, jmUleiosY: {elements: {d_7w43vdk: \"videotextcombo-pre\", FCH78FpGp: \"intro-1\", FjZcdghjD: \"intro\", hNdgb6XrB: \"videotextcombo-container\", l56PW3Ka1: \"intro-2\", LKvOXhzPa: \"intro-haydee\", O0w1zOOJE: \"videotextcombo\", UB1Moc1tF: \"home\", Wvj_1bSY5: \"scroll\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/bsSRBODqHZdQL1QxQTjr/vWI4RwXyAvyaUinnGDRC/jmUleiosY.js\")), path: \"/nexus-\"}, SeGFu3zs5: {elements: {fNZuzM1Fy: \"videotextcombo-pre\", jxe1ibo8X: \"home\", NUOQTtoc0: \"videotextcombo\", NuUeB_fnr: \"scroll\", rOnalNV3P: \"intro\", vJSm5OxF6: \"intro-haydee\", wQVEzo3Uo: \"intro-2\", XdzBFg98A: \"intro-1\", ZMXOqaQLN: \"videotextcombo-container\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Uay4obFoYiTkzU7VZCcF/dquaUHr9W49iIckTOqoG/SeGFu3zs5.js\")), path: \"/inter-acting-\"}, S2eXljM1k: {elements: {a5UQ5wWby: \"home\", cozvsfhSU: \"intro-1\", D91usCfEZ: \"intro-haydee\", iaFS97e7i: \"videotextcombo-pre\", iwKSQRl6L: \"intro\", lpCvtVNn8: \"videotextcombo\", NGelXdrRq: \"intro-2\", NNkuyIBZr: \"videotextcombo-container\", OyIrmUPpd: \"scroll\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/TEZz9a2tzqQ48AZ2dxwl/cngxVVYfXxixhoMSrEMC/S2eXljM1k.js\")), path: \"/cozen-\"}, ZfzPr98Z3: {elements: {bQCJDNTXM: \"home\", dQq91as1u: \"videotextcombo-container\", E4IgmGYKj: \"intro-haydee\", fkTXftCfN: \"intro-1\", MUCjF0dXH: \"intro-2\", P5vn5lzWR: \"videotextcombo-pre\", rQl_2ecNB: \"videotextcombo\", TezIZmj34: \"scroll\", zP8Vl7VW2: \"intro\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/pxkC3nuZTH1G2Cxqj7o5/1PVZ6AFzWMGuNvI1Ld7Z/ZfzPr98Z3.js\")), path: \"/hyphens-\"}, rKoXflgZL: {elements: {amstjworJ: \"7-2\", bxmWHOCuy: \"1-2\", c9vwBAAjc: \"4-1\", cX6n6x3P5: \"13\", cZUe6hHQf: \"cardsss\", DdaO31wn7: \"1\", dO837DJ4o: \"mainmain\", EHXzYcsiW: \"3-2\", eRlNhkCLe: \"2-2\", euNd1xW03: \"7-1\", EwRQEPJ6j: \"5-1\", J4c21cYF9: \"newsletter\", JHGvL1fLq: \"5-2\", jWKphTjrI: \"menu-trigger-1\", kKkF6GY1Q: \"6\", MNo08DuVm: \"3\", MUz8s7Hdw: \"newsletter-1\", n4_mgHE47: \"menu-trigger-3\", NuhYvSp1y: \"7\", oI3hVznXT: \"6-1\", oJ4BIgyXh: \"8\", OnGLvI6Vr: \"5\", oUhpROJ5A: \"6-2\", oW_ER8Ggd: \"2\", q2dDoSpgu: \"menu-trigger\", qDAdlcimr: \"4\", QMYjGpsMM: \"1-1\", scRWdlnuM: \"menu-trigger555\", T0EuYiAJd: \"2-1\", T9Ycf7nOS: \"3-1\", u0ptbllzk: \"cards\", VfU6un8rL: \"12\", VJVIlGfhU: \"10\", vu7EeUri6: \"11\", WN7Cv1k1L: \"9\", WxODYfbmE: \"4-2\", XLj56ebod: \"menu-trigger-2\", zeI9pHhHj: \"menu-trigger44\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/QnblYjlYP7vZyc1iIThp/jWs0jcXdExRm7VfdNMcm/rKoXflgZL.js\")), path: \"/home2\"}, j4iuyzPXv: {elements: {BMFHteIey: \"experience-1\", bMRovfNay: \"education-1\", CT0xkgzKb: \"collections\", la8eqEkMB: \"top\", LDdd6KsDl: \"speaker\", meeQoeyM3: \"top-1\", o08fLYrGV: \"publications\", poorY5JlL: \"cards\", Q9Dy6ZxaJ: \"exhibitions\", QitNx2teT: \"experience\", SpUnhby2R: \"education\", sRqkydmR6: \"awards-2\", vMqHiEkZj: \"awards-1\", wh20Rr8LO: \"awards\", YrrnTDoBT: \"cocurated\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Bb7WdaQTcId4pX4bCgc5/1PAHjGJ8j1nzukKYiVse/j4iuyzPXv.js\")), path: \"/cv\"}, XkvgbZcfM: {elements: {aOMrMcdmC: \"7\", axHwOPHCs: \"5-2\", bHigXE7IM: \"4-3\", DcVMJvsEO: \"newsletter-1\", dKnc_phOm: \"4-4\", eGxIKJ5Wh: \"cards-3\", fGzbVbvcd: \"7-1\", fkQpF7kN0: \"5-4\", FLl8N9mEb: \"8-1\", fPYta0tLa: \"2-1\", gh3yN18QN: \"3\", GILUNv2wA: \"1-4\", gmgbq5pB8: \"1\", gYbaO5poy: \"3-2\", H16nt3KGF: \"4\", i_QeARlqc: \"12-1\", IjQYW_mCE: \"3-4\", Iq7hlIm5b: \"3-5\", J1sJ7Ue6p: \"6-1\", JdZqsCsea: \"10\", JiXIRjSaQ: \"8\", JJX1y0fUf: \"6-3\", k7JC9mmct: \"9-1\", KyoJaiVc8: \"6-2\", l5DUvwZhC: \"5\", LY6sTWFoR: \"5-5\", lZU5uhsRU: \"4-5\", MHII5gv_f: \"7-2\", mRY3QxztC: \"11-1\", neujb4N8v: \"cards-2\", nFhvKrvaZ: \"cards-1\", nTXOs1W9N: \"2\", NVvU_dDXa: \"1-3\", O4E7xbs6a: \"2-3\", o4KlddcC7: \"13-1\", oTKusJpcy: \"12\", ox0cCPzy8: \"1-2\", PLHakyxzo: \"2-5\", Psa76Bde9: \"10-1\", rEywr7AJt: \"cards\", rvaJqFN_a: \"6\", s60y_uZ8L: \"11\", TQOBNgcu7: \"9\", uGVDW4qXf: \"3-1\", UJPj2fOtD: \"4-2\", VZkshxNsQ: \"2-4\", w7DT6Doda: \"1-1\", Whb8_pYdE: \"5-1\", wr9prC3QS: \"3-3\", wRMVmrdQO: \"5-3\", X5kRbKBjl: \"newsletter\", xBwlDBJuQ: \"7-3\", xSx_yTIAK: \"4-1\", YCS9fYT85: \"2-2\", yVCzF4m96: \"1-5\", yY2PNFURP: \"13\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/M46DdKWJlaOV6aAYWJ6W/n9NhAJ9aUTyA6NwLmQv7/XkvgbZcfM.js\")), path: \"/works\"}}\r\n\r\n        const locales = [{code: \"en\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n        const collectionUtils = {}\r\n        const framerSiteId = \"c5840c8ce7fd7528da1b35ed7833d19fa29e8011932b9270240753f0269c40bc\"\r\n        function Template({webPageId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"jmUleiosY\":\r\nreturn React.createElement(ScrollBlur, {...props, key: \"ScrollBlur\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"jmUleiosY\":\r\nreturn [{hash: \"1i1cp05\"}]\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: true,\r\n                    localeId,\r\n                    locales,\r\n                    preserveQueryParams: undefined,\r\n                    siteCanonicalURL: \"https://haydeealonso.com\",\r\n                    EditorBar: \r\n            typeof window !== \"undefined\" ? (() => {\r\n                const isBot = /bot|-google|google-|yandex|ia_archiver|crawl|spider/iu.test(navigator.userAgent)\r\n                if (isBot) {\r\n                    console.log(\"[Framer On-Page Editing] Unavailable because navigator is bot\")\r\n                    return\r\n                }\r\n\r\n                return Framer.lazy(async () => {\r\n                    const dependencies = {\r\n                        __version: 2,\r\n                        framer: {\r\n                            useCurrentRoute: Framer.useCurrentRoute,\r\n                            useLocaleInfo: Framer.useLocaleInfo,\r\n                            useRouter: Framer.useRouter,\r\n                        },\r\n                        react: {\r\n                            createElement: React.createElement,\r\n                            Fragment: React.Fragment,\r\n                            memo: React.memo,\r\n                            useCallback: React.useCallback,\r\n                            useEffect: React.useEffect,\r\n                            useRef: React.useRef,\r\n                            useState: React.useState,\r\n                        },\r\n                        \"react-dom\": { createPortal },\r\n                    }\r\n\r\n                    window.__framer_editorBarDependencies = dependencies\r\n\r\n                    const { createEditorBar } = await import(\"https://framer.com/edit/init.mjs\")\r\n                    return {\r\n                        default: createEditorBar(),\r\n                    }\r\n                })\r\n            })() : undefined\r\n        ,\r\n                    adaptLayoutToTextDirection: false,\r\n                    LayoutTemplate: Template,\r\n                    loadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/8muxksHKIWsmvIb3f7zj/nnQuggcW44QSnZ6bRCWB/snippets.js\")),\r\n                }\r\n            )\r\n\r\n            const contentWithFeaturesContext = React.createElement(\r\n                Framer.LibraryFeaturesProvider,\r\n                {\r\n                    children: content,\r\n                    value: {advancedSpamProtection: true, customCodeSiteSettings: false, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageLocalizationSupport: false, onPageMoveTool: false, synchronousNavigationOnDesktop: false, yieldOnTap: false}\r\n                }\r\n            )\r\n\r\n            const contentWithGracefullyDegradingErrorBoundary = React.createElement(Framer.GracefullyDegradingErrorBoundary, {\r\n                children: contentWithFeaturesContext\r\n            })\r\n\r\n            const effect = {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\"}}\r\n            const page = React.createElement(Framer.PageEffectsProvider, {\r\n                children: contentWithGracefullyDegradingErrorBoundary,\r\n                value: {global: {enter: {mask: {angle: 270, type: \"wipe\", width: \"100%\"}, opacity: 1, rotate: 0, rotate3d: false, rotateX: 0, rotateY: 0, scale: 1, transition: {damping: 30, delay: 0, duration: 0.4, ease: [0.27, 0, 0.51, 1], mass: 1, stiffness: 400, type: \"tween\"}, x: \"0px\", y: \"0px\"}}, routes: {Wqw2quoXL: {PF56lGvQq: effect}, XkvgbZcfM: {PF56lGvQq: effect}}}\r\n            })\r\n\r\n            // We don't want the initial render to immediately have to suspend.\r\n            await rootPreload\r\n            return page\r\n        }\r\n\r\n        const isBrowser = typeof document !== \"undefined\"\r\n        if (isBrowser) {\r\n            window.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\r\n                return React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\r\n            }\r\n\r\n            window.__framer_events = window.__framer_events || []\r\n\r\n            // Initialize lazy modules cache for hydration\r\n            Framer.initLazyModulesCache()\r\n\r\n            // Fallback support for stack gaps\r\n            Framer.installFlexboxGapWorkaroundIfNeeded()\r\n\r\n            const container = document.getElementById(\"main\")\r\n            // We know that #main is parsed before this script, so we don't need to wait for DOMContentLoaded or similar events.\r\n            if (\"framerHydrateV2\" in container.dataset) main(true, container)\r\n            else main(false, container)\r\n        }\r\n\r\n        function track() {\r\n            if (!isBrowser) return\r\n            window.__framer_events.push(arguments)\r\n        }\r\n\r\n        async function main(shouldHydrate, container) {\r\n            function handleError(error, errorInfo, recoverable = true) {\r\n                if (error.caught || window.__framer_hadFatalError) return // we already logged it\r\n\r\n                const componentStack = errorInfo?.componentStack\r\n                if (recoverable) {\r\n                    console.warn(\"Caught a recoverable error. The site is still functional, but might have some UI flickering or degraded page load performance. If you are the author of this website, update external components and check recently added custom code or code overrides to fix the following server/client mismatches:\\n\", error, componentStack)\r\n                    // we only want to collect 1%, because this can be quite noisy (floods the data pipeline)\r\n                    if (Math.random() > 0.01) return\r\n                } else {\r\n                    console.error(\"Caught a fatal error. Please report the following to the Framer team via https://www.framer.com/contact/:\\n\", error, componentStack)\r\n                }\r\n                track(recoverable ? \"published_site_load_recoverable_error\" : \"published_site_load_error\", {\r\n                    message: String(error),\r\n                    componentStack, // componentStack is more useful\r\n                    stack: componentStack ? undefined : error instanceof Error && typeof error.stack === \"string\" ? error.stack : null,\r\n                })\r\n            }\r\n\r\n            try {\r\n                let routeId, localeId, pathVariables, breakpoints\r\n                if (shouldHydrate) {\r\n                    const routeData = JSON.parse(container.dataset[\"framerHydrateV2\"])\r\n                    routeId = routeData.routeId\r\n                    localeId = routeData.localeId\r\n                    pathVariables = routeData.pathVariables\r\n                    breakpoints = routeData.breakpoints\r\n\r\n                    routeId = Framer.patchRoutesForABTesting(routes, routeId) // Prioritize optimized route id to avoid flickering in browsers not supporting the server-timing header (Safari older than 16.4)\r\n                } else {\r\n                    Framer.patchRoutesForABTesting(routes, undefined) // This must happen before inferInitialRouteFromPath\r\n\r\n                    \r\n                    const serverRouteExperimentEnabled = false\r\n                    const serverRoute = serverRouteExperimentEnabled && performance.getEntriesByType(\"navigation\")[0]?.serverTiming?.find(e => e.name === \"route\")?.description\r\n                    if (serverRoute) {\r\n                        const routeData = new URLSearchParams(serverRoute)\r\n                        routeId = routeData.get(\"id\")\r\n                        localeId = routeData.get(\"locale\")\r\n                        for (const [key, value] of routeData.entries()) {\r\n                            if (!key.startsWith(\"var.\")) continue\r\n                            pathVariables ??= {}\r\n                            pathVariables[key.slice(4)] = value\r\n                        }\r\n                    }\r\n                    if (!routeId || !localeId) {\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\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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"}