{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/p5Uh18s77tsRFPxP823f/6aWugSv9BK74AUyZUF9T/L01FicGVz.js", "ssg:https://framerusercontent.com/modules/pr1iExjqa2ZjXftLnboa/viYcsJNL0FYaLfuQCTG0/Custom_Cursor.js"],
  "sourcesContent": ["// Generated by Framer (1c1e241)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,Image,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";const cycleOrder=[\"vVEGfJntt\",\"oNw1jHZgb\"];const serializationHash=\"framer-3pRjJ\";const variantClassNames={oNw1jHZgb:\"framer-v-xlq92p\",vVEGfJntt:\"framer-v-qee9mo\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants===null||variants===void 0?void 0:variants.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transitions={default:{damping:60,delay:0,mass:1,stiffness:500,type:\"spring\"}};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value!==null&&value!==void 0?value:config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={\"Variant 1\":\"vVEGfJntt\",\"Variant 2\":\"oNw1jHZgb\"};const getProps=({height,id,width,...props})=>{var _humanReadableVariantMap_props_variant,_ref;return{...props,variant:(_ref=(_humanReadableVariantMap_props_variant=humanReadableVariantMap[props.variant])!==null&&_humanReadableVariantMap_props_variant!==void 0?_humanReadableVariantMap_props_variant:props.variant)!==null&&_ref!==void 0?_ref:\"vVEGfJntt\"};};const createLayoutDependency=(props,variants)=>variants.join(\"-\")+props.layoutDependency;const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{activeLocale}=useLocaleInfo();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,gestureVariant,setGestureState,setVariant,transition,variants}=useVariantState({cycleOrder,defaultVariant:\"vVEGfJntt\",transitions,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const ref1=React.useRef(null);const isDisplayed=()=>{if(baseVariant===\"oNw1jHZgb\")return false;return true;};const isDisplayed1=()=>{if(baseVariant===\"oNw1jHZgb\")return true;return false;};const defaultLayoutId=React.useId();const sharedStyleClassNames=[];return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId!==null&&layoutId!==void 0?layoutId:defaultLayoutId,children:/*#__PURE__*/_jsx(motion.div,{initial:variant,animate:variants,onHoverStart:()=>setGestureState({isHovered:true}),onHoverEnd:()=>setGestureState({isHovered:false}),onTapStart:()=>setGestureState({isPressed:true}),onTap:()=>setGestureState({isPressed:false}),onTapCancel:()=>setGestureState({isPressed:false}),className:cx(\"framer-3pRjJ\",...sharedStyleClassNames,classNames),style:{display:\"contents\"},children:/*#__PURE__*/_jsx(Transition,{value:transition,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,background:{alt:\"\",fit:\"fill\",intrinsicHeight:1506.874977545813,intrinsicWidth:1506.874977545813,pixelHeight:2411,pixelWidth:2411,sizes:\"min(1px, 100vw)\",src:\"https://framerusercontent.com/images/JiJSIKFLojpoJsyT5qaG3gwTtg.png?scale-down-to=2048\",srcSet:\"https://framerusercontent.com/images/JiJSIKFLojpoJsyT5qaG3gwTtg.png?scale-down-to=512 512w, https://framerusercontent.com/images/JiJSIKFLojpoJsyT5qaG3gwTtg.png?scale-down-to=1024 1024w, https://framerusercontent.com/images/JiJSIKFLojpoJsyT5qaG3gwTtg.png?scale-down-to=2048 2048w, https://framerusercontent.com/images/JiJSIKFLojpoJsyT5qaG3gwTtg.png 2411w\"},className:cx(\"framer-qee9mo\",className),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"vVEGfJntt\",ref:ref!==null&&ref!==void 0?ref:ref1,style:{...style},...addPropertyOverrides({oNw1jHZgb:{\"data-framer-name\":\"Variant 2\"}},baseVariant,gestureVariant),children:[isDisplayed()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:2411,intrinsicWidth:2411,pixelHeight:2411,pixelWidth:2411,src:\"https://framerusercontent.com/images/qnjyz0Dz8z1USjHzM3oZvQo7z0Y.svg\"},className:\"framer-1rnvx5x\",\"data-framer-name\":\"Cursor-bg\",layoutDependency:layoutDependency,layoutId:\"AbHS8XOnh\"}),isDisplayed1()&&/*#__PURE__*/_jsx(Image,{background:{alt:\"\",fit:\"fill\",intrinsicHeight:24,intrinsicWidth:24,pixelHeight:24,pixelWidth:24,src:\"https://framerusercontent.com/images/r2TZXCBn2NWfa2egqwub13tQXZQ.svg\"},className:\"framer-9y4e48\",\"data-framer-name\":\"Cursor\",layoutDependency:layoutDependency,layoutId:\"KZsWoHM5W\"})]})})})});});const css=['.framer-3pRjJ [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; pointer-events: none; }',\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-3pRjJ .framer-18c49nv { display: block; }\",\".framer-3pRjJ .framer-qee9mo { height: 1px; overflow: visible; position: relative; width: 1px; }\",\".framer-3pRjJ .framer-1rnvx5x { flex: none; height: 1356px; left: calc(100.00000000000003% - 1357px / 2); overflow: visible; position: absolute; top: calc(100.00000000000003% - 1356px / 2); width: 1357px; }\",\".framer-3pRjJ .framer-9y4e48 { flex: none; height: 35px; left: -9px; overflow: visible; position: absolute; top: -6px; width: 32px; }\",\".framer-3pRjJ.framer-v-xlq92p .framer-qee9mo { aspect-ratio: 1 / 1; height: var(--framer-aspect-ratio-supported, 1px); }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1\n * @framerIntrinsicWidth 1\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"oNw1jHZgb\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n */const FramerL01FicGVz=withCSS(Component,css,\"framer-3pRjJ\");export default FramerL01FicGVz;FramerL01FicGVz.displayName=\"Cursor\";FramerL01FicGVz.defaultProps={height:1,width:1};addPropertyControls(FramerL01FicGVz,{variant:{options:[\"vVEGfJntt\",\"oNw1jHZgb\"],optionTitles:[\"Variant 1\",\"Variant 2\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerL01FicGVz,[]);\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerL01FicGVz\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"1\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"1\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"oNw1jHZgb\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./L01FicGVz.map", "import{jsx as _jsx}from\"react/jsx-runtime\";import{useRef,useState,useEffect}from\"react\";import{motion,useSpring}from\"framer-motion\";function hasButtonOrAnchorAncestor(element){if(!element){return false;}if(element.tagName===\"BUTTON\"||element.tagName===\"A\"){return true;}return hasButtonOrAnchorAncestor(element.parentElement);}export function withCursorFollow(Component){return props=>{if(typeof document===\"undefined\"){return null;}// Add a style tag to the head of the document to hide the system cursor for all elements\nconst style=document.createElement(\"style\");style.appendChild(document.createTextNode(\"* { cursor: none !important; }\"));document.head.appendChild(style);const cursorRef=useRef(null);const[isHovering,setIsHovering]=useState(false);const spring={type:\"spring\",stiffness:1500,damping:70};const storedPosition=localStorage.getItem(\"cursorPosition\");const initialCursorPosition=useRef(storedPosition?JSON.parse(storedPosition):{x:window.innerWidth/2,y:window.innerHeight/2});const positionX=useSpring(initialCursorPosition.current.x,spring);const positionY=useSpring(initialCursorPosition.current.y,spring);useEffect(()=>{const handleMouseMove=e=>{if(!cursorRef.current)return;// Check if the cursor is hovering a button or \"A\" tag element\nconst isHovered=e.target instanceof HTMLElement&&(e.target.tagName===\"BUTTON\"||e.target.tagName===\"A\"||hasButtonOrAnchorAncestor(e.target.parentElement));setIsHovering(isHovered);// Update the position based on the cursor position\npositionX.set(e.clientX);positionY.set(e.clientY);localStorage.setItem(\"cursorPosition\",JSON.stringify({x:e.clientX,y:e.clientY}));};// Store the initial cursor position when the component is first rendered\ninitialCursorPosition.current.x=window.innerWidth/2;initialCursorPosition.current.y=window.innerHeight/2;window.addEventListener(\"mousemove\",handleMouseMove);return()=>{window.removeEventListener(\"mousemove\",handleMouseMove);};},[]);return /*#__PURE__*/_jsx(motion.div,{ref:cursorRef,style:{position:\"fixed\",left:positionX,top:positionY,pointerEvents:\"none\",transform:\"translate(-50%, -50%)\",transition:\"transform 0.2s ease, opacity 0.2s ease\",zIndex:9999,opacity:isHovering?.7:1,scale:isHovering?1.3:1},children:/*#__PURE__*/_jsx(Component,{...props})});};}\nexport const __FramerMetadata__ = {\"exports\":{\"withCursorFollow\":{\"type\":\"reactHoc\",\"name\":\"withCursorFollow\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Custom_Cursor.map"],
  "mappings": "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",
  "names": ["L01FicGVz_exports", "__export", "__FramerMetadata__", "L01FicGVz_default", "cycleOrder", "variantClassNames", "addPropertyOverrides", "overrides", "variants", "nextOverrides", "variant", "transitions", "Transition", "value", "children", "config", "re", "MotionConfigContext", "transition", "contextValue", "se", "p", "humanReadableVariantMap", "getProps", "height", "id", "width", "props", "_humanReadableVariantMap_props_variant", "_ref", "createLayoutDependency", "Component", "Y", "ref", "activeLocale", "useLocaleInfo", "style", "className", "layoutId", "restProps", "baseVariant", "classNames", "gestureVariant", "setGestureState", "setVariant", "useVariantState", "cycleOrder", "layoutDependency", "ref1", "pe", "isDisplayed", "isDisplayed1", "defaultLayoutId", "ae", "sharedStyleClassNames", "LayoutGroup", "motion", "cx", "u", "Image2", "css", "FramerL01FicGVz", "withCSS", "L01FicGVz_default", "addPropertyControls", "ControlType", "addFonts", "__FramerMetadata__", "hasButtonOrAnchorAncestor", "element", "withCursorFollow", "Component", "props", "style", "cursorRef", "pe", "isHovering", "setIsHovering", "ye", "spring", "storedPosition", "initialCursorPosition", "window", "positionX", "useSpring", "positionY", "ue", "handleMouseMove", "e", "isHovered", "p", "motion"]
}
