{"version":3,"file":"script_main.CmxwDMev.mjs","names":["x","d","debounce","lerp","e","className","align","index","e","useRef","_Fragment","Children","mask","Base","MotionSVG","SVG","svg","getProps","Icon","className","mask","Base","MotionSVG","SVG","svg","getProps","Icon","className","mask","Base","MotionSVG","SVG","svg","getProps","Icon","className","addPropertyOverrides","enabledGestures","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","RichText","sharedStyle.css","sharedStyle.fonts","addPropertyOverrides","InstagramLogo","YoutubeLogo","WhatsappLogo","NavLink","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","sharedStyle1.className","className","RichText","Image1","sharedStyle.css","sharedStyle1.css","sharedStyle.fonts","sharedStyle1.fonts","isBrowser","useState","useRef","useCallback","throttle","fonts","css","className","cycleOrder","variantClassNames","Transition","React.useContext","React.useMemo","getProps","createLayoutDependency","React.useId","sharedStyle.className","className","RichText","sharedStyle.css","sharedStyle.fonts","useState","isBrowser","e","cart","get","useMemo","isCurrencySymbolSameAsCode","getLocaleFromCountry","ShopXCartSubtotal","mask","SVG","getProps","Icon","className","isBrowser","useState","useRef","useCallback","useState","useRef","isBrowser","useCallback","e","getLocaleFromCountry","isCurrencySymbolSameAsCode","throttle","p","_Fragment","get","index","useState","useRef","useCallback","throttle","e","addPropertyOverrides","enabledGestures","serializationHash","variantClassNames","transition1","transformTemplate1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","RichText","sharedStyle.css","sharedStyle.fonts","isBrowser","useState","useCallback","p","get","e","useMemo","isCurrencySymbolSameAsCode","getLocaleFromCountry","currentCurrencyCode","useState","isBrowser","useCallback","p","useMemo","get","useRef","currentCurrencyCode","amount","e","fonts","css","className","serializationHash","variantClassNames","transition1","toResponsiveImage","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","Image1","RichText","sharedStyle.css","sharedStyle.fonts","FC_CartCounterFonts","X","Checkout","CartProduct","FC_CartStateController","serializationHash","variantClassNames","transition1","transformTemplate1","toResponsiveImage","query1","DetailProduct","QueryData","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","RichText","_Fragment","SVG","sharedStyle.css","sharedStyle.fonts","React.useState","React.useRef","React.useMemo","React.useCallback","products","urlParams","e","type","active","value","p","index","debounce","React.Component","logDebug","useState","useRef","e","className","useCallback","css","addPropertyOverrides","cycleOrder","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","humanReadableVariantMap","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","RichText","sharedStyle.css","sharedStyle.fonts","Link","serializationHash","variantClassNames","transition1","matchVariant","DetailProduct","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","sharedStyle.className","className","_Fragment","Link1","Image1","RichText","sharedStyle.css","sharedStyle.fonts","mask","Base","MotionSVG","SVG","svg","getProps","Icon","className","getProps","className","isBrowser","useState","useRef","useCallback","e","get","Component","FC_CartCounterFonts","serializationHash","variantClassNames","transition1","Transition","React.useContext","React.useMemo","Variants","React.Fragment","getProps","createLayoutDependency","useRef","React.useId","className","NavigationNavLink","MagnifyingGlass","Basket","FCCartTrigger","serializationHash","variantClassNames","transition1","transformTemplate1","React.useContext","React.useMemo","humanReadableVariantMap","React.Fragment","getProps","useRef","React.useId","className","RichText","Navbar","Search","Default","Lenis","Footer","Component","useRef","React.useId","className","_Fragment","PropertyOverrides","React.createElement","NavbarFooter","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","e","routeData","Framer.inferInitialRouteFromPath","Framer.yieldToMain","React.startTransition","Framer.ErrorPlaceholder","React.Suspense","React.lazy"],"sources":["https:/unpkg.com/lenis@1.3.23/dist/lenis.mjs","https:/unpkg.com/lenis@1.3.23/dist/lenis-snap.mjs","https:/framerusercontent.com/modules/bSeEZJm22jsjERCOGQvq/YmzNUbQh4V7UMGbeal0O/Lenis.js","https:/framerusercontent.com/modules/4XTgiZQu54CjbB5dhliq/4qeXVdBQKTlCfMoVGgCT/rR4Yw6OW8.js","https:/framerusercontent.com/modules/ppr8OWMIrtBvJ1C4wfqk/qhDP3PUI05OrL1yANxTR/wMj3wn618.js","https:/framerusercontent.com/modules/PtxaBiSAA5V6LvrpAt6G/EsR1AqByikNQR8Cp2V8c/UD0eTfbk_.js","https:/framerusercontent.com/modules/b76zwKp1zfjQPDMc2F7h/Qd6IlKB4vwFxNqcwnnGO/joZsQScIP.js","https:/framerusercontent.com/modules/uZKooUFEQA1JceUgaQN9/mdJaCtq9wMThh3ZFze2e/eVkNOnl6N.js","https:/framerusercontent.com/modules/4gxKhYDXhQYsHYSbypZW/CwQMBB6veGtRJ77hGsnc/FC_CartCounter.js","https:/framerusercontent.com/modules/RBhrmJSayFIEr01hpPFn/uknigYuJhd1icsEQ9e0L/TIzKiGcOB.js","https:/framerusercontent.com/modules/Xz56MXJ2ZtTgFtT1VmZz/jsrZt5LjumizHw76NuWB/atkMxVAKb.js","https:/framer.com/m/shopX-cartSubtotal-pv7y.js","https:/framerusercontent.com/modules/k9s4cejdkBGDjmzudhzM/18cq93eooqM4YmdbL7E2/currencyMaps.js","https:/framerusercontent.com/modules/g7fE5FpUH8BU8KzDDNuK/ev96V8ZMvBdXi4qVNtAQ/FC_CartSubtotal.js","https:/framerusercontent.com/modules/iAxRNHJXmCtz5jtRxT8R/oytoJkLlltBnFuqp8PFz/buYx0d6c1.js","https:/framerusercontent.com/modules/iNxQR66txeNh1MBMupeD/14fDVHtX7ZF5JXTR7ee3/FC_CartStateController.js","https:/framerusercontent.com/modules/oKOqnJyJ3wjpqRFTNCqe/JaPX0gMUPXVoAKRlhepR/FC_CartProductCard.js","https:/framerusercontent.com/modules/v7LtkkyNjEAQ8EyrCJW6/tND47xWycBAq6ZXOZgJN/FC_CartCheckoutButton.js","https:/framerusercontent.com/modules/iYLJhvzjvA8lJO8CInvZ/AVrXbJDhexrfTN7tvnkz/JvGakXKJa.js","https:/framerusercontent.com/modules/N07JJZfuMtyHijtiRRgH/E4KLlxWtRCBXncxm1cnX/FC_ProductPrice.js","https:/framerusercontent.com/modules/ZipJAXrtSkBsdbTSry5q/KCNDDioMjkqBn9yvxlVd/FC_ProductPriceCompare.js","https:/framerusercontent.com/modules/zXXQRjTBqsMcvaFCm7UR/qliEQkK8ZemHpyI0Fday/mxGhnmEi5.js","https:/framerusercontent.com/modules/m194tXuKpNI43TeR2wQA/2OsHhxvkZSagcqQysgij/xj1yTVEvn.js","https:/framerusercontent.com/modules/mlNiB9oiM5gq5lTVnLZ4/eeyqqVVIsApL8AcVPTM4/kQ_xyFkUJ.js","https:/framerusercontent.com/modules/A55TPw8oJtDToWtsjcDZ/rm89gWVDrPnML7Vtbv1c/filterMappings.js","https:/framerusercontent.com/modules/Hk0F8C2ru2KtdcLr7KmL/Jzt46Dzat7FCQw1EB5SS/FC_CatalogDisplay.js","https:/framerusercontent.com/modules/tlSE71XX3CzjVeSC2JLA/kOlsgfY0y3dukSLwtLP4/FC_CatalogSearch.js","https:/framerusercontent.com/modules/tNT43S1SABfHrInLMOAz/JiHkSv3tZwdwj6v3NAmV/MN9bfryWr.js","https:/framerusercontent.com/modules/DyneXjU4nJPu7RafnfKF/kugejanue9HQ3seHCzm9/nO4xU874z.js","https:/framerusercontent.com/modules/5Vy4huHrzuQ0QkybX8qI/5lxiM9zq5KeC1LwvyRXC/mmRk1aCFk.js","https:/framerusercontent.com/modules/78wJr0q4vFZTRbgiA8bC/Y2EfGRGz13i3kdwNCKGk/gU109MUNe.js","https:/framerusercontent.com/modules/zlQedlx75OSE58IxDEdP/1582OQ5guWePVbagR1aF/r7WsnqDc4.js","https:/framerusercontent.com/modules/y6yUEEb8umnvGdCfPGqf/6lmsDvbDLBc9bRI2UZJD/FC_CartTrigger.js","https:/framerusercontent.com/modules/LhXUeH2TWIzfYc6tjZSq/eRtPPfsDnngt2IbNEgk8/KBqsoYAH1.js","https:/framerusercontent.com/modules/eyeJ625auYXvAvWcEgt6/ICFpL2cpsiqJI33zUTh6/uKy5Wbkbg.js","https:/framerusercontent.com/modules/ENk6q5O2d8CNyW2XCK6g/KeMfnpFEib8DM0SXjosm/poEdX2qML.js","framer:toplevel/main"],"sourcesContent":["//#region package.json\nvar version = \"1.3.23\";\n//#endregion\n//#region packages/core/src/maths.ts\n/**\n* Clamp a value between a minimum and maximum value\n*\n* @param min Minimum value\n* @param input Value to clamp\n* @param max Maximum value\n* @returns Clamped value\n*/\nfunction clamp(min, input, max) {\n\treturn Math.max(min, Math.min(input, max));\n}\n/**\n*  Linearly interpolate between two values using an amount (0 <= t <= 1)\n*\n* @param x First value\n* @param y Second value\n* @param t Amount to interpolate (0 <= t <= 1)\n* @returns Interpolated value\n*/\nfunction lerp(x, y, t) {\n\treturn (1 - t) * x + t * y;\n}\n/**\n* Damp a value over time using a damping factor\n* {@link http://www.rorydriscoll.com/2016/03/07/frame-rate-independent-damping-using-lerp/}\n*\n* @param x Initial value\n* @param y Target value\n* @param lambda Damping factor\n* @param dt Time elapsed since the last update\n* @returns Damped value\n*/\nfunction damp(x, y, lambda, deltaTime) {\n\treturn lerp(x, y, 1 - Math.exp(-lambda * deltaTime));\n}\n/**\n* Calculate the modulo of the dividend and divisor while keeping the result within the same sign as the divisor\n* {@link https://anguscroll.com/just/just-modulo}\n*\n* @param n Dividend\n* @param d Divisor\n* @returns Modulo\n*/\nfunction modulo(n, d) {\n\treturn (n % d + d) % d;\n}\n//#endregion\n//#region packages/core/src/animate.ts\n/**\n* Animate class to handle value animations with lerping or easing\n*\n* @example\n* const animate = new Animate()\n* animate.fromTo(0, 100, { duration: 1, easing: (t) => t })\n* animate.advance(0.5) // 50\n*/\nvar Animate = class {\n\tisRunning = false;\n\tvalue = 0;\n\tfrom = 0;\n\tto = 0;\n\tcurrentTime = 0;\n\tlerp;\n\tduration;\n\teasing;\n\tonUpdate;\n\t/**\n\t* Advance the animation by the given delta time\n\t*\n\t* @param deltaTime - The time in seconds to advance the animation\n\t*/\n\tadvance(deltaTime) {\n\t\tif (!this.isRunning) return;\n\t\tlet completed = false;\n\t\tif (this.duration && this.easing) {\n\t\t\tthis.currentTime += deltaTime;\n\t\t\tconst linearProgress = clamp(0, this.currentTime / this.duration, 1);\n\t\t\tcompleted = linearProgress >= 1;\n\t\t\tconst easedProgress = completed ? 1 : this.easing(linearProgress);\n\t\t\tthis.value = this.from + (this.to - this.from) * easedProgress;\n\t\t} else if (this.lerp) {\n\t\t\tthis.value = damp(this.value, this.to, this.lerp * 60, deltaTime);\n\t\t\tif (Math.round(this.value) === Math.round(this.to)) {\n\t\t\t\tthis.value = this.to;\n\t\t\t\tcompleted = true;\n\t\t\t}\n\t\t} else {\n\t\t\tthis.value = this.to;\n\t\t\tcompleted = true;\n\t\t}\n\t\tif (completed) this.stop();\n\t\tthis.onUpdate?.(this.value, completed);\n\t}\n\t/** Stop the animation */\n\tstop() {\n\t\tthis.isRunning = false;\n\t}\n\t/**\n\t* Set up the animation from a starting value to an ending value\n\t* with optional parameters for lerping, duration, easing, and onUpdate callback\n\t*\n\t* @param from - The starting value\n\t* @param to - The ending value\n\t* @param options - Options for the animation\n\t*/\n\tfromTo(from, to, { lerp, duration, easing, onStart, onUpdate }) {\n\t\tthis.from = this.value = from;\n\t\tthis.to = to;\n\t\tthis.lerp = lerp;\n\t\tthis.duration = duration;\n\t\tthis.easing = easing;\n\t\tthis.currentTime = 0;\n\t\tthis.isRunning = true;\n\t\tonStart?.();\n\t\tthis.onUpdate = onUpdate;\n\t}\n};\n//#endregion\n//#region packages/core/src/debounce.ts\nfunction debounce(callback, delay) {\n\tlet timer;\n\treturn function(...args) {\n\t\tclearTimeout(timer);\n\t\ttimer = setTimeout(() => {\n\t\t\ttimer = void 0;\n\t\t\tcallback.apply(this, args);\n\t\t}, delay);\n\t};\n}\n//#endregion\n//#region packages/core/src/dimensions.ts\n/**\n* Dimensions class to handle the size of the content and wrapper\n*\n* @example\n* const dimensions = new Dimensions(wrapper, content)\n* dimensions.on('resize', (e) => {\n*   console.log(e.width, e.height)\n* })\n*/\nvar Dimensions = class {\n\twidth = 0;\n\theight = 0;\n\tscrollHeight = 0;\n\tscrollWidth = 0;\n\tdebouncedResize;\n\twrapperResizeObserver;\n\tcontentResizeObserver;\n\tconstructor(wrapper, content, { autoResize = true, debounce: debounceValue = 250 } = {}) {\n\t\tthis.wrapper = wrapper;\n\t\tthis.content = content;\n\t\tif (autoResize) {\n\t\t\tthis.debouncedResize = debounce(this.resize, debounceValue);\n\t\t\tif (this.wrapper instanceof Window) window.addEventListener(\"resize\", this.debouncedResize);\n\t\t\telse {\n\t\t\t\tthis.wrapperResizeObserver = new ResizeObserver(this.debouncedResize);\n\t\t\t\tthis.wrapperResizeObserver.observe(this.wrapper);\n\t\t\t}\n\t\t\tthis.contentResizeObserver = new ResizeObserver(this.debouncedResize);\n\t\t\tthis.contentResizeObserver.observe(this.content);\n\t\t}\n\t\tthis.resize();\n\t}\n\tdestroy() {\n\t\tthis.wrapperResizeObserver?.disconnect();\n\t\tthis.contentResizeObserver?.disconnect();\n\t\tif (this.wrapper === window && this.debouncedResize) window.removeEventListener(\"resize\", this.debouncedResize);\n\t}\n\tresize = () => {\n\t\tthis.onWrapperResize();\n\t\tthis.onContentResize();\n\t};\n\tonWrapperResize = () => {\n\t\tif (this.wrapper instanceof Window) {\n\t\t\tthis.width = window.innerWidth;\n\t\t\tthis.height = window.innerHeight;\n\t\t} else {\n\t\t\tthis.width = this.wrapper.clientWidth;\n\t\t\tthis.height = this.wrapper.clientHeight;\n\t\t}\n\t};\n\tonContentResize = () => {\n\t\tif (this.wrapper instanceof Window) {\n\t\t\tthis.scrollHeight = this.content.scrollHeight;\n\t\t\tthis.scrollWidth = this.content.scrollWidth;\n\t\t} else {\n\t\t\tthis.scrollHeight = this.wrapper.scrollHeight;\n\t\t\tthis.scrollWidth = this.wrapper.scrollWidth;\n\t\t}\n\t};\n\tget limit() {\n\t\treturn {\n\t\t\tx: this.scrollWidth - this.width,\n\t\t\ty: this.scrollHeight - this.height\n\t\t};\n\t}\n};\n//#endregion\n//#region packages/core/src/emitter.ts\n/**\n* Emitter class to handle events\n* @example\n* const emitter = new Emitter()\n* emitter.on('event', (data) => {\n*   console.log(data)\n* })\n* emitter.emit('event', 'data')\n*/\nvar Emitter = class {\n\tevents = {};\n\t/**\n\t* Emit an event with the given data\n\t* @param event Event name\n\t* @param args Data to pass to the event handlers\n\t*/\n\temit(event, ...args) {\n\t\tconst callbacks = this.events[event] || [];\n\t\tfor (let i = 0, length = callbacks.length; i < length; i++) callbacks[i]?.(...args);\n\t}\n\t/**\n\t* Add a callback to the event\n\t* @param event Event name\n\t* @param cb Callback function\n\t* @returns Unsubscribe function\n\t*/\n\ton(event, cb) {\n\t\tif (this.events[event]) this.events[event].push(cb);\n\t\telse this.events[event] = [cb];\n\t\treturn () => {\n\t\t\tthis.events[event] = this.events[event]?.filter((i) => cb !== i);\n\t\t};\n\t}\n\t/**\n\t* Remove a callback from the event\n\t* @param event Event name\n\t* @param callback Callback function\n\t*/\n\toff(event, callback) {\n\t\tthis.events[event] = this.events[event]?.filter((i) => callback !== i);\n\t}\n\t/**\n\t* Remove all event listeners and clean up\n\t*/\n\tdestroy() {\n\t\tthis.events = {};\n\t}\n};\n//#endregion\n//#region packages/core/src/virtual-scroll.ts\nconst LINE_HEIGHT = 100 / 6;\nconst listenerOptions = { passive: false };\nfunction getDeltaMultiplier(deltaMode, size) {\n\tif (deltaMode === 1) return LINE_HEIGHT;\n\tif (deltaMode === 2) return size;\n\treturn 1;\n}\nvar VirtualScroll = class {\n\ttouchStart = {\n\t\tx: 0,\n\t\ty: 0\n\t};\n\tlastDelta = {\n\t\tx: 0,\n\t\ty: 0\n\t};\n\twindow = {\n\t\twidth: 0,\n\t\theight: 0\n\t};\n\temitter = new Emitter();\n\tconstructor(element, options = {\n\t\twheelMultiplier: 1,\n\t\ttouchMultiplier: 1\n\t}) {\n\t\tthis.element = element;\n\t\tthis.options = options;\n\t\twindow.addEventListener(\"resize\", this.onWindowResize);\n\t\tthis.onWindowResize();\n\t\tthis.element.addEventListener(\"wheel\", this.onWheel, listenerOptions);\n\t\tthis.element.addEventListener(\"touchstart\", this.onTouchStart, listenerOptions);\n\t\tthis.element.addEventListener(\"touchmove\", this.onTouchMove, listenerOptions);\n\t\tthis.element.addEventListener(\"touchend\", this.onTouchEnd, listenerOptions);\n\t}\n\t/**\n\t* Add an event listener for the given event and callback\n\t*\n\t* @param event Event name\n\t* @param callback Callback function\n\t*/\n\ton(event, callback) {\n\t\treturn this.emitter.on(event, callback);\n\t}\n\t/** Remove all event listeners and clean up */\n\tdestroy() {\n\t\tthis.emitter.destroy();\n\t\twindow.removeEventListener(\"resize\", this.onWindowResize);\n\t\tthis.element.removeEventListener(\"wheel\", this.onWheel, listenerOptions);\n\t\tthis.element.removeEventListener(\"touchstart\", this.onTouchStart, listenerOptions);\n\t\tthis.element.removeEventListener(\"touchmove\", this.onTouchMove, listenerOptions);\n\t\tthis.element.removeEventListener(\"touchend\", this.onTouchEnd, listenerOptions);\n\t}\n\t/**\n\t* Event handler for 'touchstart' event\n\t*\n\t* @param event Touch event\n\t*/\n\tonTouchStart = (event) => {\n\t\tconst { clientX, clientY } = event.targetTouches ? event.targetTouches[0] : event;\n\t\tthis.touchStart.x = clientX;\n\t\tthis.touchStart.y = clientY;\n\t\tthis.lastDelta = {\n\t\t\tx: 0,\n\t\t\ty: 0\n\t\t};\n\t\tthis.emitter.emit(\"scroll\", {\n\t\t\tdeltaX: 0,\n\t\t\tdeltaY: 0,\n\t\t\tevent\n\t\t});\n\t};\n\t/** Event handler for 'touchmove' event */\n\tonTouchMove = (event) => {\n\t\tconst { clientX, clientY } = event.targetTouches ? event.targetTouches[0] : event;\n\t\tconst deltaX = -(clientX - this.touchStart.x) * this.options.touchMultiplier;\n\t\tconst deltaY = -(clientY - this.touchStart.y) * this.options.touchMultiplier;\n\t\tthis.touchStart.x = clientX;\n\t\tthis.touchStart.y = clientY;\n\t\tthis.lastDelta = {\n\t\t\tx: deltaX,\n\t\t\ty: deltaY\n\t\t};\n\t\tthis.emitter.emit(\"scroll\", {\n\t\t\tdeltaX,\n\t\t\tdeltaY,\n\t\t\tevent\n\t\t});\n\t};\n\tonTouchEnd = (event) => {\n\t\tthis.emitter.emit(\"scroll\", {\n\t\t\tdeltaX: this.lastDelta.x,\n\t\t\tdeltaY: this.lastDelta.y,\n\t\t\tevent\n\t\t});\n\t};\n\t/** Event handler for 'wheel' event */\n\tonWheel = (event) => {\n\t\tlet { deltaX, deltaY, deltaMode } = event;\n\t\tconst multiplierX = getDeltaMultiplier(deltaMode, this.window.width);\n\t\tconst multiplierY = getDeltaMultiplier(deltaMode, this.window.height);\n\t\tdeltaX *= multiplierX;\n\t\tdeltaY *= multiplierY;\n\t\tdeltaX *= this.options.wheelMultiplier;\n\t\tdeltaY *= this.options.wheelMultiplier;\n\t\tthis.emitter.emit(\"scroll\", {\n\t\t\tdeltaX,\n\t\t\tdeltaY,\n\t\t\tevent\n\t\t});\n\t};\n\tonWindowResize = () => {\n\t\tthis.window = {\n\t\t\twidth: window.innerWidth,\n\t\t\theight: window.innerHeight\n\t\t};\n\t};\n};\n//#endregion\n//#region packages/core/src/lenis.ts\nconst defaultEasing = (t) => Math.min(1, 1.001 - 2 ** (-10 * t));\nvar Lenis = class {\n\t_isScrolling = false;\n\t_isStopped = false;\n\t_isLocked = false;\n\t_preventNextNativeScrollEvent = false;\n\t_resetVelocityTimeout = null;\n\t_rafId = null;\n\t/**\n\t* Whether or not the user is touching the screen\n\t*/\n\tisTouching;\n\t/**\n\t* The time in ms since the lenis instance was created\n\t*/\n\ttime = 0;\n\t/**\n\t* User data that will be forwarded through the scroll event\n\t*\n\t* @example\n\t* lenis.scrollTo(100, {\n\t*   userData: {\n\t*     foo: 'bar'\n\t*   }\n\t* })\n\t*/\n\tuserData = {};\n\t/**\n\t* The last velocity of the scroll\n\t*/\n\tlastVelocity = 0;\n\t/**\n\t* The current velocity of the scroll\n\t*/\n\tvelocity = 0;\n\t/**\n\t* The direction of the scroll\n\t*/\n\tdirection = 0;\n\t/**\n\t* The options passed to the lenis instance\n\t*/\n\toptions;\n\t/**\n\t* The target scroll value\n\t*/\n\ttargetScroll;\n\t/**\n\t* The animated scroll value\n\t*/\n\tanimatedScroll;\n\tanimate = new Animate();\n\temitter = new Emitter();\n\tdimensions;\n\tvirtualScroll;\n\tconstructor({ wrapper = window, content = document.documentElement, eventsTarget = wrapper, smoothWheel = true, syncTouch = false, syncTouchLerp = .075, touchInertiaExponent = 1.7, duration, easing, lerp = .1, infinite = false, orientation = \"vertical\", gestureOrientation = orientation === \"horizontal\" ? \"both\" : \"vertical\", touchMultiplier = 1, wheelMultiplier = 1, autoResize = true, prevent, virtualScroll, overscroll = true, autoRaf = false, anchors = false, autoToggle = false, allowNestedScroll = false, __experimental__naiveDimensions = false, naiveDimensions = __experimental__naiveDimensions, stopInertiaOnNavigate = false } = {}) {\n\t\twindow.lenisVersion = version;\n\t\tif (!window.lenis) window.lenis = {};\n\t\twindow.lenis.version = version;\n\t\tif (orientation === \"horizontal\") window.lenis.horizontal = true;\n\t\tif (syncTouch === true) window.lenis.touch = true;\n\t\tif (!wrapper || wrapper === document.documentElement) wrapper = window;\n\t\tif (typeof duration === \"number\" && typeof easing !== \"function\") easing = defaultEasing;\n\t\telse if (typeof easing === \"function\" && typeof duration !== \"number\") duration = 1;\n\t\tthis.options = {\n\t\t\twrapper,\n\t\t\tcontent,\n\t\t\teventsTarget,\n\t\t\tsmoothWheel,\n\t\t\tsyncTouch,\n\t\t\tsyncTouchLerp,\n\t\t\ttouchInertiaExponent,\n\t\t\tduration,\n\t\t\teasing,\n\t\t\tlerp,\n\t\t\tinfinite,\n\t\t\tgestureOrientation,\n\t\t\torientation,\n\t\t\ttouchMultiplier,\n\t\t\twheelMultiplier,\n\t\t\tautoResize,\n\t\t\tprevent,\n\t\t\tvirtualScroll,\n\t\t\toverscroll,\n\t\t\tautoRaf,\n\t\t\tanchors,\n\t\t\tautoToggle,\n\t\t\tallowNestedScroll,\n\t\t\tnaiveDimensions,\n\t\t\tstopInertiaOnNavigate\n\t\t};\n\t\tthis.dimensions = new Dimensions(wrapper, content, { autoResize });\n\t\tthis.updateClassName();\n\t\tthis.targetScroll = this.animatedScroll = this.actualScroll;\n\t\tthis.options.wrapper.addEventListener(\"scroll\", this.onNativeScroll);\n\t\tthis.options.wrapper.addEventListener(\"scrollend\", this.onScrollEnd, { capture: true });\n\t\tif (this.options.anchors || this.options.stopInertiaOnNavigate) this.options.wrapper.addEventListener(\"click\", this.onClick);\n\t\tthis.options.wrapper.addEventListener(\"pointerdown\", this.onPointerDown);\n\t\tthis.virtualScroll = new VirtualScroll(eventsTarget, {\n\t\t\ttouchMultiplier,\n\t\t\twheelMultiplier\n\t\t});\n\t\tthis.virtualScroll.on(\"scroll\", this.onVirtualScroll);\n\t\tif (this.options.autoToggle) {\n\t\t\tthis.checkOverflow();\n\t\t\tthis.rootElement.addEventListener(\"transitionend\", this.onTransitionEnd);\n\t\t}\n\t\tif (this.options.autoRaf) this._rafId = requestAnimationFrame(this.raf);\n\t}\n\t/**\n\t* Destroy the lenis instance, remove all event listeners and clean up the class name\n\t*/\n\tdestroy() {\n\t\tthis.emitter.destroy();\n\t\tthis.options.wrapper.removeEventListener(\"scroll\", this.onNativeScroll);\n\t\tthis.options.wrapper.removeEventListener(\"scrollend\", this.onScrollEnd, { capture: true });\n\t\tthis.options.wrapper.removeEventListener(\"pointerdown\", this.onPointerDown);\n\t\tif (this.options.anchors || this.options.stopInertiaOnNavigate) this.options.wrapper.removeEventListener(\"click\", this.onClick);\n\t\tthis.virtualScroll.destroy();\n\t\tthis.dimensions.destroy();\n\t\tthis.cleanUpClassName();\n\t\tif (this._rafId) cancelAnimationFrame(this._rafId);\n\t}\n\ton(event, callback) {\n\t\treturn this.emitter.on(event, callback);\n\t}\n\toff(event, callback) {\n\t\treturn this.emitter.off(event, callback);\n\t}\n\tonScrollEnd = (e) => {\n\t\tif (!(e instanceof CustomEvent)) {\n\t\t\tif (this.isScrolling === \"smooth\" || this.isScrolling === false) e.stopPropagation();\n\t\t}\n\t};\n\tdispatchScrollendEvent = () => {\n\t\tthis.options.wrapper.dispatchEvent(new CustomEvent(\"scrollend\", {\n\t\t\tbubbles: this.options.wrapper === window,\n\t\t\tdetail: { lenisScrollEnd: true }\n\t\t}));\n\t};\n\tget overflow() {\n\t\tconst property = this.isHorizontal ? \"overflow-x\" : \"overflow-y\";\n\t\treturn getComputedStyle(this.rootElement)[property];\n\t}\n\tcheckOverflow() {\n\t\tif ([\"hidden\", \"clip\"].includes(this.overflow)) this.internalStop();\n\t\telse this.internalStart();\n\t}\n\tonTransitionEnd = (event) => {\n\t\tif (event.propertyName?.includes(\"overflow\") && event.target === this.rootElement) this.checkOverflow();\n\t};\n\tsetScroll(scroll) {\n\t\tif (this.isHorizontal) this.options.wrapper.scrollTo({\n\t\t\tleft: scroll,\n\t\t\tbehavior: \"instant\"\n\t\t});\n\t\telse this.options.wrapper.scrollTo({\n\t\t\ttop: scroll,\n\t\t\tbehavior: \"instant\"\n\t\t});\n\t}\n\tonClick = (event) => {\n\t\tconst linkElementsUrls = event.composedPath().filter((node) => node instanceof HTMLAnchorElement && node.href).map((element) => new URL(element.href));\n\t\tconst currentUrl = new URL(window.location.href);\n\t\tif (this.options.anchors) {\n\t\t\tconst anchorElementUrl = linkElementsUrls.find((targetUrl) => currentUrl.host === targetUrl.host && currentUrl.pathname === targetUrl.pathname && targetUrl.hash);\n\t\t\tif (anchorElementUrl) {\n\t\t\t\tconst options = typeof this.options.anchors === \"object\" && this.options.anchors ? this.options.anchors : void 0;\n\t\t\t\tconst target = `#${anchorElementUrl.hash.split(\"#\")[1]}`;\n\t\t\t\tthis.scrollTo(target, options);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tif (this.options.stopInertiaOnNavigate) {\n\t\t\tif (linkElementsUrls.some((targetUrl) => currentUrl.host === targetUrl.host && currentUrl.pathname !== targetUrl.pathname)) {\n\t\t\t\tthis.reset();\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t};\n\tonPointerDown = (event) => {\n\t\tif (event.button === 1) this.reset();\n\t};\n\tonVirtualScroll = (data) => {\n\t\tif (typeof this.options.virtualScroll === \"function\" && this.options.virtualScroll(data) === false) return;\n\t\tconst { deltaX, deltaY, event } = data;\n\t\tthis.emitter.emit(\"virtual-scroll\", {\n\t\t\tdeltaX,\n\t\t\tdeltaY,\n\t\t\tevent\n\t\t});\n\t\tif (event.ctrlKey) return;\n\t\tif (event.lenisStopPropagation) return;\n\t\tconst isTouch = event.type.includes(\"touch\");\n\t\tconst isWheel = event.type.includes(\"wheel\");\n\t\tthis.isTouching = event.type === \"touchstart\" || event.type === \"touchmove\";\n\t\tconst isClickOrTap = deltaX === 0 && deltaY === 0;\n\t\tif (this.options.syncTouch && isTouch && event.type === \"touchstart\" && isClickOrTap && !this.isStopped && !this.isLocked) {\n\t\t\tthis.reset();\n\t\t\treturn;\n\t\t}\n\t\tconst isUnknownGesture = this.options.gestureOrientation === \"vertical\" && deltaY === 0 || this.options.gestureOrientation === \"horizontal\" && deltaX === 0;\n\t\tif (isClickOrTap || isUnknownGesture) return;\n\t\tlet composedPath = event.composedPath();\n\t\tcomposedPath = composedPath.slice(0, composedPath.indexOf(this.rootElement));\n\t\tconst prevent = this.options.prevent;\n\t\tconst gestureOrientation = Math.abs(deltaX) >= Math.abs(deltaY) ? \"horizontal\" : \"vertical\";\n\t\tif (composedPath.find((node) => node instanceof HTMLElement && (typeof prevent === \"function\" && prevent?.(node) || node.hasAttribute?.(\"data-lenis-prevent\") || gestureOrientation === \"vertical\" && node.hasAttribute?.(\"data-lenis-prevent-vertical\") || gestureOrientation === \"horizontal\" && node.hasAttribute?.(\"data-lenis-prevent-horizontal\") || isTouch && node.hasAttribute?.(\"data-lenis-prevent-touch\") || isWheel && node.hasAttribute?.(\"data-lenis-prevent-wheel\") || this.options.allowNestedScroll && this.hasNestedScroll(node, {\n\t\t\tdeltaX,\n\t\t\tdeltaY\n\t\t})))) return;\n\t\tif (this.isStopped || this.isLocked) {\n\t\t\tif (event.cancelable) event.preventDefault();\n\t\t\treturn;\n\t\t}\n\t\tif (!(this.options.syncTouch && isTouch || this.options.smoothWheel && isWheel)) {\n\t\t\tthis.isScrolling = \"native\";\n\t\t\tthis.animate.stop();\n\t\t\tevent.lenisStopPropagation = true;\n\t\t\treturn;\n\t\t}\n\t\tlet delta = deltaY;\n\t\tif (this.options.gestureOrientation === \"both\") delta = Math.abs(deltaY) > Math.abs(deltaX) ? deltaY : deltaX;\n\t\telse if (this.options.gestureOrientation === \"horizontal\") delta = deltaX;\n\t\tif (!this.options.overscroll || this.options.infinite || this.options.wrapper !== window && this.limit > 0 && (this.animatedScroll > 0 && this.animatedScroll < this.limit || this.animatedScroll === 0 && deltaY > 0 || this.animatedScroll === this.limit && deltaY < 0)) event.lenisStopPropagation = true;\n\t\tif (event.cancelable) event.preventDefault();\n\t\tconst isSyncTouch = isTouch && this.options.syncTouch;\n\t\tconst hasTouchInertia = isTouch && event.type === \"touchend\";\n\t\tif (hasTouchInertia) delta = Math.sign(delta) * Math.abs(this.velocity) ** this.options.touchInertiaExponent;\n\t\tthis.scrollTo(this.targetScroll + delta, {\n\t\t\tprogrammatic: false,\n\t\t\t...isSyncTouch ? { lerp: hasTouchInertia ? this.options.syncTouchLerp : 1 } : {\n\t\t\t\tlerp: this.options.lerp,\n\t\t\t\tduration: this.options.duration,\n\t\t\t\teasing: this.options.easing\n\t\t\t}\n\t\t});\n\t};\n\t/**\n\t* Force lenis to recalculate the dimensions\n\t*/\n\tresize() {\n\t\tthis.dimensions.resize();\n\t\tthis.animatedScroll = this.targetScroll = this.actualScroll;\n\t\tthis.emit();\n\t}\n\temit() {\n\t\tthis.emitter.emit(\"scroll\", this);\n\t}\n\tonNativeScroll = () => {\n\t\tif (this._resetVelocityTimeout !== null) {\n\t\t\tclearTimeout(this._resetVelocityTimeout);\n\t\t\tthis._resetVelocityTimeout = null;\n\t\t}\n\t\tif (this._preventNextNativeScrollEvent) {\n\t\t\tthis._preventNextNativeScrollEvent = false;\n\t\t\treturn;\n\t\t}\n\t\tif (this.isScrolling === false || this.isScrolling === \"native\") {\n\t\t\tconst lastScroll = this.animatedScroll;\n\t\t\tthis.animatedScroll = this.targetScroll = this.actualScroll;\n\t\t\tthis.lastVelocity = this.velocity;\n\t\t\tthis.velocity = this.animatedScroll - lastScroll;\n\t\t\tthis.direction = Math.sign(this.animatedScroll - lastScroll);\n\t\t\tif (!this.isStopped) this.isScrolling = \"native\";\n\t\t\tthis.emit();\n\t\t\tif (this.velocity !== 0) this._resetVelocityTimeout = setTimeout(() => {\n\t\t\t\tthis.lastVelocity = this.velocity;\n\t\t\t\tthis.velocity = 0;\n\t\t\t\tthis.isScrolling = false;\n\t\t\t\tthis.emit();\n\t\t\t}, 400);\n\t\t}\n\t};\n\treset() {\n\t\tthis.isLocked = false;\n\t\tthis.isScrolling = false;\n\t\tthis.animatedScroll = this.targetScroll = this.actualScroll;\n\t\tthis.lastVelocity = this.velocity = 0;\n\t\tthis.animate.stop();\n\t}\n\t/**\n\t* Start lenis scroll after it has been stopped\n\t*/\n\tstart() {\n\t\tif (!this.isStopped) return;\n\t\tif (this.options.autoToggle) {\n\t\t\tthis.rootElement.style.removeProperty(\"overflow\");\n\t\t\treturn;\n\t\t}\n\t\tthis.internalStart();\n\t}\n\tinternalStart() {\n\t\tif (!this.isStopped) return;\n\t\tthis.reset();\n\t\tthis.isStopped = false;\n\t\tthis.emit();\n\t}\n\t/**\n\t* Stop lenis scroll\n\t*/\n\tstop() {\n\t\tif (this.isStopped) return;\n\t\tif (this.options.autoToggle) {\n\t\t\tthis.rootElement.style.setProperty(\"overflow\", \"clip\");\n\t\t\treturn;\n\t\t}\n\t\tthis.internalStop();\n\t}\n\tinternalStop() {\n\t\tif (this.isStopped) return;\n\t\tthis.reset();\n\t\tthis.isStopped = true;\n\t\tthis.emit();\n\t}\n\t/**\n\t* RequestAnimationFrame for lenis\n\t*\n\t* @param time The time in ms from an external clock like `requestAnimationFrame` or Tempus\n\t*/\n\traf = (time) => {\n\t\tconst deltaTime = time - (this.time || time);\n\t\tthis.time = time;\n\t\tthis.animate.advance(deltaTime * .001);\n\t\tif (this.options.autoRaf) this._rafId = requestAnimationFrame(this.raf);\n\t};\n\t/**\n\t* Scroll to a target value\n\t*\n\t* @param target The target value to scroll to\n\t* @param options The options for the scroll\n\t*\n\t* @example\n\t* lenis.scrollTo(100, {\n\t*   offset: 100,\n\t*   duration: 1,\n\t*   easing: (t) => 1 - Math.cos((t * Math.PI) / 2),\n\t*   lerp: 0.1,\n\t*   onStart: () => {\n\t*     console.log('onStart')\n\t*   },\n\t*   onComplete: () => {\n\t*     console.log('onComplete')\n\t*   },\n\t* })\n\t*/\n\tscrollTo(_target, { offset = 0, immediate = false, lock = false, programmatic = true, lerp = programmatic ? this.options.lerp : void 0, duration = programmatic ? this.options.duration : void 0, easing = programmatic ? this.options.easing : void 0, onStart, onComplete, force = false, userData } = {}) {\n\t\tif ((this.isStopped || this.isLocked) && !force) return;\n\t\tlet target = _target;\n\t\tlet adjustedOffset = offset;\n\t\tif (typeof target === \"string\" && [\n\t\t\t\"top\",\n\t\t\t\"left\",\n\t\t\t\"start\",\n\t\t\t\"#\"\n\t\t].includes(target)) target = 0;\n\t\telse if (typeof target === \"string\" && [\n\t\t\t\"bottom\",\n\t\t\t\"right\",\n\t\t\t\"end\"\n\t\t].includes(target)) target = this.limit;\n\t\telse {\n\t\t\tlet node = null;\n\t\t\tif (typeof target === \"string\") {\n\t\t\t\tnode = document.querySelector(target);\n\t\t\t\tif (!node) if (target === \"#top\") target = 0;\n\t\t\t\telse console.warn(\"Lenis: Target not found\", target);\n\t\t\t} else if (target instanceof HTMLElement && target?.nodeType) node = target;\n\t\t\tif (node) {\n\t\t\t\tif (this.options.wrapper !== window) {\n\t\t\t\t\tconst wrapperRect = this.rootElement.getBoundingClientRect();\n\t\t\t\t\tadjustedOffset -= this.isHorizontal ? wrapperRect.left : wrapperRect.top;\n\t\t\t\t}\n\t\t\t\tconst rect = node.getBoundingClientRect();\n\t\t\t\tconst targetStyle = getComputedStyle(node);\n\t\t\t\tconst scrollMargin = this.isHorizontal ? Number.parseFloat(targetStyle.scrollMarginLeft) : Number.parseFloat(targetStyle.scrollMarginTop);\n\t\t\t\tconst containerStyle = getComputedStyle(this.rootElement);\n\t\t\t\tconst scrollPadding = this.isHorizontal ? Number.parseFloat(containerStyle.scrollPaddingLeft) : Number.parseFloat(containerStyle.scrollPaddingTop);\n\t\t\t\ttarget = (this.isHorizontal ? rect.left : rect.top) + this.animatedScroll - (Number.isNaN(scrollMargin) ? 0 : scrollMargin) - (Number.isNaN(scrollPadding) ? 0 : scrollPadding);\n\t\t\t}\n\t\t}\n\t\tif (typeof target !== \"number\") return;\n\t\ttarget += adjustedOffset;\n\t\tif (this.options.infinite) {\n\t\t\tif (programmatic) {\n\t\t\t\tthis.targetScroll = this.animatedScroll = this.scroll;\n\t\t\t\tconst distance = target - this.animatedScroll;\n\t\t\t\tif (distance > this.limit / 2) target -= this.limit;\n\t\t\t\telse if (distance < -this.limit / 2) target += this.limit;\n\t\t\t}\n\t\t} else target = clamp(0, target, this.limit);\n\t\tif (target === this.targetScroll) {\n\t\t\tonStart?.(this);\n\t\t\tonComplete?.(this);\n\t\t\treturn;\n\t\t}\n\t\tthis.userData = userData ?? {};\n\t\tif (immediate) {\n\t\t\tthis.animatedScroll = this.targetScroll = target;\n\t\t\tthis.setScroll(this.scroll);\n\t\t\tthis.reset();\n\t\t\tthis.preventNextNativeScrollEvent();\n\t\t\tthis.emit();\n\t\t\tonComplete?.(this);\n\t\t\tthis.userData = {};\n\t\t\trequestAnimationFrame(() => {\n\t\t\t\tthis.dispatchScrollendEvent();\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tif (!programmatic) this.targetScroll = target;\n\t\tif (typeof duration === \"number\" && typeof easing !== \"function\") easing = defaultEasing;\n\t\telse if (typeof easing === \"function\" && typeof duration !== \"number\") duration = 1;\n\t\tthis.animate.fromTo(this.animatedScroll, target, {\n\t\t\tduration,\n\t\t\teasing,\n\t\t\tlerp,\n\t\t\tonStart: () => {\n\t\t\t\tif (lock) this.isLocked = true;\n\t\t\t\tthis.isScrolling = \"smooth\";\n\t\t\t\tonStart?.(this);\n\t\t\t},\n\t\t\tonUpdate: (value, completed) => {\n\t\t\t\tthis.isScrolling = \"smooth\";\n\t\t\t\tthis.lastVelocity = this.velocity;\n\t\t\t\tthis.velocity = value - this.animatedScroll;\n\t\t\t\tthis.direction = Math.sign(this.velocity);\n\t\t\t\tthis.animatedScroll = value;\n\t\t\t\tthis.setScroll(this.scroll);\n\t\t\t\tif (programmatic) this.targetScroll = value;\n\t\t\t\tif (!completed) this.emit();\n\t\t\t\tif (completed) {\n\t\t\t\t\tthis.reset();\n\t\t\t\t\tthis.emit();\n\t\t\t\t\tonComplete?.(this);\n\t\t\t\t\tthis.userData = {};\n\t\t\t\t\trequestAnimationFrame(() => {\n\t\t\t\t\t\tthis.dispatchScrollendEvent();\n\t\t\t\t\t});\n\t\t\t\t\tthis.preventNextNativeScrollEvent();\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\tpreventNextNativeScrollEvent() {\n\t\tthis._preventNextNativeScrollEvent = true;\n\t\trequestAnimationFrame(() => {\n\t\t\tthis._preventNextNativeScrollEvent = false;\n\t\t});\n\t}\n\thasNestedScroll(node, { deltaX, deltaY }) {\n\t\tconst time = Date.now();\n\t\tif (!node._lenis) node._lenis = {};\n\t\tconst cache = node._lenis;\n\t\tlet hasOverflowX;\n\t\tlet hasOverflowY;\n\t\tlet isScrollableX;\n\t\tlet isScrollableY;\n\t\tlet hasOverscrollBehaviorX;\n\t\tlet hasOverscrollBehaviorY;\n\t\tlet scrollWidth;\n\t\tlet scrollHeight;\n\t\tlet clientWidth;\n\t\tlet clientHeight;\n\t\tif (time - (cache.time ?? 0) > 2e3) {\n\t\t\tcache.time = Date.now();\n\t\t\tconst computedStyle = window.getComputedStyle(node);\n\t\t\tcache.computedStyle = computedStyle;\n\t\t\thasOverflowX = [\n\t\t\t\t\"auto\",\n\t\t\t\t\"overlay\",\n\t\t\t\t\"scroll\"\n\t\t\t].includes(computedStyle.overflowX);\n\t\t\thasOverflowY = [\n\t\t\t\t\"auto\",\n\t\t\t\t\"overlay\",\n\t\t\t\t\"scroll\"\n\t\t\t].includes(computedStyle.overflowY);\n\t\t\thasOverscrollBehaviorX = [\"auto\"].includes(computedStyle.overscrollBehaviorX);\n\t\t\thasOverscrollBehaviorY = [\"auto\"].includes(computedStyle.overscrollBehaviorY);\n\t\t\tcache.hasOverflowX = hasOverflowX;\n\t\t\tcache.hasOverflowY = hasOverflowY;\n\t\t\tif (!(hasOverflowX || hasOverflowY)) return false;\n\t\t\tscrollWidth = node.scrollWidth;\n\t\t\tscrollHeight = node.scrollHeight;\n\t\t\tclientWidth = node.clientWidth;\n\t\t\tclientHeight = node.clientHeight;\n\t\t\tisScrollableX = scrollWidth > clientWidth;\n\t\t\tisScrollableY = scrollHeight > clientHeight;\n\t\t\tcache.isScrollableX = isScrollableX;\n\t\t\tcache.isScrollableY = isScrollableY;\n\t\t\tcache.scrollWidth = scrollWidth;\n\t\t\tcache.scrollHeight = scrollHeight;\n\t\t\tcache.clientWidth = clientWidth;\n\t\t\tcache.clientHeight = clientHeight;\n\t\t\tcache.hasOverscrollBehaviorX = hasOverscrollBehaviorX;\n\t\t\tcache.hasOverscrollBehaviorY = hasOverscrollBehaviorY;\n\t\t} else {\n\t\t\tisScrollableX = cache.isScrollableX;\n\t\t\tisScrollableY = cache.isScrollableY;\n\t\t\thasOverflowX = cache.hasOverflowX;\n\t\t\thasOverflowY = cache.hasOverflowY;\n\t\t\tscrollWidth = cache.scrollWidth;\n\t\t\tscrollHeight = cache.scrollHeight;\n\t\t\tclientWidth = cache.clientWidth;\n\t\t\tclientHeight = cache.clientHeight;\n\t\t\thasOverscrollBehaviorX = cache.hasOverscrollBehaviorX;\n\t\t\thasOverscrollBehaviorY = cache.hasOverscrollBehaviorY;\n\t\t}\n\t\tif (!(hasOverflowX && isScrollableX || hasOverflowY && isScrollableY)) return false;\n\t\tconst orientation = Math.abs(deltaX) >= Math.abs(deltaY) ? \"horizontal\" : \"vertical\";\n\t\tlet scroll;\n\t\tlet maxScroll;\n\t\tlet delta;\n\t\tlet hasOverflow;\n\t\tlet isScrollable;\n\t\tlet hasOverscrollBehavior;\n\t\tif (orientation === \"horizontal\") {\n\t\t\tscroll = Math.round(node.scrollLeft);\n\t\t\tmaxScroll = scrollWidth - clientWidth;\n\t\t\tdelta = deltaX;\n\t\t\thasOverflow = hasOverflowX;\n\t\t\tisScrollable = isScrollableX;\n\t\t\thasOverscrollBehavior = hasOverscrollBehaviorX;\n\t\t} else if (orientation === \"vertical\") {\n\t\t\tscroll = Math.round(node.scrollTop);\n\t\t\tmaxScroll = scrollHeight - clientHeight;\n\t\t\tdelta = deltaY;\n\t\t\thasOverflow = hasOverflowY;\n\t\t\tisScrollable = isScrollableY;\n\t\t\thasOverscrollBehavior = hasOverscrollBehaviorY;\n\t\t} else return false;\n\t\tif (!hasOverscrollBehavior && (scroll >= maxScroll || scroll <= 0)) return true;\n\t\treturn (delta > 0 ? scroll < maxScroll : scroll > 0) && hasOverflow && isScrollable;\n\t}\n\t/**\n\t* The root element on which lenis is instanced\n\t*/\n\tget rootElement() {\n\t\treturn this.options.wrapper === window ? document.documentElement : this.options.wrapper;\n\t}\n\t/**\n\t* The limit which is the maximum scroll value\n\t*/\n\tget limit() {\n\t\tif (this.options.naiveDimensions) {\n\t\t\tif (this.isHorizontal) return this.rootElement.scrollWidth - this.rootElement.clientWidth;\n\t\t\treturn this.rootElement.scrollHeight - this.rootElement.clientHeight;\n\t\t}\n\t\treturn this.dimensions.limit[this.isHorizontal ? \"x\" : \"y\"];\n\t}\n\t/**\n\t* Whether or not the scroll is horizontal\n\t*/\n\tget isHorizontal() {\n\t\treturn this.options.orientation === \"horizontal\";\n\t}\n\t/**\n\t* The actual scroll value\n\t*/\n\tget actualScroll() {\n\t\tconst wrapper = this.options.wrapper;\n\t\treturn this.isHorizontal ? wrapper.scrollX ?? wrapper.scrollLeft : wrapper.scrollY ?? wrapper.scrollTop;\n\t}\n\t/**\n\t* The current scroll value\n\t*/\n\tget scroll() {\n\t\treturn this.options.infinite ? modulo(this.animatedScroll, this.limit) : this.animatedScroll;\n\t}\n\t/**\n\t* The progress of the scroll relative to the limit\n\t*/\n\tget progress() {\n\t\treturn this.limit === 0 ? 1 : this.scroll / this.limit;\n\t}\n\t/**\n\t* Current scroll state\n\t*/\n\tget isScrolling() {\n\t\treturn this._isScrolling;\n\t}\n\tset isScrolling(value) {\n\t\tif (this._isScrolling !== value) {\n\t\t\tthis._isScrolling = value;\n\t\t\tthis.updateClassName();\n\t\t}\n\t}\n\t/**\n\t* Check if lenis is stopped\n\t*/\n\tget isStopped() {\n\t\treturn this._isStopped;\n\t}\n\tset isStopped(value) {\n\t\tif (this._isStopped !== value) {\n\t\t\tthis._isStopped = value;\n\t\t\tthis.updateClassName();\n\t\t}\n\t}\n\t/**\n\t* Check if lenis is locked\n\t*/\n\tget isLocked() {\n\t\treturn this._isLocked;\n\t}\n\tset isLocked(value) {\n\t\tif (this._isLocked !== value) {\n\t\t\tthis._isLocked = value;\n\t\t\tthis.updateClassName();\n\t\t}\n\t}\n\t/**\n\t* Check if lenis is smooth scrolling\n\t*/\n\tget isSmooth() {\n\t\treturn this.isScrolling === \"smooth\";\n\t}\n\t/**\n\t* The class name applied to the wrapper element\n\t*/\n\tget className() {\n\t\tlet className = \"lenis\";\n\t\tif (this.options.autoToggle) className += \" lenis-autoToggle\";\n\t\tif (this.isStopped) className += \" lenis-stopped\";\n\t\tif (this.isLocked) className += \" lenis-locked\";\n\t\tif (this.isScrolling) className += \" lenis-scrolling\";\n\t\tif (this.isScrolling === \"smooth\") className += \" lenis-smooth\";\n\t\treturn className;\n\t}\n\tupdateClassName() {\n\t\tthis.cleanUpClassName();\n\t\tthis.className.split(\" \").forEach((className) => {\n\t\t\tthis.rootElement.classList.add(className);\n\t\t});\n\t}\n\tcleanUpClassName() {\n\t\tfor (const className of Array.from(this.rootElement.classList)) if (className === \"lenis\" || className.startsWith(\"lenis-\")) this.rootElement.classList.remove(className);\n\t}\n};\n//#endregion\nexport { Lenis as default };\n\n//# sourceMappingURL=lenis.mjs.map","//#region packages/snap/src/debounce.ts\nfunction debounce(callback, delay) {\n\tlet timer;\n\treturn function(...args) {\n\t\tclearTimeout(timer);\n\t\ttimer = setTimeout(() => {\n\t\t\ttimer = void 0;\n\t\t\tcallback.apply(this, args);\n\t\t}, delay);\n\t};\n}\n//#endregion\n//#region packages/snap/src/element.ts\nfunction removeParentSticky(element) {\n\tif (getComputedStyle(element).position === \"sticky\") {\n\t\telement.style.setProperty(\"position\", \"static\");\n\t\telement.dataset.sticky = \"true\";\n\t}\n\tif (element.offsetParent) removeParentSticky(element.offsetParent);\n}\nfunction addParentSticky(element) {\n\tif (element?.dataset?.sticky === \"true\") {\n\t\telement.style.removeProperty(\"position\");\n\t\tdelete element.dataset.sticky;\n\t}\n\tif (element.offsetParent) addParentSticky(element.offsetParent);\n}\nfunction offsetTop(element, accumulator = 0) {\n\tconst top = accumulator + element.offsetTop;\n\tif (element.offsetParent) return offsetTop(element.offsetParent, top);\n\treturn top;\n}\nfunction offsetLeft(element, accumulator = 0) {\n\tconst left = accumulator + element.offsetLeft;\n\tif (element.offsetParent) return offsetLeft(element.offsetParent, left);\n\treturn left;\n}\nfunction scrollTop(element, accumulator = 0) {\n\tconst top = accumulator + element.scrollTop;\n\tif (element.offsetParent) return scrollTop(element.offsetParent, top);\n\treturn top + window.scrollY;\n}\nfunction scrollLeft(element, accumulator = 0) {\n\tconst left = accumulator + element.scrollLeft;\n\tif (element.offsetParent) return scrollLeft(element.offsetParent, left);\n\treturn left + window.scrollX;\n}\nvar SnapElement = class {\n\telement;\n\toptions;\n\talign;\n\trect = {};\n\twrapperResizeObserver;\n\tresizeObserver;\n\tdebouncedWrapperResize;\n\tconstructor(element, { align = [\"start\"], ignoreSticky = true, ignoreTransform = false } = {}) {\n\t\tthis.element = element;\n\t\tthis.options = {\n\t\t\talign,\n\t\t\tignoreSticky,\n\t\t\tignoreTransform\n\t\t};\n\t\tthis.align = [align].flat();\n\t\tthis.debouncedWrapperResize = debounce(this.onWrapperResize, 500);\n\t\tthis.wrapperResizeObserver = new ResizeObserver(this.debouncedWrapperResize);\n\t\tthis.wrapperResizeObserver.observe(document.body);\n\t\tthis.onWrapperResize();\n\t\tthis.resizeObserver = new ResizeObserver(this.onResize);\n\t\tthis.resizeObserver.observe(this.element);\n\t\tthis.setRect({\n\t\t\twidth: this.element.offsetWidth,\n\t\t\theight: this.element.offsetHeight\n\t\t});\n\t}\n\tdestroy() {\n\t\tthis.wrapperResizeObserver.disconnect();\n\t\tthis.resizeObserver.disconnect();\n\t}\n\tsetRect({ top, left, width, height, element } = {}) {\n\t\ttop = top ?? this.rect.top;\n\t\tleft = left ?? this.rect.left;\n\t\twidth = width ?? this.rect.width;\n\t\theight = height ?? this.rect.height;\n\t\telement = element ?? this.rect.element;\n\t\tif (top === this.rect.top && left === this.rect.left && width === this.rect.width && height === this.rect.height && element === this.rect.element) return;\n\t\tthis.rect.top = top;\n\t\tthis.rect.y = top;\n\t\tthis.rect.width = width;\n\t\tthis.rect.height = height;\n\t\tthis.rect.left = left;\n\t\tthis.rect.x = left;\n\t\tthis.rect.bottom = top + height;\n\t\tthis.rect.right = left + width;\n\t}\n\tonWrapperResize = () => {\n\t\tlet top;\n\t\tlet left;\n\t\tif (this.options.ignoreSticky) removeParentSticky(this.element);\n\t\tif (this.options.ignoreTransform) {\n\t\t\ttop = offsetTop(this.element);\n\t\t\tleft = offsetLeft(this.element);\n\t\t} else {\n\t\t\tconst rect = this.element.getBoundingClientRect();\n\t\t\ttop = rect.top + scrollTop(this.element);\n\t\t\tleft = rect.left + scrollLeft(this.element);\n\t\t}\n\t\tif (this.options.ignoreSticky) addParentSticky(this.element);\n\t\tthis.setRect({\n\t\t\ttop,\n\t\t\tleft\n\t\t});\n\t};\n\tonResize = ([entry]) => {\n\t\tif (!entry?.borderBoxSize[0]) return;\n\t\tconst width = entry.borderBoxSize[0].inlineSize;\n\t\tconst height = entry.borderBoxSize[0].blockSize;\n\t\tthis.setRect({\n\t\t\twidth,\n\t\t\theight\n\t\t});\n\t};\n};\n//#endregion\n//#region packages/snap/src/uid.ts\nlet index = 0;\nfunction uid() {\n\treturn index++;\n}\n//#endregion\n//#region packages/snap/src/snap.ts\n/**\n* Snap class to handle the snap functionality\n*\n* @example\n* const snap = new Snap(lenis, {\n*   type: 'mandatory', // 'mandatory', 'proximity' or 'lock'\n*   onSnapStart: (snap) => {\n*     console.log('onSnapStart', snap)\n*   },\n*   onSnapComplete: (snap) => {\n*     console.log('onSnapComplete', snap)\n*   },\n* })\n*\n* snap.add(500) // snap at 500px\n*\n* const removeSnap = snap.add(500)\n*\n* if (someCondition) {\n*   removeSnap()\n* }\n*/\nvar Snap = class {\n\toptions;\n\telements = /* @__PURE__ */ new Map();\n\tsnaps = /* @__PURE__ */ new Map();\n\tviewport = {\n\t\twidth: window.innerWidth,\n\t\theight: window.innerHeight\n\t};\n\tisStopped = false;\n\tonSnapDebounced;\n\tcurrentSnapIndex;\n\tconstructor(lenis, { type = \"proximity\", lerp, easing, duration, distanceThreshold = \"50%\", debounce: debounceDelay = 500, onSnapStart, onSnapComplete } = {}) {\n\t\tthis.lenis = lenis;\n\t\tif (!window.lenis) window.lenis = {};\n\t\twindow.lenis.snap = true;\n\t\tthis.options = {\n\t\t\ttype,\n\t\t\tlerp,\n\t\t\teasing,\n\t\t\tduration,\n\t\t\tdistanceThreshold,\n\t\t\tdebounce: debounceDelay,\n\t\t\tonSnapStart,\n\t\t\tonSnapComplete\n\t\t};\n\t\tthis.onWindowResize();\n\t\twindow.addEventListener(\"resize\", this.onWindowResize);\n\t\tthis.onSnapDebounced = debounce(this.onSnap, this.options.debounce);\n\t\tthis.lenis.on(\"virtual-scroll\", this.onSnapDebounced);\n\t}\n\t/**\n\t* Destroy the snap instance\n\t*/\n\tdestroy() {\n\t\tthis.lenis.off(\"virtual-scroll\", this.onSnapDebounced);\n\t\twindow.removeEventListener(\"resize\", this.onWindowResize);\n\t\tthis.elements.forEach((element) => {\n\t\t\telement.destroy();\n\t\t});\n\t}\n\t/**\n\t* Start the snap after it has been stopped\n\t*/\n\tstart() {\n\t\tthis.isStopped = false;\n\t}\n\t/**\n\t* Stop the snap\n\t*/\n\tstop() {\n\t\tthis.isStopped = true;\n\t}\n\t/**\n\t* Add a snap to the snap instance\n\t*\n\t* @param value The value to snap to\n\t* @param userData User data that will be forwarded through the snap event\n\t* @returns Unsubscribe function\n\t*/\n\tadd(value) {\n\t\tconst id = uid();\n\t\tthis.snaps.set(id, { value });\n\t\treturn () => this.snaps.delete(id);\n\t}\n\t/**\n\t* Add an element to the snap instance\n\t*\n\t* @param element The element to add\n\t* @param options The options for the element\n\t* @returns Unsubscribe function\n\t*/\n\taddElement(element, options = {}) {\n\t\tconst id = uid();\n\t\tthis.elements.set(id, new SnapElement(element, options));\n\t\treturn () => this.elements.delete(id);\n\t}\n\taddElements(elements, options = {}) {\n\t\tconst map = [...elements].map((element) => this.addElement(element, options));\n\t\treturn () => {\n\t\t\tmap.forEach((remove) => {\n\t\t\t\tremove();\n\t\t\t});\n\t\t};\n\t}\n\tonWindowResize = () => {\n\t\tthis.viewport.width = window.innerWidth;\n\t\tthis.viewport.height = window.innerHeight;\n\t};\n\tcomputeSnaps = () => {\n\t\tconst { isHorizontal } = this.lenis;\n\t\tlet snaps = [...this.snaps.values()];\n\t\tthis.elements.forEach(({ rect, align }) => {\n\t\t\tlet value;\n\t\t\talign.forEach((align) => {\n\t\t\t\tif (align === \"start\") value = rect.top;\n\t\t\t\telse if (align === \"center\") value = isHorizontal ? rect.left + rect.width / 2 - this.viewport.width / 2 : rect.top + rect.height / 2 - this.viewport.height / 2;\n\t\t\t\telse if (align === \"end\") value = isHorizontal ? rect.left + rect.width - this.viewport.width : rect.top + rect.height - this.viewport.height;\n\t\t\t\tif (typeof value === \"number\") snaps.push({ value: Math.ceil(value) });\n\t\t\t});\n\t\t});\n\t\tsnaps = snaps.sort((a, b) => Math.abs(a.value) - Math.abs(b.value));\n\t\treturn snaps;\n\t};\n\tprevious() {\n\t\tthis.goTo((this.currentSnapIndex ?? 0) - 1);\n\t}\n\tnext() {\n\t\tthis.goTo((this.currentSnapIndex ?? 0) + 1);\n\t}\n\tgoTo(index) {\n\t\tconst snaps = this.computeSnaps();\n\t\tif (snaps.length === 0) return;\n\t\tthis.currentSnapIndex = Math.max(0, Math.min(index, snaps.length - 1));\n\t\tconst currentSnap = snaps[this.currentSnapIndex];\n\t\tif (currentSnap === void 0) return;\n\t\tthis.lenis.scrollTo(currentSnap.value, {\n\t\t\tduration: this.options.duration,\n\t\t\teasing: this.options.easing,\n\t\t\tlerp: this.options.lerp,\n\t\t\tlock: this.options.type === \"lock\",\n\t\t\tuserData: { initiator: \"snap\" },\n\t\t\tonStart: () => {\n\t\t\t\tthis.options.onSnapStart?.({\n\t\t\t\t\tindex: this.currentSnapIndex,\n\t\t\t\t\t...currentSnap\n\t\t\t\t});\n\t\t\t},\n\t\t\tonComplete: () => {\n\t\t\t\tthis.options.onSnapComplete?.({\n\t\t\t\t\tindex: this.currentSnapIndex,\n\t\t\t\t\t...currentSnap\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\tget distanceThreshold() {\n\t\tlet distanceThreshold = Number.POSITIVE_INFINITY;\n\t\tif (this.options.type === \"mandatory\") return Number.POSITIVE_INFINITY;\n\t\tconst { isHorizontal } = this.lenis;\n\t\tconst axis = isHorizontal ? \"width\" : \"height\";\n\t\tif (typeof this.options.distanceThreshold === \"string\" && this.options.distanceThreshold.endsWith(\"%\")) distanceThreshold = Number(this.options.distanceThreshold.replace(\"%\", \"\")) / 100 * this.viewport[axis];\n\t\telse if (typeof this.options.distanceThreshold === \"number\") distanceThreshold = this.options.distanceThreshold;\n\t\telse distanceThreshold = this.viewport[axis];\n\t\treturn distanceThreshold;\n\t}\n\tonSnap = (e) => {\n\t\tif (this.isStopped) return;\n\t\tif (e.event.type === \"touchmove\") return;\n\t\tif (this.options.type === \"lock\" && this.lenis.userData?.initiator === \"snap\") return;\n\t\tlet { scroll, isHorizontal } = this.lenis;\n\t\tconst delta = isHorizontal ? e.deltaX : e.deltaY;\n\t\tscroll = Math.ceil(this.lenis.scroll + delta);\n\t\tconst snaps = this.computeSnaps();\n\t\tif (snaps.length === 0) return;\n\t\tlet snapIndex;\n\t\tconst prevSnapIndex = snaps.findLastIndex(({ value }) => value < scroll);\n\t\tconst nextSnapIndex = snaps.findIndex(({ value }) => value > scroll);\n\t\tif (this.options.type === \"lock\") {\n\t\t\tif (delta > 0) snapIndex = nextSnapIndex;\n\t\t\telse if (delta < 0) snapIndex = prevSnapIndex;\n\t\t} else {\n\t\t\tconst prevSnap = snaps[prevSnapIndex];\n\t\t\tconst distanceToPrevSnap = prevSnap ? Math.abs(scroll - prevSnap.value) : Number.POSITIVE_INFINITY;\n\t\t\tconst nextSnap = snaps[nextSnapIndex];\n\t\t\tsnapIndex = distanceToPrevSnap < (nextSnap ? Math.abs(scroll - nextSnap.value) : Number.POSITIVE_INFINITY) ? prevSnapIndex : nextSnapIndex;\n\t\t}\n\t\tif (snapIndex === void 0) return;\n\t\tif (snapIndex === -1) return;\n\t\tsnapIndex = Math.max(0, Math.min(snapIndex, snaps.length - 1));\n\t\tconst snap = snaps[snapIndex];\n\t\tif (Math.abs(scroll - snap.value) <= this.distanceThreshold) this.goTo(snapIndex);\n\t};\n\tresize() {\n\t\tthis.elements.forEach((element) => {\n\t\t\telement.onWrapperResize();\n\t\t});\n\t}\n};\n//#endregion\nexport { Snap as default };\n\n//# sourceMappingURL=lenis-snap.mjs.map","import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import Lenis from\"https://unpkg.com/lenis@1.3.23/dist/lenis.mjs\";import Snap from\"https://unpkg.com/lenis@1.3.23/dist/lenis-snap.mjs\";import{useEffect,useRef,Children,isValidElement,cloneElement}from\"react\";/**\n * @framerSupportedLayoutHeight any\n * @framerSupportedLayoutWidth any\n * @framerDisableUnlink\n */export default function Component({smooth,infinite,orientation,intensity,children,snap}){const wrapperRef=useRef();const contentRef=useRef();const lenisRef=useRef();useEffect(()=>{if(children&&(!wrapperRef.current||!contentRef.current))return;if(wrapperRef.current&&contentRef.current){if(orientation===\"horizontal\"){wrapperRef.current.style.setProperty(\"overflowX\",\"auto\");}else{wrapperRef.current.style.setProperty(\"overflowY\",\"auto\");}}const lenis=new Lenis({smoothWheel:smooth,// duration: intensity / 10,\ninfinite,orientation,gestureOrientation:orientation===\"horizontal\"?\"both\":\"vertical\",autoRaf:true,autoToggle:true,anchors:true,allowNestedScroll:true,wrapper:wrapperRef.current,content:contentRef.current,syncTouch:Boolean(infinite)||orientation===\"horizontal\",stopInertiaOnNavigate:true});lenisRef.current=lenis;let lenisSnap;if(snap&&snap.snaps.length>0){lenisSnap=new Snap(lenis,{type:snap.type,distanceThreshold:snap.threshold+\"%\"});snap.snaps.forEach(item=>{if(!item.target?.current)return;const id=item.target.current.id;// workaround when content is duplicated by LenisSeamlessInfinite\nconst elements=document.querySelectorAll(`#${id}`);elements.forEach(element=>{lenisSnap.addElement(element,{align:item.align});});});}window.lenis=lenis;window.lenisSnap=snap;return()=>{if(lenis)lenis.destroy();if(lenisSnap)lenisSnap.destroy();};},[smooth,infinite,orientation,intensity,children,snap]);// useEffect(() => {\n//     function onClick(event: PointerEvent | MouseEvent) {\n//         const path = event.composedPath()\n//         const pageLink = path.find(\n//             (node) =>\n//                 node instanceof HTMLAnchorElement &&\n//                 (node.getAttribute(\"href\")?.startsWith(\"./\") ||\n//                     node.getAttribute(\"href\")?.startsWith(\"../\"))\n//         ) as HTMLAnchorElement | undefined\n//         if (pageLink) {\n//             if (lenisRef.current) {\n//                 lenisRef.current.reset()\n//             }\n//         }\n//     }\n//     window.addEventListener(\"click\", onClick)\n//     return () => {\n//         window.removeEventListener(\"click\", onClick)\n//     }\n// }, [])\nreturn /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"link\",{href:\"https://unpkg.com/lenis@1.3.23/dist/lenis.css\",rel:\"stylesheet\"}),children&&/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/_jsx(\"div\",{ref:wrapperRef,style:orientation===\"horizontal\"?{overflowX:\"auto\",width:\"100%\"}:{overflowY:\"auto\",height:\"100%\"},children:/*#__PURE__*/_jsx(\"div\",{ref:contentRef,style:{width:\"100%\"},children:Children.map(children,child=>/*#__PURE__*/isValidElement(child)?/*#__PURE__*/cloneElement(child,{style:{...child.props.style,width:\"100%\"}}):child)})})})]});}Component.displayName=\"Lenis\";addPropertyControls(Component,{smooth:{type:ControlType.Boolean,title:\"Smooth\",defaultValue:true},intensity:{type:ControlType.Number,title:\"Intensity\",defaultValue:12,step:1,min:1,max:100,hidden(props){return props.smooth===false;},description:\"This will be ignored on mobile.\"},infinite:{type:ControlType.Boolean,title:\"Infinite\",defaultValue:false,hidden(props){return props.smooth===false;}},orientation:{type:ControlType.Enum,defaultValue:\"Vertical\",displaySegmentedControl:true,options:[\"vertical\",\"horizontal\"],optionTitles:[\"Vertical\",\"Horizontal\"],hidden(props){return props.smooth===false;}},children:{type:ControlType.ComponentInstance,title:\"Content\"},snap:{type:ControlType.Object,optional:true,description:\"Cooked and served by [darkroom.engineering](https://darkroom.engineering).\",controls:{type:{type:ControlType.Enum,defaultValue:\"proximity\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",options:[\"proximity\",\"mandatory\",\"lock\"],optionTitles:[\"Proximity\",\"Mandatory\",\"Lock\"]},threshold:{type:ControlType.Number,defaultValue:50,min:0,max:100,unit:\"%\",hidden:props=>{return props.snap.type===\"mandatory\";}},snaps:{type:ControlType.Array,control:{type:ControlType.Object,controls:{target:{title:\"Target\",type:ControlType.ScrollSectionRef},align:{type:ControlType.Enum,defaultValue:\"center\",displaySegmentedControl:true,segmentedControlDirection:\"horizontal\",options:[\"start\",\"center\",\"end\"],optionIcons:[\"align-top\",\"align-middle\",\"align-bottom\"]}}}}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Component\",\"slots\":[\"children\"],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"any\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Lenis.map","// Generated by Framer (6ca5d98)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 18.993 2.206 C 18.876 1.737 18.54 1.353 18.09 1.175 C 14.951 -0.033 9.75 0 9.75 0 C 9.75 0 4.549 -0.033 1.406 1.179 C 0.957 1.358 0.621 1.742 0.503 2.211 C 0.288 3.051 0 4.696 0 7.5 C 0 10.304 0.288 11.949 0.507 12.794 C 0.625 13.261 0.959 13.643 1.406 13.821 C 4.549 15.033 9.75 15 9.75 15 C 9.75 15 14.951 15.033 18.094 13.821 C 18.542 13.644 18.878 13.262 18.997 12.794 C 19.216 11.95 19.504 10.304 19.504 7.5 C 19.504 4.696 19.212 3.051 18.993 2.206 Z M 8.25 10.5 L 8.25 4.5 L 12.75 7.5 Z\" fill-opacity=\"var(--1m6trwb, 0)\" fill=\"var(--21h8s6, rgb(0, 0, 0))\" height=\"15.000173729153522px\" id=\"Kxf_tc1rc\" transform=\"translate(2.25 4.5)\" width=\"19.503749999999997px\"/><path d=\"M 4.5 3 L 0 0 L 0 6 Z\" fill=\"transparent\" height=\"6px\" id=\"OiQVq1BcP\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(10.5 9)\" width=\"4.5px\"/><path d=\"M 0 7.5 C 0 10.304 0.288 11.949 0.507 12.794 C 0.625 13.261 0.959 13.643 1.406 13.821 C 4.549 15.033 9.75 15 9.75 15 C 9.75 15 14.951 15.033 18.094 13.821 C 18.542 13.644 18.878 13.262 18.997 12.794 C 19.216 11.95 19.504 10.304 19.504 7.5 C 19.504 4.696 19.216 3.052 18.997 2.206 C 18.879 1.737 18.543 1.353 18.094 1.175 C 14.951 -0.033 9.75 0 9.75 0 C 9.75 0 4.549 -0.033 1.406 1.179 C 0.957 1.358 0.621 1.742 0.503 2.211 C 0.288 3.051 0 4.696 0 7.5 Z\" fill=\"transparent\" height=\"15.000173729153499px\" id=\"f0uv60ll0\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(2.25 4.5)\" width=\"19.503749999999997px\"/></svg>';const getProps=({alpha,color,height,id,width,width1,...props})=>{return{...props,ezTt3ayMo:color??props.ezTt3ayMo??\"rgb(0, 0, 0)\",lschgej4H:width1??props.lschgej4H??1.5,qxTvv_EBh:alpha??props.qxTvv_EBh};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,ezTt3ayMo,lschgej4H,qxTvv_EBh,...restProps}=getProps(props);const href=useSVGTemplate(\"3761207643\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-KIxjp\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1m6trwb\":qxTvv_EBh,\"--21h8s6\":ezTt3ayMo,\"--pgex8v\":lschgej4H,...style},viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-KIxjp { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"ezTt3ayMo\":\"color\",\"lschgej4H\":\"width1\",\"qxTvv_EBh\":\"alpha\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Youtube Logo\",\"color\":{\"type\":\"variable\",\"value\":\"21h8s6\"},\"set\":{\"localId\":\"vectorSet/NGVKdicsm\",\"id\":\"NGVKdicsm\",\"moduleId\":\"omX0gWFPqDwhaiWwf6ab\"}}\n * @framerDisableUnlink true\n */const Icon=withCSS(Component,css,\"framer-KIxjp\");Icon.displayName=\"Youtube Logo\";export default Icon;addPropertyControls(Icon,{ezTt3ayMo:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Color\",type:ControlType.Color},lschgej4H:{defaultValue:1.5,displayStepper:true,hidden:false,max:6,min:0,step:.5,title:\"Width\",type:ControlType.Number},qxTvv_EBh:{defaultValue:0,displayStepper:true,hidden:false,max:1,min:0,step:.1,title:\"Alpha\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"24\",\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"true\",\"framerVariables\":\"{\\\"ezTt3ayMo\\\":\\\"color\\\",\\\"lschgej4H\\\":\\\"width1\\\",\\\"qxTvv_EBh\\\":\\\"alpha\\\"}\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerVector\":\"{\\\"name\\\":\\\"Youtube Logo\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"21h8s6\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/NGVKdicsm\\\",\\\"id\\\":\\\"NGVKdicsm\\\",\\\"moduleId\\\":\\\"omX0gWFPqDwhaiWwf6ab\\\"}}\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"24\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (6ca5d98)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 9.001 0 C 5.784 0 2.812 1.716 1.204 4.503 C -0.403 7.289 -0.401 10.722 1.21 13.507 L 1.21 13.507 L 0.041 17.012 C -0.049 17.281 0.021 17.579 0.222 17.779 C 0.423 17.98 0.72 18.051 0.989 17.961 L 4.495 16.792 L 4.495 16.792 C 7.77 18.686 11.881 18.328 14.781 15.897 C 17.681 13.466 18.75 9.481 17.457 5.925 C 16.164 2.368 12.785 0.001 9.001 0 Z M 11.251 14.25 C 7.109 14.25 3.751 10.892 3.751 6.75 C 3.751 5.093 5.094 3.75 6.751 3.75 L 8.251 6.75 L 7.096 8.482 C 7.554 9.576 8.425 10.447 9.52 10.905 L 11.251 9.75 L 14.251 11.25 C 14.251 12.907 12.908 14.25 11.251 14.25 Z\" fill-opacity=\"var(--1m6trwb, 0)\" fill=\"var(--21h8s6, rgb(0, 0, 0))\" height=\"18.000072791893746px\" id=\"zdUrVx04b\" transform=\"translate(2.999 3)\" width=\"17.999633069364176px\"/><path d=\"M 0 3 C 0 1.343 1.343 0 3 0 L 4.5 3 L 3.345 4.732 C 3.803 5.826 4.674 6.697 5.768 7.155 L 7.5 6 L 10.5 7.5 C 10.5 9.157 9.157 10.5 7.5 10.5 C 3.358 10.5 0 7.142 0 3 Z\" fill=\"transparent\" height=\"10.5px\" id=\"Xhg5dzQDU\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(6.75 6.75)\" width=\"10.5px\"/><path d=\"M 4.493 16.79 C 8.403 19.053 13.386 18.066 16.138 14.483 C 18.891 10.9 18.56 5.831 15.365 2.636 C 12.17 -0.559 7.101 -0.89 3.518 1.863 C -0.065 4.615 -1.052 9.598 1.211 13.508 L 1.211 13.508 L 0.039 17.01 C -0.051 17.279 0.019 17.577 0.22 17.777 C 0.421 17.978 0.718 18.049 0.987 17.959 Z\" fill=\"transparent\" height=\"18.00072584206196px\" id=\"vVGlEI9Xq\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(3.001 3.002)\" width=\"18.000910893351044px\"/></svg>';const getProps=({alpha,color,height,id,width,width1,...props})=>{return{...props,ezTt3ayMo:color??props.ezTt3ayMo??\"rgb(0, 0, 0)\",lschgej4H:width1??props.lschgej4H??1.5,qxTvv_EBh:alpha??props.qxTvv_EBh};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,ezTt3ayMo,lschgej4H,qxTvv_EBh,...restProps}=getProps(props);const href=useSVGTemplate(\"207206324\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-X7Wxr\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1m6trwb\":qxTvv_EBh,\"--21h8s6\":ezTt3ayMo,\"--pgex8v\":lschgej4H,...style},viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-X7Wxr { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"ezTt3ayMo\":\"color\",\"lschgej4H\":\"width1\",\"qxTvv_EBh\":\"alpha\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Whatsapp Logo\",\"color\":{\"type\":\"variable\",\"value\":\"21h8s6\"},\"set\":{\"localId\":\"vectorSet/NGVKdicsm\",\"id\":\"NGVKdicsm\",\"moduleId\":\"omX0gWFPqDwhaiWwf6ab\"}}\n * @framerDisableUnlink true\n */const Icon=withCSS(Component,css,\"framer-X7Wxr\");Icon.displayName=\"Whatsapp Logo\";export default Icon;addPropertyControls(Icon,{ezTt3ayMo:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Color\",type:ControlType.Color},lschgej4H:{defaultValue:1.5,displayStepper:true,hidden:false,max:6,min:0,step:.5,title:\"Width\",type:ControlType.Number},qxTvv_EBh:{defaultValue:0,displayStepper:true,hidden:false,max:1,min:0,step:.1,title:\"Alpha\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"true\",\"framerIntrinsicWidth\":\"24\",\"framerVector\":\"{\\\"name\\\":\\\"Whatsapp Logo\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"21h8s6\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/NGVKdicsm\\\",\\\"id\\\":\\\"NGVKdicsm\\\",\\\"moduleId\\\":\\\"omX0gWFPqDwhaiWwf6ab\\\"}}\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"24\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerImmutableVariables\":\"true\",\"framerVariables\":\"{\\\"ezTt3ayMo\\\":\\\"color\\\",\\\"lschgej4H\\\":\\\"width1\\\",\\\"qxTvv_EBh\\\":\\\"alpha\\\"}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (6ca5d98)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 13.5 0 L 4.5 0 C 2.015 0 0 2.015 0 4.5 L 0 13.5 C 0 15.985 2.015 18 4.5 18 L 13.5 18 C 15.985 18 18 15.985 18 13.5 L 18 4.5 C 18 2.015 15.985 0 13.5 0 Z M 9 12.75 C 6.929 12.75 5.25 11.071 5.25 9 C 5.25 6.929 6.929 5.25 9 5.25 C 11.071 5.25 12.75 6.929 12.75 9 C 12.75 11.071 11.071 12.75 9 12.75 Z\" fill-opacity=\"var(--1m6trwb, 0)\" fill=\"var(--21h8s6, rgb(0, 0, 0))\" height=\"18px\" id=\"SuXKGhab5\" transform=\"translate(3 3)\" width=\"18px\"/><path d=\"M 4.5 18 C 2.015 18 0 15.985 0 13.5 L 0 4.5 C 0 2.015 2.015 0 4.5 0 L 13.5 0 C 15.985 0 18 2.015 18 4.5 L 18 13.5 C 18 15.985 15.985 18 13.5 18 Z\" fill=\"transparent\" height=\"18px\" id=\"vvJ8FLDVj\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(3 3)\" width=\"18px\"/><path d=\"M 0 3.75 C 0 1.679 1.679 0 3.75 0 C 5.821 0 7.5 1.679 7.5 3.75 C 7.5 5.821 5.821 7.5 3.75 7.5 C 1.679 7.5 0 5.821 0 3.75 Z\" fill=\"transparent\" height=\"7.5px\" id=\"Q3v7fjWhv\" stroke-dasharray=\"\" stroke-linecap=\"butt\" stroke-linejoin=\"miter\" stroke-miterlimit=\"10\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(8.25 8.25)\" width=\"7.5px\"/><path d=\"M 0 1.125 C 0 0.504 0.504 0 1.125 0 C 1.746 0 2.25 0.504 2.25 1.125 C 2.25 1.746 1.746 2.25 1.125 2.25 C 0.504 2.25 0 1.746 0 1.125 Z\" fill=\"var(--21h8s6, rgb(0, 0, 0))\" height=\"2.25px\" id=\"VxeO4Hprj\" transform=\"translate(15.75 6)\" width=\"2.25px\"/></svg>';const getProps=({alpha,color,height,id,width,width1,...props})=>{return{...props,ezTt3ayMo:color??props.ezTt3ayMo??\"rgb(0, 0, 0)\",lschgej4H:width1??props.lschgej4H??1.5,qxTvv_EBh:alpha??props.qxTvv_EBh};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,ezTt3ayMo,lschgej4H,qxTvv_EBh,...restProps}=getProps(props);const href=useSVGTemplate(\"942143898\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-SHCqu\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1m6trwb\":qxTvv_EBh,\"--21h8s6\":ezTt3ayMo,\"--pgex8v\":lschgej4H,...style},viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-SHCqu { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"ezTt3ayMo\":\"color\",\"lschgej4H\":\"width1\",\"qxTvv_EBh\":\"alpha\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Instagram Logo\",\"color\":{\"type\":\"variable\",\"value\":\"21h8s6\"},\"set\":{\"localId\":\"vectorSet/NGVKdicsm\",\"id\":\"NGVKdicsm\",\"moduleId\":\"omX0gWFPqDwhaiWwf6ab\"}}\n * @framerDisableUnlink true\n */const Icon=withCSS(Component,css,\"framer-SHCqu\");Icon.displayName=\"Instagram Logo\";export default Icon;addPropertyControls(Icon,{ezTt3ayMo:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Color\",type:ControlType.Color},lschgej4H:{defaultValue:1.5,displayStepper:true,hidden:false,max:6,min:0,step:.5,title:\"Width\",type:ControlType.Number},qxTvv_EBh:{defaultValue:0,displayStepper:true,hidden:false,max:1,min:0,step:.1,title:\"Alpha\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"24\",\"framerVariables\":\"{\\\"ezTt3ayMo\\\":\\\"color\\\",\\\"lschgej4H\\\":\\\"width1\\\",\\\"qxTvv_EBh\\\":\\\"alpha\\\"}\",\"framerDisableUnlink\":\"true\",\"framerIntrinsicHeight\":\"24\",\"framerVector\":\"{\\\"name\\\":\\\"Instagram Logo\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"21h8s6\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/NGVKdicsm\\\",\\\"id\\\":\\\"NGVKdicsm\\\",\\\"moduleId\\\":\\\"omX0gWFPqDwhaiWwf6ab\\\"}}\",\"framerImmutableVariables\":\"true\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (c9c30df)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,getFontsFromSharedStyle,Link,RichText,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/ofNxzvWQxJ0XVbeC2eVi/blJqBIfK6ouR4sgS7Z5O/P5VoLLYik.js\";const enabledGestures={FTt8v8mkp:{hover:true}};const serializationHash=\"framer-s0ka7\";const variantClassNames={FTt8v8mkp:\"framer-v-15ge0e9\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const uG9vxht3j=undefined;const n1_RZIWXD=undefined;const JHaOVdQop=undefined;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 getProps=({color,height,id,link,title,width,...props})=>{return{...props,JHaOVdQop:title??props.JHaOVdQop??\"SHOP\",n1_RZIWXD:color??props.n1_RZIWXD??\"var(--token-c9f6eaef-b48d-4131-90f9-e19a13743aa7, rgb(255, 255, 255))\",uG9vxht3j:link??props.uG9vxht3j};};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,JHaOVdQop,n1_RZIWXD,uG9vxht3j,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"FTt8v8mkp\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className];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(Link,{href:uG9vxht3j,motionChild:true,nodeId:\"FTt8v8mkp\",openInNewTab:false,scopeId:\"joZsQScIP\",children:/*#__PURE__*/_jsx(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-15ge0e9\",className,classNames)} framer-1vy8vlu`,\"data-framer-name\":\"Button\",layoutDependency:layoutDependency,layoutId:\"FTt8v8mkp\",ref:refBinding,style:{...style},...addPropertyOverrides({\"FTt8v8mkp-hover\":{\"data-framer-name\":undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-l11qub\",\"data-styles-preset\":\"P5VoLLYik\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--variable-reference-n1_RZIWXD-joZsQScIP))\"},children:\"SHOP\"})}),className:\"framer-4yrylg\",\"data-framer-name\":\"SHOP\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"t6UyfRcTi\",style:{\"--extracted-r6o4lv\":\"var(--variable-reference-n1_RZIWXD-joZsQScIP)\",\"--framer-paragraph-spacing\":\"0px\",\"--variable-reference-n1_RZIWXD-joZsQScIP\":n1_RZIWXD},text:JHaOVdQop,variants:{\"FTt8v8mkp-hover\":{\"--extracted-r6o4lv\":\"var(--token-8c2f47bd-ff4e-49e9-8074-4773e2ce4a46, rgb(151, 151, 134))\"}},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({\"FTt8v8mkp-hover\":{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-l11qub\",\"data-styles-preset\":\"P5VoLLYik\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-8c2f47bd-ff4e-49e9-8074-4773e2ce4a46, rgb(151, 151, 134)))\"},children:\"SHOP\"})})}},baseVariant,gestureVariant)})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-s0ka7.framer-1vy8vlu, .framer-s0ka7 .framer-1vy8vlu { display: block; }\",\".framer-s0ka7.framer-15ge0e9 { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 28px; justify-content: center; overflow: visible; padding: 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-s0ka7 .framer-4yrylg { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 28\n * @framerIntrinsicWidth 45\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"fixed\"]},\"Ul_KHM8Pt\":{\"layout\":[\"auto\",\"fixed\"]}}}\n * @framerVariables {\"JHaOVdQop\":\"title\",\"n1_RZIWXD\":\"color\",\"uG9vxht3j\":\"link\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerjoZsQScIP=withCSS(Component,css,\"framer-s0ka7\");export default FramerjoZsQScIP;FramerjoZsQScIP.displayName=\"Nav Link\";FramerjoZsQScIP.defaultProps={height:28,width:45};addPropertyControls(FramerjoZsQScIP,{JHaOVdQop:{defaultValue:\"SHOP\",displayTextArea:false,title:\"Title\",type:ControlType.String},onJHaOVdQopChange:{changes:\"JHaOVdQop\",type:ControlType.ChangeHandler},n1_RZIWXD:{defaultValue:\"var(--token-c9f6eaef-b48d-4131-90f9-e19a13743aa7, rgb(255, 255, 255))\",title:\"Color\",type:ControlType.Color},uG9vxht3j:{title:\"Link\",type:ControlType.Link}});addFonts(FramerjoZsQScIP,[{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\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerjoZsQScIP\",\"slots\":[],\"annotations\":{\"framerVariables\":\"{\\\"JHaOVdQop\\\":\\\"title\\\",\\\"n1_RZIWXD\\\":\\\"color\\\",\\\"uG9vxht3j\\\":\\\"link\\\"}\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"45\",\"framerAutoSizeImages\":\"true\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"28\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"fixed\\\"]},\\\"Ul_KHM8Pt\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"fixed\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (c9c30df)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,getFontsFromSharedStyle,Image as Image1,Link,ResolveLinks,RichText,SmartComponentScopedContainer,TickerItem,useComponentViewport,useLocaleInfo,useRouter,useVariantState,withCSS,withTickerFX}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import YoutubeLogo from\"https://framerusercontent.com/modules/4XTgiZQu54CjbB5dhliq/4qeXVdBQKTlCfMoVGgCT/rR4Yw6OW8.js\";import WhatsappLogo from\"https://framerusercontent.com/modules/ppr8OWMIrtBvJ1C4wfqk/qhDP3PUI05OrL1yANxTR/wMj3wn618.js\";import InstagramLogo from\"https://framerusercontent.com/modules/PtxaBiSAA5V6LvrpAt6G/EsR1AqByikNQR8Cp2V8c/UD0eTfbk_.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/OnIbeMDckgybScDLrGvu/iFO2dmYAHgNGrDuOKgxN/rH6Hg5tu5.js\";import*as sharedStyle1 from\"https://framerusercontent.com/modules/vZHgLnTqCnCpqhEfskm2/rPwFjpxIukeH2ClCM9qC/UApLVwMoi.js\";import NavLink from\"https://framerusercontent.com/modules/b76zwKp1zfjQPDMc2F7h/Qd6IlKB4vwFxNqcwnnGO/joZsQScIP.js\";const MotionDivWithTickerFX=withTickerFX(motion.div);const InstagramLogoFonts=getFonts(InstagramLogo);const YoutubeLogoFonts=getFonts(YoutubeLogo);const WhatsappLogoFonts=getFonts(WhatsappLogo);const NavLinkFonts=getFonts(NavLink);const cycleOrder=[\"VqA8ehCWK\",\"oelTs5cnA\",\"Pt7vPjPfY\"];const serializationHash=\"framer-zTIFV\";const variantClassNames={oelTs5cnA:\"framer-v-l8hk9n\",Pt7vPjPfY:\"framer-v-1nuff7i\",VqA8ehCWK:\"framer-v-1s0vmvc\"};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:\"VqA8ehCWK\",Mobile:\"Pt7vPjPfY\",Tablet:\"oelTs5cnA\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"VqA8ehCWK\"};};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:\"VqA8ehCWK\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className,sharedStyle1.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const router=useRouter();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.footer,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1s0vmvc\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"VqA8ehCWK\",ref:refBinding,style:{background:\"radial-gradient(50% 75% at 50% 50%, rgb(255, 255, 255) 0%, rgb(236, 223, 205) 100%)\",...style},...addPropertyOverrides({oelTs5cnA:{\"data-framer-name\":\"Tablet\"},Pt7vPjPfY:{\"data-framer-name\":\"Mobile\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1cfg1m5\",\"data-framer-name\":\"Container\",layoutDependency:layoutDependency,layoutId:\"BJ_npSesJ\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-17gzsdl\",\"data-framer-name\":\"Brand Logo\",layoutDependency:layoutDependency,layoutId:\"W4qbuiYuk\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{dir:\"auto\",style:{\"--font-selector\":\"R0Y7R2lsZGEgRGlzcGxheS1yZWd1bGFy\",\"--framer-font-family\":'\"Gilda Display\", \"Gilda Display Placeholder\", serif',\"--framer-font-size\":\"200.09619575158013px\",\"--framer-letter-spacing\":\"0.3em\",\"--framer-line-height\":\"90%\",\"--framer-text-alignment\":\"center\"},children:/*#__PURE__*/_jsx(motion.span,{\"data-text-fill\":\"true\",style:{backgroundImage:\"linear-gradient(0deg, rgb(111, 111, 99) 0%, rgb(213, 213, 189) 100%)\"},children:\"AMOURA\"})})}),className:\"framer-jpbzlc\",\"data-framer-name\":\"Brand Logo\",fonts:[\"GF;Gilda Display-regular\"],layoutDependency:layoutDependency,layoutId:\"fPnERr6hK\",style:{\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"center\",viewBox:\"0 0 1200 180\",viewBoxScale:.9,withExternalLayout:true})}),/*#__PURE__*/_jsxs(MotionDivWithTickerFX,{className:\"framer-1aks0w\",\"data-framer-name\":\"List Image\",layoutDependency:layoutDependency,layoutId:\"kJMUG0VPr\",tickerEffectAlign:\"center\",tickerEffectDirectionModifier:\"default\",tickerEffectDraggable:true,tickerEffectEnabled:true,tickerEffectGap:\"20px\",tickerEffectHoverModifier:60,tickerEffectOverflow:\"clip\",tickerEffectPosition:\"relative\",tickerEffectStackDirection:\"row\",tickerEffectVelocity:80,children:[/*#__PURE__*/_jsx(TickerItem,{children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fit\",pixelHeight:1188,pixelWidth:1020,positionX:\"center\",positionY:\"center\",sizes:\"256px\",src:\"https://framerusercontent.com/images/fZ8FfL5zFmyGecHVzMz87Z0w.png?width=1020&height=1188\",srcSet:\"https://framerusercontent.com/images/fZ8FfL5zFmyGecHVzMz87Z0w.png?scale-down-to=1024&width=1020&height=1188 879w,https://framerusercontent.com/images/fZ8FfL5zFmyGecHVzMz87Z0w.png?width=1020&height=1188 1020w\"},className:\"framer-1nq6n29\",\"data-framer-name\":\"FOOTER IMG / 1\",draggable:\"false\",layoutDependency:layoutDependency,layoutId:\"Q4IYsE5xf\",...addPropertyOverrides({Pt7vPjPfY:{background:{alt:\"\",fit:\"fit\",pixelHeight:1188,pixelWidth:1020,positionX:\"center\",positionY:\"center\",sizes:\"145.0294px\",src:\"https://framerusercontent.com/images/fZ8FfL5zFmyGecHVzMz87Z0w.png?width=1020&height=1188\",srcSet:\"https://framerusercontent.com/images/fZ8FfL5zFmyGecHVzMz87Z0w.png?scale-down-to=1024&width=1020&height=1188 879w,https://framerusercontent.com/images/fZ8FfL5zFmyGecHVzMz87Z0w.png?width=1020&height=1188 1020w\"}}},baseVariant,gestureVariant)})}),/*#__PURE__*/_jsx(TickerItem,{children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",pixelHeight:2731,pixelWidth:4096,sizes:\"245px\",src:\"https://framerusercontent.com/images/NYJE9VD8DIBW8WOQunPgYOqfs.jpg?width=4096&height=2731\",srcSet:\"https://framerusercontent.com/images/NYJE9VD8DIBW8WOQunPgYOqfs.jpg?scale-down-to=512&width=4096&height=2731 512w,https://framerusercontent.com/images/NYJE9VD8DIBW8WOQunPgYOqfs.jpg?scale-down-to=1024&width=4096&height=2731 1024w,https://framerusercontent.com/images/NYJE9VD8DIBW8WOQunPgYOqfs.jpg?scale-down-to=2048&width=4096&height=2731 2048w,https://framerusercontent.com/images/NYJE9VD8DIBW8WOQunPgYOqfs.jpg?width=4096&height=2731 4096w\"},className:\"framer-1ypt6f2\",\"data-framer-name\":\"FOOTER IMG / 2\",draggable:\"false\",layoutDependency:layoutDependency,layoutId:\"MXEnJF0QP\",...addPropertyOverrides({Pt7vPjPfY:{background:{alt:\"\",fit:\"fill\",pixelHeight:2731,pixelWidth:4096,sizes:\"138.7976px\",src:\"https://framerusercontent.com/images/NYJE9VD8DIBW8WOQunPgYOqfs.jpg?width=4096&height=2731\",srcSet:\"https://framerusercontent.com/images/NYJE9VD8DIBW8WOQunPgYOqfs.jpg?scale-down-to=512&width=4096&height=2731 512w,https://framerusercontent.com/images/NYJE9VD8DIBW8WOQunPgYOqfs.jpg?scale-down-to=1024&width=4096&height=2731 1024w,https://framerusercontent.com/images/NYJE9VD8DIBW8WOQunPgYOqfs.jpg?scale-down-to=2048&width=4096&height=2731 2048w,https://framerusercontent.com/images/NYJE9VD8DIBW8WOQunPgYOqfs.jpg?width=4096&height=2731 4096w\"}}},baseVariant,gestureVariant)})}),/*#__PURE__*/_jsx(TickerItem,{children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"stretch\",pixelHeight:1308,pixelWidth:980,positionX:\"center\",positionY:\"center\",sizes:\"245px\",src:\"https://framerusercontent.com/images/MXkQaNqO3R5vkWbyD7HOxqHnpVg.png?width=980&height=1308\",srcSet:\"https://framerusercontent.com/images/MXkQaNqO3R5vkWbyD7HOxqHnpVg.png?scale-down-to=1024&width=980&height=1308 767w,https://framerusercontent.com/images/MXkQaNqO3R5vkWbyD7HOxqHnpVg.png?width=980&height=1308 980w\"},className:\"framer-jvdl3l\",\"data-framer-name\":\"FOOTER IMG / 3\",draggable:\"false\",layoutDependency:layoutDependency,layoutId:\"o9XOcuGLZ\",...addPropertyOverrides({Pt7vPjPfY:{background:{alt:\"\",fit:\"stretch\",pixelHeight:1308,pixelWidth:980,positionX:\"center\",positionY:\"center\",sizes:\"138.7976px\",src:\"https://framerusercontent.com/images/MXkQaNqO3R5vkWbyD7HOxqHnpVg.png?width=980&height=1308\",srcSet:\"https://framerusercontent.com/images/MXkQaNqO3R5vkWbyD7HOxqHnpVg.png?scale-down-to=1024&width=980&height=1308 767w,https://framerusercontent.com/images/MXkQaNqO3R5vkWbyD7HOxqHnpVg.png?width=980&height=1308 980w\"}}},baseVariant,gestureVariant)})}),/*#__PURE__*/_jsx(TickerItem,{children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"stretch\",pixelHeight:996,pixelWidth:980,positionX:\"center\",positionY:\"center\",sizes:\"245px\",src:\"https://framerusercontent.com/images/qoEaMSbPJWh81e4lEU4ZTR3vmMU.png?width=980&height=996\",srcSet:\"https://framerusercontent.com/images/qoEaMSbPJWh81e4lEU4ZTR3vmMU.png?width=980&height=996 980w\"},className:\"framer-99bsjx\",\"data-framer-name\":\"FOOTER IMG / 4\",draggable:\"false\",layoutDependency:layoutDependency,layoutId:\"cPgaWCaBc\",...addPropertyOverrides({Pt7vPjPfY:{background:{alt:\"\",fit:\"stretch\",pixelHeight:996,pixelWidth:980,positionX:\"center\",positionY:\"center\",sizes:\"138.7976px\",src:\"https://framerusercontent.com/images/qoEaMSbPJWh81e4lEU4ZTR3vmMU.png?width=980&height=996\",srcSet:\"https://framerusercontent.com/images/qoEaMSbPJWh81e4lEU4ZTR3vmMU.png?width=980&height=996 980w\"}}},baseVariant,gestureVariant)})}),/*#__PURE__*/_jsx(TickerItem,{children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",pixelHeight:896,pixelWidth:1344,sizes:\"255px\",src:\"https://framerusercontent.com/images/OdeylQL6aX2fFF507klCbmXtPQ.png?width=1344&height=896\",srcSet:\"https://framerusercontent.com/images/OdeylQL6aX2fFF507klCbmXtPQ.png?scale-down-to=512&width=1344&height=896 512w,https://framerusercontent.com/images/OdeylQL6aX2fFF507klCbmXtPQ.png?scale-down-to=1024&width=1344&height=896 1024w,https://framerusercontent.com/images/OdeylQL6aX2fFF507klCbmXtPQ.png?width=1344&height=896 1344w\"},className:\"framer-1vaufzg\",\"data-framer-name\":\"FOOTER IMG / 5\",draggable:\"false\",layoutDependency:layoutDependency,layoutId:\"tQdQpmbBv\",...addPropertyOverrides({Pt7vPjPfY:{background:{alt:\"\",fit:\"fill\",pixelHeight:896,pixelWidth:1344,sizes:\"144.4628px\",src:\"https://framerusercontent.com/images/OdeylQL6aX2fFF507klCbmXtPQ.png?width=1344&height=896\",srcSet:\"https://framerusercontent.com/images/OdeylQL6aX2fFF507klCbmXtPQ.png?scale-down-to=512&width=1344&height=896 512w,https://framerusercontent.com/images/OdeylQL6aX2fFF507klCbmXtPQ.png?scale-down-to=1024&width=1344&height=896 1024w,https://framerusercontent.com/images/OdeylQL6aX2fFF507klCbmXtPQ.png?width=1344&height=896 1344w\"}}},baseVariant,gestureVariant)})}),/*#__PURE__*/_jsx(TickerItem,{children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"stretch\",pixelHeight:1188,pixelWidth:1020,positionX:\"center\",positionY:\"center\",sizes:\"255px\",src:\"https://framerusercontent.com/images/LCZnMSK5tFPcvXnyW3kPceJMU.png?width=1020&height=1188\",srcSet:\"https://framerusercontent.com/images/LCZnMSK5tFPcvXnyW3kPceJMU.png?scale-down-to=1024&width=1020&height=1188 879w,https://framerusercontent.com/images/LCZnMSK5tFPcvXnyW3kPceJMU.png?width=1020&height=1188 1020w\"},className:\"framer-6vosfq\",\"data-framer-name\":\"FOOTER IMG / 6\",draggable:\"false\",layoutDependency:layoutDependency,layoutId:\"XtRsYgwoo\",...addPropertyOverrides({Pt7vPjPfY:{background:{alt:\"\",fit:\"stretch\",pixelHeight:1188,pixelWidth:1020,positionX:\"center\",positionY:\"center\",sizes:\"144.4628px\",src:\"https://framerusercontent.com/images/LCZnMSK5tFPcvXnyW3kPceJMU.png?width=1020&height=1188\",srcSet:\"https://framerusercontent.com/images/LCZnMSK5tFPcvXnyW3kPceJMU.png?scale-down-to=1024&width=1020&height=1188 879w,https://framerusercontent.com/images/LCZnMSK5tFPcvXnyW3kPceJMU.png?width=1020&height=1188 1020w\"}}},baseVariant,gestureVariant)})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-qmyggp\",\"data-framer-name\":\"Bottom\",layoutDependency:layoutDependency,layoutId:\"tGXhT2TQr\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-sgkpdz\",\"data-framer-name\":\"Social Media\",layoutDependency:layoutDependency,layoutId:\"aNhY_o13E\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.h3,{className:\"framer-styles-preset-cz1p00\",\"data-styles-preset\":\"rH6Hg5tu5\",dir:\"auto\",style:{\"--framer-text-alignment\":\"center\",\"--framer-text-color\":\"var(--extracted-a0htzi, var(--token-7cf54614-79de-4f6d-95d3-baa265dfd938, rgb(92, 92, 78)))\"},children:\"Let’s Stay in Touch\"})}),className:\"framer-rokp2n\",\"data-framer-name\":\"Let’s Stay in Touch\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"i5imWw1H2\",style:{\"--extracted-a0htzi\":\"var(--token-7cf54614-79de-4f6d-95d3-baa265dfd938, rgb(92, 92, 78))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"center\",withExternalLayout:true}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-z589q4\",\"data-framer-name\":\"Social Media Icon\",layoutDependency:layoutDependency,layoutId:\"BgqqGY7Kl\",children:[/*#__PURE__*/_jsx(Link,{href:\"instagram.com\",motionChild:true,nodeId:\"iXFiqjv55\",openInNewTab:true,scopeId:\"eVkNOnl6N\",children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-17gl7xp framer-1pyieni\",\"data-framer-name\":\"Instagram\",layoutDependency:layoutDependency,layoutId:\"iXFiqjv55\",children:/*#__PURE__*/_jsx(InstagramLogo,{animated:true,className:\"framer-111kupa\",layoutDependency:layoutDependency,layoutId:\"lG138FFz6\",style:{\"--1m6trwb\":0,\"--21h8s6\":\"var(--token-7cf54614-79de-4f6d-95d3-baa265dfd938, rgb(92, 92, 78))\",\"--pgex8v\":1}})})}),/*#__PURE__*/_jsx(Link,{href:\"youtube.com\",motionChild:true,nodeId:\"yM5hWGRys\",openInNewTab:true,scopeId:\"eVkNOnl6N\",children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-1yjfbku framer-1pyieni\",\"data-framer-name\":\"Youtube\",layoutDependency:layoutDependency,layoutId:\"yM5hWGRys\",children:/*#__PURE__*/_jsx(YoutubeLogo,{animated:true,className:\"framer-15oi527\",layoutDependency:layoutDependency,layoutId:\"z_uwo3BFt\",style:{\"--1m6trwb\":0,\"--21h8s6\":\"var(--token-7cf54614-79de-4f6d-95d3-baa265dfd938, rgb(92, 92, 78))\",\"--pgex8v\":1}})})}),/*#__PURE__*/_jsx(Link,{href:\"whatsapp.com\",motionChild:true,nodeId:\"RsyU_VsHr\",openInNewTab:true,scopeId:\"eVkNOnl6N\",children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-1dyklro framer-1pyieni\",\"data-framer-name\":\"Whatsapp\",layoutDependency:layoutDependency,layoutId:\"RsyU_VsHr\",children:/*#__PURE__*/_jsx(WhatsappLogo,{animated:true,className:\"framer-1temkob\",layoutDependency:layoutDependency,layoutId:\"mHTyYdZ3T\",style:{\"--1m6trwb\":0,\"--21h8s6\":\"var(--token-7cf54614-79de-4f6d-95d3-baa265dfd938, rgb(92, 92, 78))\",\"--pgex8v\":1}})})})]})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-riek8t\",\"data-framer-name\":\"Copyright & Quick Links\",layoutDependency:layoutDependency,layoutId:\"LPc31zLgd\",style:{backgroundColor:\"var(--token-7cf54614-79de-4f6d-95d3-baa265dfd938, rgb(92, 92, 78))\"},children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-kpck5z\",\"data-styles-preset\":\"UApLVwMoi\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-541c27ea-9a16-4080-9f72-7022929e9ebe, rgb(231, 236, 229)))\"},children:\"\\xa92025 Amoura. All Right Reserved.\"})}),className:\"framer-bs1l9q\",\"data-framer-name\":\"2025 Amoura. All Right Reserved | Term of Use | Privacy Policy\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"ZjFkSe9rt\",style:{\"--extracted-r6o4lv\":\"var(--token-541c27ea-9a16-4080-9f72-7022929e9ebe, rgb(231, 236, 229))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsxs(motion.nav,{className:\"framer-1rft6s9\",\"data-framer-name\":\"Quick Links\",layoutDependency:layoutDependency,layoutId:\"G71SE9Ia8\",children:[/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"augiA20Il\"},implicitPathVariables:undefined},{href:{webPageId:\"augiA20Il\"},implicitPathVariables:undefined},{href:{webPageId:\"augiA20Il\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:28,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1m19y89-container\",layoutDependency:layoutDependency,layoutId:\"ihQQd4C5o-container\",nodeId:\"ihQQd4C5o\",rendersWithMotion:true,scopeId:\"eVkNOnl6N\",children:/*#__PURE__*/_jsx(NavLink,{height:\"100%\",id:\"ihQQd4C5o\",JHaOVdQop:\"HOME\",layoutId:\"ihQQd4C5o\",n1_RZIWXD:\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",style:{height:\"100%\"},uG9vxht3j:resolvedLinks[0],width:\"100%\",...addPropertyOverrides({oelTs5cnA:{uG9vxht3j:resolvedLinks[1]},Pt7vPjPfY:{uG9vxht3j:resolvedLinks[2]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"SYRUO0vTS\"},implicitPathVariables:undefined},{href:{webPageId:\"SYRUO0vTS\"},implicitPathVariables:undefined},{href:{webPageId:\"SYRUO0vTS\"},implicitPathVariables:undefined}],children:resolvedLinks1=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:28,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1m0tf0y-container\",layoutDependency:layoutDependency,layoutId:\"koih7SSEA-container\",nodeId:\"koih7SSEA\",rendersWithMotion:true,scopeId:\"eVkNOnl6N\",children:/*#__PURE__*/_jsx(NavLink,{height:\"100%\",id:\"koih7SSEA\",JHaOVdQop:\"SHOP\",layoutId:\"koih7SSEA\",n1_RZIWXD:\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",style:{height:\"100%\"},uG9vxht3j:resolvedLinks1[0],width:\"100%\",...addPropertyOverrides({oelTs5cnA:{uG9vxht3j:resolvedLinks1[1]},Pt7vPjPfY:{uG9vxht3j:resolvedLinks1[2]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"mZyk9sKOS\"},implicitPathVariables:undefined},{href:{webPageId:\"mZyk9sKOS\"},implicitPathVariables:undefined},{href:{webPageId:\"mZyk9sKOS\"},implicitPathVariables:undefined}],children:resolvedLinks2=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:28,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1xwn2b0-container\",layoutDependency:layoutDependency,layoutId:\"TowKUAroC-container\",nodeId:\"TowKUAroC\",rendersWithMotion:true,scopeId:\"eVkNOnl6N\",children:/*#__PURE__*/_jsx(NavLink,{height:\"100%\",id:\"TowKUAroC\",JHaOVdQop:\"OUR STORY\",layoutId:\"TowKUAroC\",n1_RZIWXD:\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",style:{height:\"100%\"},uG9vxht3j:resolvedLinks2[0],width:\"100%\",...addPropertyOverrides({oelTs5cnA:{uG9vxht3j:resolvedLinks2[1]},Pt7vPjPfY:{uG9vxht3j:resolvedLinks2[2]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{pathVariables:{ZeppHvedt:\"privacy-policy\"},unresolvedPathSlugs:{ZeppHvedt:{collectionId:\"GRKcC83Kh\",collectionItemId:\"kajNukutG\"}},webPageId:\"mp3HjglbL\"},implicitPathVariables:undefined},{href:{pathVariables:{ZeppHvedt:\"privacy-policy\"},unresolvedPathSlugs:{ZeppHvedt:{collectionId:\"GRKcC83Kh\",collectionItemId:\"kajNukutG\"}},webPageId:\"mp3HjglbL\"},implicitPathVariables:undefined},{href:{pathVariables:{ZeppHvedt:\"privacy-policy\"},unresolvedPathSlugs:{ZeppHvedt:{collectionId:\"GRKcC83Kh\",collectionItemId:\"kajNukutG\"}},webPageId:\"mp3HjglbL\"},implicitPathVariables:undefined}],children:resolvedLinks3=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:28,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-11910bu-container\",layoutDependency:layoutDependency,layoutId:\"M9vevEXs2-container\",nodeId:\"M9vevEXs2\",rendersWithMotion:true,scopeId:\"eVkNOnl6N\",children:/*#__PURE__*/_jsx(NavLink,{height:\"100%\",id:\"M9vevEXs2\",JHaOVdQop:\"PRIVACY POLICY\",layoutId:\"M9vevEXs2\",n1_RZIWXD:\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",style:{height:\"100%\"},uG9vxht3j:resolvedLinks3[0],width:\"100%\",...addPropertyOverrides({oelTs5cnA:{uG9vxht3j:resolvedLinks3[1]},Pt7vPjPfY:{uG9vxht3j:resolvedLinks3[2]}},baseVariant,gestureVariant)})})})})]})]})]})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-zTIFV.framer-1pyieni, .framer-zTIFV .framer-1pyieni { display: block; }\",\".framer-zTIFV.framer-1s0vmvc { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 100px 0px 0px 0px; position: relative; width: 1200px; }\",\".framer-zTIFV .framer-1cfg1m5 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 80px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-zTIFV .framer-17gzsdl { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-zTIFV .framer-jpbzlc, .framer-zTIFV .framer-bs1l9q { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-zTIFV .framer-1aks0w { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-zTIFV .framer-1nq6n29 { flex: none; height: 298px; position: relative; width: 256px; }\",\".framer-zTIFV .framer-1ypt6f2 { flex: none; gap: 0px; height: 174px; overflow: hidden; position: relative; width: 245px; will-change: var(--framer-will-change-filter-override, filter); }\",\".framer-zTIFV .framer-jvdl3l { flex: none; gap: 0px; height: 327px; overflow: hidden; position: relative; width: 245px; will-change: var(--framer-will-change-filter-override, filter); }\",\".framer-zTIFV .framer-99bsjx { flex: none; gap: 0px; height: 249px; overflow: hidden; position: relative; width: 245px; will-change: var(--framer-will-change-filter-override, filter); }\",\".framer-zTIFV .framer-1vaufzg { flex: none; gap: 0px; height: 139px; overflow: hidden; position: relative; width: 255px; will-change: var(--framer-will-change-filter-override, filter); }\",\".framer-zTIFV .framer-6vosfq { flex: none; gap: 0px; height: 297px; overflow: hidden; position: relative; width: 255px; will-change: var(--framer-will-change-filter-override, filter); }\",\".framer-zTIFV .framer-qmyggp { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 40px; height: min-content; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-zTIFV .framer-sgkpdz { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-zTIFV .framer-rokp2n { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-zTIFV .framer-z589q4 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-zTIFV .framer-17gl7xp, .framer-zTIFV .framer-1yjfbku, .framer-zTIFV .framer-1dyklro { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-zTIFV .framer-111kupa, .framer-zTIFV .framer-15oi527, .framer-zTIFV .framer-1temkob { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 32px); position: relative; width: 32px; }\",\".framer-zTIFV .framer-riek8t { 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: 16px 48px 16px 48px; position: relative; width: 100%; }\",\".framer-zTIFV .framer-1rft6s9 { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 32px; height: min-content; justify-content: flex-end; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-zTIFV .framer-1m19y89-container, .framer-zTIFV .framer-1m0tf0y-container, .framer-zTIFV .framer-1xwn2b0-container, .framer-zTIFV .framer-11910bu-container { flex: none; height: 28px; position: relative; width: auto; }\",\".framer-zTIFV.framer-v-l8hk9n.framer-1s0vmvc { width: 810px; }\",\".framer-zTIFV.framer-v-l8hk9n .framer-riek8t { padding: 16px 24px 16px 24px; }\",\".framer-zTIFV.framer-v-l8hk9n .framer-1rft6s9 { gap: 24px; }\",\".framer-zTIFV.framer-v-1nuff7i.framer-1s0vmvc { padding: 64px 0px 0px 0px; width: 390px; }\",\".framer-zTIFV.framer-v-1nuff7i .framer-1cfg1m5 { gap: 48px; }\",\".framer-zTIFV.framer-v-1nuff7i .framer-1nq6n29 { height: 169px; width: 145px; }\",\".framer-zTIFV.framer-v-1nuff7i .framer-1ypt6f2 { height: 98px; width: 139px; }\",\".framer-zTIFV.framer-v-1nuff7i .framer-jvdl3l { height: 185px; width: 139px; }\",\".framer-zTIFV.framer-v-1nuff7i .framer-99bsjx { height: 141px; width: 139px; }\",\".framer-zTIFV.framer-v-1nuff7i .framer-1vaufzg { height: 79px; width: 144px; }\",\".framer-zTIFV.framer-v-1nuff7i .framer-6vosfq { height: 168px; width: 144px; }\",\".framer-zTIFV.framer-v-1nuff7i .framer-111kupa { height: var(--framer-aspect-ratio-supported, 200px); }\",\".framer-zTIFV.framer-v-1nuff7i .framer-15oi527, .framer-zTIFV.framer-v-1nuff7i .framer-1temkob { height: var(--framer-aspect-ratio-supported, 24px); }\",\".framer-zTIFV.framer-v-1nuff7i .framer-riek8t { flex-direction: column; gap: 12px; justify-content: flex-start; }\",\".framer-zTIFV.framer-v-1nuff7i .framer-bs1l9q { order: 1; }\",\".framer-zTIFV.framer-v-1nuff7i .framer-1rft6s9 { align-content: center; align-items: center; flex: none; gap: 24px; justify-content: center; order: 0; width: 100%; }\",...sharedStyle.css,...sharedStyle1.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 986\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"oelTs5cnA\":{\"layout\":[\"fixed\",\"auto\"]},\"Pt7vPjPfY\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramereVkNOnl6N=withCSS(Component,css,\"framer-zTIFV\");export default FramereVkNOnl6N;FramereVkNOnl6N.displayName=\"Footer\";FramereVkNOnl6N.defaultProps={height:986,width:1200};addPropertyControls(FramereVkNOnl6N,{variant:{options:[\"VqA8ehCWK\",\"oelTs5cnA\",\"Pt7vPjPfY\"],optionTitles:[\"Desktop\",\"Tablet\",\"Mobile\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramereVkNOnl6N,[{explicitInter:true,fonts:[{cssFamilyName:\"Gilda Display\",source:\"google\",style:\"normal\",uiFamilyName:\"Gilda Display\",url:\"https://fonts.gstatic.com/s/gildadisplay/v20/t5tmIRoYMoaYG0WEOh7HwMeR7TzFrpOHYh4.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/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\"}]},...InstagramLogoFonts,...YoutubeLogoFonts,...WhatsappLogoFonts,...NavLinkFonts,...getFontsFromSharedStyle(sharedStyle.fonts),...getFontsFromSharedStyle(sharedStyle1.fonts)],{supportsExplicitInterCodegen:true});FramereVkNOnl6N.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(NavLink,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramereVkNOnl6N\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerIntrinsicHeight\":\"986\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"oelTs5cnA\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"Pt7vPjPfY\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicWidth\":\"1200\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef,useState,useCallback}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{throttle}from\"lodash-es\";/**\n * @framerDisableUnlink\n */export default function FC_CartCounter(props){if(RenderTarget.current()===RenderTarget.canvas){// Always show in canvas (shows placeholder \"0\")\nreturn /*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:\"100%\",height:\"100%\"},children:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.color,backgroundColor:props.backgroundColor,...props.border,borderRadius:props.radius,padding:props.padding,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",margin:0,width:\"100%\",height:props.fixedHeight?`${props.heightPx}px`:\"100%\",lineHeight:1,fontSize:props.font?.fontSize||\"inherit\"},children:\"0\"})});}else{const[isBrowser,setIsBrowser]=useState(false);const[cartItemCount,setCartItemCount]=useState(0);const[isLoading,setIsLoading]=useState(true);const[isVisible,setIsVisible]=useState(false);const isFetching=useRef(false);const initialLoadDone=useRef(false);// Set isBrowser to true once component mounts\nuseEffect(()=>{setIsBrowser(true);},[]);// Helper function to wait until a condition is true\nconst waitForCondition=useCallback((conditionFn,checkInterval=100,timeout=1e4)=>{return new Promise((resolve,reject)=>{const startTime=Date.now();const checkCondition=()=>{if(conditionFn()){resolve();}else if(Date.now()-startTime>=timeout){reject(new Error(\"Condition not met within timeout\"));}else{setTimeout(checkCondition,checkInterval);}};checkCondition();});},[]);const fetchCartAndUpdateCount=useCallback(async cartId=>{if(isFetching.current){return;}isFetching.current=true;// Only set loading state on initial load\nif(!initialLoadDone.current){setIsLoading(true);setIsVisible(false);}try{await waitForCondition(()=>window.shopXtools&&window.shopXtools.fetchCart);const cartData=await window.shopXtools.fetchCart(cartId);if(cartData&&cartData.lines&&cartData.lines.edges&&cartData.lines.edges.length>0){const itemCount=cartData.lines.edges.reduce((total,edge)=>total+(edge.node.quantity||0),0);setCartItemCount(itemCount);}else{setCartItemCount(0);// Show immediately if no items\nsetIsLoading(false);setIsVisible(true);initialLoadDone.current=true;}}catch(error){setCartItemCount(0);// Show immediately if error\nsetIsLoading(false);setIsVisible(true);initialLoadDone.current=true;}finally{isFetching.current=false;// Only handle visibility on initial load with items\nif(!initialLoadDone.current){setIsLoading(false);initialLoadDone.current=true;// Add a small delay before showing the counter for smoother transition\nsetTimeout(()=>setIsVisible(true),50);}}},[waitForCondition]);const handleCartUpdate=useCallback(throttle(async()=>{if(!isBrowser)return;// Don't run on server-side\nlet cartId=window[\"shopXtools\"]?.cart?.id;if(!cartId){try{cartId=localStorage.getItem(\"shopX_cart_id\");}catch(error){// Error accessing localStorage\n}}if(cartId){await fetchCartAndUpdateCount(cartId);}else{setCartItemCount(0);// Show immediately if no cart\nsetIsLoading(false);setIsVisible(true);initialLoadDone.current=true;}},1e3),[fetchCartAndUpdateCount,isBrowser]);useEffect(()=>{if(!isBrowser)return;// Don't run on server-side\nwindow.addEventListener(\"shopXtools-cart-update\",handleCartUpdate);handleCartUpdate();return()=>{window.removeEventListener(\"shopXtools-cart-update\",handleCartUpdate);};},[handleCartUpdate,isBrowser]);if(props.hideIf0&&cartItemCount===0){return null;}return /*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:\"100%\",height:\"100%\"},children:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.color,backgroundColor:props.backgroundColor,...props.border,borderRadius:props.radius,padding:props.padding,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",margin:0,width:\"100%\",height:props.fixedHeight?`${props.heightPx}px`:\"100%\",opacity:isVisible?1:0,transition:\"opacity 0.3s ease-in-out\",visibility:isLoading?\"hidden\":\"visible\",lineHeight:1,fontSize:props.font?.fontSize||\"inherit\"},children:isBrowser?cartItemCount.toString():\"0\"})});}}FC_CartCounter.defaultProps={hideIf0:false,font:undefined,color:\"#000\",backgroundColor:\"#FFFFFF00\",backgroundOpacity:0,border:{borderTopWidth:0,borderRightWidth:0,borderBottomWidth:0,borderLeftWidth:0,borderStyle:\"solid\",borderColor:\"rgba(0, 0, 0, 0.5)\"},radius:0,padding:0,fixedHeight:false,heightPx:40};addPropertyControls(FC_CartCounter,{hideIf0:{type:ControlType.Boolean,title:\"When 0\",defaultValue:false,enabledTitle:\"Hide\",disabledTitle:\"Show\",description:\"For browser only, canvas will always display 0.\"},font:{type:ControlType.Font,controls:\"extended\",title:\"Font\"},color:{type:ControlType.Color,defaultValue:\"#000\",title:\"Color\"},backgroundColor:{type:ControlType.Color,title:\"BG\",defaultValue:\"rgba(255, 255, 255, 0)\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderTopWidth:0,borderRightWidth:0,borderBottomWidth:0,borderLeftWidth:0,borderStyle:\"solid\",borderColor:\"rgba(0, 0, 0, 0.5)\"}},/*     fixedHeight: {\n        type: ControlType.Boolean,\n        title: \"Height\",\n        defaultValue: false,\n        enabledTitle: \"Fixed\",\n        disabledTitle: \"Fit\",\n    },\n    heightPx: {\n        type: ControlType.Number,\n        title: \"Height\",\n        defaultValue: 40,\n        min: 0,\n        hidden: ({ fixedHeight }) => !fixedHeight,\n    }, */padding:{type:ControlType.FusedNumber,title:\"Padding\",defaultValue:0,toggleKey:\"paddingPerSide\",toggleTitles:[\"All\",\"Sides\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},radius:{type:ControlType.FusedNumber,title:\"Radius\",defaultValue:0,toggleKey:\"radiusPerCorner\",toggleTitles:[\"All\",\"Corners\"],valueKeys:[\"topLeft\",\"topRight\",\"bottomRight\",\"bottomLeft\"],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"],min:0}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_CartCounter\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_CartCounter.map","import{fontStore}from\"framer\";fontStore.loadWebFontsFromSelectors([\"GF;Inter-500\"]);export const fonts=[{family:\"Inter\",moduleAsset:{localModuleIdentifier:\"local-module:css/TIzKiGcOB:default\",url:\"https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZhrib2Bg-4.ttf\"},style:\"normal\",url:\"https://fonts.gstatic.com/s/inter/v12/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZhrib2Bg-4.ttf\",weight:\"500\"}];export const css=['.framer-PGxOy .framer-styles-preset-j385k6:not(.rich-text-wrapper), .framer-PGxOy .framer-styles-preset-j385k6.rich-text-wrapper p { --framer-font-family: \"Inter\", sans-serif; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-weight: 500; --framer-letter-spacing: -0.03em; --framer-line-height: 100%; --framer-paragraph-spacing: 16px; --framer-text-alignment: left; --framer-text-color: var(--token-c734a28a-9fe9-4aa2-97ea-e240e7bd3071, #000000); --framer-text-decoration: none; --framer-text-transform: none; }'];export const className=\"framer-PGxOy\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (b084a7c)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,RichText,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import*as sharedStyle from\"https://framerusercontent.com/modules/RBhrmJSayFIEr01hpPFn/uknigYuJhd1icsEQ9e0L/TIzKiGcOB.js\";const cycleOrder=[\"q765oO3yC\"];const variantClassNames={q765oO3yC:\"framer-v-kixgj4\"};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 getProps=({height,id,text,width,...props})=>{var ref;return{...props,U2bckk9Ci:(ref=text!==null&&text!==void 0?text:props.U2bckk9Ci)!==null&&ref!==void 0?ref:\"<p>$0 USD</p>\"};};const createLayoutDependency=(props,variants)=>variants.join(\"-\")+props.layoutDependency;const Component=/*#__PURE__*/ React.forwardRef(function(props,ref){const{activeLocale}=useLocaleInfo();const{style,className,layoutId,variant,U2bckk9Ci,...restProps}=getProps(props);const{baseVariant,classNames,gestureVariant,setGestureState,setVariant,transition,variants}=useVariantState({cycleOrder,defaultVariant:\"q765oO3yC\",transitions,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const defaultLayoutId=React.useId();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-PixXK\",sharedStyle.className,classNames),style:{display:\"contents\"},children:/*#__PURE__*/ _jsx(Transition,{value:transition,children:/*#__PURE__*/ _jsx(motion.div,{...restProps,className:cx(\"framer-kixgj4\",className),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"q765oO3yC\",ref:ref,style:{...style},children:/*#__PURE__*/ _jsx(RichText,{__fromCanvasComponent:true,children:U2bckk9Ci,className:\"framer-1iq4zis\",layoutDependency:layoutDependency,layoutId:\"ZBWxU4W6n\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\",\"--framer-paragraph-spacing\":\"0px\"},stylesPresetsClassNames:{p:\"framer-styles-preset-j385k6\"},verticalAlignment:\"top\",withExternalLayout:true})})})})});});const css=['.framer-PixXK [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-PixXK .framer-1n4dbv2 { display: block; }\",\".framer-PixXK .framer-kixgj4 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px 0px 0px 0px; position: relative; width: min-content; }\",\".framer-PixXK .framer-1iq4zis { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\"@supports (background: -webkit-named-image(i)) and (not (font-palette:dark)) { .framer-PixXK .framer-kixgj4 { gap: 0px; } .framer-PixXK .framer-kixgj4 > * { margin: 0px; margin-left: calc(0px / 2); margin-right: calc(0px / 2); } .framer-PixXK .framer-kixgj4 > :first-child { margin-left: 0px; } .framer-PixXK .framer-kixgj4 > :last-child { margin-right: 0px; } }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 16\n * @framerIntrinsicWidth 55.5\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"U2bckk9Ci\":\"text\"}\n */ const FrameratkMxVAKb=withCSS(Component,css,\"framer-PixXK\");export default FrameratkMxVAKb;FrameratkMxVAKb.displayName=\"shopX / cartSubtotal\";FrameratkMxVAKb.defaultProps={height:16,width:55.5};addPropertyControls(FrameratkMxVAKb,{U2bckk9Ci:{defaultValue:\"<p>$0 USD</p>\",title:\"text\",type:ControlType.RichText}});addFonts(FrameratkMxVAKb,[...sharedStyle.fonts]);\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameratkMxVAKb\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerVariables\":\"{\\\"U2bckk9Ci\\\":\\\"text\\\"}\",\"framerIntrinsicHeight\":\"16\",\"framerIntrinsicWidth\":\"55.5\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./atkMxVAKb.map","/*\n * shopX / cartSubtotal\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/Xz56MXJ2ZtTgFtT1VmZz/jsrZt5LjumizHw76NuWB/atkMxVAKb.js\"\nexport { default } from \"https://framerusercontent.com/modules/Xz56MXJ2ZtTgFtT1VmZz/jsrZt5LjumizHw76NuWB/atkMxVAKb.js\"\n","export const currencyMaps={AED:\"د.إ\",AFN:\"Af\",ALL:\"L\",AMD:\"֏\",ANG:\"ƒ\",AOA:\"Kz\",ARS:\"$\",AUD:\"$\",AWG:\"ƒ\",AZN:\"₼\",BAM:\"KM\",BBD:\"$\",BDT:\"৳\",BGN:\"лв\",BHD:\"د.ب\",BIF:\"FBu\",BMD:\"$\",BND:\"$\",BOB:\"Bs.\",BRL:\"R$\",BSD:\"$\",BTN:\"Nu.\",BWP:\"P\",BYN:\"Br\",BZD:\"BZ$\",CAD:\"$\",CDF:\"FC\",CHF:\"Fr\",CLP:\"$\",CNY:\"\\xa5\",COP:\"$\",CRC:\"₡\",CVE:\"$\",CZK:\"Kč\",DJF:\"Fdj\",DKK:\"kr\",DOP:\"RD$\",DZD:\"د.ج\",EGP:\"\\xa3\",ERN:\"Nfk\",ETB:\"Br\",EUR:\"€\",FJD:\"$\",FKP:\"\\xa3\",GBP:\"\\xa3\",GEL:\"₾\",GHS:\"₵\",GIP:\"\\xa3\",GMD:\"D\",GNF:\"FG\",GTQ:\"Q\",GYD:\"$\",HKD:\"$\",HNL:\"L\",HRK:\"kn\",HTG:\"G\",HUF:\"Ft\",IDR:\"Rp\",ILS:\"₪\",INR:\"₹\",IQD:\"ع.د\",IRR:\"﷼\",ISK:\"kr\",JEP:\"\\xa3\",JMD:\"J$\",JOD:\"د.ا\",JPY:\"\\xa5\",KES:\"KSh\",KGS:\"сом\",KHR:\"៛\",KID:\"$\",KMF:\"CF\",KRW:\"₩\",KWD:\"د.ك\",KYD:\"$\",KZT:\"₸\",LAK:\"₭\",LBP:\"\\xa3\",LKR:\"රු\",LRD:\"$\",LSL:\"L\",LTL:\"Lt\",LVL:\"Ls\",LYD:\"ل.د\",MAD:\"د.م.\",MDL:\"MDL\",MGA:\"Ar\",MKD:\"ден\",MMK:\"Ks\",MNT:\"₮\",MOP:\"MOP$\",MRU:\"UM\",MUR:\"₨\",MVR:\"ރ\",MWK:\"MK\",MXN:\"$\",MYR:\"RM\",MZN:\"MT\",NAD:\"$\",NGN:\"₦\",NIO:\"C$\",NOK:\"kr\",NPR:\"रू\",NZD:\"$\",OMR:\"ر.ع.\",PAB:\"B/.\",PEN:\"S/.\",PGK:\"K\",PHP:\"₱\",PKR:\"₨\",PLN:\"zł\",PYG:\"₲\",QAR:\"ر.ق\",RON:\"lei\",RSD:\"Дин.\",RUB:\"₽\",RWF:\"FRw\",SAR:\"ر.س\",SBD:\"$\",SCR:\"₨\",SDG:\"ج.س.\",SEK:\"kr\",SGD:\"$\",SHP:\"\\xa3\",SLL:\"Le\",SOS:\"Sh\",SRD:\"$\",SSP:\"\\xa3\",STN:\"Db\",SYP:\"\\xa3\",SZL:\"E\",THB:\"฿\",TJS:\"ЅМ\",TMT:\"T\",TND:\"د.ت\",TOP:\"T$\",TRY:\"₺\",TTD:\"TT$\",TWD:\"NT$\",TZS:\"TSh\",UAH:\"₴\",UGX:\"USh\",USD:\"$\",UYU:\"$\",UZS:\"so'm\",VED:\"Bs.S.\",VES:\"Bs.\",VND:\"₫\",VUV:\"VT\",WST:\"T\",XAF:\"FCFA\",XCD:\"$\",XOF:\"CFA\",XPF:\"₣\",XXX:\"\",YER:\"﷼\",ZAR:\"R\",ZMW:\"ZK\",BYR:\"Br\",STD:\"Db\",VEF:\"Bs.\"};// Explicit list of currencies where the symbol is the same as the code\n// or where browsers commonly display the code instead of a distinct symbol\nexport const knownCurrenciesWithCodeAsSymbol=[\"CHF\",\"PLN\",\"SEK\",\"NOK\",\"DKK\",\"CZK\",\"HUF\",\"RON\",\"HRK\",\"BGN\",\"ISK\",\"MDL\",\"BYN\",\"KZT\",\"AMD\",\"UZS\",\"TJS\",\"KGS\",\"MNT\",\"GEL\",\"AFN\",\"MRU\",\"RWF\",\"XAF\",\"XOF\",\"XPF\"];\nexport const __FramerMetadata__ = {\"exports\":{\"currencyMaps\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"knownCurrenciesWithCodeAsSymbol\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./currencyMaps.map","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useMemo,useState}from\"react\";import ShopXCartSubtotal from\"https://framer.com/m/shopX-cartSubtotal-pv7y.js\";import{addPropertyControls,ControlType}from\"framer\";import{get}from\"lodash-es\";import{knownCurrenciesWithCodeAsSymbol}from\"https://framerusercontent.com/modules/k9s4cejdkBGDjmzudhzM/18cq93eooqM4YmdbL7E2/currencyMaps.js\";import{getLocaleFromCountry}from\"https://framerusercontent.com/modules/vC6fzbfO83MgBPIhn5zl/DUlbmWuOELzEUenVmv3G/locales.js\";import{RenderTarget}from\"framer\";// Helper function to check if a currency's symbol is the same as its code\nconst isCurrencySymbolSameAsCode=currencyCode=>{// For some currencies like CHF, the browser might use the code as the symbol\nif(!currencyCode)return false;if(knownCurrenciesWithCodeAsSymbol.includes(currencyCode)){return true;}try{const formatted=new Intl.NumberFormat(undefined,{style:\"currency\",currency:currencyCode,currencyDisplay:\"narrowSymbol\"}).format(0);// Remove digits, decimal points, and common formatting characters\nconst cleanFormatted=formatted.replace(/[0-9.,\\s]/g,\"\");// Check if what remains is the currency code\nreturn cleanFormatted===currencyCode;}catch(e){return false;}};/**\n * @framerDisableUnlink\n */export default function FC_CartSubtotal(props){const{format:{showCurrency,showSymbol,showDecimals,currencyCode:previewCurrencyCode}={}}=props;const[subtotal,setSubtotal]=useState(0);const[cart,setCart]=useState(null);const[selectedCurrency,setSelectedCurrency]=useState(\"\");const[selectedCountryCode,setSelectedCountryCode]=useState(\"\");const[selectedCountry,setSelectedCountry]=useState(\"\");const[currencyConfig,setCurrencyConfig]=useState(()=>{// Initialize with window values if available\nif(typeof window!==\"undefined\"){const position=window?.__FcCurrencyConfigs?.currencyPosition||\"Before\";const initialConfig={position:position,showCode:position!==\"Hide\",symbol:window?.__FcCurrencyConfigs?.currencySymbol||\"$\"};//console.log('Initial currency config state:', initialConfig, window?.__FcCurrencyConfigs);\nreturn initialConfig;}return{position:\"Before\",showCode:false,symbol:\"$\"};});const isBrowser=typeof window!==\"undefined\";// Initialize currency from localStorage on page load\nuseEffect(()=>{if(!isBrowser)return;const storedCurrency=localStorage.getItem(\"selectedCurrency\");const storedCountryCode=localStorage.getItem(\"selectedCountryCode\");const storedCountry=localStorage.getItem(\"selectedCountry\");setSelectedCurrency(storedCurrency||\"USD\");setSelectedCountryCode(storedCountryCode||\"US\");setSelectedCountry(storedCountry||\"United States\");// console.log(\"[FC_CartSubtotal] Initial Currency State:\", {\n//     currency: storedCurrency\n// })\n},[isBrowser]);// Debug current currency config\n// useEffect(() => {\n//     console.log('Currency config changed:', currencyConfig);\n// }, [currencyConfig]);\n// Add currency settings listener\nuseEffect(()=>{if(!isBrowser)return;function updateCurrencyConfig(position,symbol){//console.log('Updating currency config with:', { position, symbol });\nconst newConfig={position:position||\"Before\",showCode:position!==\"Hide\",symbol:symbol||\"$\"};//console.log('New currency config:', newConfig);\nsetCurrencyConfig(newConfig);}// Handle currency settings updates\nconst handleCurrencySettingsUpdate=e=>{//console.log('Currency update event received:', e.detail);\nif(!e.detail?.current){//console.log('Invalid currency update event:', e);\nreturn;}updateCurrencyConfig(e.detail.current.currencyPosition,e.detail.current.currencySymbol);};// Initial setup\nconst currentPosition=window.__FcCurrencyConfigs?.currencyPosition;const currentSymbol=window.__FcCurrencyConfigs?.currencySymbol;//console.log('Initial currency values:', { currentPosition, currentSymbol });\nupdateCurrencyConfig(currentPosition,currentSymbol);// Add event listener\ndocument.addEventListener(\"currency__settings-updated\",handleCurrencySettingsUpdate);//console.log('Currency event listener added');\n// Listen for currency changes\nconst handleCurrencyChange=event=>{//console.log(\"[FC_CartSubtotal] Currency Change Event:\", event.detail);\nconst{currency,countryCode,country}=event.detail;setSelectedCurrency(currency);setSelectedCountryCode(countryCode);setSelectedCountry(country);};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{document.removeEventListener(\"currency__settings-updated\",handleCurrencySettingsUpdate);window.removeEventListener(\"currency_changed\",handleCurrencyChange);//console.log('Currency event listeners removed');\n};},[isBrowser]);// // Cart calculation effect\nuseEffect(()=>{if(!isBrowser)return;const logCartDetails=()=>{const cart=get(window,\"shopXtools.cart\");// Log the entire cart object\n//console.log('Cart Data:', cart);\nif(cart){setCart(cart);// Log each line item in the cart\nconst cartItems=get(cart,\"lines.edges\",[]);// console.log(\n//     'Cart Items:',\n//     cartItems.map((edge) => {\n//         const item = edge.node;\n//         return {\n//             title: get(item, 'merchandise.product.title', 'Unknown'),\n//             variantId: get(item, 'merchandise.id', ''),\n//             price: get(item, 'cost.totalAmount.amount') ||\n//                    get(item, 'cost.subtotalAmount.amount') ||\n//                    get(item, 'merchandise.price.amount', '0'),\n//             quantity: get(item, 'quantity', 0),\n//             currencyCode: get(item, 'cost.totalAmount.currencyCode') ||\n//                           get(item, 'merchandise.price.currencyCode', 'USD'),\n//         };\n//     })\n// );\n// Log the subtotal\nconst subtotal=parseFloat(get(cart,\"cost.subtotalAmount.amount\",\"0\"));//console.log('Parsed Subtotal (to be set in state):', subtotal);\nsetSubtotal(subtotal);}else{// console.log(\"No cart data available.\")\n}};// Log cart details on load\nlogCartDetails();// Re-log cart details on cart update events\nwindow.addEventListener(\"shopXtools-cart-update\",logCartDetails);return()=>window.removeEventListener(\"shopXtools-cart-update\",logCartDetails);},[isBrowser]);const _currencyCode=useMemo(()=>{if(!isBrowser)return\"USD\";// Try different paths to get currency code\nconst cartCurrencyCode=get(window,\"shopXtools.cart.cost.subtotalAmount.currencyCode\",\"USD\");//console.log('Currency Code in _currencyCode:', cartCurrencyCode);\nreturn selectedCurrency||cartCurrencyCode;},[isBrowser,cart,selectedCurrency]);const showMockValues=useMemo(()=>subtotal===0&&isBrowser&&window.location.origin.endsWith(\"framercanvas.com\"),[subtotal,isBrowser]);// Common function to format price based on options\nconst formatPriceWithOptions=(numericPrice,currCode)=>{const symbolSameAsCode=isCurrencySymbolSameAsCode(currCode);// Get locale from selected country code\nconst locale=getLocaleFromCountry(selectedCountryCode);// Log browser user agent for debugging iOS-specific issues\n// if (isBrowser) {\n//     console.log(\"[FC_CartSubtotal] Format debug:\", {\n//         userAgent: navigator.userAgent,\n//         isCurrencySymbolSameAsCode: symbolSameAsCode,\n//         currencyCode: currCode,\n//         selectedCountryCode,\n//         locale,\n//         showSymbol,\n//         showCurrency,\n//         showDecimals,\n//     })\n// }\n// Determine if we should show decimals based on the setting\nconst shouldShowDecimals=()=>{if(showDecimals===\"Always show\")return true;if(showDecimals===\"Never show\")return false;if(showDecimals===\"Hide when .00\"){// Check if the decimal part is zero\nreturn numericPrice%1!==0;}return true// Default fallback for boolean value\n;};const decimalDigits=shouldShowDecimals()?2:0;// If showing neither symbol nor code, just format the number\nif(!showSymbol&&!showCurrency){const formattedNumber=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);//console.log('Formatted Number (No Symbol or Currency):', formattedNumber);\nreturn formattedNumber;}// Special case for USD to prevent \"US$\" display in Safari iOS\nif(currCode===\"USD\"&&showSymbol){// Check if running on iOS device\nconst isIOS=isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream;// Format USD manually to avoid the iOS \"US$\" prefix\nif(isIOS){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);if(!showCurrency){return`$${number}`// Just \"$50\" format\n;}else{return`$${number} USD`// \"$50 USD\" format\n;}}else{// For non-iOS devices, continue with normal formatting but use\n// a more controlled approach to ensure consistency\nif(!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}else{const withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} USD`;}}}// For currencies where symbol is same as code (like CHF)\nif(symbolSameAsCode){// If showing currency code, always use code-first format and ignore symbol\nif(showCurrency&&!showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showSymbol&&!showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showCurrency&&showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);return`${currCode} ${number}`;}}// For currencies with distinct symbols (like USD with $)\n// If showing only the code (no symbol)\nif(!showSymbol&&showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);// For normal currencies, show code after the number\nreturn`${number} ${currCode}`;}// If showing only the symbol (no code)\nif(showSymbol&&!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}// If showing both symbol and code\nconst withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} ${currCode}`;};const text=useMemo(()=>{if(!isBrowser)return\"\";// For canvas view, handle the display options directly\nif(RenderTarget.current()===RenderTarget.canvas||showMockValues){const mockAmount=150;const currentCurrencyCode=previewCurrencyCode||\"USD\";return formatPriceWithOptions(mockAmount,currentCurrencyCode);}// For live view, use the actual subtotal\nreturn formatPriceWithOptions(subtotal,_currencyCode);},[isBrowser,showMockValues,subtotal,_currencyCode,showCurrency,showSymbol,showDecimals,previewCurrencyCode,props.format]);if(!isBrowser){return /*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-flex\"}});}// For debugging\n// console.log('Rendering FC_CartSubtotal with:', {\n//     subtotal,\n//     text,\n//     currencyConfig,\n//     props\n// })\n// Render a basic div if ShopXCartSubtotal is not available\nif(typeof ShopXCartSubtotal===\"undefined\"){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",textAlign:\"right\"},children:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.color,margin:0},children:text})});}return /*#__PURE__*/_jsx(ShopXCartSubtotal,{...props,text:/*#__PURE__*/_jsx(\"p\",{style:{...props.font,color:props.color,margin:0},children:text}),style:{width:\"100%\"}});}FC_CartSubtotal.defaultProps={format:{showCurrency:false,showSymbol:true,currencyCode:\"USD\",showDecimals:\"Always show\"}};addPropertyControls(FC_CartSubtotal,{format:{type:ControlType.Object,title:\"Format\",controls:{showSymbol:{type:ControlType.Boolean,title:\"Symbol\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"$, \\xa3, €, etc.\"},showCurrency:{type:ControlType.Boolean,title:\"Code\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"USD, EUR, CHF, etc.\"},showDecimals:{type:ControlType.Enum,title:\"Decimals\",defaultValue:\"Always show\",options:[\"Always show\",\"Never show\",\"Hide when .00\"],optionTitles:[\"Always show\",\"Never show\",\"Hide when .00\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},currencyCode:{type:ControlType.Enum,title:\"Preview\",defaultValue:\"USD\",options:[\"USD\",\"EUR\",\"GBP\",\"CHF\",\"JPY\",\"CAD\",\"AUD\",\"CNY\",\"HKD\",\"NZD\",\"SEK\",\"KRW\",\"SGD\",\"NOK\",\"MXN\",\"INR\",\"RUB\",\"ZAR\",\"TRY\",\"BRL\",\"TWD\",\"DKK\",\"PLN\",\"THB\",\"IDR\",\"HUF\",\"CZK\",\"ILS\",\"CLP\",\"PHP\",\"AED\",\"COP\",\"SAR\",\"MYR\",\"RON\"],description:\"Currency on your site is automatic, this is only shown in canvas preview.\"}}},font:{type:ControlType.Font,controls:\"extended\",title:\"Font\"},color:{type:ControlType.Color,defaultValue:\"#000\",title:\"Color\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_CartSubtotal\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (8f9ffef)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask='url(\\'data:image/svg+xml,<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 12 0 L 0 12 M 0 0 L 12 12\" fill=\"transparent\" height=\"12px\" id=\"WXnhr_sBZ\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"miter\" stroke-miterlimit=\"10\" stroke-width=\"1.5\" stroke=\"var(--1hq5eo6, rgb(0,0,0))\" transform=\"translate(2 2)\" width=\"12px\"/></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,rbdZVdoTC:color??props.rbdZVdoTC??\"rgb(0, 0, 0)\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,rbdZVdoTC,...restProps}=getProps(props);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-e6YFz\",className),layoutId:layoutId,ref:ref,style:{\"--1hq5eo6\":rbdZVdoTC,...style}});});const css=[`.framer-e6YFz { -webkit-mask: ${mask}; aspect-ratio: 1; background-color: var(--1hq5eo6); mask: ${mask}; width: 16px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 16\n * @framerIntrinsicHeight 16\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"rbdZVdoTC\":\"color\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"x\",\"color\":{\"type\":\"variable\",\"value\":\"1hq5eo6\"},\"set\":{\"localId\":\"vectorSet/vTOhJ9WvM\",\"id\":\"vTOhJ9WvM\",\"moduleId\":\"OhRPi9Rz92nydb62YfTP\"}}\n */const Icon=withCSS(Component,css,\"framer-e6YFz\");Icon.displayName=\"x\";export default Icon;addPropertyControls(Icon,{rbdZVdoTC:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Color\",type:ControlType.Color}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerVector\":\"{\\\"name\\\":\\\"x\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"1hq5eo6\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/vTOhJ9WvM\\\",\\\"id\\\":\\\"vTOhJ9WvM\\\",\\\"moduleId\\\":\\\"OhRPi9Rz92nydb62YfTP\\\"}}\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerVariables\":\"{\\\"rbdZVdoTC\\\":\\\"color\\\"}\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicWidth\":\"16\",\"framerIntrinsicHeight\":\"16\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useCallback,useRef,useEffect,useState}from\"react\";// @ts-ignore - Provided by Framer runtime in plugin environment\nimport{addPropertyControls,ControlType,RenderTarget}from\"framer\";/**\n * @framerDisableUnlink\n *//**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicHeight Auto\n */function FC_CartStateController(props){const{Populated,Empty}=props;const[isBrowser,setIsBrowser]=useState(false);const[cartItems,setCartItems]=useState([]);const isFetching=useRef(false);const containerRef=useRef(null);// Set isBrowser to true once component mounts\nuseEffect(()=>{setIsBrowser(true);},[]);const fetchCartFromShopify=useCallback(async cartId=>{if(isFetching.current||!isBrowser)return;isFetching.current=true;try{const cartData=await window?.shopXtools?.fetchCart?.(cartId);if(cartData){setCartItems(cartData.lines?.edges||[]);}else{setCartItems([]);}}catch(error){// Error handling: Failed to fetch cart\nsetCartItems([]);}finally{isFetching.current=false;}},[isBrowser]);const handleCartUpdate=useCallback(async()=>{if(!isBrowser)return;let cartId;try{cartId=window?.shopXtools?.cart?.id;if(!cartId){cartId=localStorage.getItem(\"shopX_cart_id\");}}catch(error){// Error handling: Unable to access cart ID\nreturn;}if(cartId){await fetchCartFromShopify(cartId);}else{setCartItems([]);}},[fetchCartFromShopify,isBrowser]);useEffect(()=>{if(!isBrowser)return;handleCartUpdate();window.addEventListener(\"shopXtools-cart-update\",handleCartUpdate);return()=>window.removeEventListener(\"shopXtools-cart-update\",handleCartUpdate);},[handleCartUpdate,isBrowser]);// Apply 100% width and height to the first child element\nuseEffect(()=>{if(containerRef.current?.firstElementChild){const child=containerRef.current.firstElementChild;child.style.width=\"100%\";child.style.height=\"100%\";}});let content=null;const isCanvas=RenderTarget.current()===RenderTarget.canvas;const isEmptyView=isCanvas?true:!isBrowser||cartItems.length===0;content=isEmptyView?Empty?.[0]:Populated?.[0];if(!content){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\"}});}return /*#__PURE__*/_jsx(\"div\",{ref:containerRef,style:{width:\"100%\",height:\"100%\"},children:content},isEmptyView?\"empty\":\"populated\");}FC_CartStateController.defaultProps={Populated:null,Empty:null};addPropertyControls(FC_CartStateController,{Populated:{type:ControlType.ComponentInstance,title:\"Populated State\"},Empty:{type:ControlType.ComponentInstance,title:\"Empty State\"}});export default FC_CartStateController;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_CartStateController\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any\",\"framerIntrinsicHeight\":\"Auto\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_CartStateController.map","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import React,{useCallback,useRef,useEffect,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{get,throttle}from\"lodash-es\";import{removeLineMutation,updatelineMutation,updatelineMutationNoPlans,removeLineMutationNoPlans,getProductMetafields}from\"https://framerusercontent.com/modules/yiRfl1JCGhIBUL31WVDk/wupS2XmBAHu1kBQNv9pi/mutations_v2.js\";import{knownCurrenciesWithCodeAsSymbol}from\"https://framerusercontent.com/modules/k9s4cejdkBGDjmzudhzM/18cq93eooqM4YmdbL7E2/currencyMaps.js\";import{useIsBrowser}from\"https://framerusercontent.com/modules/ncBs5KPMI9I5GEta13fn/zGXDjuZapa1SGy6D8P5e/IsBrowser.js\";import{getLocaleFromCountry}from\"https://framerusercontent.com/modules/vC6fzbfO83MgBPIhn5zl/DUlbmWuOELzEUenVmv3G/locales.js\";import{trackFacebookPixelRemoveFromCart}from\"https://framerusercontent.com/modules/6Zs9CjkPbKzHjoy8LK08/iqoIwmJw4hztafi4V4IV/Fb_pixel.js\";// Helper function to check if a currency's symbol is the same as its code\nconst isCurrencySymbolSameAsCode=currencyCode=>{// For some currencies like CHF, the browser might use the code as the symbol\nif(!currencyCode)return false;if(knownCurrenciesWithCodeAsSymbol.includes(currencyCode)){return true;}try{const formatted=new Intl.NumberFormat(undefined,{style:\"currency\",currency:currencyCode,currencyDisplay:\"narrowSymbol\"}).format(0);// Remove digits, decimal points, and common formatting characters\nconst cleanFormatted=formatted.replace(/[0-9.,\\s]/g,\"\");// Check if what remains is the currency code\nreturn cleanFormatted===currencyCode;}catch(e){return false;}};/**\n * @framerDisableUnlink\n */export default function FC_CartProductCard(props){const[cart,setCart]=useState({});const[cartItems,setCartItems]=useState([]);const[errorMessage,setErrorMessage]=useState(\"\");const isFetching=useRef(false);const[selectedCurrency,setSelectedCurrency]=useState(\"\");const[selectedCountryCode,setSelectedCountryCode]=useState(\"\");const[selectedCountry,setSelectedCountry]=useState(\"\");// const [subscriptionPrice, setSubscriptionPrice] = useState(null)\n// const [subscriptionPlan, setSubscriptionPlan] = useState(null)\nconst isBrowser=useIsBrowser();// Helper function to calculate current product quantity across all variants\nconst getCurrentProductQuantity=useCallback(productHandle=>{if(!cartItems||!productHandle)return 0;return cartItems.reduce((total,{node})=>{const lineProductHandle=node?.merchandise?.product?.handle;if(lineProductHandle===productHandle){return total+(node.quantity||0);}return total;},0);},[cartItems]);// Initialize currency from localStorage on page load\nuseEffect(()=>{if(!isBrowser)return;const storedCurrency=localStorage.getItem(\"selectedCurrency\");const storedCountryCode=localStorage.getItem(\"selectedCountryCode\");const storedCountry=localStorage.getItem(\"selectedCountry\");setSelectedCurrency(storedCurrency||\"USD\");setSelectedCountryCode(storedCountryCode||\"US\");setSelectedCountry(storedCountry||\"United States\");//console.log(\"[FC_CartProductCard] setting selectedCountryCode and currency\", storedCountryCode, storedCurrency)\n},[isBrowser]);// Listen for currency changes\nuseEffect(()=>{if(!isBrowser)return;const handleCurrencyChange=event=>{const{currency,countryCode,country}=event.detail;setSelectedCurrency(currency);setSelectedCountryCode(countryCode);setSelectedCountry(country);//console.log(\"[FC_CartProductCard] currency changed to\", selectedCountryCode, selectedCurrency)\n};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[isBrowser,selectedCurrency,selectedCountryCode]);// Add currency config state\nconst[currencyConfig,setCurrencyConfig]=useState(()=>{// Initialize with window values if available\nif(typeof window!==\"undefined\"){const position=window?.__FcCurrencyConfigs?.currencyPosition||\"Before\";const initialConfig={position:position,showCode:position!==\"Hide\",symbol:window?.__FcCurrencyConfigs?.currencySymbol||\"$\"};// console.log(\n//     \"Initial currency config state:\",\n//     initialConfig,\n//     window?.__FcCurrencyConfigs\n// )\nreturn initialConfig;}return{position:\"Before\",showCode:false,symbol:\"$\"};});// Add currency settings listener\nuseEffect(()=>{if(typeof window===\"undefined\")return;function updateCurrencyConfig(position,symbol){//(\"Updating currency config with:\", { position, symbol })\nconst newConfig={position:position||\"Before\",showCode:position!==\"Hide\",symbol:symbol||\"$\"};//console.log(\"New currency config:\", newConfig)\nsetCurrencyConfig(newConfig);}// Handle currency settings updates\nconst handleCurrencySettingsUpdate=e=>{//console.log(\"Currency update event received:\", e.detail)\nif(!e.detail?.current){//console.log(\"Invalid currency update event:\", e)\nreturn;}updateCurrencyConfig(e.detail.current.currencyPosition,e.detail.current.currencySymbol);};// Initial setup\nconst currentPosition=window.__FcCurrencyConfigs?.currencyPosition;const currentSymbol=window.__FcCurrencyConfigs?.currencySymbol;// console.log(\"Initial currency values:\", {\n//     currentPosition,\n//     currentSymbol,\n// })\nupdateCurrencyConfig(currentPosition,currentSymbol);// Add event listener\ndocument.addEventListener(\"currency__settings-updated\",handleCurrencySettingsUpdate);return()=>{document.removeEventListener(\"currency__settings-updated\",handleCurrencySettingsUpdate);};},[]);const _showCurrencyCode=props.priceConfigs?.showCurrencyCode;const _showCurrencySymbol=props.priceConfigs?.showSymbol;// // Add subscription price listener\n// useEffect(() => {\n//     if (!isBrowser) return\n//     const handleSubscriptionPriceUpdate = (e) => {\n//         if (e.detail?.price) {\n//             setSubscriptionPrice(e.detail.price)\n//             setSubscriptionPlan(e.detail.plan.id)\n//         } else {\n//             setSubscriptionPrice(null)\n//             setSubscriptionPlan(null)\n//         }\n//     }\n//     document.addEventListener(\n//         \"subscription__price-update\",\n//         handleSubscriptionPriceUpdate\n//     )\n//     return () => {\n//         document.removeEventListener(\n//             \"subscription__price-update\",\n//             handleSubscriptionPriceUpdate\n//         )\n//     }\n// }, [isBrowser])\nconst[locale,setLocale]=useState(undefined);useEffect(()=>{//console.log(\"[FC_CartProductCard] selectedCountryCode\", selectedCountryCode)\nconst updatedLocale=getLocaleFromCountry(selectedCountryCode);//console.log(\"[FC_CartProductCard] Locale updated:\", updatedLocale);\nsetLocale(updatedLocale);},[selectedCountryCode]);const formatCartPrice=useCallback((amount,currencyCode)=>{// Clean and format amount\nif(typeof amount===\"string\"){amount=amount.replace(/[^0-9.]/g,\"\");const parts=amount.split(\".\");if(parts.length>2){amount=parts[0]+\".\"+parts.slice(1).join(\"\");}}if(typeof amount!==\"number\"){amount=parseFloat(amount);}if(isNaN(amount)){amount=0;}// For canvas view, use canvasPrice with USD\nif(RenderTarget.current()===RenderTarget.canvas){const format=props.priceConfigs?.format||{};return formatPriceWithOptions(amount,format.currencyCode||\"USD\");}// For browser view, use the current currency\nconst format=props.priceConfigs?.format||{};return formatPriceWithOptions(amount,currencyCode||\"USD\");},[props.priceConfigs,locale]);// Common function to format price based on options\nconst formatPriceWithOptions=useCallback((numericPrice,currCode)=>{if(!currCode)currCode=\"USD\";//console.log(\"[FC_CartProductCard] currCode\", currCode)\nconst format=props.priceConfigs?.format||{};// For backward compatibility\nconst showSymbol=format.showSymbol!==undefined?format.showSymbol:props.priceConfigs?.showSymbol!==undefined?props.priceConfigs.showSymbol:true;const showCurrency=format.showCurrency!==undefined?format.showCurrency:props.priceConfigs?.showCurrencyCode!==undefined?props.priceConfigs.showCurrencyCode:false;const showDecimals=format.showDecimals||\"Always show\";const symbolSameAsCode=isCurrencySymbolSameAsCode(currCode);//console.log(\"[FC_CartProductCard] receving locale from getLocaleFromCountry\", locale)\n// console.log(\"[FC_CartProductCard] Format debug:\", {\n//     userAgent: navigator.userAgent,\n//     isCurrencySymbolSameAsCode: symbolSameAsCode,\n//     currencyCode: currCode,\n//     selectedCountryCode,\n//     locale,\n// })\n// Determine if we should show decimals based on the setting\nconst shouldShowDecimals=()=>{if(showDecimals===\"Always show\")return true;if(showDecimals===\"Never show\")return false;if(showDecimals===\"Hide when .00\"){// Check if the decimal part is zero\nreturn numericPrice%1!==0;}return true// Default fallback\n;};const decimalDigits=shouldShowDecimals()?2:0;// If showing neither symbol nor code, just format the number\nif(!showSymbol&&!showCurrency){const formattedNumber=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);return formattedNumber;}// Special case for USD to prevent \"US$\" display in Safari iOS\nif(currCode===\"USD\"&&showSymbol){// Check if running on iOS device\nconst isIOS=isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream;// Format USD manually to avoid the iOS \"US$\" prefix\nif(isIOS){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);if(!showCurrency){return`$${number}`// Just \"$50\" format\n;}else{return`$${number} USD`// \"$50 USD\" format\n;}}else{// For non-iOS devices, continue with normal formatting but use\n// a more controlled approach to ensure consistency\nif(!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}else{const withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} USD`;}}}// For currencies where symbol is same as code (like CHF)\nif(symbolSameAsCode){// If showing currency code, always use code-first format and ignore symbol\nif(showCurrency&&!showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showSymbol&&!showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showCurrency&&showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);return`${currCode} ${number}`;}}// For currencies with distinct symbols (like USD with $)\n// If showing only the code (no symbol)\nif(!showSymbol&&showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);// For normal currencies, show code after the number\nreturn`${number} ${currCode}`;}// If showing only the symbol (no code)\nif(showSymbol&&!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}// If showing both symbol and code\nconst withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} ${currCode}`;},[props.priceConfigs,locale]);const fetchCartFromShopify=useCallback(async cartId=>{if(isFetching.current){return;}isFetching.current=true;try{// Wait until window.shopXtools.fetchCart is available\nawait waitForCondition(()=>window.shopXtools&&window.shopXtools.fetchCart);const cartData=await window.shopXtools.fetchCart(cartId);//console.log(\"[FETCH] Cart data received from Shopify:\", cartData);\nif(cartData){setCart(cartData);//console.log(\"[FETCH] Cart Data after setting state: :\", cartData)\nsetCartItems(cartData.lines?.edges||[]);//console.log(\"[FETCH] Cart items after setting state:\", cartData.lines?.edges);\n// Update the global cart data\nwindow.shopXtools.cart=cartData;// Dispatch cart update event\nwindow.dispatchEvent(new Event(\"shopXtools-cart-update\"));}else{setCart({});setCartItems([]);}}catch(error){setCart({});setCartItems([]);}finally{isFetching.current=false;}},[]);// useEffect(() => {\n//     console.log(\"[STATE] Updated cart:\", cart);\n// }, [cart]);\n// useEffect(() => {\n//     console.log(\"[STATE] Updated cartItems:\", cartItems);\n// }, [cartItems]);\n// Helper function to wait until a condition is true\nconst waitForCondition=useCallback((conditionFn,checkInterval=100,timeout=1e4)=>{return new Promise((resolve,reject)=>{const startTime=Date.now();const checkCondition=()=>{if(conditionFn()){resolve();}else if(Date.now()-startTime>=timeout){reject(new Error(\"Condition not met within timeout\"));}else{setTimeout(checkCondition,checkInterval);}};checkCondition();});},[]);const handleCartUpdate=useCallback(throttle(async()=>{let cartId=window[\"shopXtools\"]?.cart?.id;// console.log(\"[UPDATE] Checking for cartId:\", cartId);\n// console.log(\"[UPDATE] Checking for cart:\", window[\"shopXtools\"]?.cart);\nif(!cartId){try{cartId=localStorage.getItem(\"shopX_cart_id\");}catch(error){console.error(\"Error loading cart ID from local storage:\",error);}}if(cartId){await fetchCartFromShopify(cartId);//console.log(\"[UPDATE] Fetching cart from Shopify with cartId:\", cartId);\n}else{//console.log(\"[UPDATE] No cartId found, resetting cart state.\");\nsetCart({});setCartItems([]);}},500),[fetchCartFromShopify]);//console.log(\"Cart Data in CartProductCard:\", cart)\nuseEffect(()=>{//console.log(\"[EVENT] shopXtools-cart-update event triggered\");\n// Fetch cart data on component mount\nhandleCartUpdate();window.addEventListener(\"shopXtools-cart-update\",handleCartUpdate);return()=>{window.removeEventListener(\"shopXtools-cart-update\",handleCartUpdate);};},[handleCartUpdate]);//console.log(\"Cart Data in CartProductCard:\", cart)\nconst handleRemoveLine=useCallback(async(cartId,lineId,providedLineItem=null)=>{if(!cartId||!lineId){console.error(\"Missing cartId or lineId for remove operation\");return;}// Find the line item to get analytics data before removing\nconst lineItem=providedLineItem||cartItems.find(({node})=>node.id===lineId)?.node;if(lineItem){// Analytics - remove_from_cart event\nconst currency=lineItem.cost.subtotalAmount.currencyCode||\"USD\";const unitPrice=parseFloat(lineItem.cost?.amountPerQuantity?.amount||\"0\");const value=unitPrice*(lineItem.quantity||1);const item_id=lineItem.merchandise.id?.split(\"/\").pop()||\"\";const item_name=lineItem.merchandise.product?.title||\"\";const item_variant=lineItem.merchandise.title||\"\";const price=unitPrice;const quantity=lineItem.quantity||1;// Google Analytics tracking (remove_from_cart)\nif(typeof window.fcTrackGAEvent===\"function\"&&item_id&&item_name&&price>0){const payload={currency,value,items:[{item_id,item_name,item_variant,price,item_brand:lineItem.merchandise.product?.vendor||null,item_category:lineItem.merchandise.product?.productType||null,quantity,// TagHound compatibility\nSKU:item_id,\"Item Name\":item_name}]};window.fcTrackGAEvent(\"remove_from_cart\",payload);}else{// Skipping remove_from_cart due to missing item data\n}// Meta Pixel tracking\ntrackFacebookPixelRemoveFromCart({lineItem:lineItem,currency:currency});}try{const data=await window.shopXtools?.handleCartMutation(removeLineMutation,{cartId,lineIds:[lineId]});//console.log(\"[REMOVE] Mutation response:\", data);\nif(data?.cartLinesRemove?.cart){//console.log(\"[REMOVE] Cart updated, refetching...\");\nawait fetchCartFromShopify(cartId);// Check quantity limits if product has them\nconst productHandle=lineItem?.merchandise?.product?.handle;const product=window.shopXtools?.products.find(p=>p.node.handle===productHandle);// console.log(\"product\", product)\nif(productHandle){const metafields=await window.shopXtools?.handleCartMutation(getProductMetafields,{handle:productHandle});const orderMax=parseInt(metafields?.product?.metafield_order_max?.value,10);if(!isNaN(orderMax)&&orderMax>0){const currentLineQuantity=lineItem?.quantity||0;// console.log(\"currentLineQuantity\", currentLineQuantity)\n// const quantityChange = quantity - currentLineQuantity\nconst newTotalQuantity=orderMax-currentLineQuantity;if(newTotalQuantity<orderMax){// console.log(\"quantity is less than orderMax\", newTotalQuantity)\nconst quantityChanged=new CustomEvent(\"cart_item_quantity_changed\",{detail:{orderMax,newTotalQuantity,productId:product?.node.id}});window.dispatchEvent(quantityChanged);// console.log(\"quantityChanged\", quantityChanged.detail)\n}}}return;}// Try backup mutation if primary fails\nconst backupData=await window.shopXtools?.handleCartMutation(removeLineMutationNoPlans,{cartId,lineIds:[lineId]});if(backupData?.cartLinesRemove?.cart){await fetchCartFromShopify(cartId);}else{console.error(\"Both primary and backup remove line mutations failed\");}}catch(error){console.error(\"Error removing line item:\",error);}},[fetchCartFromShopify,cartItems]);const handleUpdateLine=useCallback(async(cartId,lineId,quantity,updateLineItem)=>{if(!cartId||!lineId||typeof quantity!==\"number\"){console.error(\"Missing required parameters for update operation\");return;}//console.log(\"[UPDATE] Updating line:\", { cartId, lineId, quantity, lineItem });\ntry{// If quantity is 0 or less, remove the item instead\nif(quantity<=0){// Call the remove function (Facebook Pixel tracking is handled there)\nawait handleRemoveLine(cartId,lineId,updateLineItem);return;}// Check quantity limits if product has them\nconst productHandle=updateLineItem?.merchandise?.product?.handle;const product=window.shopXtools?.products.find(p=>p.node.handle===productHandle);// console.log(\"product\", product)\nif(productHandle){const metafields=await window.shopXtools?.handleCartMutation(getProductMetafields,{handle:productHandle});const orderMax=parseInt(metafields?.product?.metafield_order_max?.value,10);// Calculate current quantity of this product across all variants\nconst currentProductQuantity=getCurrentProductQuantity(productHandle);// console.log(\"currentProductQuantity\", currentProductQuantity)\n// Calculate the quantity that would be added by this update\nconst currentLineQuantity=updateLineItem?.quantity||0;// console.log(\"currentLineQuantity\", currentLineQuantity)\nconst quantityChange=quantity-currentLineQuantity;const newTotalQuantity=currentProductQuantity+quantityChange;// console.log(\"newTotalQuantity\", newTotalQuantity)\nif(!isNaN(orderMax)&&orderMax>0){if(newTotalQuantity>orderMax){const remainingAllowed=orderMax-currentProductQuantity;// console.log(\"remainingAllowed\", remainingAllowed)\nif(remainingAllowed<=0){const message=`Maximum quantity of ${orderMax} already in cart`;setErrorMessage(message);return;}}}// else if (!isNaN(orderMax) && orderMax === 0 || !orderMax) {\n//     const variant = product?.node.variants?.edges.find(({node}) => node.id === updateLineItem?.merchandise?.id)\n//     console.log(\"matching variant\", variant)\n//     const totalQuantity = variant.node.quantityAvailable\n//     console.log(\"totalQuantity\", totalQuantity)\n//     // Calculate remaining allowed based on variant's quantityAvailable\n//     // const remainingAllowed = totalQuantity - currentLineQuantity;\n//     // console.log(\"remainingAllowed:\", remainingAllowed);\n//     if (newTotalQuantity > totalQuantity) {\n//         console.log(\"remainingAllowed is less than 0\", newTotalQuantity)\n//         const message = `Maximum quantity of ${currentProductQuantity} already in cart`\n//         setErrorMessage(message)\n//         return\n//     }\n// }\n}// Update cart line\nconst data=await window.shopXtools?.handleCartMutation(updatelineMutation,{cartId,lines:[{id:lineId,quantity}]});//console.log(\"[UPDATE] Mutation response:\", data);\nif(data?.cartLinesUpdate?.cart){await fetchCartFromShopify(cartId);setErrorMessage(\"\");return;}// Try backup mutation if primary fails\nconst backupData=await window.shopXtools?.handleCartMutation(updatelineMutationNoPlans,{cartId,lines:[{id:lineId,quantity}]});if(backupData?.cartLinesUpdate?.cart){await fetchCartFromShopify(cartId);setErrorMessage(\"\");}else{console.error(\"Both primary and backup update line mutations failed\");}}catch(error){console.error(\"Error updating line item:\",error);}},[fetchCartFromShopify,cartItems,getCurrentProductQuantity]);//console.log(\"Cart Data in CartProductCard:\", cart)\nconst errorVisible=errorMessage!==null;// Adjust mock data for compare price\nconst mockData=[{price:\"100.00\",comparePrice:null},{price:\"200.00\",comparePrice:\"250.00\"},{price:\"300.00\",comparePrice:null},{price:\"400.00\",comparePrice:null}];// console.log(\"[RENDER] Cart before rendering:\", cart);\n// console.log(\"[RENDER] Cart items before rendering:\", cartItems);\nreturn /*#__PURE__*/_jsx(_Fragment,{children:RenderTarget.current()===RenderTarget.canvas?/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:props.spacingConfigs?.gap??24,width:\"100%\"},children:[/*#__PURE__*/_jsx(ShopXCartProductCard,{imageVisibility:props.imageConfigs?.visible,image:props.imageConfigs?.visible?\"https://framerusercontent.com/images/3E7u1YOHRQaZuBdfYRsm3XCzxk.jpg\":null,imageConfigs:props.imageConfigs,quantityConfigs:props.quantityConfigs,removeIconConfigs:props.removeIconConfigs,containerConfigs:props.containerConfigs,linkConfigs:props.linkConfigs,titleConfigs:props.titleConfigs,_lineItem:{merchandise:{product:{handle:\"example-product\"}}},quantityControlColor:props.quantityConfigs?.buttons?.icons,quantityNumberColor:props.quantityConfigs?.container?.number,quantityContainerBgColor:props.quantityConfigs?.container?.containerBg,quantityControlBgColor:props.quantityConfigs?.buttons?.iconBg,quantityControlHoverColor:props.quantityConfigs?.buttons?.iconBgHover,quantityContainerBorder:\"1px solid #E2E2E2\",quantityContainerRadius:\"8px\",xColor:props.removeIconConfigs?.icon,xBgColor:props.removeIconConfigs?.bg,xBgHoverColor:props.removeIconConfigs?.bgHover,style:{width:\"100%\",...props.containerConfigs?.border||{},borderRadius:props.containerConfigs?.radius||\"0px\",background:props.containerConfigs?.background||\"#FFF\",padding:props.containerConfigs?.padding||\"0px\"},shopifyProductTitle:/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),margin:0},children:\"Product Title 1\"}),shopifyProductPriceAmount:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"flex-end\",gap:props.priceConfigs?.gap||4},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.price.font\"),color:get(props,\"priceConfigs.price.color\"),whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(mockData[0].price,\"USD\")}),mockData[0].comparePrice&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.comparePrice.font\"),color:get(props,\"priceConfigs.comparePrice.color\"),textDecoration:props.priceConfigs?.comparePrice?.strikethrough?\"line-through\":\"none\",textDecorationColor:props.priceConfigs?.comparePrice?.strikethroughColor,whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(mockData[0].comparePrice,\"USD\")})]}),shopifyQuantity:\"1\",variants:null,onRemove:()=>{},onAddQuantity:()=>{},onSubtractQuantity:()=>{}}),props.spacingConfigs?.dividerVisible&&/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",borderTop:`${props.spacingConfigs?.divider?.borderWidth||1}px ${props.spacingConfigs?.divider?.borderStyle||\"solid\"} ${props.spacingConfigs?.divider?.borderColor||\"rgba(0,0,0,0.08)\"}`}}),/*#__PURE__*/_jsx(ShopXCartProductCard,{imageVisibility:props.imageConfigs?.visible,image:props.imageConfigs?.visible?\"https://framerusercontent.com/images/3E7u1YOHRQaZuBdfYRsm3XCzxk.jpg\":null,imageConfigs:props.imageConfigs,quantityConfigs:props.quantityConfigs,removeIconConfigs:props.removeIconConfigs,containerConfigs:props.containerConfigs,linkConfigs:props.linkConfigs,titleConfigs:props.titleConfigs,_lineItem:{merchandise:{product:{handle:\"example-product\"}}},quantityControlColor:props.quantityConfigs?.buttons?.icons,quantityNumberColor:props.quantityConfigs?.container?.number,quantityContainerBgColor:props.quantityConfigs?.container?.containerBg,quantityControlBgColor:props.quantityConfigs?.buttons?.iconBg,quantityControlHoverColor:props.quantityConfigs?.buttons?.iconBgHover,quantityContainerBorder:\"1px solid #E2E2E2\",quantityContainerRadius:\"8px\",xColor:props.removeIconConfigs?.icon,xBgColor:props.removeIconConfigs?.bg,xBgHoverColor:props.removeIconConfigs?.bgHover,style:{width:\"100%\",...props.containerConfigs?.border||{},borderRadius:props.containerConfigs?.radius||\"0px\",background:props.containerConfigs?.background||\"#FFF\",padding:props.containerConfigs?.padding||\"0px\"},shopifyProductTitle:/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),margin:0},children:\"Product Title 2\"}),shopifyProductPriceAmount:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"flex-end\",gap:props.priceConfigs?.gap||4},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.price.font\"),color:get(props,\"priceConfigs.price.color\"),whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(mockData[1].price,\"USD\")}),mockData[1].comparePrice&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.comparePrice.font\"),color:get(props,\"priceConfigs.comparePrice.color\"),textDecoration:props.priceConfigs?.comparePrice?.strikethrough?\"line-through\":\"none\",textDecorationColor:props.priceConfigs?.comparePrice?.strikethroughColor,whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(mockData[1].comparePrice,\"USD\")})]}),shopifyQuantity:\"2\",variants:/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:props.variantConfigs?.gap||\"4px\"},children:/*#__PURE__*/_jsxs(\"p\",{style:{margin:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.titleFont\"),color:get(props,\"variantConfigs.titleColor\"),marginRight:\"5px\"},children:\"Color:\"}),/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.valueFont\"),color:get(props,\"variantConfigs.valueColor\")},children:\"Blue\"})]})}),onRemove:()=>{},onAddQuantity:()=>{},onSubtractQuantity:()=>{}}),props.spacingConfigs?.dividerVisible&&/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",borderTop:`${props.spacingConfigs?.divider?.borderWidth||1}px ${props.spacingConfigs?.divider?.borderStyle||\"solid\"} ${props.spacingConfigs?.divider?.borderColor||\"rgba(0,0,0,0.08)\"}`}}),/*#__PURE__*/_jsx(ShopXCartProductCard,{imageVisibility:props.imageConfigs?.visible,image:props.imageConfigs?.visible?\"https://framerusercontent.com/images/3E7u1YOHRQaZuBdfYRsm3XCzxk.jpg\":null,imageConfigs:props.imageConfigs,quantityConfigs:props.quantityConfigs,removeIconConfigs:props.removeIconConfigs,containerConfigs:props.containerConfigs,linkConfigs:props.linkConfigs,titleConfigs:props.titleConfigs,_lineItem:{merchandise:{product:{handle:\"example-product\"}}},quantityControlColor:props.quantityConfigs?.buttons?.icons,quantityNumberColor:props.quantityConfigs?.container?.number,quantityContainerBgColor:props.quantityConfigs?.container?.containerBg,quantityControlBgColor:props.quantityConfigs?.buttons?.iconBg,quantityControlHoverColor:props.quantityConfigs?.buttons?.iconBgHover,quantityContainerBorder:\"1px solid #E2E2E2\",quantityContainerRadius:\"8px\",xColor:props.removeIconConfigs?.icon,xBgColor:props.removeIconConfigs?.bg,xBgHoverColor:props.removeIconConfigs?.bgHover,style:{width:\"100%\",...props.containerConfigs?.border||{},borderRadius:props.containerConfigs?.radius||\"0px\",background:props.containerConfigs?.background||\"#FFF\",padding:props.containerConfigs?.padding||\"0px\"},shopifyProductTitle:/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),margin:0},children:\"Product Title 3\"}),shopifyProductPriceAmount:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"flex-end\",gap:props.priceConfigs?.gap||4},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.price.saleFont\"),color:get(props,\"priceConfigs.price.saleColor\"),whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(300,\"USD\")}),/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.comparePrice.font\"),color:get(props,\"priceConfigs.comparePrice.color\"),textDecoration:props.priceConfigs?.comparePrice?.strikethrough?\"line-through\":\"none\",textDecorationColor:props.priceConfigs?.comparePrice?.strikethroughColor,whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(400,\"USD\")})]}),shopifyQuantity:\"3\",variants:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:props.variantConfigs?.gap||\"4px\"},children:[/*#__PURE__*/_jsxs(\"p\",{style:{margin:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.titleFont\"),color:get(props,\"variantConfigs.titleColor\"),marginRight:\"5px\"},children:\"Color:\"}),/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.valueFont\"),color:get(props,\"variantConfigs.valueColor\")},children:\"Black\"})]}),/*#__PURE__*/_jsxs(\"p\",{style:{margin:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.titleFont\"),color:get(props,\"variantConfigs.titleColor\"),marginRight:\"5px\"},children:\"Size:\"}),/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.valueFont\"),color:get(props,\"variantConfigs.valueColor\")},children:\"Medium\"})]})]}),onRemove:()=>{},onAddQuantity:()=>{},onSubtractQuantity:()=>{}}),props.spacingConfigs?.dividerVisible&&/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",borderTop:`${props.spacingConfigs?.divider?.borderWidth||1}px ${props.spacingConfigs?.divider?.borderStyle||\"solid\"} ${props.spacingConfigs?.divider?.borderColor||\"rgba(0,0,0,0.08)\"}`}}),/*#__PURE__*/_jsx(ShopXCartProductCard,{imageVisibility:props.imageConfigs?.visible,image:props.imageConfigs?.visible?\"https://framerusercontent.com/images/3E7u1YOHRQaZuBdfYRsm3XCzxk.jpg\":null,imageConfigs:props.imageConfigs,quantityConfigs:props.quantityConfigs,removeIconConfigs:props.removeIconConfigs,containerConfigs:props.containerConfigs,linkConfigs:props.linkConfigs,titleConfigs:props.titleConfigs,_lineItem:{merchandise:{product:{handle:\"example-product\"}}},quantityControlColor:props.quantityConfigs?.buttons?.icons,quantityNumberColor:props.quantityConfigs?.container?.number,quantityContainerBgColor:props.quantityConfigs?.container?.containerBg,quantityControlBgColor:props.quantityConfigs?.buttons?.iconBg,quantityControlHoverColor:props.quantityConfigs?.buttons?.iconBgHover,quantityContainerBorder:\"1px solid #E2E2E2\",quantityContainerRadius:\"8px\",xColor:props.removeIconConfigs?.icon,xBgColor:props.removeIconConfigs?.bg,xBgHoverColor:props.removeIconConfigs?.bgHover,style:{width:\"100%\",...props.containerConfigs?.border||{},borderRadius:props.containerConfigs?.radius||\"0px\",background:props.containerConfigs?.background||\"#FFF\",padding:props.containerConfigs?.padding||\"0px\"},shopifyProductTitle:/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),margin:0},children:\"Product Title 4\"}),shopifyProductPriceAmount:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"flex-end\",gap:props.priceConfigs?.gap||4},children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.price.font\"),color:get(props,\"priceConfigs.price.color\"),whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(400,\"USD\")}),/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.comparePrice.font\"),color:get(props,\"priceConfigs.comparePrice.color\"),textDecoration:props.priceConfigs?.comparePrice?.strikethrough?\"line-through\":\"none\",textDecorationColor:props.priceConfigs?.comparePrice?.strikethroughColor,whiteSpace:\"nowrap\",minWidth:0}})]}),shopifyQuantity:\"4\",variants:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:props.variantConfigs?.gap||\"4px\"},children:[/*#__PURE__*/_jsxs(\"p\",{style:{margin:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.titleFont\"),color:get(props,\"variantConfigs.titleColor\"),marginRight:\"5px\"},children:\"Size:\"}),/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.valueFont\"),color:get(props,\"variantConfigs.valueColor\")},children:\"Medium\"})]}),/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"subscriptionConfigs.font\"),color:get(props,\"subscriptionConfigs.color\")},children:\"Delivers every week\"})]}),onRemove:()=>{},onAddQuantity:()=>{},onSubtractQuantity:()=>{}})]}):cartItems.length===0?/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",minHeight:\"100%\"},children:props.emptyStateComponent}):/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:0,width:\"100%\",boxSizing:\"border-box\"},children:[errorVisible&&/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"errorConfigs.errorFont\"),color:get(props,\"errorConfigs.errorColor\"),textTransform:get(props,\"errorConfigs.textTransform\",\"none\")},children:errorMessage}),cartItems.map(({node:_lineItem},index)=>/*#__PURE__*/_jsxs(_Fragment,{children:[index>0&&props.spacingConfigs?.dividerVisible?/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",marginTop:typeof props.spacingConfigs?.gap===\"number\"?props.spacingConfigs.gap:24,marginBottom:typeof props.spacingConfigs?.gap===\"number\"?props.spacingConfigs.gap:24,borderTop:`${props.spacingConfigs?.divider?.borderWidth||1}px ${props.spacingConfigs?.divider?.borderStyle||\"solid\"} ${props.spacingConfigs?.divider?.borderColor||\"rgba(0,0,0,0.08)\"}`}}):index>0&&!props.spacingConfigs?.dividerVisible?/*#__PURE__*/_jsx(\"div\",{style:{marginTop:typeof props.spacingConfigs?.gap===\"number\"?props.spacingConfigs.gap:24}}):null,/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",overflow:\"hidden\",borderRadius:typeof props.containerConfigs?.radius===\"object\"?`${props.containerConfigs.radius.topLeft}px ${props.containerConfigs.radius.topRight}px ${props.containerConfigs.radius.bottomRight}px ${props.containerConfigs.radius.bottomLeft}px`:typeof props.containerConfigs?.radius===\"string\"?props.containerConfigs.radius:`${props.containerConfigs?.radius||0}px`,background:props.containerConfigs?.background||\"#FFF\",...props.containerConfigs?.border||{},padding:typeof props.containerConfigs?.padding===\"object\"?`${props.containerConfigs.padding.top}px ${props.containerConfigs.padding.right}px ${props.containerConfigs.padding.bottom}px ${props.containerConfigs.padding.left}px`:props.containerConfigs?.padding||\"0px\",display:\"flex\"},children:/*#__PURE__*/_jsx(ShopXCartProductCard,{imageVisibility:props.imageConfigs?.visible,image:get(_lineItem,\"merchandise.image.url\",null),imageConfigs:props.imageConfigs,quantityConfigs:props.quantityConfigs,removeIconConfigs:props.removeIconConfigs,containerConfigs:{...props.containerConfigs,background:\"transparent\"},linkConfigs:props.linkConfigs,titleConfigs:props.titleConfigs,_lineItem:_lineItem,quantityControlColor:props.quantityConfigs?.buttons?.icons,quantityNumberColor:props.quantityConfigs?.container?.number,quantityContainerBgColor:props.quantityConfigs?.container?.containerBg,quantityControlBgColor:props.quantityConfigs?.buttons?.iconBg,quantityControlHoverColor:props.quantityConfigs?.buttons?.iconBgHover,quantityContainerBorder:\"1px solid #E2E2E2\",quantityContainerRadius:\"8px\",xColor:props.removeIconConfigs?.icon,xBgColor:props.removeIconConfigs?.bg,xBgHoverColor:props.removeIconConfigs?.bgHover,Radius:\"0px\",style:{width:\"100%\",background:\"transparent\",...RenderTarget.current()===RenderTarget.canvas?{padding:typeof props.containerConfigs?.padding===\"object\"?`${props.containerConfigs.padding.top}px ${props.containerConfigs.padding.right}px ${props.containerConfigs.padding.bottom}px ${props.containerConfigs.padding.left}px`:props.containerConfigs?.padding||\"0px\"}:{padding:0}},shopifyProductTitle:/*#__PURE__*/_jsx(\"p\",{style:{...get(props,\"titleConfigs.font\"),color:get(props,\"titleConfigs.color\"),margin:0,textTransform:props.titleConfigs?.textTransform||\"none\"},children:_lineItem.merchandise.product.title}),shopifyProductPriceAmount:/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"flex-end\",gap:props.priceConfigs?.gap||4},children:(()=>{if(!_lineItem)return null;// Use cart data for primary information\n    let price,comparePrice,currencyCode;if(_lineItem.sellingPlanAllocation){// Subscription item: use unit price from selling plan\n    price=_lineItem.sellingPlanAllocation.checkoutChargeAmount?.amount;comparePrice=_lineItem.merchandise?.compareAtPrice?.amount//no compareAtPrice in sellingPlanAllocation!!! _lineItem.sellingPlanAllocation.compareAtPrice?.amount;\n    ;currencyCode=_lineItem.sellingPlanAllocation.checkoutChargeAmount?.currencyCode;}else{// Non-subscription item: use unit price from merchandise object, fallback to cost\n    price=_lineItem.merchandise?.price?.amount||_lineItem.cost?.amountPerQuantity?.amount;currencyCode=_lineItem.merchandise?.price?.currencyCode||_lineItem.cost?.amountPerQuantity?.currencyCode;comparePrice=_lineItem.merchandise?.compareAtPrice?.amount||_lineItem.cost?.compareAtAmountPerQuantity?.amount;}// Supplement with external data\n    const variantId=_lineItem.merchandise.id;const variantGid=variantId.split(\"/\").pop();const matchingProduct=window.shopXtools.products.find(({node})=>node.variants.edges.some(edge=>edge.node.id.includes(variantGid)))?.node;const matchingVariant=matchingProduct?.variants?.edges.find(edge=>edge.node.id.includes(variantGid))?.node;// Preserve the log\n    // console.log(\n    //     \"Cart Product Card - Price Data:\",\n    //     {\n    //         variantId,\n    //         variantGid,\n    //         matchingProduct,\n    //         matchingVariant,\n    //         price,\n    //         currencyCode,\n    //         comparePrice,\n    //         variantComparePrice:\n    //             get(\n    //                 matchingVariant,\n    //                 \"compareAtPrice.amount\"\n    //             ),\n    //         productComparePrice:\n    //             get(\n    //                 matchingProduct,\n    //                 \"compareAtPriceRange.minVariantPrice.amount\"\n    //             ),\n    //         lineItem: _lineItem,\n    //         showCurrencyCode:\n    //             props.showCurrencyCode,\n    //         currencyPosition:\n    //             props.currencyPosition,\n    //         showCurrencySymbol:\n    //             props.showCurrencySymbol,\n    //     }\n    // )\n    const hasComparePrice=comparePrice&&parseFloat(comparePrice)>parseFloat(price);const finalPrice=price||\"0\";return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,hasComparePrice?\"priceConfigs.price.saleFont\":\"priceConfigs.price.font\"),color:hasComparePrice?props.priceConfigs?.price?.saleColor:props.priceConfigs?.price?.color,whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(finalPrice,currencyCode)}),hasComparePrice&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"priceConfigs.comparePrice.font\"),color:get(props,\"priceConfigs.comparePrice.color\"),textDecoration:\"line-through\",textDecorationColor:props.priceConfigs?.comparePrice?.strikethroughColor,whiteSpace:\"nowrap\",minWidth:0},children:formatCartPrice(comparePrice,currencyCode)})]});})()}),shopifyQuantity:`${_lineItem.quantity||1}`,variants:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:props.variantConfigs?.gap||\"4px\"},children:[_lineItem.merchandise.selectedOptions.filter(option=>option.name!==\"Title\").map((option,index)=>/*#__PURE__*/_jsxs(\"p\",{style:{margin:0},children:[/*#__PURE__*/_jsxs(\"span\",{style:{...get(props,\"variantConfigs.titleFont\"),color:get(props,\"variantConfigs.titleColor\"),marginRight:\"5px\",textTransform:get(props,\"variantConfigs.titleTransform\",\"none\")},children:[option.name,\":\"]}),/*#__PURE__*/_jsx(\"span\",{style:{...get(props,\"variantConfigs.valueFont\"),color:get(props,\"variantConfigs.valueColor\"),textTransform:get(props,\"variantConfigs.valueTransform\",\"none\")},children:option.value})]},`variant-${option.name}-${index}`)),_lineItem.attributes?.map((attr,index)=>/*#__PURE__*/_jsxs(\"p\",{style:{margin:0},children:[/*#__PURE__*/_jsxs(\"span\",{style:{...props.attributeConfigs?.uniqueFormatting?get(props,\"attributeConfigs.titleFont\"):get(props,\"variantConfigs.titleFont\"),color:props.attributeConfigs?.uniqueFormatting?get(props,\"attributeConfigs.titleColor\"):get(props,\"variantConfigs.titleColor\"),marginRight:\"5px\",textTransform:props.attributeConfigs?.uniqueFormatting?get(props,\"attributeConfigs.titleTransform\",\"none\"):get(props,\"variantConfigs.titleTransform\",\"none\")},children:[attr.key,\":\"]}),/*#__PURE__*/_jsx(\"span\",{style:{...props.attributeConfigs?.uniqueFormatting?get(props,\"attributeConfigs.valueFont\"):get(props,\"variantConfigs.valueFont\"),color:props.attributeConfigs?.uniqueFormatting?get(props,\"attributeConfigs.valueColor\"):get(props,\"variantConfigs.valueColor\"),textTransform:props.attributeConfigs?.uniqueFormatting?get(props,\"attributeConfigs.valueTransform\",\"none\"):get(props,\"variantConfigs.valueTransform\",\"none\")},children:attr.value})]},`attr-${attr.key}-${index}`)),_lineItem.sellingPlanAllocation?.sellingPlan?.name&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,...get(props,\"subscriptionConfigs.font\"),color:get(props,\"subscriptionConfigs.color\"),textTransform:get(props,\"subscriptionConfigs.textTransform\",\"none\")},children:_lineItem.sellingPlanAllocation.sellingPlan.name})]}),onRemove:()=>handleRemoveLine(cart.id,_lineItem.id),onAddQuantity:()=>handleUpdateLine(cart.id,_lineItem.id,_lineItem.quantity+1,_lineItem),onSubtractQuantity:()=>handleUpdateLine(cart.id,_lineItem.id,_lineItem.quantity-1,_lineItem)})},_lineItem.id)]}))]})});}FC_CartProductCard.defaultProps={containerConfigs:{background:\"transparent\",radius:0,padding:0,insidePadding:0,gap:8,border:{borderWidth:0,borderStyle:\"solid\",borderColor:\"transparent\"}},linkConfigs:{enabled:false,slugPath:\"\"},imageConfigs:{visible:true,type:\"Fill\",width:104,radius:8,background:\"#F5F5F5\",border:{borderWidth:0,borderStyle:\"solid\",borderColor:\"transparent\"},ratio:\"1:1\",hover:\"None\",zoomScale:1.05,opacity:.75},titleConfigs:{font:{family:\"Inter\",size:14,weight:500},color:\"#000000\",hoverColor:\"#000000\"},variantConfigs:{gap:4,titleFont:{family:\"Inter\",size:14,weight:500},titleColor:\"#000000\",valueFont:{family:\"Inter\",size:14,weight:400},valueColor:\"#666666\"},subscriptionConfigs:{font:{family:\"Inter\",size:14,weight:400},color:\"#4A5B89\"},quantityConfigs:{type:ControlType.Object,title:\"Quantity\",controls:{container:{type:ControlType.Object,title:\"Container\",controls:{font:{family:\"Inter\",size:14,weight:500},number:{type:ControlType.Color,defaultValue:\"#000\",title:\"Number\"},containerBg:{type:ControlType.Color,defaultValue:\"transparent\",title:\"BG\"},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"4px\"},containerRadius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"4px\"},containerBorder:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:1,borderStyle:\"solid\",borderColor:\"#E2E2E2\"}}}},buttons:{type:ControlType.Object,title:\"Buttons\",controls:{iconType:{type:ControlType.SegmentedEnum,title:\"Icon\",options:[\"Default\",\"Custom\"],optionTitles:[\"Default\",\"Custom\"],defaultValue:\"Default\"},iconWeight:{type:ControlType.Number,title:\"Weight\",defaultValue:2,min:.5,max:5,step:.1,displayStepper:true,hidden:({iconType})=>iconType!==\"Default\"},customPlusIcon:{type:ControlType.Image,title:\"Plus\",hidden:({iconType})=>iconType!==\"Custom\"},customMinusIcon:{type:ControlType.Image,title:\"Minus\",hidden:({iconType})=>iconType!==\"Custom\"},icons:{type:ControlType.Color,defaultValue:\"#000\",title:\"Icons\"},iconsColorDisabled:{type:ControlType.Color,defaultValue:\"#CCCCCC\",title:\"Icons Color Disabled\"},iconSize:{type:ControlType.Number,title:\"Icon Size\",defaultValue:8,min:4,max:32,unit:\"px\",step:1,displayStepper:true},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"4px\"},iconBg:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"BG\"},iconBgHover:{type:ControlType.Color,defaultValue:\"#F5F5F5\",title:\"BG Hover\"},iconBgDisabled:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"BG Disabled\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"4px\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderStyle:\"solid\",borderColor:\"transparent\"}}}}}},priceConfigs:{gap:4,price:{font:{family:\"Inter\",size:14,weight:500},color:\"#000000\",saleFont:{family:\"Inter\",size:14,weight:500},saleColor:\"#000000\"},comparePrice:{font:{family:\"Inter\",size:14,weight:400},color:\"#8B0000\",strikethrough:true,strikethroughColor:\"#8B0000\"},format:{showSymbol:true,showCurrency:false,showDecimals:\"Always show\",currencyCode:\"USD\"},// Keep for backward compatibility\nshowCurrencyCode:false,showSymbol:true},removeIconConfigs:{type:ControlType.Object,title:\"Remove Icon\",controls:{position:{type:ControlType.Enum,title:\"Position\",options:[\"Top\",\"Bottom\"],defaultValue:\"Bottom\"},iconType:{type:ControlType.SegmentedEnum,title:\"Icon\",options:[\"Default\",\"Custom\"],optionTitles:[\"Default\",\"Custom\"],defaultValue:\"Default\"},iconWeight:{type:ControlType.Number,title:\"Weight\",defaultValue:2,min:.5,max:5,step:.1,displayStepper:true,hidden:({iconType})=>iconType!==\"Default\"},customImage:{type:ControlType.Image,title:\"Image\",hidden:({iconType})=>iconType!==\"Custom\"},icon:{type:ControlType.Color,defaultValue:\"#000000\",title:\"Icon\",hidden:({iconType})=>iconType===\"Custom\"},iconSize:{type:ControlType.Number,title:\"Icon Size\",defaultValue:8,min:4,max:32,unit:\"px\",step:1,displayStepper:true},bg:{type:ControlType.Color,defaultValue:\"#F5F5F5\",title:\"BG\"},bgHover:{type:ControlType.Color,defaultValue:\"#EBEBEB\",title:\"BG Hover\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"80px\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderStyle:\"solid\",borderColor:\"transparent\"}}}}};addPropertyControls(FC_CartProductCard,{linkConfigs:{type:ControlType.Object,title:\"Link\",controls:{enabled:{type:ControlType.Boolean,title:\"Link\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\"},slugPath:{type:ControlType.String,title:\"Path\",defaultValue:\"\",placeholder:\"shop/\",description:\"The path between your domain and slug. [Learn more](https://framercommerce.com/resources/docs/components/cart#cart-product-card)\",hidden:({enabled})=>!enabled}}},imageConfigs:{type:ControlType.Object,title:\"Image\",controls:{visible:{type:ControlType.Boolean,title:\"Image\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\"},type:{type:ControlType.SegmentedEnum,title:\"Type\",options:[\"Fill\",\"Fit\"],defaultValue:\"Fill\",optionTitles:[\"Fill\",\"Fit\"],hidden:({visible})=>!visible},width:{type:ControlType.Number,title:\"Width\",defaultValue:112,min:0,max:500,unit:\"px\",step:8,displayStepper:true,hidden:({visible})=>!visible},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"4px\",hidden:({visible})=>!visible},background:{type:ControlType.Color,title:\"BG\",defaultValue:\"#F2F2F2\",hidden:({visible})=>!visible},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderStyle:\"solid\",borderColor:\"rgba(0,0,0,0)\"},hidden:({visible})=>!visible},ratio:{type:ControlType.Enum,title:\"Ratio\",options:[\"1:1\",\"3:2\",\"4:5\"],defaultValue:\"1:1\",hidden:({visible})=>!visible},hover:{type:ControlType.Enum,title:\"Hover Type\",options:[\"None\",\"Zoom\",\"Opacity\"],defaultValue:\"None\",hidden:({visible})=>!visible},zoomScale:{type:ControlType.Number,title:\"Zoom Scale\",defaultValue:1.05,min:1,max:3,step:.05,displayStepper:true,hidden:({hover})=>hover!==\"Zoom\"},opacity:{type:ControlType.Number,title:\"Opacity\",defaultValue:.75,min:0,max:1,step:.05,hidden:({hover})=>hover!==\"Opacity\"}}},titleConfigs:{type:ControlType.Object,title:\"Title\",controls:{font:{type:ControlType.Font,controls:\"extended\",title:\"Font\"},color:{type:ControlType.Color,defaultValue:\"#000\",title:\"Color\"},hoverColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Hover\"},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\"}}},variantConfigs:{type:ControlType.Object,title:\"Variants\",controls:{titleFont:{type:ControlType.Font,controls:\"extended\",title:\"Title Font\"},titleColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Title Color\"},titleTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\"},valueFont:{type:ControlType.Font,controls:\"extended\",title:\"Value Font\"},valueColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Value Color\"},valueTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\"},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:4,min:0,max:100,unit:\"px\",step:1}}},attributeConfigs:{type:ControlType.Object,title:\"Attributes\",controls:{uniqueFormatting:{type:ControlType.Boolean,title:\"Customize\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\",description:\"By default, attributes use same styling as Variants.\"},titleFont:{type:ControlType.Font,controls:\"extended\",title:\"Title Font\",hidden:({uniqueFormatting})=>!uniqueFormatting},titleColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Title Color\",hidden:({uniqueFormatting})=>!uniqueFormatting},titleTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\",hidden:({uniqueFormatting})=>!uniqueFormatting},valueFont:{type:ControlType.Font,controls:\"extended\",title:\"Value Font\",hidden:({uniqueFormatting})=>!uniqueFormatting},valueColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Value Color\",hidden:({uniqueFormatting})=>!uniqueFormatting},valueTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\",hidden:({uniqueFormatting})=>!uniqueFormatting},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:4,min:0,max:100,unit:\"px\",step:1,hidden:props=>!props.attributeConfigs?.uniqueFormatting}}},subscriptionConfigs:{type:ControlType.Object,title:\"Subscription\",controls:{font:{type:ControlType.Font,controls:\"extended\",title:\"Font\"},color:{type:ControlType.Color,defaultValue:\"#000\",title:\"Color\"},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\"}}},quantityConfigs:{type:ControlType.Object,title:\"Quantity\",controls:{container:{type:ControlType.Object,title:\"Container\",controls:{font:{type:ControlType.Font,controls:\"extended\",title:\"Font\"},number:{type:ControlType.Color,defaultValue:\"#000\",title:\"Number\"},containerBg:{type:ControlType.Color,defaultValue:\"transparent\",title:\"BG\"},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"4px\"},containerRadius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"4px\"},containerBorder:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:1,borderStyle:\"solid\",borderColor:\"#E2E2E2\"}}}},buttons:{type:ControlType.Object,title:\"Buttons\",controls:{iconType:{type:ControlType.SegmentedEnum,title:\"Icon\",options:[\"Default\",\"Custom\"],optionTitles:[\"Default\",\"Custom\"],defaultValue:\"Default\"},iconWeight:{type:ControlType.Number,title:\"Weight\",defaultValue:2,min:.5,max:5,step:.1,displayStepper:true,hidden:({iconType})=>iconType!==\"Default\"},customPlusIcon:{type:ControlType.Image,title:\"Plus\",hidden:({iconType})=>iconType!==\"Custom\"},customMinusIcon:{type:ControlType.Image,title:\"Minus\",hidden:({iconType})=>iconType!==\"Custom\"},icons:{type:ControlType.Color,defaultValue:\"#000\",title:\"Icons\"},iconsColorDisabled:{type:ControlType.Color,defaultValue:\"#CCCCCC\",title:\"Icons Color Disabled\"},iconSize:{type:ControlType.Number,title:\"Icon Size\",defaultValue:8,min:4,max:32,unit:\"px\",step:1,displayStepper:true},padding:{type:ControlType.Padding,title:\"Padding\",defaultValue:\"4px\"},iconBg:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"BG\"},iconBgHover:{type:ControlType.Color,defaultValue:\"#F5F5F5\",title:\"BG Hover\"},iconBgDisabled:{type:ControlType.Color,defaultValue:\"#FFFFFF\",title:\"BG Disabled\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"4px\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderStyle:\"solid\",borderColor:\"transparent\"}}}}}},priceConfigs:{type:ControlType.Object,title:\"Price\",controls:{gap:{type:ControlType.Number,title:\"Gap\",defaultValue:4,min:0,max:40,unit:\"px\",step:1},price:{type:ControlType.Object,title:\"Price\",controls:{font:{type:ControlType.Font,controls:\"extended\",title:\"Regular Font\"},color:{type:ControlType.Color,defaultValue:\"#000\",title:\"Regular Color\"},saleFont:{type:ControlType.Font,controls:\"extended\",title:\"Sale Font\"},saleColor:{type:ControlType.Color,defaultValue:\"#FF0000\",title:\"Sale Color\"}}},comparePrice:{type:ControlType.Object,title:\"Compare Price\",controls:{font:{type:ControlType.Font,controls:\"extended\",title:\"Font\"},color:{type:ControlType.Color,defaultValue:\"#000\",title:\"Color\"},strikethrough:{type:ControlType.Boolean,title:\"Strike\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},strikethroughColor:{type:ControlType.Color,title:\"Strike Color\",defaultValue:\"#000000\",hidden:({strikethrough})=>!strikethrough}}},format:{type:ControlType.Object,title:\"Format\",controls:{showSymbol:{type:ControlType.Boolean,title:\"Symbol\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"$, \\xa3, €, etc.\"},showCurrency:{type:ControlType.Boolean,title:\"Code\",defaultValue:false,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"USD, EUR, CHF, etc.\"},showDecimals:{type:ControlType.Enum,title:\"Decimals\",defaultValue:\"Always show\",options:[\"Always show\",\"Never show\",\"Hide when .00\"],optionTitles:[\"Always show\",\"Never show\",\"Hide when .00\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},currencyCode:{type:ControlType.Enum,title:\"Preview\",defaultValue:\"USD\",options:[\"USD\",\"EUR\",\"GBP\",\"CHF\",\"JPY\",\"CAD\",\"AUD\",\"CNY\",\"HKD\",\"NZD\",\"SEK\",\"KRW\",\"SGD\",\"NOK\",\"MXN\",\"INR\",\"RUB\",\"ZAR\",\"TRY\",\"BRL\",\"TWD\",\"DKK\",\"PLN\",\"THB\",\"IDR\",\"HUF\",\"CZK\",\"ILS\",\"CLP\",\"PHP\",\"AED\",\"COP\",\"SAR\",\"MYR\",\"RON\"],description:\"Currency is for canvas preview only.\"}}}}},errorConfigs:{type:ControlType.Object,title:\"Errors\",controls:{errorFont:{type:ControlType.Font,controls:\"extended\",title:\"Error Font\"},errorColor:{type:ControlType.Color,defaultValue:\"#000\",title:\"Error Color\"},textTransform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"none\"}}},removeIconConfigs:{type:ControlType.Object,title:\"Remove Icon\",controls:{position:{type:ControlType.Enum,title:\"Position\",options:[\"Top\",\"Bottom\"],defaultValue:\"Bottom\"},iconType:{type:ControlType.SegmentedEnum,title:\"Icon\",options:[\"Default\",\"Custom\"],optionTitles:[\"Default\",\"Custom\"],defaultValue:\"Default\"},iconWeight:{type:ControlType.Number,title:\"Weight\",defaultValue:2,min:.5,max:5,step:.1,displayStepper:true,hidden:({iconType})=>iconType!==\"Default\"},customImage:{type:ControlType.Image,title:\"Image\",hidden:({iconType})=>iconType!==\"Custom\"},icon:{type:ControlType.Color,defaultValue:\"#000000\",title:\"Icon\",hidden:({iconType})=>iconType===\"Custom\"},iconSize:{type:ControlType.Number,title:\"Icon Size\",defaultValue:8,min:4,max:32,unit:\"px\",step:1,displayStepper:true},bg:{type:ControlType.Color,defaultValue:\"#F5F5F5\",title:\"BG\"},bgHover:{type:ControlType.Color,defaultValue:\"#EBEBEB\",title:\"BG Hover\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"80px\"},border:{type:ControlType.Border,title:\"Border\",defaultValue:{borderWidth:0,borderStyle:\"solid\",borderColor:\"transparent\"}}}},containerConfigs:{type:ControlType.Object,title:\"Container\",controls:{background:{type:ControlType.Color,title:\"BG\",defaultValue:\"transparent\"},radius:{type:ControlType.BorderRadius,title:\"Radius\",defaultValue:\"0px\"},padding:{type:ControlType.Padding,title:\"Outside Padding\",defaultValue:\"0px\"},insidePadding:{type:ControlType.Padding,title:\"Inside Padding\",defaultValue:\"0px\"},gap:{type:ControlType.Number,title:\"Content Gap\",defaultValue:4,min:0,max:100,unit:\"px\",step:1},imageGap:{type:ControlType.Number,title:\"Image Gap\",defaultValue:16,min:0,max:100,unit:\"px\",step:1},border:{type:ControlType.Border,title:\"Border\"}}},spacingConfigs:{type:ControlType.Object,title:\"Spacing\",controls:{dividerVisible:{type:ControlType.Boolean,title:\"Divider\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},divider:{type:ControlType.Border,title:\"Style\",defaultValue:{borderWidth:1,borderStyle:\"solid\",borderColor:\"rgba(0,0,0,0.08)\"},hidden:({dividerVisible})=>!dividerVisible},gap:{type:ControlType.Number,title:\"Gap\",defaultValue:24,min:0,max:100,unit:\"px\",step:1}}}});function ShopXCartProductCard({imageVisibility,image,quantityControlColor,quantityNumberColor,quantityContainerBgColor,quantityControlBgColor,quantityControlHoverColor,xColor,xBgColor,xBgHoverColor,shopifyProductTitle,shopifyProductPriceAmount,shopifyQuantity,variants,style={},onRemove,onAddQuantity,onSubtractQuantity,imageConfigs,quantityConfigs,removeIconConfigs,containerConfigs,linkConfigs,titleConfigs,_lineItem,quantityContainerBorder=\"1px solid #E2E2E2\",quantityContainerRadius=\"8px\",Radius}){const[isHovered,setIsHovered]=useState(false);const[isPlusDisabled,setIsPlusDisabled]=useState(false);useEffect(()=>{const fetchOrderMax=async()=>{const variant=_lineItem;// console.log(\"variant:\", variant)\nconst productHandle=variant?.product?.handle;if(!productHandle)return;const max=await getProductOrderMax(productHandle);// console.log(\"max:\", max)\nconst currentLineQuantity=variant?.quantity||0;// console.log(\"currentLineQuantity\", currentLineQuantity)\n// console.log(\"variant:\", variant)\nif(!isNaN(max)&&max>0){const remainingAllowed=max-currentLineQuantity;// console.log(\"remainingAllowed in fetchOrderMax:\", remainingAllowed)\n// if (remainingAllowed === 0){\n// }\nsetIsPlusDisabled(true)//|| currentProductQty >= maxAllowedQty\n;// console.log(\"isPlusDisabled:\", isPlusDisabled)\n}else{setIsPlusDisabled(false);}};fetchOrderMax();},[]);const getProductOrderMax=useCallback(async productHandle=>{try{const product=window.shopXtools?.products.find(p=>p.node.handle===productHandle);// const productQtyAvail = product.node.quantityAvailable\n// console.log(\"product:\", product)\nconst metafields=await window.shopXtools?.handleCartMutation(getProductMetafields,{handle:productHandle});const orderMax=parseInt(metafields?.product?.metafield_order_max?.value,10);// console.log(\"metafields:\", metafields)\n// console.log(\"orderMax:\", orderMax)\nreturn orderMax;}catch(error){return 0;}},[]);const handleMouseEnter=e=>{// Only set hover if not clicking quantity or remove buttons\nif(!e.target.closest(\"button\")){setIsHovered(true);}};const handleMouseLeave=()=>{setIsHovered(false);};// Construct product URL if linking is enabled\nconst productUrl=linkConfigs?.enabled&&_lineItem?.merchandise?.product?.handle?`${window.location.origin}/${linkConfigs.slugPath||\"\"}${_lineItem.merchandise.product.handle}`:null;const imageHeight=imageConfigs?.ratio===\"4:5\"?(imageConfigs?.width||112)*1.25:imageConfigs?.ratio===\"3:2\"?(imageConfigs?.width||112)*(2/3):imageConfigs?.width||112;const imageRadius=typeof imageConfigs?.radius===\"object\"?`${imageConfigs.radius.topLeft}px ${imageConfigs.radius.topRight}px ${imageConfigs.radius.bottomRight}px ${imageConfigs.radius.bottomLeft}px`:`${imageConfigs?.radius||4}px`;const XIcon=({size=8,weight})=>/*#__PURE__*/_jsxs(\"svg\",{width:size,height:size,viewBox:\"0 0 16 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\"},children:[/*#__PURE__*/_jsx(\"line\",{x1:\"2\",y1:\"2\",x2:\"14\",y2:\"14\",stroke:\"currentColor\",strokeWidth:weight,strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"2\",y1:\"14\",x2:\"14\",y2:\"2\",stroke:\"currentColor\",strokeWidth:weight,strokeLinecap:\"round\"})]});const removeButton=/*#__PURE__*/_jsx(\"button\",{onClick:onRemove,style:{...removeIconConfigs?.border||{},background:removeIconConfigs?.bg||\"#F5F5F5\",color:removeIconConfigs?.icon||\"#000000\",cursor:\"pointer\",padding:\"4px\",borderRadius:typeof removeIconConfigs?.radius===\"object\"?`${removeIconConfigs.radius.topLeft}px ${removeIconConfigs.radius.topRight}px ${removeIconConfigs.radius.bottomRight}px ${removeIconConfigs.radius.bottomLeft}px`:typeof removeIconConfigs?.radius===\"string\"?removeIconConfigs.radius:\"80px\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",flexShrink:0,width:\"24px\",height:\"24px\"},onMouseEnter:e=>e.currentTarget.style.background=removeIconConfigs?.bgHover||\"#EBEBEB\",onMouseLeave:e=>e.currentTarget.style.background=removeIconConfigs?.bg||\"#F5F5F5\",children:removeIconConfigs?.iconType===\"Custom\"?/*#__PURE__*/_jsx(\"img\",{src:removeIconConfigs?.customImage,alt:\"Remove\",style:{width:removeIconConfigs?.iconSize,height:removeIconConfigs?.iconSize}}):/*#__PURE__*/_jsx(XIcon,{size:removeIconConfigs?.iconSize||8,weight:removeIconConfigs?.iconWeight||2})});const containerStyle={display:\"flex\",alignItems:\"stretch\",width:\"100%\",boxSizing:\"border-box\",overflow:\"hidden\",cursor:productUrl?\"pointer\":\"default\",borderRadius:typeof containerConfigs?.radius===\"object\"?`${containerConfigs.radius.topLeft}px ${containerConfigs.radius.topRight}px ${containerConfigs.radius.bottomRight}px ${containerConfigs.radius.bottomLeft}px`:`${containerConfigs?.radius||0}px`,...containerConfigs?.border||{},padding:typeof containerConfigs?.padding===\"object\"?`${containerConfigs.padding.top}px ${containerConfigs.padding.right}px ${containerConfigs.padding.bottom}px ${containerConfigs.padding.left}px`:containerConfigs?.padding||\"0px\",background:\"transparent\",...style};const contentStyle={display:\"flex\",gap:containerConfigs?.imageGap??0,flex:1,minWidth:0,padding:containerConfigs?.insidePadding||\"0px\"};const imageStyle={position:\"relative\",width:imageConfigs?.width||112,height:imageHeight,flexShrink:0,background:imageConfigs?.background||\"#F2F2F2\",borderRadius:imageConfigs?.radius||\"4px\",...imageConfigs?.border||{},overflow:\"hidden\"};const imageInnerStyle={width:\"100%\",height:\"100%\",objectFit:imageConfigs?.type===\"Fit\"?\"contain\":\"cover\",transition:\"transform 0.3s ease, opacity 0.3s ease\",...isHovered&&imageConfigs?.hover===\"Zoom\"&&{transform:`scale(${imageConfigs.zoomScale})`},...isHovered&&imageConfigs?.hover===\"Opacity\"&&{opacity:imageConfigs.opacity}};const titleStyle={...titleConfigs?.font||{},color:isHovered?titleConfigs?.hoverColor:titleConfigs?.color,margin:0,transition:\"color 0.3s ease\",textTransform:titleConfigs?.textTransform||\"none\"};const handleClick=e=>{// Only navigate if not clicking quantity or remove buttons\nif(productUrl&&!e.target.closest(\"button\")){window.location.href=productUrl;}};return /*#__PURE__*/_jsx(\"div\",{style:containerStyle,onMouseEnter:handleMouseEnter,onMouseLeave:handleMouseLeave,onClick:handleClick,children:/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",gap:containerConfigs?.imageGap??0,flex:1,minWidth:0},children:[imageVisibility&&image&&/*#__PURE__*/_jsx(\"div\",{style:imageStyle,children:/*#__PURE__*/_jsx(\"img\",{src:image,style:imageInnerStyle,onError:e=>{e.currentTarget.style.display=\"none\";}})}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",flex:1,minWidth:0,gap:containerConfigs?.gap??0,padding:containerConfigs?.insidePadding||\"0px\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",justifyContent:\"space-between\",alignItems:\"flex-start\",width:\"100%\",gap:\"16px\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:containerConfigs?.gap??0,flex:1,minWidth:0},children:[/*#__PURE__*/_jsx(\"div\",{style:titleStyle,children:typeof shopifyProductTitle===\"string\"?shopifyProductTitle:/*#__PURE__*/React.cloneElement(shopifyProductTitle,{style:titleStyle})}),variants]}),removeIconConfigs?.position===\"Top\"?removeButton:shopifyProductPriceAmount]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",gap:\"16px\",marginTop:\"auto\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",backgroundColor:quantityConfigs?.container?.containerBg||\"transparent\",borderRadius:typeof quantityConfigs?.container?.containerRadius===\"object\"?`${quantityConfigs.container.containerRadius.topLeft}px ${quantityConfigs.container.containerRadius.topRight}px ${quantityConfigs.container.containerRadius.bottomRight}px ${quantityConfigs.container.containerRadius.bottomLeft}px`:typeof quantityConfigs?.container?.containerRadius===\"string\"?quantityConfigs.container.containerRadius:\"8px\",padding:quantityConfigs?.container?.padding||\"4px\",...quantityConfigs?.container?.containerBorder||{borderWidth:1,borderStyle:\"solid\",borderColor:\"#E2E2E2\"},flexShrink:0},children:[/*#__PURE__*/_jsx(\"button\",{onClick:onSubtractQuantity,style:{...quantityConfigs?.buttons?.border||{},background:quantityConfigs?.buttons?.iconBg||\"#F5F5F5\",color:quantityConfigs?.buttons?.icons||\"#000000\",cursor:\"pointer\",padding:quantityConfigs?.buttons?.padding||\"4px 8px\",borderRadius:typeof quantityConfigs?.buttons?.radius===\"object\"?`${quantityConfigs.buttons.radius.topLeft}px ${quantityConfigs.buttons.radius.topRight}px ${quantityConfigs.buttons.radius.bottomRight}px ${quantityConfigs.buttons.radius.bottomLeft}px`:typeof quantityConfigs?.buttons?.radius===\"string\"?quantityConfigs.buttons.radius:\"4px\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},onMouseEnter:e=>{e.currentTarget.style.background=quantityConfigs?.buttons?.iconBgHover||\"#EBEBEB\";},onMouseLeave:e=>{e.currentTarget.style.background=quantityConfigs?.buttons?.iconBg||\"#F5F5F5\";},children:quantityConfigs?.buttons?.iconType===\"Custom\"?/*#__PURE__*/_jsx(\"img\",{src:quantityConfigs.buttons.customMinusIcon,alt:\"Minus\",style:{width:quantityConfigs.buttons.iconSize||8,height:quantityConfigs.buttons.iconSize||8}}):/*#__PURE__*/_jsx(MinusIcon,{size:quantityConfigs?.buttons?.iconSize||8,weight:quantityConfigs?.buttons?.iconWeight||2})}),/*#__PURE__*/_jsx(\"span\",{style:{margin:\"0 8px\",color:quantityConfigs?.container?.number||\"#000000\",...quantityConfigs?.container?.font||{}},children:shopifyQuantity}),/*#__PURE__*/_jsx(\"button\",{onClick:isPlusDisabled?undefined:onAddQuantity,disabled:isPlusDisabled,style:{...quantityConfigs?.buttons?.border||{},background:isPlusDisabled?quantityConfigs?.buttons?.iconBgDisabled:quantityConfigs?.buttons?.iconBg||\"#F5F5F5\",color:isPlusDisabled?quantityConfigs?.buttons?.iconsColorDisabled:quantityConfigs?.buttons?.icons||\"#000000\",cursor:isPlusDisabled?\"not-allowed\":\"pointer\",padding:quantityConfigs?.buttons?.padding||\"4px 8px\",borderRadius:typeof quantityConfigs?.buttons?.radius===\"object\"?`${quantityConfigs.buttons.radius.topLeft}px ${quantityConfigs.buttons.radius.topRight}px ${quantityConfigs.buttons.radius.bottomRight}px ${quantityConfigs.buttons.radius.bottomLeft}px`:typeof quantityConfigs?.buttons?.radius===\"string\"?quantityConfigs.buttons.radius:\"4px\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},onMouseEnter:e=>{{isPlusDisabled?quantityConfigs?.buttons?.iconBgDisabled:e.currentTarget.style.background=quantityConfigs?.buttons?.iconBgHover||\"#EBEBEB\";}},onMouseLeave:e=>{{isPlusDisabled?quantityConfigs?.buttons?.iconBgDisabled:e.currentTarget.style.background=quantityConfigs?.buttons?.iconBg||\"#F5F5F5\";}},children:quantityConfigs?.buttons?.iconType===\"Custom\"?/*#__PURE__*/_jsx(\"img\",{src:quantityConfigs.buttons.customPlusIcon,alt:\"Plus\",style:{width:quantityConfigs.buttons.iconSize||8,height:quantityConfigs.buttons.iconSize||8}}):/*#__PURE__*/_jsx(PlusIcon,{size:quantityConfigs?.buttons?.iconSize||8,weight:quantityConfigs?.buttons?.iconWeight||2})})]}),removeIconConfigs?.position===\"Bottom\"?removeButton:shopifyProductPriceAmount]})]})]})});}const MinusIcon=({size=8,weight})=>/*#__PURE__*/_jsx(\"svg\",{width:size,height:size,viewBox:\"0 0 16 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\"},children:/*#__PURE__*/_jsx(\"line\",{x1:\"2\",y1:\"8\",x2:\"14\",y2:\"8\",stroke:\"currentColor\",strokeWidth:weight,strokeLinecap:\"round\"})});const PlusIcon=({size=8,weight})=>/*#__PURE__*/_jsxs(\"svg\",{width:size,height:size,viewBox:\"0 0 16 16\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",style:{display:\"block\"},children:[/*#__PURE__*/_jsx(\"line\",{x1:\"8\",y1:\"2\",x2:\"8\",y2:\"14\",stroke:\"currentColor\",strokeWidth:weight,strokeLinecap:\"round\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"2\",y1:\"8\",x2:\"14\",y2:\"8\",stroke:\"currentColor\",strokeWidth:weight,strokeLinecap:\"round\"})]});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_CartProductCard\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_CartProductCard.map","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import React,{useEffect,useState,useCallback,useRef,cloneElement}from\"react\";import{appendAllTrackingParamsToUrl,getUTMParameters,getSCARefParameters}from\"https://framerusercontent.com/modules/w24ELWa2giT3SFaWpV77/398w6fPyag8B92ojouQr/utmParams.js\";import{throttle}from\"lodash-es\";import{addPropertyControls,ControlType}from\"framer\";import{appendLanguageToUrl}from\"https://framerusercontent.com/modules/vC6fzbfO83MgBPIhn5zl/DUlbmWuOELzEUenVmv3G/locales.js\";import{trackFacebookPixelInitiateCheckout}from\"https://framerusercontent.com/modules/6Zs9CjkPbKzHjoy8LK08/iqoIwmJw4hztafi4V4IV/Fb_pixel.js\";/**\n * @framerDisableUnlink\n */export default function FC_CartCheckoutButton({componentInstance}){const[checkoutUrl,setCheckoutUrl]=useState(null);const isFetching=useRef(false);// Capture UTM and SCA ref parameters on component mount\nuseEffect(()=>{// Get UTM and SCA ref parameters when component mounts\ngetUTMParameters();getSCARefParameters();},[]);const waitForCondition=useCallback((conditionFn,checkInterval=100,timeout=1e4)=>{return new Promise((resolve,reject)=>{const startTime=Date.now();const checkCondition=()=>{if(conditionFn()){resolve();}else if(Date.now()-startTime>=timeout){reject(new Error(\"Condition not met within timeout\"));}else{setTimeout(checkCondition,checkInterval);}};checkCondition();});},[]);const fetchCartAndUpdateCheckoutUrl=useCallback(async cartId=>{if(isFetching.current)return;isFetching.current=true;try{await waitForCondition(()=>window.shopXtools&&window.shopXtools.fetchCart);const cartData=await window.shopXtools.fetchCart(cartId);//console.log(\"Cart Data in checkout button\", cartData)\nif(cartData){//console.log(\"Cart Data in checkout button\", cartData)\n// Check for existing attributes\nconst storedAttributes=JSON.parse(localStorage.getItem(\"fc_cart_attributes\")||\"[]\");// console.log(\"Cart data received:\", {\n//     checkoutUrl: cartData.checkoutUrl,\n//     storedAttributes,\n// })\nwindow.shopXtools.cart=cartData;setCheckoutUrl(cartData.checkoutUrl||null);}else{console.error(\"Failed to fetch cart data from Shopify\");setCheckoutUrl(null);}}catch(error){console.error(\"Error fetching cart from Shopify:\",error);setCheckoutUrl(null);}finally{isFetching.current=false;}},[waitForCondition]);const handleCartUpdate=useCallback(throttle(async()=>{let cartId=window[\"shopXtools\"]?.cart?.id||localStorage.getItem(\"shopX_cart_id\");if(cartId){await fetchCartAndUpdateCheckoutUrl(cartId);}else{console.warn(\"No cart ID found. Cart is empty.\");setCheckoutUrl(null);}},1e3),[fetchCartAndUpdateCheckoutUrl]);useEffect(()=>{handleCartUpdate();window.addEventListener(\"shopXtools-cart-update\",handleCartUpdate);return()=>{window.removeEventListener(\"shopXtools-cart-update\",handleCartUpdate);};},[handleCartUpdate]);const handleClick=async e=>{try{// Aggregate all product-specific attributes from sessionStorage\nconst allAttributes=[];for(let i=0;i<sessionStorage.length;i++){const key=sessionStorage.key(i);if(key?.startsWith(\"fc_cart_attributes_\")){const productAttributes=JSON.parse(sessionStorage.getItem(key)||\"{}\");Object.entries(productAttributes).forEach(([attrKey,attrValue])=>{allAttributes.push({key:attrKey,value:String(attrValue)});});}}// Update cart attributes if we have any\nif(allAttributes.length>0&&window.shopXtools?.handleCartMutation){const updateCartMutation=`\n                    mutation cartAttributesUpdate($cartId: ID!, $attributes: [AttributeInput!]!) {\n                        cartAttributesUpdate(cartId: $cartId, attributes: $attributes) {\n                            cart {\n                                id\n                                attributes {\n                                    key\n                                    value\n                                }\n                            }\n                            userErrors {\n                                field\n                                message\n                            }\n                        }\n                    }\n                `;try{await window.shopXtools.handleCartMutation(updateCartMutation,{cartId:window.shopXtools.cart.id,attributes:allAttributes});}catch(error){console.error(\"Failed to update cart attributes:\",error);}}// Analytics\nconst cart=window.shopXtools?.cart;if(!cart){console.warn(\"No cart found.\");return;// Exit if no cart is available\n}// Check if lines is defined and is an array\nconst lines=cart.lines?.edges||[];if(!Array.isArray(lines)){console.error(\"Lines is not an array:\",lines);return;// Exit if lines is not an array\n}const cartItems=lines.map(line=>line.node)// Assuming line.node contains the item details\n;// const value = parseFloat(cartItems.reduce((total, item) => total + parseFloat(item.cost.totalAmount.amount) * item.quantity, 0).toFixed(2));\n// const currency = cartItems.length > 0 ? cartItems[0].cost.totalAmount.currencyCode : 'USD';\nconst value=cart?.cost.subtotalAmount.amount;const currency=cart?.cost.subtotalAmount.currencyCode;const items=cartItems.map(item=>{const unitAmount=parseFloat(item.cost?.amountPerQuantity?.amount??(item.cost?.subtotalAmount?.amount&&item.quantity?(parseFloat(item.cost.subtotalAmount.amount)/item.quantity).toFixed(2):\"0\"));return{item_id:item.merchandise.id?.split(\"/\").pop()||\"\",item_name:item.merchandise.product?.title||item.merchandise.title||\"\",item_variant:item.merchandise.title||\"\",price:unitAmount,quantity:item.quantity,item_brand:item.merchandise.product?.vendor||null,item_category:item.merchandise.product?.productType||null,// TagHound compatibility\nSKU:item.merchandise.id?.split(\"/\").pop()||\"\",\"Item Name\":item.merchandise.product?.title||item.merchandise.title||\"\"};});// Google Analytics tracking\nif(typeof window.fcTrackGAEvent===\"function\"){// console.log(\"Tracking Begin Checkout - google:\", {\n//     currency,\n//     value,\n//     items,\n// })\nconst gaPayload={currency,value,items};window.fcTrackGAEvent(\"begin_checkout\",gaPayload);}// Meta Pixel tracking\ntry{trackFacebookPixelInitiateCheckout({content_ids:items.map(item=>item.item_id),value:value,currency:currency,num_items:items.reduce((total,item)=>total+item.quantity,0),content_name:\"Checkout\",useBeacon:true});}catch(error){console.warn(\"Facebook Pixel tracking failed, continuing with checkout:\",error);}let finalCheckoutUrl=window.fcEnhancedCheckoutUrl||checkoutUrl;// Only proceed with tracking params and language if we have a valid checkout URL\nif(finalCheckoutUrl){finalCheckoutUrl=appendAllTrackingParamsToUrl(finalCheckoutUrl);finalCheckoutUrl=appendLanguageToUrl(finalCheckoutUrl);// Clear all product-specific attributes after successful checkout redirect\nfor(let i=0;i<sessionStorage.length;i++){const key=sessionStorage.key(i);if(key?.startsWith(\"shopX_cart_attributes_\")){sessionStorage.removeItem(key);}}// Delay navigation slightly to observe analytics firing\nwindow.location.assign(finalCheckoutUrl);}else{console.error(\"No checkout URL available\");}}catch(error){console.error(\"Error during checkout:\",error);}};const content=Array.isArray(componentInstance)?componentInstance[0]:componentInstance;if(!content||!/*#__PURE__*/React.isValidElement(content)){return /*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:\"#666\",fontSize:\"14px\"},children:\"Connect Instance\"});}return /*#__PURE__*/_jsx(\"div\",{style:{height:\"100%\",width:\"100%\"},children:/*#__PURE__*/cloneElement(content,{style:{...content.props?.style||{},width:\"100%\",height:\"100%\"},onClick:e=>{handleClick(e);if(content.props?.onClick){content.props.onClick(e);}}})});}addPropertyControls(FC_CartCheckoutButton,{componentInstance:{type:ControlType.ComponentInstance,title:\"Instance\",description:\"Connect to your checkout button component off-page (required).\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_CartCheckoutButton\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (c9c30df)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,cx,getFontsFromSharedStyle,RichText,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/bDpIb6bWBTnklNDtcrLw/cOaGt1CxBY0ZYrj1Y5Tx/QON1282q5.js\";const enabledGestures={ZsOstUs6H:{hover:true}};const serializationHash=\"framer-Qv0LI\";const variantClassNames={ZsOstUs6H:\"framer-v-vjm5ke\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={delay:0,duration:.4,ease:[.4,0,.2,1],type:\"tween\"};const transformTemplate1=(_,t)=>`translate(-50%, -50%) ${t}`;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 getProps=({height,id,width,...props})=>{return{...props};};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({defaultVariant:\"ZsOstUs6H\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[sharedStyle.className];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-vjm5ke\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"ZsOstUs6H\",ref:refBinding,style:{backgroundColor:\"var(--token-7cf54614-79de-4f6d-95d3-baa265dfd938, rgb(92, 92, 78))\",...style},variants:{\"ZsOstUs6H-hover\":{backgroundColor:\"var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21))\"}},...addPropertyOverrides({\"ZsOstUs6H-hover\":{\"data-framer-name\":undefined}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-ozljou\",\"data-styles-preset\":\"QON1282q5\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255)))\"},children:\"Proceed to Checkout\"})}),className:\"framer-dhtk7e\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"vlKw_vN9h\",style:{\"--extracted-r6o4lv\":\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({\"ZsOstUs6H-hover\":{transformTemplate:transformTemplate1}},baseVariant,gestureVariant)})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-Qv0LI.framer-oeua25, .framer-Qv0LI .framer-oeua25 { display: block; }\",\".framer-Qv0LI.framer-vjm5ke { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 48px; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: 400px; }\",\".framer-Qv0LI .framer-dhtk7e { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-Qv0LI.framer-v-vjm5ke.hover .framer-dhtk7e { left: 50%; position: absolute; top: 50%; z-index: 1; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 48\n * @framerIntrinsicWidth 400\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"HFcF2tkpw\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerJvGakXKJa=withCSS(Component,css,\"framer-Qv0LI\");export default FramerJvGakXKJa;FramerJvGakXKJa.displayName=\"Checkout\";FramerJvGakXKJa.defaultProps={height:48,width:400};addFonts(FramerJvGakXKJa,[{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\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerJvGakXKJa\",\"slots\":[],\"annotations\":{\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"HFcF2tkpw\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"400\",\"framerIntrinsicHeight\":\"48\",\"framerDisplayContentsDiv\":\"false\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./JvGakXKJa.map","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useCallback,useEffect,useMemo,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{get}from\"lodash-es\";import{useIsBrowser}from\"https://framerusercontent.com/modules/ncBs5KPMI9I5GEta13fn/zGXDjuZapa1SGy6D8P5e/IsBrowser.js\";import{knownCurrenciesWithCodeAsSymbol}from\"https://framerusercontent.com/modules/k9s4cejdkBGDjmzudhzM/18cq93eooqM4YmdbL7E2/currencyMaps.js\";import{getLocaleFromCountry}from\"https://framerusercontent.com/modules/vC6fzbfO83MgBPIhn5zl/DUlbmWuOELzEUenVmv3G/locales.js\";// Helper function to check if a currency's symbol is the same as its code\nconst isCurrencySymbolSameAsCode=currencyCode=>{// For some currencies like CHF, the browser might use the code as the symbol\nif(!currencyCode)return false;if(knownCurrenciesWithCodeAsSymbol.includes(currencyCode)){return true;}try{const formatted=new Intl.NumberFormat(undefined,{style:\"currency\",currency:currencyCode,currencyDisplay:\"narrowSymbol\"}).format(0);// Remove digits, decimal points, and common formatting characters\nconst cleanFormatted=formatted.replace(/[0-9.,\\s]/g,\"\");// Check if what remains is the currency code\nreturn cleanFormatted===currencyCode;}catch(e){return false;}};/**\n * @framerDisableUnlink\n */export default function FC_ProductPrice(props){const{shopifyProductID,canvasPrice,format:{showCurrency,showSymbol,showDecimals,currencyCode}={},fromText=\"from\"}=props;const isBrowser=useIsBrowser();const[product,setProduct]=useState();const[activeVariant,setActiveVariant]=useState();const[subscriptionPrice,setSubscriptionPrice]=useState(()=>{if(typeof window!==\"undefined\"){const persisted=window.__fc_activeSubscription?.[shopifyProductID];if(persisted?.price)return persisted.price;}return null;});const[selectedCurrency,setSelectedCurrency]=useState(\"\");const[selectedCountryCode,setSelectedCountryCode]=useState(\"\");const[selectedCountry,setSelectedCountry]=useState(\"\");const[isLoadingPrice,setIsLoadingPrice]=useState(false);const[partialSelections,setPartialSelections]=useState({});const[variantSelectorAction,setVariantSelectorAction]=useState(\"\");const[waitingForVariantSelection,setWaitingForVariantSelection]=useState(false);// PERFORMANCE OPTIMIZATION: Progressive loading state\n// - Show prices immediately for fast perceived performance\n// - Compute ranges in background using requestIdleCallback\n// - Cache computed ranges to avoid recalculation\nconst[isRangeComputed,setIsRangeComputed]=useState(false);const[computedPriceRange,setComputedPriceRange]=useState({min:null,max:null});// Compute product price range from variants when product.priceRange is missing/partial\nconst getProductPriceRange=useCallback((p,useCompareAt=false)=>{if(!p)return{min:null,max:null};// Prefer product-level range when available\nconst rangePath=useCompareAt?\"compareAtPriceRange\":\"priceRange\";const minFromProduct=get(p,`${rangePath}.minVariantPrice.amount`);const maxFromProduct=get(p,`${rangePath}.maxVariantPrice.amount`);let minVal=minFromProduct?parseFloat(minFromProduct):null;let maxVal=maxFromProduct?parseFloat(maxFromProduct):null;if(minVal===null||isNaN(minVal)||maxVal===null||isNaN(maxVal)){// OPTIMIZED: Use reduce for better performance on large variant lists\nconst edges=p?.variants?.edges||[];if(edges.length>0){const{min,max}=edges.reduce((acc,{node:v})=>{if(!v)return acc;const fieldPath=useCompareAt?\"compareAtPrice.amount\":\"price.amount\";const amtStr=get(v,fieldPath);const amt=amtStr?parseFloat(amtStr):NaN;if(!isNaN(amt)&&amt>0){if(acc.min===null||amt<acc.min)acc.min=amt;if(acc.max===null||amt>acc.max)acc.max=amt;}return acc;},{min:null,max:null});minVal=min;maxVal=max;}}return{min:typeof minVal===\"number\"&&!isNaN(minVal)?minVal:null,max:typeof maxVal===\"number\"&&!isNaN(maxVal)?maxVal:null};},[selectedCurrency]);// Progressive range computation - compute in background after initial render\nuseEffect(()=>{if(!product||isRangeComputed)return;// Use requestIdleCallback for non-blocking computation\nconst computeRange=()=>{const range=getProductPriceRange(product,false);setComputedPriceRange(range);setIsRangeComputed(true);};// Delay computation to prioritize initial render\nif(\"requestIdleCallback\"in window){requestIdleCallback(computeRange,{timeout:200});}else{// Fallback for browsers without requestIdleCallback\nsetTimeout(computeRange,100);}},[product,isRangeComputed,getProductPriceRange]);// Reset range computation when product changes\nuseEffect(()=>{if(product){setIsRangeComputed(false);setComputedPriceRange({min:null,max:null});}},[product]);// Initialize currency and country code on page load\nuseEffect(()=>{if(!isBrowser)return;const storedCurrency=localStorage.getItem(\"selectedCurrency\");const storedCountryCode=localStorage.getItem(\"selectedCountryCode\");const storedCountry=localStorage.getItem(\"selectedCountry\");setSelectedCurrency(storedCurrency||\"USD\");setSelectedCountryCode(storedCountryCode||\"US\");setSelectedCountry(storedCountry||\"United States\");},[isBrowser]);// Handle variant changes\nconst handleVariantChange=useCallback(async e=>{// Check for purchase action flag - if this is a purchase action, don't update variant state\nif(e.detail?.isPurchaseAction){//console.log(\"Purchase action detected, returning\", e.detail?.isPurchaseAction)\nreturn;}if(!e.detail||e.detail.productId!==`gid://shopify/Product/${shopifyProductID}`){return;}// console.log(\"variantSelectorAction\", e.detail.onClickAction)\nsetVariantSelectorAction(e.detail.onClickAction);// Clear waiting state when variant changes are received\nsetWaitingForVariantSelection(false);//console.log(\"Price component: Variant change event received, clearing wait state\")\n//console.log(\"handleVariantChange\", e.detail)\nsetIsLoadingPrice(true);try{// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);// Find the matching variant in the current product data\nconst matchingVariant=_matchingProduct.node?.variants?.edges?.find(({node})=>node.selectedOptions.every(option=>e.detail.selectedOptions.find(detailOption=>detailOption.name===option.name&&detailOption.value===option.value)));if(matchingVariant){if(e.detail.onClickAction===\"purchase\"){setActiveVariant(null);setPartialSelections({[e.detail.selectedOptions[0].name]:e.detail.selectedOptions[0].value});}else if(e.detail?.isCompleteVariant===false){// Partial selection: keep partial range behavior\nsetActiveVariant(null);if(Array.isArray(e.detail.selectedOptions)){const partial={};e.detail.selectedOptions.forEach(opt=>{if(opt?.name)partial[opt.name]=opt.value;});setPartialSelections(partial);}}else{setActiveVariant(matchingVariant.node);setPartialSelections({});}}}}catch(error){// Fallback\nif(e.detail?.isCompleteVariant){setActiveVariant(e.detail);if(e.detail.onClickAction!==\"purchase\"){setPartialSelections({});}}else{setActiveVariant(null);if(Array.isArray(e.detail?.selectedOptions)){const partial={};e.detail.selectedOptions.forEach(opt=>{if(opt?.name)partial[opt.name]=opt.value;});setPartialSelections(partial);}}}finally{setIsLoadingPrice(false);}},[shopifyProductID]);// Handle currency changes\nconst handleCurrencyChange=useCallback(event=>{setIsLoadingPrice(true);const{currency,countryCode,country}=event.detail;setSelectedCurrency(currency);setSelectedCountryCode(countryCode);setSelectedCountry(country);try{// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);// Preserve active variant selection if possible\nif(activeVariant){const matchingVariant=_matchingProduct.node.variants?.edges.find(({node})=>node.selectedOptions.every(option=>activeVariant.selectedOptions.find(activeOption=>activeOption.name===option.name&&activeOption.value===option.value)));if(matchingVariant){setActiveVariant(matchingVariant.node);}}}}catch(error){// Error handling\n}finally{setIsLoadingPrice(false);}},[shopifyProductID,activeVariant]);// Listen for currency changes\nuseEffect(()=>{if(!isBrowser)return;window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[isBrowser,handleCurrencyChange]);// Initial product load\nuseEffect(()=>{if(!isBrowser)return;// Single handler for all product-ready events (both priority and regular)\nconst handleProductsReady=e=>{if(product&&product.id===`gid://shopify/Product/${shopifyProductID}`){return;}if(!Array.isArray(e.detail?.products))return;// console.log('Products ready event received in Price component', e);\nconst matchingProduct=e.detail.products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(matchingProduct){setProduct(matchingProduct.node);// console.log('Product loaded:', matchingProduct.node.title);\nif(matchingProduct.node?.variants?.edges?.length===1){setActiveVariant(matchingProduct.node.variants.edges[0].node);}}};// Add event listeners - single handleProductsReady handles both events\ndocument.addEventListener(\"data__products-ready\",handleProductsReady);document.addEventListener(\"product__active-variant__changed\",handleVariantChange);// Cleanup\nreturn()=>{document.removeEventListener(\"data__products-ready\",handleProductsReady);document.removeEventListener(\"product__active-variant__changed\",handleVariantChange);};},[isBrowser,shopifyProductID,selectedCurrency,selectedCountryCode,product]);const loadProduct=async()=>{try{// console.log('Loading product...');\n// Get products from shopXtools storage\nconst products=Array.isArray(window?.shopXtools?.products)?window.shopXtools.products:[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(_matchingProduct.node);// console.log(\n//   'Product found after immediate initialization:',\n//   _matchingProduct.node?.title\n// );\nif(_matchingProduct.node?.variants?.edges?.length===1){setActiveVariant(_matchingProduct.node.variants.edges[0].node);}}else{// Product not found - request priority fetch\nif(window?.shopXtools?.getProducts){// console.log('Product not found - request priority fetch...');\nwindow.shopXtools.getProducts(shopifyProductID);}}}catch(error){console.error(\"Error loading product:\",error);}};useEffect(()=>{if(!isBrowser)return;loadProduct();},[isBrowser]);// Wait for variant selection events with timeout\nuseEffect(()=>{if(!isBrowser||!product)return;// Only wait for variant selection if it's a multi-variant product\nconst isMultiVariant=product.variants?.edges?.length>1;if(!isMultiVariant)return;// Set waiting state and start timeout\nsetWaitingForVariantSelection(true);// console.log(\"Price component: Waiting for variant selection events...\")\nconst timeout=setTimeout(()=>{// If no variant selection events received within timeout, assume no variant selector\nsetWaitingForVariantSelection(false);//console.log(\"Price component: No variant selection events received, showing product price\")\n},1e3)// 1 second timeout\n;return()=>{clearTimeout(timeout);};},[isBrowser,product]);// Add subscription price listener\nuseEffect(()=>{if(!isBrowser)return;// Check for persisted subscription state that may have been set\n// before this component mounted (solves timing/race on page refresh)\nconst persisted=window.__fc_activeSubscription?.[shopifyProductID];if(persisted?.price&&!subscriptionPrice){setSubscriptionPrice(persisted.price);}const handleSubscriptionPriceUpdate=e=>{// Ignore events for other products\nif(e.detail?.productId&&e.detail.productId!==shopifyProductID)return;if(e.detail?.price){setSubscriptionPrice(e.detail.price);}else{setSubscriptionPrice(null);}};const handleVariantOptionSelected=e=>{//console.log(\"variant_option_selected\", e.detail)\nif(e.detail?.isPurchaseAction){// console.log(\n//     \"Purchase action is true, returning\",\n//     e.detail?.isPurchaseAction\n// )\nreturn;}// Check if this event is for our product\nconst eventProductId=e.detail?.productId;const expectedProductId=`gid://shopify/Product/${shopifyProductID}`;if(eventProductId&&eventProductId!==expectedProductId){//console.log(\"Event not for this product\", eventProductId, expectedProductId)\nreturn;}// Clear waiting state when variant selection events are received\nsetWaitingForVariantSelection(false);//console.log(\"Price component: Variant selection event received, clearing wait state\")\nsetIsLoadingPrice(true);if(e.detail?.optionName&&e.detail?.value){setPartialSelections({[e.detail.optionName]:e.detail.value});//console.log(\"setting partialSelections from individual option\", e.detail.optionName, e.detail.value)\n}setIsLoadingPrice(false);};document.addEventListener(\"subscription__price-update\",handleSubscriptionPriceUpdate);document.addEventListener(\"variant_option_selected\",handleVariantOptionSelected);document.addEventListener(\"__variant_option_selected\",handleVariantOptionSelected);return()=>{document.removeEventListener(\"subscription__price-update\",handleSubscriptionPriceUpdate);document.removeEventListener(\"variant_option_selected\",handleVariantOptionSelected);document.removeEventListener(\"__variant_option_selected\",handleVariantOptionSelected);};},[isBrowser,shopifyProductID]);// Get currency formatting options at component level\nconst _currencyCode=useMemo(()=>{const variantCurrency=get(activeVariant,\"price.currencyCode\");const productCurrency=get(product,\"priceRange.minVariantPrice.currencyCode\");return variantCurrency||productCurrency||\"USD\";},[activeVariant,product]);const showMockValues=useMemo(()=>RenderTarget.current()===RenderTarget.canvas||isBrowser&&window.location.origin.endsWith(\"framercanvas.com\"),[isBrowser]);// Common function to format price based on options\nconst formatPriceWithOptions=(numericPrice,currCode)=>{const symbolSameAsCode=isCurrencySymbolSameAsCode(currCode);// Get locale from selected country code\nconst locale=getLocaleFromCountry(selectedCountryCode);// Log browser user agent for debugging iOS-specific issues\n// if (isBrowser) {\n//     console.log(\"[FC_ProductPrice] Format debug:\", {\n//         userAgent: navigator.userAgent,\n//         isCurrencySymbolSameAsCode: symbolSameAsCode,\n//         currencyCode: currCode,\n//         selectedCountryCode,\n//         locale,\n//         showSymbol,\n//         showCurrency,\n//         showDecimals,\n//     })\n// }\n// Determine if we should show decimals based on the setting\nconst shouldShowDecimals=()=>{if(showDecimals===\"Always show\")return true;if(showDecimals===\"Never show\")return false;if(showDecimals===\"Hide when .00\"){// Check if the decimal part is zero\nreturn numericPrice%1!==0;}return true// Default fallback\n;};const decimalDigits=shouldShowDecimals()?2:0;// If showing neither symbol nor code, just format the number\nif(!showSymbol&&!showCurrency){const formattedNumber=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);return formattedNumber;}// Special case for USD to prevent \"US$\" display in Safari iOS\nif(currCode===\"USD\"&&showSymbol){// Check if running on iOS device\nconst isIOS=isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream;// Format USD manually to avoid the iOS \"US$\" prefix\nif(isIOS){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);let result;if(!showCurrency){result=`$${number}`// Just \"$50\" format\n;}else{result=`$${number} USD`// \"$50 USD\" format\n;}return result;}else{// For non-iOS devices, continue with normal formatting but use\n// a more controlled approach to ensure consistency\nlet result;if(!showCurrency){result=new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}else{const withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);result=`${withSymbol} USD`;}return result;}}// For currencies where symbol is same as code (like CHF)\nif(symbolSameAsCode){// If showing currency code, always use code-first format and ignore symbol\nif(showCurrency&&!showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showSymbol&&!showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showCurrency&&showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const result=`${currCode} ${number}`;return result;}}// For currencies with distinct symbols (like USD with $)\n// If showing only the code (no symbol)\nif(!showSymbol&&showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);// For normal currencies, show code after the number\nconst result=`${number} ${currCode}`;return result;}// If showing only the symbol (no code)\nif(showSymbol&&!showCurrency){const result=new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return result;}// If showing both symbol and code\nconst withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);const result=`${withSymbol} ${currCode}`;return result;};const text=useMemo(()=>{if(!isBrowser)return\"\";// For canvas view, handle the display options directly\nif(typeof RenderTarget!==\"undefined\"&&(RenderTarget.current()===RenderTarget.canvas||showMockValues)){// Parse canvasPrice as range format (e.g., \"200.00-250.00\")\nlet minPrice;let maxPrice;if(canvasPrice){const priceRange=canvasPrice.split(\"-\");if(priceRange.length===2){minPrice=priceRange[0].trim();maxPrice=priceRange[1].trim();}else{// If no range format, use the single price for both min and max\nminPrice=canvasPrice;maxPrice=canvasPrice;}}const numericPrice=parseFloat(minPrice);const numericMaxPrice=parseFloat(maxPrice);const currentCurrencyCode=currencyCode||\"USD\";const formattedPrice=formatPriceWithOptions(numericPrice,currentCurrencyCode);// Handle displayPrice logic for canvas preview\nif(props.displayPrice===\"minimum price\"){// If min and max are the same, just show one price (no \"from\" prefix)\nif(Math.abs(numericPrice-numericMaxPrice)<.01){return formattedPrice;}return`${fromText} ${formattedPrice}`;}if(props.displayPrice===\"range\"){const formattedMaxPrice=formatPriceWithOptions(numericMaxPrice,currentCurrencyCode);// If min and max are the same, just show one price\nif(Math.abs(numericPrice-numericMaxPrice)<.01){return formattedPrice;}return`${formattedPrice} - ${formattedMaxPrice}`;}return formattedPrice;}// For live view, use the selected currency or preview currency\nconst amount=subscriptionPrice||activeVariant&&get(activeVariant,\"price.amount\");if(!amount&&!activeVariant&&!product?.priceRange){return\"\";}const currentCurrencyCode=selectedCurrency||currencyCode||\"USD\";// Use cached range if available, otherwise compute on-demand\nconst range=computedPriceRange.min!==null?computedPriceRange:getProductPriceRange(product,false);const{min:computedMin,max:computedMax}=range;// FAST PATH: If we have an amount (subscription or active variant), format it immediately\nif(amount){const numericPrice=parseFloat(amount);if(isNaN(numericPrice))return\"\";const formattedPrice=formatPriceWithOptions(numericPrice,currentCurrencyCode);return formattedPrice;}// FAST PATH: Single variant products - show price immediately\nif(product?.variants?.edges?.length===1&&!activeVariant){const variant=product.variants.edges[0].node;if(variant?.price?.amount){const numericPrice=parseFloat(variant.price.amount);if(!isNaN(numericPrice)){return formatPriceWithOptions(numericPrice,currentCurrencyCode);}}}// Handle partial selections (when user selects only some variant options)\nconst hasPartialSelections=Object.keys(partialSelections).length>0;const hasCompleteVariant=activeVariant&&activeVariant.selectedOptions?.length>0;//console.log(\"hasPartialSelections\", hasPartialSelections)\n//console.log(\"hasCompleteVariant\", hasCompleteVariant)\n//console.log(\"product\", product)\n//console.log(\"partialSelections\", partialSelections)\nif(hasPartialSelections&&!hasCompleteVariant&&product?.variants?.edges?.length&&variantSelectorAction!==\"purchase\"){// Filter variants that match the partial selections\nconst matchingVariants=product.variants.edges.filter(({node:variant})=>{return variant.selectedOptions.every(option=>{// If this option is in our partial selections, it must match\nif(partialSelections[option.name]){return partialSelections[option.name]===option.value;}// If not in partial selections, any value is fine\nreturn true;});});// console.log(\"matchingVariants\", matchingVariants)\nif(matchingVariants.length>0){//console.log(\"matchingVariants\", matchingVariants)\n// Calculate min and max prices for matching variants\nconst prices=matchingVariants.map(({node:variant})=>parseFloat(variant.price?.amount||\"0\")).filter(price=>price>0);if(prices.length>0){const minPrice=Math.min(...prices);const maxPrice=Math.max(...prices);const formattedMinPrice=formatPriceWithOptions(minPrice,currentCurrencyCode);if(props.displayPrice===\"range\"){// If min and max are the same, just show one price\nif(Math.abs(minPrice-maxPrice)<.01){return formattedMinPrice;}const formattedMaxPrice=formatPriceWithOptions(maxPrice,currentCurrencyCode);return`${formattedMinPrice} - ${formattedMaxPrice}`;}if(props.displayPrice===\"minimum price\"){// If min and max are the same, just show one price (no \"from\" prefix)\nif(Math.abs(minPrice-maxPrice)<.01){return formattedMinPrice;}return`${fromText} ${formattedMinPrice}`;}}}}// Handle price range display logic for complete product (no active variant)\nif(!activeVariant&&product?.priceRange||variantSelectorAction===\"purchase\"&&product?.priceRange){// If we're waiting for variant selection, don't show product price\nif(waitingForVariantSelection){return\"\";}// PROGRESSIVE ENHANCEMENT: Show min price immediately, enhance with range when computed\nif(computedMin){const formattedMinPrice=formatPriceWithOptions(computedMin,currentCurrencyCode);// If we have both min and max, show range\nif(computedMax&&Math.abs(computedMin-computedMax)>.01){if(props.displayPrice===\"range\"){const formattedMaxPrice=formatPriceWithOptions(computedMax,currentCurrencyCode);return`${formattedMinPrice} - ${formattedMaxPrice}`;}if(props.displayPrice===\"minimum price\"){// If min and max are the same, just show one price (no \"from\" prefix)\nif(Math.abs(computedMin-computedMax)<.01){return formattedMinPrice;}return`${fromText} ${formattedMinPrice}`;}}// Single price or fallback\nif(props.displayPrice===\"range\"){return formattedMinPrice;}// If min and max are the same, just show one price (no \"from\" prefix)\nif(computedMax&&Math.abs(computedMin-computedMax)<.01){return formattedMinPrice;}return`${fromText} ${formattedMinPrice}`;}// FALLBACK: Use product-level range if available\nconst productMinPrice=get(product,\"priceRange.minVariantPrice.amount\");const productMaxPrice=get(product,\"priceRange.maxVariantPrice.amount\");if(productMinPrice){const numericMinPrice=parseFloat(productMinPrice);if(!isNaN(numericMinPrice)&&numericMinPrice>0){const formattedMinPrice=formatPriceWithOptions(numericMinPrice,currentCurrencyCode);if(props.displayPrice===\"range\"){if(productMaxPrice){const numericMaxPrice=parseFloat(productMaxPrice);if(!isNaN(numericMaxPrice)&&numericMaxPrice>0&&Math.abs(numericMinPrice-numericMaxPrice)>.01){const formattedMaxPrice=formatPriceWithOptions(numericMaxPrice,currentCurrencyCode);return`${formattedMinPrice} - ${formattedMaxPrice}`;}}return formattedMinPrice;}// If min and max are the same, just show one price (no \"from\" prefix)\nif(productMaxPrice){const numericMaxPrice=parseFloat(productMaxPrice);if(!isNaN(numericMaxPrice)&&Math.abs(numericMinPrice-numericMaxPrice)<.01){return formattedMinPrice;}}return`${fromText} ${formattedMinPrice}`;}}}// Absolute last fallback: try active variant again or show nothing\nreturn\"\";},[isBrowser,showMockValues,activeVariant,product,canvasPrice,showCurrency,showSymbol,currencyCode,showDecimals,selectedCurrency,selectedCountryCode,subscriptionPrice,props.displayPrice,partialSelections,variantSelectorAction,fromText,waitingForVariantSelection,getProductPriceRange]);const compareAtPrice=useMemo(()=>{// For partial selections (variant groups), check if any matching variants have compareAtPrice\nif(Object.keys(partialSelections).length>0&&product?.variants?.edges?.length){const matchingVariants=product.variants.edges.filter(({node:variant})=>{return variant.selectedOptions.every(option=>{if(partialSelections[option.name]){return partialSelections[option.name]===option.value;}return true;});});// Check if ALL matching variants have a valid compareAtPrice\nconst allMatchingVariantsHaveComparePrice=matchingVariants.every(({node:variant})=>{const compareAmount=get(variant,\"compareAtPrice.amount\");return compareAmount&&parseFloat(compareAmount)>0;});// If not all matching variants have compareAtPrice, return empty string\nif(!allMatchingVariantsHaveComparePrice){return\"\";}// If all matching variants have compareAtPrice, use the minimum for consistency\nconst comparePrices=matchingVariants.map(({node:variant})=>parseFloat(get(variant,\"compareAtPrice.amount\")||\"0\")).filter(price=>price>0);if(comparePrices.length>0){const minComparePrice=Math.min(...comparePrices);const currentCurrencyCode=selectedCurrency||currencyCode||\"USD\";return formatPriceWithOptions(minComparePrice,currentCurrencyCode);}}// For active variant, use its compareAtPrice\nif(activeVariant){const amount=get(activeVariant,\"compareAtPrice.amount\");if(!amount)return\"\";const numericPrice=parseFloat(amount);if(isNaN(numericPrice)||numericPrice<=0)return\"\";const currentCurrencyCode=selectedCurrency||currencyCode||\"USD\";return formatPriceWithOptions(numericPrice,currentCurrencyCode);}// For product level (no variant selected), check if ALL variants have compareAtPrice\nif(product?.variants?.edges?.length){const allVariantsHaveComparePrice=product.variants.edges.every(({node:variant})=>{const compareAmount=get(variant,\"compareAtPrice.amount\");return compareAmount&&parseFloat(compareAmount)>0;});// If not all variants have compareAtPrice, don't show sale styling\nif(!allVariantsHaveComparePrice){return\"\";}// If all variants have compareAtPrice, use the product-level compareAtPriceRange\nconst amount=get(product,\"compareAtPriceRange.minVariantPrice.amount\");if(!amount)return\"\";const numericPrice=parseFloat(amount);if(isNaN(numericPrice)||numericPrice<=0)return\"\";const currentCurrencyCode=selectedCurrency||currencyCode||\"USD\";return formatPriceWithOptions(numericPrice,currentCurrencyCode);}return\"\";},[activeVariant,product,partialSelections,currencyCode,showCurrency,showSymbol,showDecimals,selectedCurrency,selectedCountryCode,showMockValues,props.format]);const numericValue=useMemo(()=>parseFloat(compareAtPrice.replace(/[^\\d.-]/g,\"\")),[compareAtPrice]);const hasValidCompareAtPrice=!isNaN(numericValue)&&numericValue>0;const shouldDisplay=useMemo(()=>{if(showMockValues)return true;if(!text)return false;const value=parseFloat(text.replace(/[^\\d.-]/g,\"\"));return!isNaN(value)&&value>0;},[text,showMockValues]);const computedStyles=useMemo(()=>{const baseStyles={margin:0,padding:0,lineHeight:1,whiteSpace:\"nowrap\",display:\"inline-block\",width:\"auto\"};const priceStyles=hasValidCompareAtPrice?props.saleFont:props.regularFont;const priceColor=hasValidCompareAtPrice?props.saleColor:props.regularColor;return{...baseStyles,...priceStyles,color:priceColor};},[hasValidCompareAtPrice,props.saleFont,props.regularFont,props.saleColor,props.regularColor]);// console.log(\"Text\", text)\n// // Price calculation logging\n// useEffect(() => {\n//     console.log(\"[FC_ProductPrice] Price State Update:\", {\n//         activeVariant,\n//         product,\n//         selectedCurrency,\n//         subscriptionPrice,\n//     })\n// }, [activeVariant, product, selectedCurrency, subscriptionPrice])\n// useEffect(() => {\n//     console.log(\"Active variant updated:\", activeVariant);\n// }, [activeVariant]);\n// Return placeholder during SSR\nif(!isBrowser||isLoadingPrice){return /*#__PURE__*/_jsx(\"div\",{style:{display:\"none\"}});}// Progressive enhancement: Show loading state only when we have no data at all\nconst shouldShowLoading=!product&&!activeVariant&&!subscriptionPrice&&!showMockValues;if(shouldShowLoading){return /*#__PURE__*/_jsx(\"div\",{style:{display:\"none\"}});}// Show progressive loading indicator when computing ranges\nconst isComputingRange=product&&!isRangeComputed&&product.variants?.edges?.length>1;return /*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-block\",maxWidth:\"100%\",width:\"auto\",whiteSpace:\"nowrap\",overflow:\"visible\",transform:\"none\",transition:\"none\",animation:\"none\",willChange:\"auto\"},children:/*#__PURE__*/_jsxs(\"p\",{style:{...computedStyles,transform:\"none\",transition:\"none\",animation:\"none\",willChange:\"auto\"},children:[text,isComputingRange&&/*#__PURE__*/_jsx(\"span\",{style:{opacity:.6,fontSize:\"0.8em\",marginLeft:\"4px\"},children:\"...\"})]})});}FC_ProductPrice.defaultProps={shopifyProductID:\"\",canvasPrice:\"50.00\",fromText:\"from\",format:{showCurrency:true,showSymbol:true,currencyCode:\"USD\",showDecimals:\"Always show\"}};addPropertyControls(FC_ProductPrice,{shopifyProductID:{type:ControlType.String,title:\"Product ID\",description:\"Connect to CMS (required).\"},canvasPrice:{type:ControlType.String,title:\"Price\",defaultValue:\"50.00\",description:\"Connect to CMS (for canvas preview only).\"},displayPrice:{type:ControlType.Enum,title:\"Varying Prices\",options:[\"minimum price\",\"range\"],optionTitles:[\"Minimum Price\",\"Range\"],defaultValue:\"minimum price\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",description:\"When a product has multiple prices and a variant has not been selected.\"},fromText:{type:ControlType.String,title:\"Prefix\",placeholder:\"from\",defaultValue:\"from\",hidden:props=>props.displayPrice!==\"minimum price\"},format:{type:ControlType.Object,title:\"Format\",controls:{showSymbol:{type:ControlType.Boolean,title:\"Symbol\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"$, \\xa3, €, etc.\"},showCurrency:{type:ControlType.Boolean,title:\"Code\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"USD, EUR, CHF, etc.\"},showDecimals:{type:ControlType.Enum,title:\"Decimals\",defaultValue:\"Always show\",options:[\"Always show\",\"Never show\",\"Hide when .00\"],optionTitles:[\"Always show\",\"Never show\",\"Hide when .00\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},currencyCode:{type:ControlType.Enum,title:\"Preview\",defaultValue:\"USD\",options:[\"USD\",\"EUR\",\"GBP\",\"CHF\",\"JPY\",\"CAD\",\"AUD\",\"CNY\",\"HKD\",\"NZD\",\"SEK\",\"KRW\",\"SGD\",\"NOK\",\"MXN\",\"INR\",\"RUB\",\"ZAR\",\"TRY\",\"BRL\",\"TWD\",\"DKK\",\"PLN\",\"THB\",\"IDR\",\"HUF\",\"CZK\",\"ILS\",\"CLP\",\"PHP\",\"AED\",\"COP\",\"SAR\",\"MYR\",\"RON\"],description:\"Currency is for canvas preview only.\"}}},/** Font and Color Controls */regularFont:{type:ControlType.Font,title:\"Regular\",controls:\"extended\"},regularColor:{type:ControlType.Color,title:\"↳ Color\",defaultValue:\"#000\"},saleFont:{type:ControlType.Font,title:\"Sale\",controls:\"extended\"},saleColor:{type:ControlType.Color,title:\"↳ Color\",defaultValue:\"#FF0000\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductPrice\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductPrice.map","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useCallback,useEffect,useMemo,useRef,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{get}from\"lodash-es\";import{useIsBrowser}from\"https://framerusercontent.com/modules/ncBs5KPMI9I5GEta13fn/zGXDjuZapa1SGy6D8P5e/IsBrowser.js\";import{knownCurrenciesWithCodeAsSymbol}from\"https://framerusercontent.com/modules/k9s4cejdkBGDjmzudhzM/18cq93eooqM4YmdbL7E2/currencyMaps.js\";// Helper function to map country code to appropriate locale\nconst getLocaleFromCountry=countryCode=>{// Default fallback locale\nif(!countryCode)return undefined;// Common country code to locale mappings\nconst countryToLocale={// North America\nUS:\"en-US\",CA:\"en-CA\",QC:\"fr-CA\",// Europe\nGB:\"en-GB\",FR:\"fr-FR\",DE:\"de-DE\",IT:\"it-IT\",ES:\"es-ES\",PT:\"pt-PT\",NL:\"nl-NL\",BE:\"fr-BE\",LU:\"fr-LU\",CH:\"de-CH\",AT:\"de-AT\",SE:\"sv-SE\",NO:\"nb-NO\",DK:\"da-DK\",FI:\"fi-FI\",PL:\"pl-PL\",CZ:\"cs-CZ\",HU:\"hu-HU\",RU:\"ru-RU\",// Asia Pacific\nCN:\"zh-CN\",JP:\"ja-JP\",KR:\"ko-KR\",IN:\"en-IN\",AU:\"en-AU\",NZ:\"en-NZ\",// Latin America\nMX:\"es-MX\",BR:\"pt-BR\",AR:\"es-AR\",CL:\"es-CL\",CO:\"es-CO\",PE:\"es-PE\",// Middle East & Africa\nAE:\"ar-AE\",SA:\"ar-SA\",ZA:\"en-ZA\",IL:\"he-IL\"};return countryToLocale[countryCode]||undefined;};// Helper function to check if a currency's symbol is the same as its code\nconst isCurrencySymbolSameAsCode=currencyCode=>{// For some currencies like CHF, the browser might use the code as the symbol\nif(!currencyCode)return false;if(knownCurrenciesWithCodeAsSymbol.includes(currencyCode)){return true;}try{const formatted=new Intl.NumberFormat(undefined,{style:\"currency\",currency:currencyCode,currencyDisplay:\"narrowSymbol\"}).format(0);// Remove digits, decimal points, and common formatting characters\nconst cleanFormatted=formatted.replace(/[0-9.,\\s]/g,\"\");// Check if what remains is the currency code\nreturn cleanFormatted===currencyCode;}catch(e){return false;}};/**\n * @framerDisableUnlink\n */export default function FC_ProductPriceCompare(props){const{shopifyProductID,canvasPrice,format:{showCurrency,showSymbol,showDecimals,currencyCode}={},strikethrough,strikethroughColor,strikethroughSize,font,color,compareAtPrefix=\"\"}=props;const[product,setProduct]=useState();const[activeVariant,setActiveVariant]=useState();const[selectedCurrency,setSelectedCurrency]=useState(\"\");const[selectedCountryCode,setSelectedCountryCode]=useState(\"\");const[selectedCountry,setSelectedCountry]=useState(\"\");const[partialSelections,setPartialSelections]=useState({});const[variantSelectorAction,setVariantSelectorAction]=useState(\"\");const isBrowser=useIsBrowser();const normalizeProduct=useCallback(p=>{if(!p)return p;const edges=p?.variants?.edges;if(!Array.isArray(edges)){return{...p,variants:{...p.variants||{},edges:Array.isArray(edges)?edges:[]}};}return p;},[]);// Initialize currency from localStorage on page load\nuseEffect(()=>{if(!isBrowser)return;const storedCurrency=localStorage.getItem(\"selectedCurrency\");const storedCountryCode=localStorage.getItem(\"selectedCountryCode\");const storedCountry=localStorage.getItem(\"selectedCountry\");setSelectedCurrency(storedCurrency||\"USD\");setSelectedCountryCode(storedCountryCode||\"US\");setSelectedCountry(storedCountry||\"United States\");},[isBrowser]);const _currencyCode=useMemo(()=>{const variantCurrency=get(activeVariant,\"price.currencyCode\");const productCurrency=get(product,\"priceRange.minVariantPrice.currencyCode\");return variantCurrency||productCurrency||\"USD\";},[activeVariant,product]);const showMockValues=useMemo(()=>typeof RenderTarget!==\"undefined\"&&(RenderTarget.current()===RenderTarget.canvas||isBrowser&&window.location.origin.endsWith(\"framercanvas.com\")),[isBrowser]);// Cached compareAt range per product/currency\nconst compareRangeCache=useRef(new Map);const getProductCompareRange=useCallback(p=>{if(!p)return{min:null,max:null};const currency=_currencyCode||selectedCurrency||\"USD\";const cacheKey=`${p.id||\"no-id\"}-${currency}-compare`;if(compareRangeCache.current.has(cacheKey)){return compareRangeCache.current.get(cacheKey);}const minFromProduct=get(p,\"compareAtPriceRange.minVariantPrice.amount\");const maxFromProduct=get(p,\"compareAtPriceRange.maxVariantPrice.amount\");let minVal=minFromProduct?parseFloat(minFromProduct):null;let maxVal=maxFromProduct?parseFloat(maxFromProduct):null;if(minVal===null||isNaN(minVal)||maxVal===null||isNaN(maxVal)){const edges=p?.variants?.edges||[];for(let i=0;i<(Array.isArray(edges)?edges.length:0);i++){const v=edges[i]?.node;if(!v)continue;const amtStr=get(v,\"compareAtPrice.amount\");const amt=amtStr?parseFloat(amtStr):NaN;if(!isNaN(amt)&&amt>0){if(minVal===null||amt<minVal)minVal=amt;if(maxVal===null||amt>maxVal)maxVal=amt;}}}const value={min:typeof minVal===\"number\"&&!isNaN(minVal)?minVal:null,max:typeof maxVal===\"number\"&&!isNaN(maxVal)?maxVal:null};compareRangeCache.current.set(cacheKey,value);return value;},[_currencyCode,selectedCurrency]);const productCompareRange=useMemo(()=>getProductCompareRange(product),[product,getProductCompareRange]);// Common function to format price based on options\nconst formatPriceWithOptions=(numericPrice,currCode)=>{const symbolSameAsCode=isCurrencySymbolSameAsCode(currCode);// Get locale from selected country code\nconst locale=getLocaleFromCountry(selectedCountryCode);// Determine if we should show decimals based on the setting\nconst shouldShowDecimals=()=>{if(showDecimals===\"Always show\")return true;if(showDecimals===\"Never show\")return false;if(showDecimals===\"Hide when .00\"){// Check if the decimal part is zero\nreturn numericPrice%1!==0;}return true// Default fallback for boolean value\n;};const decimalDigits=shouldShowDecimals()?2:0;// If showing neither symbol nor code, just format the number\nif(!showSymbol&&!showCurrency){return new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);}// Special case for USD to prevent \"US$\" display in Safari iOS\nif(currCode===\"USD\"&&showSymbol){// Check if running on iOS device\nconst isIOS=isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!(\"MSStream\"in window);// Format USD manually to avoid the iOS \"US$\" prefix\nif(isIOS){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);if(!showCurrency){return`$${number}`// Just \"$50\" format\n;}else{return`$${number} USD`// \"$50 USD\" format\n;}}else{// For non-iOS devices, continue with normal formatting but use\n// a more controlled approach to ensure consistency\nif(!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}else{const withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:\"USD\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} USD`;}}}// For currencies where symbol is same as code (like CHF)\nif(symbolSameAsCode){// If showing currency code, always use code-first format and ignore symbol\nif(showCurrency&&!showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showSymbol&&!showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);const output=`${currCode} ${number}`;return output;}if(showCurrency&&showSymbol){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);return`${currCode} ${number}`;}}// For currencies with distinct symbols (like USD with $)\n// If showing only the code (no symbol)\nif(!showSymbol&&showCurrency){const number=new Intl.NumberFormat(locale,{style:\"decimal\",minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits}).format(numericPrice);// For normal currencies, show code after the number\nreturn`${number} ${currCode}`;}// If showing only the symbol (no code)\nif(showSymbol&&!showCurrency){return new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);}// If showing both symbol and code\nconst withSymbol=new Intl.NumberFormat(locale,{style:\"currency\",currency:currCode,minimumFractionDigits:decimalDigits,maximumFractionDigits:decimalDigits,currencyDisplay:\"narrowSymbol\"}).format(numericPrice);return`${withSymbol} ${currCode}`;};const text=useMemo(()=>{if(!isBrowser)return\"\";// console.log('[ComparePrice] Debug:', {\n//     activeVariant,\n//     compareAtPrice: activeVariant ? get(activeVariant, 'compareAtPrice.amount') : null,\n//     product,\n//     productComparePrice: get(product, 'compareAtPriceRange.minVariantPrice.amount'),\n//     partialSelections,\n//     variantSelectorAction,\n//     // showMockValues,\n//     // selectedCurrency\n// })\n// For canvas view, handle the display options directly\nif(typeof RenderTarget!==\"undefined\"&&(RenderTarget.current()===RenderTarget.canvas||showMockValues)){// Parse canvasPrice as range format (e.g., \"200.00-250.00\")\nlet minPrice;let maxPrice;if(canvasPrice){const priceRange=canvasPrice.split(\"-\");if(Array.isArray(priceRange)&&priceRange.length===2){minPrice=priceRange[0].trim();maxPrice=priceRange[1].trim();}else{// If no range format, use the single price for both min and max\nminPrice=canvasPrice;maxPrice=canvasPrice;}}const numericMinPrice=parseFloat(minPrice);const numericMaxPrice=parseFloat(maxPrice);const currentCurrencyCode=currencyCode||\"USD\";// Apply same logic as product (no active variant) case\n// If min and max are the same, show one price\nif(numericMinPrice===numericMaxPrice&&numericMinPrice>0&&numericMaxPrice>0){const formattedPrice=formatPriceWithOptions(numericMinPrice,currentCurrencyCode);return compareAtPrefix?`${compareAtPrefix} ${formattedPrice}`:formattedPrice;}else{return\"\";}}// For live view, get the compare at price\nconst amount=activeVariant&&get(activeVariant,\"compareAtPrice.amount\");const{min:compMin,max:compMax}=productCompareRange;if(!amount&&!activeVariant&&!product?.compareAtPriceRange&&!(compMin&&compMax))return\"\";const currentCurrencyCode=selectedCurrency||currencyCode||\"USD\";// If we have an amount, format it\nif(amount){const numericPrice=parseFloat(amount);if(isNaN(numericPrice))return\"\";const formattedPrice=formatPriceWithOptions(numericPrice,currentCurrencyCode);return compareAtPrefix?`${compareAtPrefix} ${formattedPrice}`:formattedPrice;}// Handle partial selections (when user selects only some variant options)\nconst hasPartialSelections=Object.keys(partialSelections||{}).length>0;const hasCompleteVariant=activeVariant&&Array.isArray(activeVariant.selectedOptions)&&activeVariant.selectedOptions.length>0;// console.log(\"hasPartialSelections\", hasPartialSelections)\n// console.log(\"hasCompleteVariant\", hasCompleteVariant)\n// console.log(\"product\", product)\n// console.log(\"partialSelections\", partialSelections)\nif(hasCompleteVariant&&variantSelectorAction===\"purchase\"&&product?.variants?.edges?.length){return\"\";}const hasVariantEdges=Array.isArray(product?.variants?.edges)&&(product?.variants?.edges?.length||0)>0;if(hasPartialSelections&&!hasCompleteVariant&&hasVariantEdges){// Filter variants that match the partial selections\nconst matchingVariants=(product?.variants?.edges||[]).filter(({node:variant})=>{return variant.selectedOptions.every(option=>{// If this option is in our partial selections, it must match\nif(partialSelections[option.name]){return partialSelections[option.name]===option.value;}// If not in partial selections, any value is fine\nreturn true;});});if(Array.isArray(matchingVariants)&&matchingVariants.length>0){//console.log(\"matchingVariants\", matchingVariants)\n// Get all compare at prices for matching variants\nconst compareAtPrices=matchingVariants.map(({node:variant})=>get(variant,\"compareAtPrice.amount\")).filter(amount=>amount&&amount!==\"0\"&&amount!==\"0.00\");// If no compare at prices found, return empty\nif(!Array.isArray(compareAtPrices)||compareAtPrices.length===0){//console.log(\"[ComparePrice] (partial selections) no compare at prices found, return empty\")\nreturn\"\";}// Check if all matching variants have compare at prices\nconst allVariantsHaveComparePrice=matchingVariants.every(({node:variant})=>{const comparePrice=get(variant,\"compareAtPrice.amount\");return comparePrice&&comparePrice!==\"0\"&&comparePrice!==\"0.00\";});// If not all variants have compare prices, hide the compare price text\nif(!allVariantsHaveComparePrice){//console.log(\"[ComparePrice] not all matching variants have compare prices, hide compare price text\")\nreturn\"\";}// Convert to numeric values\nconst numericComparePrices=compareAtPrices.map(price=>parseFloat(price)).filter(price=>!isNaN(price)&&price>0);if(!Array.isArray(numericComparePrices)||numericComparePrices.length===0){//console.log(\"[ComparePrice] no numeric compare prices found, return empty\")\nreturn\"\";}// Check if all compare prices are the same\nconst minComparePrice=Math.min(...numericComparePrices);const maxComparePrice=Math.max(...numericComparePrices);const allSamePrice=Math.abs(minComparePrice-maxComparePrice)<.01;if(allSamePrice){// All matching variants have the same compare price, display one price\n//console.log(\"[ComparePrice] all matching variants have the same compare price, display one price\", minComparePrice, currentCurrencyCode)\nconst formattedPrice=formatPriceWithOptions(minComparePrice,currentCurrencyCode);return compareAtPrefix?`${compareAtPrefix} ${formattedPrice}`:formattedPrice;}else{// Prices differ, hide compare price text\n//console.log(\"[ComparePrice] matching variant prices differ, hide compare price text\")\nreturn\"\";}}}// Handle product (no active variant) - check all variants\nif(!activeVariant&&!hasPartialSelections&&hasVariantEdges){// First, check if ALL variants have compare prices\nconst allVariantsHaveComparePrice=(product?.variants?.edges||[]).every(({node:variant})=>{const comparePrice=get(variant,\"compareAtPrice.amount\");return comparePrice&&comparePrice!==\"0\"&&comparePrice!==\"0.00\";});// If not all variants have compare prices, hide the compare price text\nif(!allVariantsHaveComparePrice){//console.log(\"[ComparePrice] not all variants have compare prices, hide compare price text\")\nreturn\"\";}// Use product-level compare range with fallback to computed\nconst numericMinPrice=compMin;const numericMaxPrice=compMax;if(numericMinPrice&&numericMaxPrice){if(Math.abs(numericMinPrice-numericMaxPrice)<.01){const formattedPrice=formatPriceWithOptions(numericMinPrice,currentCurrencyCode);return compareAtPrefix?`${compareAtPrefix} ${formattedPrice}`:formattedPrice;}else{return\"\";}}return\"\";}return\"\";},[isBrowser,showMockValues,activeVariant,product,canvasPrice,showCurrency,showSymbol,currencyCode,showDecimals,selectedCurrency,selectedCountryCode,partialSelections,variantSelectorAction,compareAtPrefix,props.format]);const showComparePrice=useMemo(()=>{if(showMockValues){return canvasPrice&&canvasPrice.trim()!==\"\";}return text&&text.trim()!==\"\";},[showMockValues,canvasPrice,text]);// Listen for currency changes\nuseEffect(()=>{if(!isBrowser)return;const handleCurrencyChange=event=>{// console.log('[ComparePrice] Currency changed:', {\n//     newCurrency: event.detail.currency,\n//     newCountryCode: event.detail.countryCode\n// })\nconst{currency,countryCode,country}=event.detail;setSelectedCurrency(currency);setSelectedCountryCode(countryCode);setSelectedCountry(country);try{// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(normalizeProduct(_matchingProduct.node));// Preserve active variant selection if possible\nif(activeVariant){const edges=_matchingProduct?.node?.variants?.edges||[];const matchingVariant=edges.find(({node})=>{const nodeOpts=Array.isArray(node?.selectedOptions)?node.selectedOptions:[];const activeOpts=Array.isArray(activeVariant?.selectedOptions)?activeVariant.selectedOptions:[];return nodeOpts.every(option=>activeOpts.some(activeOption=>activeOption?.name===option?.name&&activeOption?.value===option?.value));});if(matchingVariant){setActiveVariant(matchingVariant.node);}}}}catch(error){// Error handling\n}};window.addEventListener(\"currency_changed\",handleCurrencyChange);return()=>{window.removeEventListener(\"currency_changed\",handleCurrencyChange);};},[isBrowser,shopifyProductID,activeVariant,selectedCurrency,selectedCountryCode]);useEffect(()=>{if(!isBrowser)return;const handleVariantChange=e=>{// console.log(\"[ComparePrice] Variant changed:\", {\n//     detail: e.detail,\n//     expectedProductId: `gid://shopify/Product/${shopifyProductID}`,\n// })\n// Check for purchase action flag - if this is a purchase action, don't update variant state\nif(e.detail?.isPurchaseAction||e.detail?.onClickAction===\"purchase\"){// console.log(\n//     \"Purchase action detected, returning\",\n//     e.detail?.isPurchaseAction\n// )\nreturn;}try{const expectedProductId=`gid://shopify/Product/${shopifyProductID}`;if(e.detail){if(!e.detail.productId||e.detail.productId!==expectedProductId){return;}}if(e.detail.productId!==expectedProductId){setVariantSelectorAction(e.detail.onClickAction);//console.log(\"variantSelectorAction\", e.detail.onClickAction)\n}// If selection is partial, do not set activeVariant; preserve partial range behavior\nif(e.detail?.isCompleteVariant===false){setActiveVariant(null);if(Array.isArray(e.detail.selectedOptions)){const partial={};e.detail.selectedOptions.forEach(opt=>{if(opt?.name)partial[opt.name]=opt.value;});setPartialSelections(partial);}return;}// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(normalizeProduct(_matchingProduct.node));// Find the matching variant in the current product data\nconst edges=_matchingProduct?.node?.variants?.edges||[];const matchingVariant=edges.find(({node})=>{const nodeOpts=Array.isArray(node?.selectedOptions)?node.selectedOptions:[];const activeOpts=Array.isArray(e.detail?.selectedOptions)?e.detail.selectedOptions:[]//Array.isArray(activeVariant?.selectedOptions) ? activeVariant.selectedOptions : []\n;return nodeOpts.every(option=>activeOpts.some(activeOption=>activeOption?.name===option?.name&&activeOption?.value===option?.value));});if(matchingVariant){if(e.detail.onClickAction===\"purchase\"){setActiveVariant(null);//console.log(\"setting partialSelections for purchase action\", e.detail.selectedOptions[0])\nsetPartialSelections({[e.detail.selectedOptions[0].name]:e.detail.selectedOptions[0].value});}else{setActiveVariant(matchingVariant.node);setPartialSelections({});}}else{// If no exact variant match but event was marked complete, fall back to event detail\n// Otherwise partial branches above already handled\nif(e.detail?.isCompleteVariant){setActiveVariant(e.detail);if(e.detail.onClickAction!==\"purchase\"){setPartialSelections({});}}}}}catch(error){// Error handling without console.error\nif(e.detail?.isCompleteVariant){setActiveVariant(e.detail);if(e.detail.onClickAction!==\"purchase\"){setPartialSelections({});}}else{setActiveVariant(null);if(Array.isArray(e.detail?.selectedOptions)){const partial={};e.detail.selectedOptions.forEach(opt=>{if(opt?.name)partial[opt.name]=opt.value;});setPartialSelections(partial);}}}};const handleProductsReady=e=>{if(Array.isArray(e.detail.products)){const _matchingProduct=e.detail.products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);setProduct(_matchingProduct?normalizeProduct(_matchingProduct.node):null);// If there's only one variant, set it as active\nif(Array.isArray(_matchingProduct?.node?.variants?.edges)&&(_matchingProduct?.node?.variants?.edges?.length||0)===1){setActiveVariant(_matchingProduct.node.variants.edges[0].node);}}};// Add event listener for variant option selections\nconst handleVariantOptionSelected=e=>{//console.log(\"variant_option_selected\", e.detail)\nif(e.detail?.isPurchaseAction){// console.log(\n//     \"Purchase action is true, returning\",\n//     e.detail?.isPurchaseAction\n// )\nreturn;}// Check if this event is for our product\nconst eventProductId=e.detail?.productId;const expectedProductId=`gid://shopify/Product/${shopifyProductID}`;if(eventProductId&&eventProductId!==expectedProductId){//console.log(\"Event not for this product\", eventProductId, expectedProductId)\nreturn;}if(e.detail?.optionName&&e.detail?.value){setPartialSelections({[e.detail.optionName]:e.detail.value});//console.log(\"setting partialSelections from individual option\", e.detail.optionName, e.detail.value)\n}};// Initial product load function\nconst loadProduct=async()=>{try{// Get products from shopXtools storage\nconst products=window.shopXtools?.products||[];const _matchingProduct=products.find(({node:_product})=>_product.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct){setProduct(normalizeProduct(_matchingProduct.node));if(Array.isArray(_matchingProduct.node?.variants?.edges)&&(_matchingProduct?.node?.variants?.edges?.length||0)===1){setActiveVariant(_matchingProduct.node.variants.edges[0].node);}// setActiveVariant(\n//     _matchingProduct.node?.variants?.edges[0].node\n// )\n}}catch(error){// Error handling without console.error\n}};// Call loadProduct on mount\nloadProduct();// Initial check for existing products\nif(window[\"shopXtools\"]?.products){const products=window[\"shopXtools\"].products;if(Array.isArray(products)&&products.length>0){const _matchingProduct=products.find(({node:_product})=>_product?.id===`gid://shopify/Product/${shopifyProductID}`);if(_matchingProduct?.node){setProduct(normalizeProduct(_matchingProduct.node));if(Array.isArray(_matchingProduct.node?.variants?.edges)&&(_matchingProduct?.node?.variants?.edges?.length||0)===1){setActiveVariant(_matchingProduct.node.variants.edges[0].node);}// setActiveVariant(\n//     _matchingProduct.node?.variants?.edges[0].node\n// )\n}else{setProduct(null);}}}// Add event listeners\ndocument.addEventListener(\"data__products-ready\",handleProductsReady);document.addEventListener(\"product__active-variant__changed\",handleVariantChange);document.addEventListener(\"variant_option_selected\",handleVariantOptionSelected);document.addEventListener(\"__variant_option_selected\",handleVariantOptionSelected);// Cleanup\nreturn()=>{document.removeEventListener(\"data__products-ready\",handleProductsReady);document.removeEventListener(\"product__active-variant__changed\",handleVariantChange);document.removeEventListener(\"variant_option_selected\",handleVariantOptionSelected);document.removeEventListener(\"__variant_option_selected\",handleVariantOptionSelected);};},[isBrowser,shopifyProductID,selectedCurrency]);// Return empty div during SSR\nif(!isBrowser){return /*#__PURE__*/_jsx(\"div\",{style:{display:\"none\"}});}// console.log('[ComparePrice] Final render state:', {\n//     showComparePrice,\n//     text,\n//     showMockValues\n// })\n// Always show in canvas view, otherwise only show if there's a compare price\nif(!showComparePrice){return null;}return /*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-block\",maxWidth:\"100%\",width:\"auto\",whiteSpace:\"nowrap\",overflow:\"visible\",transform:\"none\",transition:\"none\",animation:\"none\",willChange:\"auto\"},children:/*#__PURE__*/_jsx(\"p\",{style:{...font,color:color,margin:0,padding:0,lineHeight:1,textDecoration:strikethrough?\"line-through\":\"none\",textDecorationColor:strikethroughColor,textDecorationThickness:strikethrough?`${strikethroughSize}px`:undefined,whiteSpace:\"nowrap\",display:\"inline-block\",width:\"auto\",transform:\"none\",transition:\"none\",animation:\"none\",willChange:\"auto\"},children:text})});}FC_ProductPriceCompare.defaultProps={shopifyProductID:\"\",strikethrough:true,strikethroughColor:\"#000000\",strikethroughSize:1,canvasPrice:\"75.00\",compareAtPrefix:\"\",format:{showCurrency:true,showSymbol:true,currencyCode:\"USD\",showDecimals:\"Always show\"}};addPropertyControls(FC_ProductPriceCompare,{shopifyProductID:{type:ControlType.String,title:\"Product ID\",description:\"Connect to CMS (required).\"},canvasPrice:{type:ControlType.String,title:\"Compare Price\",description:\"Connect to CMS (for canvas preview only).\",defaultValue:\"75.00\"},compareAtPrefix:{type:ControlType.String,title:\"Prefix\",placeholder:\"was\",defaultValue:\"\"},format:{type:ControlType.Object,title:\"Format\",controls:{showSymbol:{type:ControlType.Boolean,title:\"Symbol\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"$, \\xa3, €, etc.\"},showCurrency:{type:ControlType.Boolean,title:\"Code\",defaultValue:true,enabledTitle:\"Show\",disabledTitle:\"Hide\",description:\"USD, EUR, CHF, etc.\"},showDecimals:{type:ControlType.Enum,title:\"Decimals\",defaultValue:\"Always show\",options:[\"Always show\",\"Never show\",\"Hide when .00\"],optionTitles:[\"Always show\",\"Never show\",\"Hide when .00\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},currencyCode:{type:ControlType.Enum,title:\"Preview\",defaultValue:\"USD\",options:[\"USD\",\"EUR\",\"GBP\",\"CHF\",\"JPY\",\"CAD\",\"AUD\",\"CNY\",\"HKD\",\"NZD\",\"SEK\",\"KRW\",\"SGD\",\"NOK\",\"MXN\",\"INR\",\"RUB\",\"ZAR\",\"TRY\",\"BRL\",\"TWD\",\"DKK\",\"PLN\",\"THB\",\"IDR\",\"HUF\",\"CZK\",\"ILS\",\"CLP\",\"PHP\",\"AED\",\"COP\",\"SAR\",\"MYR\",\"RON\"],description:\"Currency on your site is automatic, this is only shown in canvas preview.\"}}},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\"},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000\"},strikethrough:{type:ControlType.Boolean,title:\"Strike\",defaultValue:true},strikethroughSize:{type:ControlType.Number,title:\"↳ Size\",defaultValue:1,min:0,max:8,step:.1,hidden:props=>!props.strikethrough},strikethroughColor:{type:ControlType.Color,title:\"↳ Color\",defaultValue:\"#000000\",hidden:props=>!props.strikethrough}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_ProductPriceCompare\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_ProductPriceCompare.map","// Generated by Framer (fdc01c0)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;Karla-300\",\"GF;Karla-regular\",\"GF;Karla-italic\",\"GF;Karla-300italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Karla\",source:\"google\",style:\"normal\",uiFamilyName:\"Karla\",url:\"https://fonts.gstatic.com/s/karla/v33/qkBIXvYC6trAT55ZBi1ueQVIjQTDppqqEUNLR7fHGw.woff2\",weight:\"300\"},{cssFamilyName:\"Karla\",source:\"google\",style:\"normal\",uiFamilyName:\"Karla\",url:\"https://fonts.gstatic.com/s/karla/v33/qkBIXvYC6trAT55ZBi1ueQVIjQTD-JqqEUNLR7fHGw.woff2\",weight:\"400\"},{cssFamilyName:\"Karla\",source:\"google\",style:\"italic\",uiFamilyName:\"Karla\",url:\"https://fonts.gstatic.com/s/karla/v33/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNlCV0lKZbLXGxGR.woff2\",weight:\"400\"},{cssFamilyName:\"Karla\",source:\"google\",style:\"italic\",uiFamilyName:\"Karla\",url:\"https://fonts.gstatic.com/s/karla/v33/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNkcV0lKZbLXGxGR.woff2\",weight:\"300\"}]}];export const css=['.framer-v4NmK .framer-styles-preset-1m06efr:not(.rich-text-wrapper), .framer-v4NmK .framer-styles-preset-1m06efr.rich-text-wrapper p { --framer-font-family: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-bold: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-italic: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 14px; --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: 300; --framer-font-weight-bold: 400; --framer-font-weight-bold-italic: 400; --framer-font-weight-italic: 300; --framer-letter-spacing: 0.01em; --framer-line-height: 140%; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #fefef3; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }','@media (max-width: 1199px) and (min-width: 810px) { .framer-v4NmK .framer-styles-preset-1m06efr:not(.rich-text-wrapper), .framer-v4NmK .framer-styles-preset-1m06efr.rich-text-wrapper p { --framer-font-family: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-bold: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-italic: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 12px; --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: 300; --framer-font-weight-bold: 400; --framer-font-weight-bold-italic: 400; --framer-font-weight-italic: 300; --framer-letter-spacing: 0.01em; --framer-line-height: 140%; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #fefef3; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }','@media (max-width: 809px) and (min-width: 0px) { .framer-v4NmK .framer-styles-preset-1m06efr:not(.rich-text-wrapper), .framer-v4NmK .framer-styles-preset-1m06efr.rich-text-wrapper p { --framer-font-family: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-bold: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-italic: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 10px; --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: 300; --framer-font-weight-bold: 400; --framer-font-weight-bold-italic: 400; --framer-font-weight-italic: 300; --framer-letter-spacing: 0.01em; --framer-line-height: 140%; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #fefef3; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; } }'];export const className=\"framer-v4NmK\";\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 (c9c30df)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,getFontsFromSharedStyle,getLoadingLazyAtYPosition,Image as Image1,RichText,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import FC_ProductPrice from\"https://framerusercontent.com/modules/N07JJZfuMtyHijtiRRgH/E4KLlxWtRCBXncxm1cnX/FC_ProductPrice.js\";import FC_ProductPriceCompare from\"https://framerusercontent.com/modules/ZipJAXrtSkBsdbTSry5q/KCNDDioMjkqBn9yvxlVd/FC_ProductPriceCompare.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/zXXQRjTBqsMcvaFCm7UR/qliEQkK8ZemHpyI0Fday/mxGhnmEi5.js\";const FC_ProductPriceFonts=getFonts(FC_ProductPrice);const FC_ProductPriceCompareFonts=getFonts(FC_ProductPriceCompare);const serializationHash=\"framer-OcuWR\";const variantClassNames={sDv_X1Ke_:\"framer-v-s4vttd\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const DmvNDRk5x=undefined;const PrW4ztQTi=undefined;const wqMklHd3Y=undefined;const O1zujE7T8=undefined;const tGpD1UqIK=undefined;const zunKPut7z=undefined;const G9QDbeA5A=undefined;const i_iHGndhi=undefined;const nfnoinWjH=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};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 getProps=({click,comparePrice,comparisonColor,height,id,image1,price,priceColor,productID,strikeColor,title,width,...props})=>{return{...props,DmvNDRk5x:click??props.DmvNDRk5x,G9QDbeA5A:comparePrice??props.G9QDbeA5A??\"0.00\",i_iHGndhi:comparisonColor??props.i_iHGndhi??\"var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.6))\",nfnoinWjH:strikeColor??props.nfnoinWjH??\"var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.59))\",O1zujE7T8:productID??props.O1zujE7T8??\"9913937494357\",PrW4ztQTi:image1??props.PrW4ztQTi,tGpD1UqIK:price??props.tGpD1UqIK??\"79.99\",wqMklHd3Y:title??props.wqMklHd3Y??\"Slate Stride\",zunKPut7z:priceColor??props.zunKPut7z??\"var(--token-3db24570-ef16-40e3-8d94-de55aa37b6f2, rgb(92, 92, 78))\"};};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,PrW4ztQTi,wqMklHd3Y,O1zujE7T8,tGpD1UqIK,G9QDbeA5A,zunKPut7z,i_iHGndhi,nfnoinWjH,DmvNDRk5x,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"sDv_X1Ke_\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1jg012n=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(DmvNDRk5x){const res=await DmvNDRk5x(...args);if(res===false)return false;}});const sharedStyleClassNames=[sharedStyle.className];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__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-s4vttd\",className,classNames),\"data-framer-name\":\"Default\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"sDv_X1Ke_\",onTap:onTap1jg012n,ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1dewm7n\",\"data-framer-name\":\"Image\",layoutDependency:layoutDependency,layoutId:\"sTcLvWYBj\",children:/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fit\",loading:getLoadingLazyAtYPosition((componentViewport?.y||0)+0+0+0),sizes:`max(${componentViewport?.width||\"100vw\"}, 1px)`,...toResponsiveImage(PrW4ztQTi),...{positionX:\"center\",positionY:\"center\"}},className:\"framer-1oi4ab4\",fitImageDimension:\"height\",layoutDependency:layoutDependency,layoutId:\"iQxX07860\"})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-pbqkqp\",\"data-framer-name\":\"Text\",layoutDependency:layoutDependency,layoutId:\"kaduSJl4Y\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-1m06efr\",\"data-styles-preset\":\"mxGhnmEi5\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-4fce9806-a5d7-4afc-a7fc-ce108be17a46, rgb(151, 151, 134)))\"},children:\"Slate Stride\"})}),className:\"framer-ynz5lp\",\"data-framer-name\":\"Title\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"j0fdtmwZA\",style:{\"--extracted-r6o4lv\":\"var(--token-4fce9806-a5d7-4afc-a7fc-ce108be17a46, rgb(151, 151, 134))\"},text:wqMklHd3Y,verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-z4n7aw\",\"data-framer-name\":\"Price\",layoutDependency:layoutDependency,layoutId:\"EAFk2gCFu\",children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-sil81u-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"yg9Ck9F8G-container\",nodeId:\"yg9Ck9F8G\",rendersWithMotion:true,scopeId:\"xj1yTVEvn\",children:/*#__PURE__*/_jsx(FC_ProductPrice,{canvasPrice:tGpD1UqIK,displayPrice:\"minimum price\",format:{currencyCode:\"USD\",showCurrency:false,showDecimals:\"Always show\",showSymbol:true},fromText:\"from\",height:\"100%\",id:\"yg9Ck9F8G\",layoutId:\"yg9Ck9F8G\",regularColor:zunKPut7z,regularFont:{fontFamily:'\"Instrument Sans\", \"Instrument Sans Placeholder\", sans-serif',fontFeatureSettings:\"'ss01' on, 'ss02' on, 'ss03' on, 'ss04' on\",fontSize:\"13px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"110%\"},saleColor:\"var(--token-63eb5426-0520-4a32-bacd-b64a01e98808, rgb(240, 25, 25))\",saleFont:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"-0.03em\",lineHeight:\"110%\"},shopifyProductID:O1zujE7T8,width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1boqdjj-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"VcQyrf14M-container\",nodeId:\"VcQyrf14M\",rendersWithMotion:true,scopeId:\"xj1yTVEvn\",children:/*#__PURE__*/_jsx(FC_ProductPriceCompare,{canvasPrice:G9QDbeA5A,color:i_iHGndhi,compareAtPrefix:\"\",font:{fontFamily:'\"Instrument Sans\", \"Instrument Sans Placeholder\", sans-serif',fontFeatureSettings:\"'ss03' on, 'ss02' on, 'ss01' on, 'ss04' on\",fontSize:\"13px\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"0em\",lineHeight:\"110%\"},format:{currencyCode:\"EUR\",showCurrency:false,showDecimals:\"Always show\",showSymbol:true},height:\"100%\",id:\"VcQyrf14M\",layoutId:\"VcQyrf14M\",shopifyProductID:O1zujE7T8,strikethrough:true,strikethroughColor:nfnoinWjH,strikethroughSize:1,width:\"100%\"})})})]})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-OcuWR.framer-m7kvl9, .framer-OcuWR .framer-m7kvl9 { display: block; }\",\".framer-OcuWR.framer-s4vttd { align-content: flex-start; align-items: flex-start; cursor: pointer; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 160px; }\",\".framer-OcuWR .framer-1dewm7n { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-OcuWR .framer-1oi4ab4 { flex: 1 0 0px; height: auto; position: relative; width: 1px; }\",\".framer-OcuWR .framer-pbqkqp { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-OcuWR .framer-ynz5lp { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-OcuWR .framer-z4n7aw { align-content: flex-end; align-items: flex-end; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 4px; height: min-content; justify-content: flex-start; overflow: hidden; padding: 0px; position: relative; width: min-content; }\",\".framer-OcuWR .framer-sil81u-container, .framer-OcuWR .framer-1boqdjj-container { flex: none; height: auto; position: relative; width: auto; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 211\n * @framerIntrinsicWidth 160\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"PrW4ztQTi\":\"image1\",\"wqMklHd3Y\":\"title\",\"O1zujE7T8\":\"productID\",\"tGpD1UqIK\":\"price\",\"G9QDbeA5A\":\"comparePrice\",\"zunKPut7z\":\"priceColor\",\"i_iHGndhi\":\"comparisonColor\",\"nfnoinWjH\":\"strikeColor\",\"DmvNDRk5x\":\"click\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const Framerxj1yTVEvn=withCSS(Component,css,\"framer-OcuWR\");export default Framerxj1yTVEvn;Framerxj1yTVEvn.displayName=\"Cart Product\";Framerxj1yTVEvn.defaultProps={height:211,width:160};addPropertyControls(Framerxj1yTVEvn,{PrW4ztQTi:{title:\"Image 1\",type:ControlType.ResponsiveImage},wqMklHd3Y:{defaultValue:\"Slate Stride\",title:\"Title\",type:ControlType.String},onwqMklHd3YChange:{changes:\"wqMklHd3Y\",type:ControlType.ChangeHandler},O1zujE7T8:{defaultValue:\"9913937494357\",title:\"Product ID\",type:ControlType.String},onO1zujE7T8Change:{changes:\"O1zujE7T8\",type:ControlType.ChangeHandler},tGpD1UqIK:{defaultValue:\"79.99\",title:\"Price\",type:ControlType.String},ontGpD1UqIKChange:{changes:\"tGpD1UqIK\",type:ControlType.ChangeHandler},G9QDbeA5A:{defaultValue:\"0.00\",title:\"Compare Price\",type:ControlType.String},onG9QDbeA5AChange:{changes:\"G9QDbeA5A\",type:ControlType.ChangeHandler},zunKPut7z:{defaultValue:'var(--token-3db24570-ef16-40e3-8d94-de55aa37b6f2, rgb(92, 92, 78)) /* {\"name\":\"Black\"} */',title:\"Price Color\",type:ControlType.Color},i_iHGndhi:{defaultValue:'var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.6)) /* {\"name\":\"Black 60%\"} */',description:\"\",title:\"Comparison Color\",type:ControlType.Color},nfnoinWjH:{defaultValue:'var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.59)) /* {\"name\":\"Black 60%\"} */',title:\"Strike Color\",type:ControlType.Color},DmvNDRk5x:{title:\"Click\",type:ControlType.EventHandler}});addFonts(Framerxj1yTVEvn,[{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:\"Instrument Sans\",source:\"google\",style:\"normal\",uiFamilyName:\"Instrument Sans\",url:\"https://fonts.gstatic.com/s/instrumentsans/v4/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npST3-QfwmS0v3_7Y.woff2\",weight:\"500\"},{cssFamilyName:\"Karla\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Karla\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/6MOEMOPFWU4AQQNFYM2JTAQ5OE5CO7B6/JYWT7H2OZGXL2AV26YXBDIFRRKMGZCZU/DLEJBHKWR5LWHNNHXWFCN6IAQUO5LLH6.woff2\",weight:\"500\"},{cssFamilyName:\"Instrument Sans\",source:\"google\",style:\"normal\",uiFamilyName:\"Instrument Sans\",url:\"https://fonts.gstatic.com/s/instrumentsans/v4/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSTF-QfwmS0v3_7Y.woff2\",weight:\"400\"}]},...FC_ProductPriceFonts,...FC_ProductPriceCompareFonts,...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Framerxj1yTVEvn\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerVariables\":\"{\\\"PrW4ztQTi\\\":\\\"image1\\\",\\\"wqMklHd3Y\\\":\\\"title\\\",\\\"O1zujE7T8\\\":\\\"productID\\\",\\\"tGpD1UqIK\\\":\\\"price\\\",\\\"G9QDbeA5A\\\":\\\"comparePrice\\\",\\\"zunKPut7z\\\":\\\"priceColor\\\",\\\"i_iHGndhi\\\":\\\"comparisonColor\\\",\\\"nfnoinWjH\\\":\\\"strikeColor\\\",\\\"DmvNDRk5x\\\":\\\"click\\\"}\",\"framerAutoSizeImages\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicWidth\":\"160\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"211\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./xj1yTVEvn.map","// Generated by Framer (c9c30df)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ChildrenCanSuspend,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,getFontsFromSharedStyle,Link,PathVariablesContext,queryCache,RichText,SmartComponentScopedContainer,SVG,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useQueryData,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import FC_CartCounter from\"https://framerusercontent.com/modules/4gxKhYDXhQYsHYSbypZW/CwQMBB6veGtRJ77hGsnc/FC_CartCounter.js\";import FC_CartSubtotal from\"https://framerusercontent.com/modules/g7fE5FpUH8BU8KzDDNuK/ev96V8ZMvBdXi4qVNtAQ/FC_CartSubtotal.js\";import X from\"https://framerusercontent.com/modules/iAxRNHJXmCtz5jtRxT8R/oytoJkLlltBnFuqp8PFz/buYx0d6c1.js\";import FC_CartStateController from\"https://framerusercontent.com/modules/iNxQR66txeNh1MBMupeD/14fDVHtX7ZF5JXTR7ee3/FC_CartStateController.js\";import FC_CartProductCard from\"https://framerusercontent.com/modules/oKOqnJyJ3wjpqRFTNCqe/JaPX0gMUPXVoAKRlhepR/FC_CartProductCard.js\";import FC_CartCheckoutButton from\"https://framerusercontent.com/modules/v7LtkkyNjEAQ8EyrCJW6/tND47xWycBAq6ZXOZgJN/FC_CartCheckoutButton.js\";import DetailProduct from\"https://framerusercontent.com/modules/UcPLsekSa4gBbx71LAU1/eCgoQOHi2U9ENUPPCFWt/h2LsD5Qf9.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/bDpIb6bWBTnklNDtcrLw/cOaGt1CxBY0ZYrj1Y5Tx/QON1282q5.js\";import Checkout from\"https://framerusercontent.com/modules/iYLJhvzjvA8lJO8CInvZ/AVrXbJDhexrfTN7tvnkz/JvGakXKJa.js\";import CartProduct from\"https://framerusercontent.com/modules/m194tXuKpNI43TeR2wQA/2OsHhxvkZSagcqQysgij/xj1yTVEvn.js\";const FC_CartCounterFonts=getFonts(FC_CartCounter);const XFonts=getFonts(X);const FC_CartProductCardFonts=getFonts(FC_CartProductCard);const FC_CartSubtotalFonts=getFonts(FC_CartSubtotal);const CheckoutFonts=getFonts(Checkout);const FC_CartCheckoutButtonFonts=getFonts(FC_CartCheckoutButton);const CartProductFonts=getFonts(CartProduct);const FC_CartStateControllerFonts=getFonts(FC_CartStateController);const serializationHash=\"framer-Lng9t\";const variantClassNames={WMSNIZmgo:\"framer-v-1qgisxi\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const oEvKeVlbB=undefined;const xv6C14M0G=undefined;const d3bLhuaeSkwJSfiC06=undefined;const M9qOk4i1kkwJSfiC06=undefined;const Su3wgsAiekwJSfiC06=undefined;const nRUfe0cIOkwJSfiC06=undefined;const OGRmoXl8XkwJSfiC06=undefined;const idkwJSfiC06=undefined;const transition1={duration:0,type:\"tween\"};const transformTemplate1=(_,t)=>`translateX(-50%) ${t}`;const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const query=prequery=>prequery({from:{alias:\"kwJSfiC06\",data:DetailProduct,type:\"Collection\"},limit:{type:\"LiteralValue\",value:4},orderBy:[{collection:\"kwJSfiC06\",name:\"F7sTr8pwV\",type:\"Identifier\"}],select:[{collection:\"kwJSfiC06\",name:\"d3bLhuaeS\",type:\"Identifier\"},{collection:\"kwJSfiC06\",name:\"M9qOk4i1k\",type:\"Identifier\"},{collection:\"kwJSfiC06\",name:\"Su3wgsAie\",type:\"Identifier\"},{collection:\"kwJSfiC06\",name:\"nRUfe0cIO\",type:\"Identifier\"},{collection:\"kwJSfiC06\",name:\"OGRmoXl8X\",type:\"Identifier\"},{collection:\"kwJSfiC06\",name:\"id\",type:\"Identifier\"}]});const query1=()=>({from:{alias:\"kwJSfiC06\",data:DetailProduct,type:\"Collection\"},limit:{type:\"LiteralValue\",value:4},orderBy:[{collection:\"kwJSfiC06\",name:\"F7sTr8pwV\",type:\"Identifier\"}],select:[{collection:\"kwJSfiC06\",name:\"d3bLhuaeS\",type:\"Identifier\"},{collection:\"kwJSfiC06\",name:\"M9qOk4i1k\",type:\"Identifier\"},{collection:\"kwJSfiC06\",name:\"Su3wgsAie\",type:\"Identifier\"},{collection:\"kwJSfiC06\",name:\"nRUfe0cIO\",type:\"Identifier\"},{collection:\"kwJSfiC06\",name:\"OGRmoXl8X\",type:\"Identifier\"},{collection:\"kwJSfiC06\",name:\"id\",type:\"Identifier\"}]});const QueryData=({query,pageSize,children})=>{const data=useQueryData(query);return children(data);};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 getProps=({click,closeCart,height,id,width,...props})=>{return{...props,oEvKeVlbB:click??props.oEvKeVlbB,xv6C14M0G:closeCart??props.xv6C14M0G};};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,oEvKeVlbB,xv6C14M0G,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"WMSNIZmgo\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1ket0yp=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(oEvKeVlbB){const res=await oEvKeVlbB(...args);if(res===false)return false;}});const onTap1s7kqyj=activeVariantCallback(async(...args)=>{if(xv6C14M0G){const res=await xv6C14M0G(...args);if(res===false)return false;}});const DmvNDRk5x1s7kqyj=activeVariantCallback(async(...args)=>{if(xv6C14M0G){const res=await xv6C14M0G(...args);if(res===false)return false;}});const sharedStyleClassNames=[sharedStyle.className];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-1qgisxi\",className,classNames),\"data-framer-name\":\"Variant 1\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"WMSNIZmgo\",onTap:onTap1ket0yp,ref:refBinding,style:{...style},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-bpemsy-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"mnzeM5Ngo-container\",nodeId:\"mnzeM5Ngo\",rendersWithMotion:true,scopeId:\"kQ_xyFkUJ\",children:/*#__PURE__*/_jsx(FC_CartStateController,{Empty:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-a3et4i\",\"data-framer-name\":\"None\",layoutDependency:layoutDependency,layoutId:\"A5hpSgEKh\",style:{backgroundColor:\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\"},children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-17jry9a\",\"data-framer-name\":\"Wrapper\",layoutDependency:layoutDependency,layoutId:\"xxYko1t6w\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-17k5jne\",\"data-border\":true,\"data-framer-name\":\"Top\",layoutDependency:layoutDependency,layoutId:\"b92qy8Edh\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-5cd51282-a57c-464e-be3b-a84a36f4dfa4, rgba(3, 6, 7, 0.08))\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"0px\",backgroundColor:\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\"},children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-ozljou\",\"data-styles-preset\":\"QON1282q5\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)))\"},children:\"Your have no items in the cart\"})}),className:\"framer-jgm45r\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"IjUD7PYK2\",style:{\"--extracted-r6o4lv\":\"var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1dyul16\",\"data-framer-name\":\"X\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"L4tZL4lin\",onTap:onTap1s7kqyj,children:/*#__PURE__*/_jsx(X,{animated:true,className:\"framer-uikn94\",layoutDependency:layoutDependency,layoutId:\"CnYN2I3Z4\",style:{\"--1hq5eo6\":\"var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21))\"},transformTemplate:transformTemplate1})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-sl6qm3\",\"data-framer-name\":\"Slider\",layoutDependency:layoutDependency,layoutId:\"dhq9B5gUo\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-ozljou\",\"data-styles-preset\":\"QON1282q5\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)))\"},children:\"Popular items\"})}),className:\"framer-1spi9js\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"jedWZkOvs\",style:{\"--extracted-r6o4lv\":\"var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-ck3bt4\",layoutDependency:layoutDependency,layoutId:\"kwJSfiC06\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query1(),children:(collection,paginationInfo,loadMore)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection?.map(({d3bLhuaeS:d3bLhuaeSkwJSfiC06,id:idkwJSfiC06,M9qOk4i1k:M9qOk4i1kkwJSfiC06,nRUfe0cIO:nRUfe0cIOkwJSfiC06,OGRmoXl8X:OGRmoXl8XkwJSfiC06,Su3wgsAie:Su3wgsAiekwJSfiC06},index)=>{d3bLhuaeSkwJSfiC06??=\"\";Su3wgsAiekwJSfiC06??=\"\";nRUfe0cIOkwJSfiC06??=\"\";OGRmoXl8XkwJSfiC06??=\"\";return /*#__PURE__*/_jsx(LayoutGroup,{id:`kwJSfiC06-${idkwJSfiC06}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{d3bLhuaeS:d3bLhuaeSkwJSfiC06},children:/*#__PURE__*/_jsx(Link,{href:{pathVariables:{d3bLhuaeS:d3bLhuaeSkwJSfiC06},webPageId:\"NcekhhZjB\"},motionChild:true,nodeId:\"CGugPOhia\",scopeId:\"kQ_xyFkUJ\",children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-1o58lit framer-1tc2noj\",layoutDependency:layoutDependency,layoutId:\"CGugPOhia\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:215,width:\"174px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-n5omtj-container\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"Ps9qVkCXN-container\",nodeId:\"Ps9qVkCXN\",rendersWithMotion:true,scopeId:\"kQ_xyFkUJ\",children:/*#__PURE__*/_jsx(CartProduct,{DmvNDRk5x:DmvNDRk5x1s7kqyj,G9QDbeA5A:\"\",height:\"100%\",i_iHGndhi:\"var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.6))\",id:\"Ps9qVkCXN\",layoutId:\"Ps9qVkCXN\",nfnoinWjH:\"var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.59))\",O1zujE7T8:nRUfe0cIOkwJSfiC06,PrW4ztQTi:toResponsiveImage(M9qOk4i1kkwJSfiC06),style:{width:\"100%\"},tGpD1UqIK:OGRmoXl8XkwJSfiC06,width:\"100%\",wqMklHd3Y:Su3wgsAiekwJSfiC06,zunKPut7z:\"var(--token-7cf54614-79de-4f6d-95d3-baa265dfd938, rgb(92, 92, 78))\"})})})})})})},idkwJSfiC06);})});}})})})]})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1azfjir\",layoutDependency:layoutDependency,layoutId:\"mi9vS7Ebq\",children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-1kckb83\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"ueG387_jH\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path opacity=\".07\" d=\"M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3Z\" fill=\"#000\"/><path d=\"M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32Z\" fill=\"#006FCF\"/><path d=\"M22.012 19.936v-8.421L37 11.528v2.326l-1.732 1.852L37 17.573v2.375h-2.766l-1.47-1.622-1.46 1.628-9.292-.02v.002Z\" fill=\"#fff\"/><path d=\"M23.013 19.012v-6.57h5.572v1.513h-3.768v1.028h3.678v1.488h-3.678v1.01h3.768v1.531h-5.572Z\" fill=\"#006FCF\"/><path d=\"m28.557 19.012 3.083-3.289-3.083-3.282h2.386l1.884 2.083 1.89-2.082H37v.051l-3.017 3.23L37 18.92v.093h-2.307l-1.917-2.103-1.898 2.104h-2.321v-.002Z\" fill=\"#006FCF\"/><path d=\"M22.71 4.04h3.614l1.269 2.881V4.04h4.46l.77 2.159.771-2.159H37v8.421H19l3.71-8.421Z\" fill=\"#fff\"/><path d=\"m23.395 4.955-2.916 6.566h2l.55-1.315h2.98l.55 1.315h2.05l-2.904-6.566h-2.31Zm.25 3.777.875-2.09.873 2.09h-1.748Z\" fill=\"#006FCF\"/><path d=\"M28.581 11.52V4.953l2.811.01L32.84 9l1.456-4.046H37v6.565l-1.74.016v-4.51l-1.644 4.494h-1.59L30.35 7.01v4.51h-1.769Z\" fill=\"#006FCF\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-cfmtk\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"cZuhYPflX\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path d=\"M34.387 0H3.228l-.324.006a4.64 4.64 0 0 0-.705.062 2.38 2.38 0 0 0-.67.22 2.25 2.25 0 0 0-.985.986 2.37 2.37 0 0 0-.22.67 4.66 4.66 0 0 0-.063.705c-.003.108-.004.216-.005.324v18.054c0 .108.002.216.005.324.006.235.02.472.062.705.04.233.114.459.22.67a2.24 2.24 0 0 0 .986.985c.215.11.434.18.67.222.233.041.47.055.705.061a19.433 19.433 0 0 0 .709.006h30.774l.385-.001c.107 0 .215-.002.324-.005a4.77 4.77 0 0 0 .705-.061c.233-.04.459-.115.67-.222.424-.216.769-.56.985-.985.11-.214.179-.434.22-.67.043-.233.056-.47.063-.705.003-.108.004-.216.005-.324V2.973c0-.108-.003-.216-.005-.324a4.658 4.658 0 0 0-.063-.705 2.357 2.357 0 0 0-.22-.67 2.251 2.251 0 0 0-.985-.985 2.382 2.382 0 0 0-.67-.221 4.698 4.698 0 0 0-.705-.062A16.167 16.167 0 0 0 34.772 0h-.385Z\" fill=\"#000\"/><path d=\"M34.387.8h.379c.102.001.205.002.308.005.18.005.39.015.585.05.17.03.313.077.45.147.273.139.495.361.634.635.07.136.116.278.146.45.035.193.045.403.05.584a39.766 39.766 0 0 1 .006.686v17.286c0 .126 0 .252-.002.38 0 .102-.001.204-.004.306a4 4 0 0 1-.05.587 1.555 1.555 0 0 1-.146.447c-.14.274-.362.497-.636.636-.136.07-.278.116-.447.146-.2.035-.418.045-.582.05l-.313.004H3.232c-.102 0-.204-.002-.306-.004a4.078 4.078 0 0 1-.585-.05 1.572 1.572 0 0 1-.45-.147 1.438 1.438 0 0 1-.634-.635 1.57 1.57 0 0 1-.146-.45 3.91 3.91 0 0 1-.05-.584 14.956 14.956 0 0 1-.005-.306V2.978c0-.103.002-.205.005-.307.005-.18.014-.39.05-.586.026-.156.075-.308.146-.449a1.44 1.44 0 0 1 .635-.635c.142-.07.293-.12.449-.146.196-.035.406-.045.585-.05.103-.003.205-.004.307-.005h31.154Z\" fill=\"#fff\"/><path d=\"M10.11 8.102c.318-.398.533-.932.476-1.477-.465.023-1.032.307-1.361.705-.295.34-.556.897-.489 1.419.523.045 1.045-.26 1.374-.647Zm.47.748c-.758-.045-1.403.431-1.765.431-.362 0-.917-.408-1.517-.397a2.237 2.237 0 0 0-1.901 1.155c-.815 1.405-.215 3.489.577 4.632.385.567.849 1.19 1.46 1.167.577-.023.804-.374 1.505-.374.702 0 .906.374 1.517.363.634-.012 1.03-.567 1.415-1.133.441-.645.622-1.268.633-1.302-.01-.011-1.222-.476-1.233-1.869-.011-1.166.95-1.721.996-1.755-.543-.804-1.392-.895-1.687-.917m7.562-1.579c1.649 0 2.797 1.137 2.797 2.791 0 1.66-1.172 2.802-2.838 2.802h-1.825v2.903h-1.319V7.272h3.185Zm-1.866 4.486h1.513c1.148 0 1.801-.617 1.801-1.69 0-1.07-.653-1.683-1.795-1.683h-1.52v3.373Zm4.99 2.25c0-1.09.83-1.714 2.36-1.808l1.643-.1v-.471c0-.689-.453-1.066-1.26-1.066-.665 0-1.148.342-1.248.866h-1.19c.036-1.101 1.072-1.902 2.473-1.902 1.508 0 2.49.79 2.49 2.014v4.227h-1.218v-1.019h-.03c-.347.665-1.112 1.083-1.942 1.083-1.225 0-2.078-.73-2.078-1.825Zm4.003-.548v-.477l-1.466.094c-.824.053-1.254.36-1.254.895 0 .518.448.854 1.148.854.895 0 1.572-.571 1.572-1.366Zm2.386 4.58v-1.018c.083.011.283.023.389.023.582 0 .912-.247 1.112-.883l.118-.377-2.231-6.181h1.377l1.555 5.015h.03l1.553-5.015h1.343l-2.314 6.493c-.53 1.49-1.136 1.978-2.42 1.978-.1 0-.424-.011-.512-.035Z\" fill=\"#000\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-4d1mpe\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"Fm4v0c8NW\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path opacity=\".07\" d=\"M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3Z\" fill=\"#000\"/><path d=\"M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32Z\" fill=\"#fff\"/><path d=\"M18.093 11.976v3.2h-1.018v-7.9h2.691a2.447 2.447 0 0 1 1.747.692 2.28 2.28 0 0 1 .11 3.224l-.11.116c-.47.447-1.098.69-1.747.674l-1.673-.006Zm0-3.732v2.788h1.698a1.348 1.348 0 0 0 1.37-1.117 1.39 1.39 0 0 0-1.37-1.641l-1.698-.03Zm6.484 1.348c.65-.03 1.286.188 1.778.613.445.43.682 1.03.65 1.649v3.334h-.969v-.766h-.049a1.93 1.93 0 0 1-1.673.93 2.17 2.17 0 0 1-1.496-.532 1.666 1.666 0 0 1-.613-1.324 1.607 1.607 0 0 1 .613-1.336 2.747 2.747 0 0 1 1.698-.515c.517-.02 1.03.093 1.49.33v-.207a1.133 1.133 0 0 0-.417-.901 1.416 1.416 0 0 0-.98-.368 1.545 1.545 0 0 0-1.319.717l-.895-.564a2.487 2.487 0 0 1 2.182-1.06ZM23.29 13.52a.79.79 0 0 0 .337.662c.223.176.5.269.785.263.429-.001.84-.17 1.146-.472.305-.286.478-.685.478-1.103a2.048 2.048 0 0 0-1.324-.374 1.717 1.717 0 0 0-1.03.294.883.883 0 0 0-.392.73Zm9.286-3.75-3.39 7.79h-1.048l1.281-2.728-2.224-5.062h1.103l1.612 3.885 1.569-3.885h1.097Z\" fill=\"#5F6368\"/><path d=\"M13.986 11.284c0-.308-.024-.616-.073-.92h-4.29v1.747h2.451a2.095 2.095 0 0 1-.9 1.373v1.134h1.464a4.435 4.435 0 0 0 1.348-3.334Z\" fill=\"#4285F4\"/><path d=\"M9.629 15.72a4.352 4.352 0 0 0 3.01-1.096l-1.466-1.14a2.753 2.753 0 0 1-4.094-1.44H5.577v1.17a4.53 4.53 0 0 0 4.052 2.507Z\" fill=\"#34A853\"/><path d=\"M7.079 12.05a2.709 2.709 0 0 1 0-1.736v-1.17H5.577a4.505 4.505 0 0 0 0 4.075l1.502-1.17Z\" fill=\"#FBBC04\"/><path d=\"M9.629 8.44a2.452 2.452 0 0 1 1.74.68l1.3-1.293a4.37 4.37 0 0 0-3.065-1.183 4.53 4.53 0 0 0-4.027 2.5l1.502 1.171a2.715 2.715 0 0 1 2.55-1.875Z\" fill=\"#EA4335\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1bsxcdz\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"qwgsTaYMU\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path opacity=\".07\" d=\"M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3Z\" fill=\"#000\"/><path d=\"M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32Z\" fill=\"#fff\"/><path d=\"M15 19a7 7 0 1 0 0-14 7 7 0 0 0 0 14Z\" fill=\"#EB001B\"/><path d=\"M23 19a7 7 0 1 0 0-14 7 7 0 0 0 0 14Z\" fill=\"#00A2E5\"/><path d=\"M22 12c0-2.4-1.2-4.5-3-5.7-1.8 1.3-3 3.4-3 5.7 0 2.3 1.2 4.5 3 5.7 1.8-1.2 3-3.3 3-5.7Z\" fill=\"#7375CF\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-5f5l9v\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"E9UtvZJbZ\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path opacity=\".07\" d=\"M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3Z\" fill=\"#000\"/><path d=\"M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32Z\" fill=\"#fff\"/><path d=\"M15 19a7 7 0 1 0 0-14 7 7 0 0 0 0 14Z\" fill=\"#EB001B\"/><path d=\"M23 19a7 7 0 1 0 0-14 7 7 0 0 0 0 14Z\" fill=\"#F79E1B\"/><path d=\"M22 12c0-2.4-1.2-4.5-3-5.7-1.8 1.3-3 3.4-3 5.7 0 2.3 1.2 4.5 3 5.7 1.8-1.2 3-3.3 3-5.7Z\" fill=\"#FF5F00\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-3s53pj\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"A1aQq2lQ8\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path opacity=\".07\" d=\"M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3Z\" fill=\"#000\"/><path d=\"M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32Z\" fill=\"#fff\"/><path d=\"M23.9 8.3c.2-1 0-1.7-.6-2.3-.6-.7-1.7-1-3.1-1h-4.1c-.3 0-.5.2-.6.5L14 15.6c0 .2.1.4.3.4H17l.4-3.4 1.8-2.2 4.7-2.1Z\" fill=\"#003087\"/><path d=\"m23.9 8.3-.2.2c-.5 2.8-2.2 3.8-4.6 3.8H18c-.3 0-.5.2-.6.5l-.6 3.9-.2 1c0 .2.1.4.3.4H19c.3 0 .5-.2.5-.4v-.1l.4-2.4v-.1c0-.2.3-.4.5-.4h.3c2.1 0 3.7-.8 4.1-3.2.2-1 .1-1.8-.4-2.4-.1-.5-.3-.7-.5-.8Z\" fill=\"#3086C8\"/><path d=\"M23.3 8.1c-.1-.1-.2-.1-.3-.1-.1 0-.2 0-.3-.1-.3-.1-.7-.1-1.1-.1h-3c-.1 0-.2 0-.2.1-.2.1-.3.2-.3.4l-.7 4.4v.1c0-.3.3-.5.6-.5h1.3c2.5 0 4.1-1 4.6-3.8v-.2c-.1-.1-.3-.2-.5-.2h-.1Z\" fill=\"#012169\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1sl7bgu\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"QR6nh0u2R\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path opacity=\".07\" d=\"M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3Z\" fill=\"#000\"/><path d=\"M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32Z\" fill=\"#fff\"/><path d=\"M28.3 10.1H28c-.4 1-.7 1.5-1 3h1.9c-.3-1.5-.3-2.2-.6-3Zm2.9 5.9h-1.7c-.1 0-.1 0-.2-.1l-.2-.9-.1-.2h-2.4c-.1 0-.2 0-.2.2l-.3.9c0 .1-.1.1-.1.1h-2.1l.2-.5L27 8.7c0-.5.3-.7.8-.7h1.5c.1 0 .2 0 .2.2l1.4 6.5c.1.4.2.7.2 1.1.1.1.1.1.1.2Zm-13.4-.3.4-1.8c.1 0 .2.1.2.1.7.3 1.4.5 2.1.4.2 0 .5-.1.7-.2.5-.2.5-.7.1-1.1-.2-.2-.5-.3-.8-.5-.4-.2-.8-.4-1.1-.7-1.2-1-.8-2.4-.1-3.1.6-.4.9-.8 1.7-.8 1.2 0 2.5 0 3.1.2h.1c-.1.6-.2 1.1-.4 1.7-.5-.2-1-.4-1.5-.4-.3 0-.6 0-.9.1-.2 0-.3.1-.4.2-.2.2-.2.5 0 .7l.5.4c.4.2.8.4 1.1.6.5.3 1 .8 1.1 1.4.2.9-.1 1.7-.9 2.3-.5.4-.7.6-1.4.6-1.4 0-2.5.1-3.4-.2-.1.2-.1.2-.2.1Zm-3.5.3c.1-.7.1-.7.2-1 .5-2.2 1-4.5 1.4-6.7.1-.2.1-.3.3-.3H18c-.2 1.2-.4 2.1-.7 3.2-.3 1.5-.6 3-1 4.5 0 .2-.1.2-.3.2M5 8.2c0-.1.2-.2.3-.2h3.4c.5 0 .9.3 1 .8l.9 4.4c0 .1 0 .1.1.2 0-.1.1-.1.1-.1l2.1-5.1c-.1-.1 0-.2.1-.2h2.1c0 .1 0 .1-.1.2l-3.1 7.3c-.1.2-.1.3-.2.4-.1.1-.3 0-.5 0H9.7c-.1 0-.2 0-.2-.2L7.9 9.5c-.2-.2-.5-.5-.9-.6-.6-.3-1.7-.5-1.9-.5L5 8.2Z\" fill=\"#142688\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true})]})]})],height:\"100%\",id:\"mnzeM5Ngo\",layoutId:\"mnzeM5Ngo\",Populated:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-2fz1a4\",\"data-framer-name\":\"Filled\",layoutDependency:layoutDependency,layoutId:\"q4rVtkFQj\",style:{backgroundColor:\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\"},children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-7alq67\",\"data-border\":true,\"data-framer-name\":\"Top\",layoutDependency:layoutDependency,layoutId:\"psRKP6lEq\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-5cd51282-a57c-464e-be3b-a84a36f4dfa4, rgba(3, 6, 7, 0.08))\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"0px\",backgroundColor:\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\"},children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-51dpex\",\"data-framer-name\":\"Text\",layoutDependency:layoutDependency,layoutId:\"MtGuOwRRv\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-ozljou\",\"data-styles-preset\":\"QON1282q5\",dir:\"auto\",children:\"Shopping Cart\"})}),className:\"framer-1gfyj5c\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"gBNWHBsQk\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-ggoit2\",\"data-framer-name\":\"Counter\",layoutDependency:layoutDependency,layoutId:\"PqSaku0i9\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-ozljou\",\"data-styles-preset\":\"QON1282q5\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255)))\"},children:\"(\"})}),className:\"framer-12g0oiv\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"AZblyQYgP\",style:{\"--extracted-r6o4lv\":\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-e8qhaf-container\",inComponentSlot:true,isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"mL_CrX9UQ-container\",nodeId:\"mL_CrX9UQ\",rendersWithMotion:true,scopeId:\"kQ_xyFkUJ\",children:/*#__PURE__*/_jsx(FC_CartCounter,{backgroundColor:\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",border:{borderBottomWidth:0,borderColor:\"var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21))\",borderLeftWidth:0,borderRightWidth:0,borderStyle:\"solid\",borderTopWidth:0},bottomLeft:0,bottomRight:0,color:\"var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21))\",font:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontFeatureSettings:\"'ss04' on, 'ss03' on, 'ss02' on, 'ss01' on\",fontSize:\"18px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"110%\"},height:\"100%\",hideIf0:false,id:\"mL_CrX9UQ\",layoutId:\"mL_CrX9UQ\",padding:0,paddingBottom:0,paddingLeft:0,paddingPerSide:false,paddingRight:0,paddingTop:0,radius:0,radiusPerCorner:false,topLeft:0,topRight:0,width:\"100%\"})})}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-ozljou\",\"data-styles-preset\":\"QON1282q5\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255)))\"},children:\")\"})}),className:\"framer-16tdlwd\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"xsG7fwJs_\",style:{\"--extracted-r6o4lv\":\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})]})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-72yd71\",\"data-framer-name\":\"X\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"MJd29O_e2\",onTap:onTap1s7kqyj,children:/*#__PURE__*/_jsx(X,{animated:true,className:\"framer-qg2tg1\",layoutDependency:layoutDependency,layoutId:\"S9qoEhy2L\",style:{\"--1hq5eo6\":\"var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21))\"},transformTemplate:transformTemplate1})})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1f96thc\",\"data-framer-name\":\"Items\",layoutDependency:layoutDependency,layoutId:\"VCCHNSRaG\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-16kx8o4-container\",inComponentSlot:true,isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"GabMrOegN-container\",nodeId:\"GabMrOegN\",rendersWithMotion:true,scopeId:\"kQ_xyFkUJ\",children:/*#__PURE__*/_jsx(FC_CartProductCard,{attributeConfigs:{gap:4,titleColor:\"rgb(0, 0, 0)\",titleFont:{},titleTransform:\"None\",uniqueFormatting:false,valueColor:\"rgb(0, 0, 0)\",valueFont:{},valueTransform:\"None\"},containerConfigs:{background:\"rgba(0, 0, 0, 0)\",border:{borderColor:\"rgba(0, 0, 0, 0)\",borderStyle:\"solid\",borderWidth:0},gap:6,imageGap:24,insidePadding:\"0px\",padding:\"0px\",radius:\"0px\"},errorConfigs:{errorColor:\"var(--token-63eb5426-0520-4a32-bacd-b64a01e98808, rgb(240, 25, 25))\",errorFont:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontFeatureSettings:\"'ss04' on, 'ss03' on, 'ss02' on, 'ss01' on\",fontSize:\"16px\",fontStyle:\"normal\",fontWeight:300,letterSpacing:\"0em\",lineHeight:\"110%\"},textTransform:\"None\"},height:\"100%\",id:\"GabMrOegN\",imageConfigs:{background:\"var(--token-08c0a1b2-6453-4e0b-b1db-f0593e85b925, rgb(249, 249, 249))\",border:{borderColor:\"rgba(0, 0, 0, 0)\",borderStyle:\"solid\",borderWidth:0},hover:\"None\",opacity:.75,radius:\"0px\",ratio:\"1:1\",type:\"Fill\",visible:true,width:120,zoomScale:1.05},layoutId:\"GabMrOegN\",linkConfigs:{enabled:true,slugPath:\"products/\"},priceConfigs:{comparePrice:{color:\"var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.6))\",font:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontFeatureSettings:\"'ss01' on, 'ss02' on, 'ss03' on, 'ss04' on\",fontSize:\"14px\",fontStyle:\"normal\",fontWeight:300,letterSpacing:\"0em\",lineHeight:\"110%\"},strikethrough:true,strikethroughColor:\"var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.6))\"},format:{currencyCode:\"EUR\",showCurrency:false,showDecimals:\"Never show\",showSymbol:true},gap:2,price:{color:\"var(--token-56364cf4-6641-481c-b55e-f72f500dd87d, rgb(0, 0, 0))\",font:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontFeatureSettings:\"'ss01' on, 'ss02' on, 'ss04' on, 'ss03' on\",fontSize:\"16px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"110%\"},saleColor:\"var(--token-63eb5426-0520-4a32-bacd-b64a01e98808, rgb(211, 34, 34))\",saleFont:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontFeatureSettings:\"'ss01' on, 'ss02' on, 'ss03' on, 'ss04' on\",fontSize:\"16px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"110%\"}}},quantityConfigs:{buttons:{border:{borderColor:\"rgba(0, 0, 0, 0)\",borderStyle:\"solid\",borderWidth:0},iconBg:\"rgb(255, 255, 255)\",iconBgDisabled:\"rgb(255, 255, 255)\",iconBgHover:\"var(--token-08c0a1b2-6453-4e0b-b1db-f0593e85b925, rgb(249, 249, 249))\",icons:\"var(--token-f87ea788-5cdc-4aac-9d76-b9ca5ca31f6c, rgb(3, 6, 7))\",iconsColorDisabled:\"rgb(204, 204, 204)\",iconSize:10,iconType:\"Default\",iconWeight:1,padding:\"4px\",radius:\"4px\"},container:{containerBg:\"rgba(0, 0, 0, 0)\",containerBorder:{borderColor:\"rgb(226, 226, 226)\",borderStyle:\"solid\",borderWidth:1},containerRadius:\"6px\",font:{},number:\"rgb(0, 0, 0)\",padding:\"4px\"}},removeIconConfigs:{bg:\"rgba(3, 6, 7, 0)\",bgHover:\"rgb(235, 235, 235)\",border:{borderColor:\"rgba(0, 0, 0, 0)\",borderStyle:\"solid\",borderWidth:0},customImage:\"https://framerusercontent.com/images/dcPZxoZ7MHfFxycvpvyySbiRxuk.svg?width=32&height=32\",icon:\"rgb(0, 0, 0)\",iconSize:16,iconType:\"Custom\",iconWeight:1,position:\"Bottom\",radius:\"80px\"},spacingConfigs:{divider:{borderColor:\"rgba(0, 0, 0, 0.08)\",borderStyle:\"solid\",borderWidth:1},dividerVisible:true,gap:24},style:{width:\"100%\"},subscriptionConfigs:{color:\"var(--token-fe52ad88-8b3d-4f93-8a44-186db0f4ff05, rgb(128, 128, 106))\",font:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontFeatureSettings:\"'ss01' on, 'ss02' on, 'ss03' on, 'ss04' on\",fontSize:\"16px\",fontStyle:\"normal\",fontWeight:300,letterSpacing:\"0em\",lineHeight:\"110%\"},textTransform:\"None\"},titleConfigs:{color:\"var(--token-fe52ad88-8b3d-4f93-8a44-186db0f4ff05, rgb(128, 128, 106))\",font:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontFeatureSettings:\"'ss01' on, 'ss02' on, 'ss03' on, 'ss04' on\",fontSize:\"18px\",fontStyle:\"normal\",fontWeight:300,letterSpacing:\"0em\",lineHeight:\"110%\"},hoverColor:\"var(--token-fe52ad88-8b3d-4f93-8a44-186db0f4ff05, rgb(128, 128, 106))\",textTransform:\"None\"},variantConfigs:{gap:4,titleColor:\"var(--token-56364cf4-6641-481c-b55e-f72f500dd87d, rgb(0, 0, 0))\",titleFont:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontFeatureSettings:\"'ss01' on, 'ss02' on, 'ss03' on, 'ss04' on\",fontSize:\"14px\",fontStyle:\"normal\",fontWeight:300,letterSpacing:\"0em\",lineHeight:\"110%\"},titleTransform:\"None\",valueColor:\"var(--token-4fce9806-a5d7-4afc-a7fc-ce108be17a46, rgb(151, 151, 134))\",valueFont:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontFeatureSettings:\"'ss01' on, 'ss02' on, 'ss03' on, 'ss04' on\",fontSize:\"14px\",fontStyle:\"normal\",fontWeight:300,letterSpacing:\"0em\",lineHeight:\"110%\"},valueTransform:\"None\"},width:\"100%\"})})})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1x2hzms\",\"data-border\":true,\"data-framer-name\":\"Bottom\",layoutDependency:layoutDependency,layoutId:\"C3qhrzIwh\",style:{\"--border-bottom-width\":\"0px\",\"--border-color\":\"var(--token-cf194fe0-c1c4-46e5-8325-265fb837a66d, rgb(245, 245, 245))\",\"--border-left-width\":\"0px\",\"--border-right-width\":\"0px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"var(--token-cf194fe0-c1c4-46e5-8325-265fb837a66d, rgb(245, 245, 245))\"},children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-rjfl2u\",\"data-framer-name\":\"Wrapper\",layoutDependency:layoutDependency,layoutId:\"lwIGXOfbE\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-1omjuao\",\"data-framer-name\":\"Subtotal\",layoutDependency:layoutDependency,layoutId:\"vEeTlYX8y\",children:[/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"R0Y7SW5zdHJ1bWVudCBTYW5zLXJlZ3VsYXI=\",\"--framer-font-family\":'\"Instrument Sans\", \"Instrument Sans Placeholder\", sans-serif',\"--framer-font-size\":\"15px\",\"--framer-line-height\":\"110%\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)))\"},children:\"Subtotal\"})}),className:\"framer-139cpuq\",fonts:[\"GF;Instrument Sans-regular\"],layoutDependency:layoutDependency,layoutId:\"olOITu76Z\",style:{\"--extracted-r6o4lv\":\"var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1ucrwft-container\",inComponentSlot:true,isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"kwfrcW1mH-container\",nodeId:\"kwfrcW1mH\",rendersWithMotion:true,scopeId:\"kQ_xyFkUJ\",children:/*#__PURE__*/_jsx(FC_CartSubtotal,{color:\"var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21))\",font:{fontFamily:'\"Instrument Sans\", \"Instrument Sans Placeholder\", sans-serif',fontFeatureSettings:\"'ss04' on, 'ss03' on, 'ss02' on, 'ss01' on\",fontSize:\"15px\",fontStyle:\"normal\",fontWeight:500,letterSpacing:\"0em\",lineHeight:\"110%\"},format:{currencyCode:\"USD\",showCurrency:false,showDecimals:\"Always show\",showSymbol:true},height:\"100%\",id:\"kwfrcW1mH\",layoutId:\"kwfrcW1mH\",width:\"100%\"})})})]}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1a7uhrv-container\",inComponentSlot:true,isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"JasdRUJB3-container\",nodeId:\"JasdRUJB3\",rendersWithMotion:true,scopeId:\"kQ_xyFkUJ\",children:/*#__PURE__*/_jsx(FC_CartCheckoutButton,{componentInstance:[/*#__PURE__*/_jsx(ComponentViewportProvider,{height:48,width:\"368px\",children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-fli2a5-container\",\"data-framer-name\":\"checkout-button\",inComponentSlot:true,layoutDependency:layoutDependency,layoutId:\"xXt5kg5fx-container\",name:\"checkout-button\",nodeId:\"xXt5kg5fx\",rendersWithMotion:true,scopeId:\"kQ_xyFkUJ\",children:/*#__PURE__*/_jsx(Checkout,{height:\"100%\",id:\"xXt5kg5fx\",layoutId:\"xXt5kg5fx\",name:\"checkout-button\",style:{width:\"100%\"},width:\"100%\"})})})],height:\"100%\",id:\"JasdRUJB3\",layoutId:\"JasdRUJB3\",style:{width:\"100%\"},width:\"100%\"})})})]}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-lws1mt\",\"data-framer-name\":\"Logos\",layoutDependency:layoutDependency,layoutId:\"RH5xZLBiW\",children:[/*#__PURE__*/_jsx(SVG,{className:\"framer-ovnanb\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"gjakDTYyX\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path opacity=\".07\" d=\"M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3Z\" fill=\"#000\"/><path d=\"M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32Z\" fill=\"#006FCF\"/><path d=\"M22.012 19.936v-8.421L37 11.528v2.326l-1.732 1.852L37 17.573v2.375h-2.766l-1.47-1.622-1.46 1.628-9.292-.02v.002Z\" fill=\"#fff\"/><path d=\"M23.013 19.012v-6.57h5.572v1.513h-3.768v1.028h3.678v1.488h-3.678v1.01h3.768v1.531h-5.572Z\" fill=\"#006FCF\"/><path d=\"m28.557 19.012 3.083-3.289-3.083-3.282h2.386l1.884 2.083 1.89-2.082H37v.051l-3.017 3.23L37 18.92v.093h-2.307l-1.917-2.103-1.898 2.104h-2.321v-.002Z\" fill=\"#006FCF\"/><path d=\"M22.71 4.04h3.614l1.269 2.881V4.04h4.46l.77 2.159.771-2.159H37v8.421H19l3.71-8.421Z\" fill=\"#fff\"/><path d=\"m23.395 4.955-2.916 6.566h2l.55-1.315h2.98l.55 1.315h2.05l-2.904-6.566h-2.31Zm.25 3.777.875-2.09.873 2.09h-1.748Z\" fill=\"#006FCF\"/><path d=\"M28.581 11.52V4.953l2.811.01L32.84 9l1.456-4.046H37v6.565l-1.74.016v-4.51l-1.644 4.494h-1.59L30.35 7.01v4.51h-1.769Z\" fill=\"#006FCF\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-wnel7y\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"qJJAmS28E\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path d=\"M34.387 0H3.228l-.324.006a4.64 4.64 0 0 0-.705.062 2.38 2.38 0 0 0-.67.22 2.25 2.25 0 0 0-.985.986 2.37 2.37 0 0 0-.22.67 4.66 4.66 0 0 0-.063.705c-.003.108-.004.216-.005.324v18.054c0 .108.002.216.005.324.006.235.02.472.062.705.04.233.114.459.22.67a2.24 2.24 0 0 0 .986.985c.215.11.434.18.67.222.233.041.47.055.705.061a19.433 19.433 0 0 0 .709.006h30.774l.385-.001c.107 0 .215-.002.324-.005a4.77 4.77 0 0 0 .705-.061c.233-.04.459-.115.67-.222.424-.216.769-.56.985-.985.11-.214.179-.434.22-.67.043-.233.056-.47.063-.705.003-.108.004-.216.005-.324V2.973c0-.108-.003-.216-.005-.324a4.658 4.658 0 0 0-.063-.705 2.357 2.357 0 0 0-.22-.67 2.251 2.251 0 0 0-.985-.985 2.382 2.382 0 0 0-.67-.221 4.698 4.698 0 0 0-.705-.062A16.167 16.167 0 0 0 34.772 0h-.385Z\" fill=\"#000\"/><path d=\"M34.387.8h.379c.102.001.205.002.308.005.18.005.39.015.585.05.17.03.313.077.45.147.273.139.495.361.634.635.07.136.116.278.146.45.035.193.045.403.05.584a39.766 39.766 0 0 1 .006.686v17.286c0 .126 0 .252-.002.38 0 .102-.001.204-.004.306a4 4 0 0 1-.05.587 1.555 1.555 0 0 1-.146.447c-.14.274-.362.497-.636.636-.136.07-.278.116-.447.146-.2.035-.418.045-.582.05l-.313.004H3.232c-.102 0-.204-.002-.306-.004a4.078 4.078 0 0 1-.585-.05 1.572 1.572 0 0 1-.45-.147 1.438 1.438 0 0 1-.634-.635 1.57 1.57 0 0 1-.146-.45 3.91 3.91 0 0 1-.05-.584 14.956 14.956 0 0 1-.005-.306V2.978c0-.103.002-.205.005-.307.005-.18.014-.39.05-.586.026-.156.075-.308.146-.449a1.44 1.44 0 0 1 .635-.635c.142-.07.293-.12.449-.146.196-.035.406-.045.585-.05.103-.003.205-.004.307-.005h31.154Z\" fill=\"#fff\"/><path d=\"M10.11 8.102c.318-.398.533-.932.476-1.477-.465.023-1.032.307-1.361.705-.295.34-.556.897-.489 1.419.523.045 1.045-.26 1.374-.647Zm.47.748c-.758-.045-1.403.431-1.765.431-.362 0-.917-.408-1.517-.397a2.237 2.237 0 0 0-1.901 1.155c-.815 1.405-.215 3.489.577 4.632.385.567.849 1.19 1.46 1.167.577-.023.804-.374 1.505-.374.702 0 .906.374 1.517.363.634-.012 1.03-.567 1.415-1.133.441-.645.622-1.268.633-1.302-.01-.011-1.222-.476-1.233-1.869-.011-1.166.95-1.721.996-1.755-.543-.804-1.392-.895-1.687-.917m7.562-1.579c1.649 0 2.797 1.137 2.797 2.791 0 1.66-1.172 2.802-2.838 2.802h-1.825v2.903h-1.319V7.272h3.185Zm-1.866 4.486h1.513c1.148 0 1.801-.617 1.801-1.69 0-1.07-.653-1.683-1.795-1.683h-1.52v3.373Zm4.99 2.25c0-1.09.83-1.714 2.36-1.808l1.643-.1v-.471c0-.689-.453-1.066-1.26-1.066-.665 0-1.148.342-1.248.866h-1.19c.036-1.101 1.072-1.902 2.473-1.902 1.508 0 2.49.79 2.49 2.014v4.227h-1.218v-1.019h-.03c-.347.665-1.112 1.083-1.942 1.083-1.225 0-2.078-.73-2.078-1.825Zm4.003-.548v-.477l-1.466.094c-.824.053-1.254.36-1.254.895 0 .518.448.854 1.148.854.895 0 1.572-.571 1.572-1.366Zm2.386 4.58v-1.018c.083.011.283.023.389.023.582 0 .912-.247 1.112-.883l.118-.377-2.231-6.181h1.377l1.555 5.015h.03l1.553-5.015h1.343l-2.314 6.493c-.53 1.49-1.136 1.978-2.42 1.978-.1 0-.424-.011-.512-.035Z\" fill=\"#000\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-4yv8qr\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"vBrJOx3_F\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path opacity=\".07\" d=\"M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3Z\" fill=\"#000\"/><path d=\"M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32Z\" fill=\"#fff\"/><path d=\"M18.093 11.976v3.2h-1.018v-7.9h2.691a2.447 2.447 0 0 1 1.747.692 2.28 2.28 0 0 1 .11 3.224l-.11.116c-.47.447-1.098.69-1.747.674l-1.673-.006Zm0-3.732v2.788h1.698a1.348 1.348 0 0 0 1.37-1.117 1.39 1.39 0 0 0-1.37-1.641l-1.698-.03Zm6.484 1.348c.65-.03 1.286.188 1.778.613.445.43.682 1.03.65 1.649v3.334h-.969v-.766h-.049a1.93 1.93 0 0 1-1.673.93 2.17 2.17 0 0 1-1.496-.532 1.666 1.666 0 0 1-.613-1.324 1.607 1.607 0 0 1 .613-1.336 2.747 2.747 0 0 1 1.698-.515c.517-.02 1.03.093 1.49.33v-.207a1.133 1.133 0 0 0-.417-.901 1.416 1.416 0 0 0-.98-.368 1.545 1.545 0 0 0-1.319.717l-.895-.564a2.487 2.487 0 0 1 2.182-1.06ZM23.29 13.52a.79.79 0 0 0 .337.662c.223.176.5.269.785.263.429-.001.84-.17 1.146-.472.305-.286.478-.685.478-1.103a2.048 2.048 0 0 0-1.324-.374 1.717 1.717 0 0 0-1.03.294.883.883 0 0 0-.392.73Zm9.286-3.75-3.39 7.79h-1.048l1.281-2.728-2.224-5.062h1.103l1.612 3.885 1.569-3.885h1.097Z\" fill=\"#5F6368\"/><path d=\"M13.986 11.284c0-.308-.024-.616-.073-.92h-4.29v1.747h2.451a2.095 2.095 0 0 1-.9 1.373v1.134h1.464a4.435 4.435 0 0 0 1.348-3.334Z\" fill=\"#4285F4\"/><path d=\"M9.629 15.72a4.352 4.352 0 0 0 3.01-1.096l-1.466-1.14a2.753 2.753 0 0 1-4.094-1.44H5.577v1.17a4.53 4.53 0 0 0 4.052 2.507Z\" fill=\"#34A853\"/><path d=\"M7.079 12.05a2.709 2.709 0 0 1 0-1.736v-1.17H5.577a4.505 4.505 0 0 0 0 4.075l1.502-1.17Z\" fill=\"#FBBC04\"/><path d=\"M9.629 8.44a2.452 2.452 0 0 1 1.74.68l1.3-1.293a4.37 4.37 0 0 0-3.065-1.183 4.53 4.53 0 0 0-4.027 2.5l1.502 1.171a2.715 2.715 0 0 1 2.55-1.875Z\" fill=\"#EA4335\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-125oq3i\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"aHp2J0j_J\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path opacity=\".07\" d=\"M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3Z\" fill=\"#000\"/><path d=\"M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32Z\" fill=\"#fff\"/><path d=\"M15 19a7 7 0 1 0 0-14 7 7 0 0 0 0 14Z\" fill=\"#EB001B\"/><path d=\"M23 19a7 7 0 1 0 0-14 7 7 0 0 0 0 14Z\" fill=\"#00A2E5\"/><path d=\"M22 12c0-2.4-1.2-4.5-3-5.7-1.8 1.3-3 3.4-3 5.7 0 2.3 1.2 4.5 3 5.7 1.8-1.2 3-3.3 3-5.7Z\" fill=\"#7375CF\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-cnxwv9\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"EHFpFCP1N\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path opacity=\".07\" d=\"M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3Z\" fill=\"#000\"/><path d=\"M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32Z\" fill=\"#fff\"/><path d=\"M15 19a7 7 0 1 0 0-14 7 7 0 0 0 0 14Z\" fill=\"#EB001B\"/><path d=\"M23 19a7 7 0 1 0 0-14 7 7 0 0 0 0 14Z\" fill=\"#F79E1B\"/><path d=\"M22 12c0-2.4-1.2-4.5-3-5.7-1.8 1.3-3 3.4-3 5.7 0 2.3 1.2 4.5 3 5.7 1.8-1.2 3-3.3 3-5.7Z\" fill=\"#FF5F00\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-1dwcyji\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"e8P9ufeTJ\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path opacity=\".07\" d=\"M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3Z\" fill=\"#000\"/><path d=\"M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32Z\" fill=\"#fff\"/><path d=\"M23.9 8.3c.2-1 0-1.7-.6-2.3-.6-.7-1.7-1-3.1-1h-4.1c-.3 0-.5.2-.6.5L14 15.6c0 .2.1.4.3.4H17l.4-3.4 1.8-2.2 4.7-2.1Z\" fill=\"#003087\"/><path d=\"m23.9 8.3-.2.2c-.5 2.8-2.2 3.8-4.6 3.8H18c-.3 0-.5.2-.6.5l-.6 3.9-.2 1c0 .2.1.4.3.4H19c.3 0 .5-.2.5-.4v-.1l.4-2.4v-.1c0-.2.3-.4.5-.4h.3c2.1 0 3.7-.8 4.1-3.2.2-1 .1-1.8-.4-2.4-.1-.5-.3-.7-.5-.8Z\" fill=\"#3086C8\"/><path d=\"M23.3 8.1c-.1-.1-.2-.1-.3-.1-.1 0-.2 0-.3-.1-.3-.1-.7-.1-1.1-.1h-3c-.1 0-.2 0-.2.1-.2.1-.3.2-.3.4l-.7 4.4v.1c0-.3.3-.5.6-.5h1.3c2.5 0 4.1-1 4.6-3.8v-.2c-.1-.1-.3-.2-.5-.2h-.1Z\" fill=\"#012169\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true}),/*#__PURE__*/_jsx(SVG,{className:\"framer-w2l745\",fill:'var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21)) /* {\"name\":\"Black\"} */',intrinsicHeight:24,intrinsicWidth:38,layoutDependency:layoutDependency,layoutId:\"yqCcPw0tv\",svg:'<svg width=\"38\" height=\"24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g clip-path=\"url(#a)\"><path opacity=\".07\" d=\"M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3Z\" fill=\"#000\"/><path d=\"M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32Z\" fill=\"#fff\"/><path d=\"M28.3 10.1H28c-.4 1-.7 1.5-1 3h1.9c-.3-1.5-.3-2.2-.6-3Zm2.9 5.9h-1.7c-.1 0-.1 0-.2-.1l-.2-.9-.1-.2h-2.4c-.1 0-.2 0-.2.2l-.3.9c0 .1-.1.1-.1.1h-2.1l.2-.5L27 8.7c0-.5.3-.7.8-.7h1.5c.1 0 .2 0 .2.2l1.4 6.5c.1.4.2.7.2 1.1.1.1.1.1.1.2Zm-13.4-.3.4-1.8c.1 0 .2.1.2.1.7.3 1.4.5 2.1.4.2 0 .5-.1.7-.2.5-.2.5-.7.1-1.1-.2-.2-.5-.3-.8-.5-.4-.2-.8-.4-1.1-.7-1.2-1-.8-2.4-.1-3.1.6-.4.9-.8 1.7-.8 1.2 0 2.5 0 3.1.2h.1c-.1.6-.2 1.1-.4 1.7-.5-.2-1-.4-1.5-.4-.3 0-.6 0-.9.1-.2 0-.3.1-.4.2-.2.2-.2.5 0 .7l.5.4c.4.2.8.4 1.1.6.5.3 1 .8 1.1 1.4.2.9-.1 1.7-.9 2.3-.5.4-.7.6-1.4.6-1.4 0-2.5.1-3.4-.2-.1.2-.1.2-.2.1Zm-3.5.3c.1-.7.1-.7.2-1 .5-2.2 1-4.5 1.4-6.7.1-.2.1-.3.3-.3H18c-.2 1.2-.4 2.1-.7 3.2-.3 1.5-.6 3-1 4.5 0 .2-.1.2-.3.2M5 8.2c0-.1.2-.2.3-.2h3.4c.5 0 .9.3 1 .8l.9 4.4c0 .1 0 .1.1.2 0-.1.1-.1.1-.1l2.1-5.1c-.1-.1 0-.2.1-.2h2.1c0 .1 0 .1-.1.2l-3.1 7.3c-.1.2-.1.3-.2.4-.1.1-.3 0-.5 0H9.7c-.1 0-.2 0-.2-.2L7.9 9.5c-.2-.2-.5-.5-.9-.6-.6-.3-1.7-.5-1.9-.5L5 8.2Z\" fill=\"#142688\"/></g><defs><clipPath id=\"a\"><path fill=\"#fff\" d=\"M0 0h38v24H0z\"/></clipPath></defs></svg>',withExternalLayout:true})]})]})]})],style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-Lng9t.framer-1tc2noj, .framer-Lng9t .framer-1tc2noj { display: block; }\",\".framer-Lng9t.framer-1qgisxi { align-content: flex-end; align-items: flex-end; cursor: pointer; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 800px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 400px; }\",\".framer-Lng9t .framer-bpemsy-container { flex: 1 0 0px; height: 1px; position: relative; width: 100%; z-index: 10; }\",\".framer-Lng9t .framer-2fz1a4 { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 800px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 400px; z-index: 2; }\",\".framer-Lng9t .framer-7alq67 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: center; overflow: visible; padding: 20px; position: sticky; top: 0px; width: 100%; z-index: 1; }\",\".framer-Lng9t .framer-51dpex { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 1px; }\",\".framer-Lng9t .framer-1gfyj5c, .framer-Lng9t .framer-12g0oiv, .framer-Lng9t .framer-16tdlwd { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-Lng9t .framer-ggoit2 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-Lng9t .framer-e8qhaf-container, .framer-Lng9t .framer-1ucrwft-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-Lng9t .framer-72yd71, .framer-Lng9t .framer-1dyul16 { cursor: pointer; flex: none; height: 24px; overflow: hidden; position: relative; width: 24px; }\",\".framer-Lng9t .framer-qg2tg1, .framer-Lng9t .framer-uikn94 { flex: none; height: var(--framer-aspect-ratio-supported, 16px); left: 50%; position: absolute; top: 4px; width: 16px; }\",\".framer-Lng9t .framer-1f96thc { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 1px; justify-content: flex-start; overflow: auto; padding: 24px 20px 24px 20px; position: relative; width: 100%; z-index: 3; }\",\".framer-Lng9t .framer-16kx8o4-container { flex: none; height: auto; position: relative; width: 100%; }\",\".framer-Lng9t .framer-1x2hzms { align-content: center; align-items: center; bottom: 0px; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: center; overflow: visible; padding: 24px 20px 24px 20px; position: sticky; width: 100%; z-index: 4; }\",\".framer-Lng9t .framer-rjfl2u { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-Lng9t .framer-1omjuao { 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-Lng9t .framer-139cpuq, .framer-Lng9t .framer-jgm45r { flex: 1 0 0px; height: auto; position: relative; white-space: pre-wrap; width: 1px; word-break: break-word; word-wrap: break-word; }\",\".framer-Lng9t .framer-1a7uhrv-container { flex: none; height: auto; position: relative; width: 100%; z-index: 1; }\",\".framer-Lng9t .framer-fli2a5-container { height: auto; position: relative; width: 368px; }\",\".framer-Lng9t .framer-lws1mt, .framer-Lng9t .framer-1azfjir { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 8px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-Lng9t .framer-ovnanb, .framer-Lng9t .framer-wnel7y, .framer-Lng9t .framer-4yv8qr, .framer-Lng9t .framer-125oq3i, .framer-Lng9t .framer-cnxwv9, .framer-Lng9t .framer-1dwcyji, .framer-Lng9t .framer-w2l745, .framer-Lng9t .framer-1kckb83, .framer-Lng9t .framer-cfmtk, .framer-Lng9t .framer-4d1mpe, .framer-Lng9t .framer-1bsxcdz, .framer-Lng9t .framer-5f5l9v, .framer-Lng9t .framer-3s53pj, .framer-Lng9t .framer-1sl7bgu { aspect-ratio: 1.5833333333333333 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 24px); position: relative; width: 38px; }\",\".framer-Lng9t .framer-a3et4i { align-content: center; align-items: center; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 800px; justify-content: flex-start; overflow: visible; padding: 0px 0px 24px 0px; position: relative; width: 400px; z-index: 2; }\",\".framer-Lng9t .framer-17jry9a { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 1px; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 100%; }\",\".framer-Lng9t .framer-17k5jne { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: center; overflow: visible; padding: 20px; position: relative; width: 100%; z-index: 1; }\",\".framer-Lng9t .framer-sl6qm3 { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 40px; height: min-content; justify-content: center; overflow: visible; padding: 20px; position: relative; width: 100%; }\",\".framer-Lng9t .framer-1spi9js { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",\".framer-Lng9t .framer-ck3bt4 { display: grid; flex: none; gap: 24px 12px; grid-auto-rows: minmax(0, 1fr); grid-template-columns: repeat(2, minmax(50px, 1fr)); height: min-content; justify-content: center; padding: 0px; position: relative; width: 100%; }\",\".framer-Lng9t .framer-1o58lit { align-content: center; align-items: center; align-self: start; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: flex-start; justify-self: start; padding: 0px; position: relative; text-decoration: none; width: 100%; }\",\".framer-Lng9t .framer-n5omtj-container { flex: 1 0 0px; height: auto; position: relative; width: 1px; }\",...sharedStyle.css,'.framer-Lng9t[data-border=\"true\"]::after, .framer-Lng9t [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; corner-shape: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 800\n * @framerIntrinsicWidth 400\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"oEvKeVlbB\":\"click\",\"xv6C14M0G\":\"closeCart\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerkQ_xyFkUJ=withCSS(Component,css,\"framer-Lng9t\");export default FramerkQ_xyFkUJ;FramerkQ_xyFkUJ.displayName=\"Pop Up Cart\";FramerkQ_xyFkUJ.defaultProps={height:800,width:400};addPropertyControls(FramerkQ_xyFkUJ,{oEvKeVlbB:{title:\"Click\",type:ControlType.EventHandler},xv6C14M0G:{title:\"Close Cart\",type:ControlType.EventHandler}});addFonts(FramerkQ_xyFkUJ,[{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:\"Karla\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Karla\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/6MOEMOPFWU4AQQNFYM2JTAQ5OE5CO7B6/JYWT7H2OZGXL2AV26YXBDIFRRKMGZCZU/DLEJBHKWR5LWHNNHXWFCN6IAQUO5LLH6.woff2\",weight:\"500\"},{cssFamilyName:\"Karla\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Karla\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/QHWPH76XNDLVANFZSQLE5PE2RFQNT5MO/ULBH7EH7QWYAOOAZ6464WXLMJG4IHVHV/B7KR3ZKVFW4ZAG27WVGXSFR2Z2ECBA7Q.woff2\",weight:\"300\"},{cssFamilyName:\"Instrument Sans\",source:\"google\",style:\"normal\",uiFamilyName:\"Instrument Sans\",url:\"https://fonts.gstatic.com/s/instrumentsans/v4/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSTF-QfwmS0v3_7Y.woff2\",weight:\"400\"},{cssFamilyName:\"Instrument Sans\",source:\"google\",style:\"normal\",uiFamilyName:\"Instrument Sans\",url:\"https://fonts.gstatic.com/s/instrumentsans/v4/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npST3-QfwmS0v3_7Y.woff2\",weight:\"500\"}]},...FC_CartCounterFonts,...XFonts,...FC_CartProductCardFonts,...FC_CartSubtotalFonts,...CheckoutFonts,...FC_CartCheckoutButtonFonts,...CartProductFonts,...FC_CartStateControllerFonts,...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});FramerkQ_xyFkUJ.loader={load:(props,context)=>{const locale=context.locale;const queryCacheEntry=queryCache.get(query1(),locale);return Promise.allSettled([queryCacheEntry.preload(),forwardLoader(Checkout,{},context),(async()=>{const parentData=await queryCacheEntry.readMaybeAsync()??[];return Promise.allSettled(parentData.flatMap(item=>forwardLoader(CartProduct,{},context)));})()]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerkQ_xyFkUJ\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerColorSyntax\":\"true\",\"framerIntrinsicWidth\":\"400\",\"framerAutoSizeImages\":\"true\",\"framerVariables\":\"{\\\"oEvKeVlbB\\\":\\\"click\\\",\\\"xv6C14M0G\\\":\\\"closeCart\\\"}\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicHeight\":\"800\",\"framerComponentViewportWidth\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","export const getFilterValue=(property,options)=>{if(property.startsWith(\"variant_\")){return{type:\"variant\",value:{[property]:options.value}};}switch(property){case\"product_type\":case\"product_tag\":case\"collection\":return{type:property,value:options.value};case\"price\":return{type:\"price\",// value: options.price_ranges.map((range: string) => {\n//     const [min, max] = range.split('-').map(Number);\n//     return { min, max };\n// }),\nvalue:options.values.map(value=>{if(value.priceType===\"Under\"){return{min:null,max:value.max}// Handle \"Under\" case\n;}else if(value.priceType===\"Over\"){return{min:value.min,max:null}// Handle \"Over\" case\n;}else{const[min,max]=value.split(\"-\").map(Number);return{min,max}// Handle regular range\n;}})};case\"discount_amount\":return{type:\"discount_amount\",value:options.discount_amount_min?{min:options.discount_amount_min,max:options.discount_amount_max}:options.discount_amount};case\"discount_percent\":return{type:\"discount_percent\",value:options.discount_percent_min?{min:options.discount_percent_min,max:options.discount_percent_max}:options.discount_percent};case\"on_sale\":case\"in_stock\":case\"bundle\":case\"subscription\":return{type:property,value:options.value===\"true\"};default:return{type:property,value:\"\"};}};/**\n * Convert legacy filter names to new format and vice versa\n */export const convertFilterName=(name,toLegacy=false)=>{//console.log('convertFilterName input:', name, 'toLegacy:', toLegacy);\nconst mappings={// New format to legacy format\nproduct_type:\"product-type\",product_tag:\"product-tag\",on_sale:\"on-sale\",in_stock:\"in-stock\",bundle:\"bundles\",subscription:\"subscriptions\"};if(toLegacy){const result=mappings[name]||name;//console.log('convertFilterName output (toLegacy):', result);\nreturn result;}else{// Legacy format to new format\nconst reverseMappings={};Object.entries(mappings).forEach(([key,value])=>{reverseMappings[value]=key;});const result=reverseMappings[name]||name;//console.log('convertFilterName output (fromLegacy):', result);\nreturn result;}};/**\n * Parses URL parameters and converts them into filter state\n *\n * URL format conventions:\n * 1. Between different filter types: Always use AND logic with separate parameters\n *    (e.g., ?product_type=shirts&collection=summer)\n *\n * 2. Within the same filter type:\n *    - For collection, product_type, product_tag: Use comma-separated values for OR logic\n *      (e.g., ?product_type=shirts,pants,jackets means products that are shirts OR pants OR jackets)\n *    - For variant filters:\n *      a) Comma-separated values indicate OR logic\n *         (e.g., ?variant_color=blue,red,green means blue OR red OR green)\n *      b) Repeated parameters indicate AND logic\n *         (e.g., ?variant_color=blue&variant_size=large means blue AND large)\n */export const parseUrlFilters=urlParams=>{// Disabled excessive logging that was causing performance issues\n// console.log(\"Parsing URL filters from:\", urlParams.toString());\nconst filters={collection:{active:false,values:[]},product_type:{active:false,values:[]},product_tag:{active:false,values:[]},variant:{active:false,values:[]},variant_Color:{active:false,value:null},price:{active:false,values:[]},discount_amount:{active:false,values:[]},discount_percent:{active:false,values:[]},on_sale:{active:false,value:true},in_stock:{active:false,value:true},bundle:{active:false,value:true},subscription:{active:false,value:true}};[\"collection\",\"product_type\",\"product_tag\",\"product-type\",\"product-tag\"].forEach(filterType=>{const value=urlParams.get(filterType);if(value){const normalizedType=convertFilterName(filterType);//console.log(`Found filter ${filterType}, normalized to ${normalizedType}:`, value);\n// Split by comma for OR logic between values\nconst values=value.split(\",\").filter(Boolean);filters[normalizedType].values=values;filters[normalizedType].active=values.length>0;}});// Process variant filters (variant_color, variant_size, etc.)\n// Support both comma-separated values (OR logic) and multiple params with same name (AND logic between different options)\nArray.from(urlParams.keys()).forEach(key=>{if(key.startsWith(\"variant_\")){const variantName=key.replace(\"variant_\",\"\");const value=urlParams.get(key);if(value){// Decode the value first to handle any URL encoding\nconst decodedValue=decodeURIComponent(value);// Special handling for color filter\nif(variantName.toLowerCase()===\"color\"){filters.variant_Color.active=true;filters.variant_Color.value=decodedValue.trim();}// Log the variant filter values being processed\n// console.log(`Parsing variant filter ${key}:`, {\n//     rawValue: value,\n//     decodedValue,\n//     isMultiValue: decodedValue.includes(',')\n// });\n// Split by comma for OR logic between values of the same option\nconst values=decodedValue.split(\",\").filter(Boolean);// Each value is an OR option for this variant type\nvalues.forEach(val=>{filters.variant.values.push({name:variantName,value:val.trim()});});// console.log(`Found variant filter ${key}:`, {\n//     values,\n//     orLogic: \"Values within same variant type use OR logic\"\n// });\n}}});filters.variant.active=filters.variant.values.length>0;// Process price filters\nconst priceRanges=urlParams.get(\"price\");const priceMax=urlParams.get(\"price_max\");const priceMin=urlParams.get(\"price_min\");filters.price={active:false,values:[]};if(priceRanges){// Handle regular price ranges\nconst ranges=priceRanges.split(\",\").map(range=>{const[min,max]=range.split(\"-\").map(Number);return{min,max,priceType:\"Range\"};});filters.price.values.push(...ranges);filters.price.active=true;}if(priceMax){// Handle \"Under\" price ranges\nconst maxValues=priceMax.split(\",\").map(Number);const underRanges=maxValues.map(max=>({min:null,max,priceType:\"Under\"}));filters.price.values.push(...underRanges);filters.price.active=true;}// Handle \"Over\" price ranges\nif(priceMin){const minValues=priceMin.split(\",\").map(Number);minValues.forEach(min=>{filters.price.values.push({min,max:null,priceType:\"Over\"});});filters.price.active=true;}// Process discount filters\nconst discountAmount=urlParams.get(\"discount_amount\");if(discountAmount){const ranges=discountAmount.split(\",\").map(range=>{const[min,max]=range.split(\"-\").map(Number);return{min,max};});filters.discount_amount={active:true,values:ranges};}const discountAmountMin=urlParams.get(\"discount_amount_min\");if(discountAmountMin){const minValues=discountAmountMin.split(\",\").map(Number);if(!filters.discount_amount){filters.discount_amount={active:true,values:[]};}// Add each min value as a range with null max\nminValues.forEach(min=>{filters.discount_amount.values.push({min,max:null});});filters.discount_amount.active=true;}const discountPercent=urlParams.get(\"discount_percent\");if(discountPercent){const ranges=discountPercent.split(\",\").map(range=>{const[min,max]=range.split(\"-\").map(Number);return{min,max};});filters.discount_percent={active:true,values:ranges};}const discountPercentMin=urlParams.get(\"discount_percent_min\");if(discountPercentMin){const minValues=discountPercentMin.split(\",\").map(Number);if(!filters.discount_percent){filters.discount_percent={active:true,values:[]};}// Add each min value as a range with null max\nminValues.forEach(min=>{filters.discount_percent.values.push({min,max:null});});filters.discount_percent.active=true;}[\"on_sale\",\"in_stock\",\"bundle\",\"subscription\"].forEach(filterType=>{const value=urlParams.get(filterType);if(value===\"true\"){filters[filterType]={active:true,value:true};}});return filters;};/**\n * Updates URL parameters based on current filter state\n *\n * URL format conventions:\n * 1. Between different filter types: Always use AND logic with separate parameters\n *\n * 2. Within the same filter type:\n *    - For collection, product_type, product_tag: Use comma-separated values for OR logic\n *    - For variant filters:\n *      a) Group variants by name and use comma-separated values for OR logic within same variant type\n *      b) Different variant types use AND logic with separate parameters\n */export const updateUrlWithFilters=(filters,url)=>{//console.log(\"Updating URL with filters:\", filters);\n// Clear existing filter params\nArray.from(url.searchParams.keys()).filter(key=>key.startsWith(\"variant_\")||[\"product_type\",\"product_tag\",\"collection\",\"price\",\"price_min\",\"price_max\",\"discount_amount\",\"discount_amount_min\",\"discount_percent\",\"discount_percent_min\",\"on_sale\",\"in_stock\",\"bundle\",\"subscription\",// Also include legacy filter names\n    \"product-type\",\"product-tag\",\"on-sale\",\"in-stock\",\"bundles\",\"subscriptions\"].includes(key)).forEach(key=>url.searchParams.delete(key));[\"collection\",\"product_type\",\"product_tag\"].forEach(filterType=>{if(filters[filterType]?.active&&filters[filterType]?.values?.length>0){url.searchParams.set(filterType,filters[filterType].values.join(\",\"));//console.log(`Set URL param ${filterType}=`, filters[filterType].values.join(','));\n}});// Add variant filters\n// Group variant values by name, and each group uses comma-separated values for OR logic\nif(filters.variant?.active&&filters.variant?.values?.length>0){// Group variant values by name\nconst variantGroups={};filters.variant.values.forEach(variant=>{// Use lowercase name for case-insensitive grouping\nconst normalizeName=`variant_${variant.name}`;if(!variantGroups[normalizeName]){variantGroups[normalizeName]=[];}// Avoid adding duplicate values\nif(!variantGroups[normalizeName].some(v=>v.toLowerCase()===variant.value.toLowerCase())){variantGroups[normalizeName].push(variant.value);}});// Add each variant group to URL with comma-separated values (OR logic)\nObject.entries(variantGroups).forEach(([key,values])=>{// Don't encode the values here as URLSearchParams will handle that\nurl.searchParams.set(key,values.join(\",\"));//console.log(`Set URL param ${key}=`, values.join(','), '(OR logic between values)');\n});}// Add price filters\nif(filters.price?.active&&filters.price.values?.length>0){// const regularRanges = [];\n// const underMaxValues = [];\n// const overMinValues = [];\nconst regularRanges=[];const underMaxValues=[];const overMinValues=[];filters.price.values.forEach(range=>{if(range.priceType===\"Under\"){underMaxValues.push(range.max);}else if(range.priceType===\"Over\"){overMinValues.push(range.min);}else{regularRanges.push(`${range.min}-${range.max}`);}});if(regularRanges.length>0){url.searchParams.set(\"price\",regularRanges.join(\",\"));}if(underMaxValues.length>0){url.searchParams.set(\"price_max\",underMaxValues.join(\",\"));}if(overMinValues.length>0){url.searchParams.set(\"price_min\",overMinValues.join(\",\"));}}// Add discount filters\nif(filters.discount_amount?.active&&filters.discount_amount.values?.length>0){const discountRanges=[];const discountMinValues=[];filters.discount_amount.values.forEach(range=>{if(range.max===null){// This is an \"Over\" type discount\ndiscountMinValues.push(range.min);}else{// This is a regular range\ndiscountRanges.push(`${range.min}-${range.max}`);}});if(discountRanges.length>0){url.searchParams.set(\"discount_amount\",discountRanges.join(\",\"));}if(discountMinValues.length>0){url.searchParams.set(\"discount_amount_min\",discountMinValues.join(\",\"));}}if(filters.discount_percent?.active&&filters.discount_percent.values?.length>0){const discountPercentRanges=[];const discountPercentMinValues=[];filters.discount_percent.values.forEach(range=>{if(range.max===null){// This is an \"Over\" type discount\ndiscountPercentMinValues.push(range.min);}else{// This is a regular range\ndiscountPercentRanges.push(`${range.min}-${range.max}`);}});if(discountPercentRanges.length>0){url.searchParams.set(\"discount_percent\",discountPercentRanges.join(\",\"));}if(discountPercentMinValues.length>0){url.searchParams.set(\"discount_percent_min\",discountPercentMinValues.join(\",\"));}}[\"on_sale\",\"in_stock\",\"bundle\",\"subscription\"].forEach(filterType=>{if(filters[filterType]?.active){url.searchParams.set(filterType,\"true\");}});};\nexport const __FramerMetadata__ = {\"exports\":{\"FilterValue\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getFilterValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"parseUrlFilters\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"updateUrlWithFilters\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"convertFilterName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./filterMappings.map","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{debounce}from\"lodash-es\";import{parseUrlFilters}from\"https://framerusercontent.com/modules/A55TPw8oJtDToWtsjcDZ/rm89gWVDrPnML7Vtbv1c/filterMappings.js\";// Global state management to prevent duplicate instances\nconst globalSortState={instances:new Set,eventListeners:new Map,cleanup:()=>{globalSortState.instances.clear();globalSortState.eventListeners.forEach((listener,event)=>{window.removeEventListener(event,listener);});globalSortState.eventListeners.clear();},lastUrl:typeof window!==\"undefined\"?window.location.href:\"\",isBackToFilter:false};// Ensure cleanup on page unload\nif(typeof window!==\"undefined\"){window.addEventListener(\"beforeunload\",globalSortState.cleanup);}// Helper function to find 13-digit number\nfunction findDeep13DigitNumber(obj){if(typeof obj===\"string\"){const match=obj.match(/\\d{12,}/);if(match)return match[0];return null;}if(!obj||typeof obj!==\"object\")return null;for(const key in obj){if(Array.isArray(obj[key])||typeof obj[key]===\"object\"){const found=findDeep13DigitNumber(obj[key]);if(found)return found;}else if(typeof obj[key]===\"string\"){const match=obj[key].match(/\\d{12,}/);if(match)return match[0];}}return null;}class ErrorBoundary extends React.Component{static getDerivedStateFromError(error){return{hasError:true,error};}componentDidCatch(error,errorInfo){}render(){if(this.state.hasError){return /*#__PURE__*/_jsx(\"div\",{style:{padding:20,color:\"red\"},children:\"Something went wrong loading the CMS content.\"});}// @ts-ignore: TypeScript doesn't recognize props in this context\nreturn this.props.children;}constructor(props){super(props);_define_property(this,\"state\",{hasError:false,error:null});}}// Let's add a helper function for consistent logging\nconst logDebug=(component,action,data)=>{// console.log intentionally disabled\n};// [DUPLICATE_VARIANTS_LOGIC_DISABLED] Interface for duplicated products\n// interface DuplicatedProduct {\n//     originalProduct: Product\n//     variant: ProductVariant\n//     uniqueId: string // Combination of product ID + variant ID\n//     displayPrice: {\n//         amount: string\n//         currencyCode: string\n//     }\n//     displayCompareAtPrice?: {\n//         amount: string\n//         currencyCode: string\n//     }\n//     selectedOptions: Array<{\n//         name: string\n//         value: string\n//     }>\n// }\n// Helper function to get active search fields based on scope settings\nfunction getActiveSearchFields(scope){const fields=[];if(scope?.title)fields.push(\"title\");if(scope?.productType)fields.push(\"productType\");if(scope?.productTag)fields.push(\"tags\");if(scope?.collection)fields.push(\"collections\");if(scope?.vendor)fields.push(\"vendor\");if(scope?.variants)fields.push(\"variants\");return fields;}// [DUPLICATE_VARIANTS_LOGIC_DISABLED] Function to process products for variant duplication\n// function processProductsForVariantDuplication(\n//     products: Array<{ node: any }>,\n//     variantTitles: string[]\n// ): DuplicatedProduct[] {\n//     console.log(\"🔄 Processing products for variant duplication:\", {\n//         totalProducts: products.length,\n//         variantTitles,\n//         sampleProduct: products[0]?.node,\n//     })\n//     const duplicatedProducts: DuplicatedProduct[] = []\n//     products.forEach(({ node: product }) => {\n//         if (!product.variants?.edges) {\n//             console.log(`⚠️ Product \"${product.title}\" has no variants`)\n//             return\n//         }\n//         console.log(`🔍 Checking product \"${product.title}\" variants:`, {\n//             totalVariants: product.variants?.edges?.length || 0,\n//             variantOptions: product.variants?.edges?.map(({ node: v }) =>\n//                 v.selectedOptions?.map((opt) => `${opt.name}: ${opt.value}`) || []\n//             ) || [],\n//         })\n//         // Get all variants that match the specified variant titles\n//         const matchingVariants = product.variants.edges.filter(\n//             ({ node: variant }) => {\n//                 const hasMatchingOption = variant.selectedOptions.some(\n//                     (option) => variantTitles.includes(option.name)\n//                 )\n//                 console.log(\n//                     `  Variant ${variant.id}: ${hasMatchingOption ? \"✅\" : \"❌\"} matches ${variantTitles.join(\", \")}`\n//                 )\n//                 return hasMatchingOption\n//             }\n//         )\n//         console.log(\n//             `📊 Found ${matchingVariants.length} matching variants for \"${product.title}\"`\n//         )\n//         // If no matching variants found, include the original product once\n//         if (matchingVariants.length === 0) {\n//             console.log(\n//                 `⚠️ No variants match \"${variantTitles.join(\", \")}\" for \"${product.title}\" - including original product`\n//             )\n//             // Create a single entry for the original product\n//             duplicatedProducts.push({\n//                 originalProduct: product,\n//                 variant: product.variants.edges[0]?.node || null, // Use first variant as default\n//                 uniqueId: product.id, // Use original product ID\n//                 displayPrice: product.priceRange?.minVariantPrice || {\n//                     amount: \"0\",\n//                     currencyCode: \"USD\",\n//                 },\n//                 displayCompareAtPrice:\n//                     product.compareAtPriceRange?.minVariantPrice,\n//                 selectedOptions:\n//                     product.variants.edges[0]?.node?.selectedOptions || [],\n//             })\n//             console.log(\n//                 `✅ Created original product entry for \"${product.title}\"`\n//             )\n//             return\n//         }\n//         // Group variants by unique values for the specified variant titles only\n//         const uniqueVariantGroups = new Map()\n//         matchingVariants.forEach(({ node: variant }) => {\n//             // Create a key based on the specified variant titles only\n//             const variantKey = variant.selectedOptions\n//                 .filter((option) => variantTitles.includes(option.name))\n//                 .map((option) => `${option.name}:${option.value}`)\n//                 .sort()\n//                 .join(\"|\")\n//             if (!uniqueVariantGroups.has(variantKey)) {\n//                 uniqueVariantGroups.set(variantKey, [])\n//             }\n//             uniqueVariantGroups.get(variantKey).push(variant)\n//         })\n//         console.log(\n//             `🎯 Found ${uniqueVariantGroups.size} unique ${variantTitles.join(\", \")} combinations for \"${product.title}\"`\n//         )\n//         // Create a duplicated product for each unique variant group\n//         uniqueVariantGroups.forEach((variants, variantKey) => {\n//             // Use the first variant from each group as the representative\n//             const representativeVariant = variants[0]\n//             console.log(\n//                 `✅ Creating duplicate for \"${product.title}\" - ${variantKey}`\n//             )\n//             duplicatedProducts.push({\n//                 originalProduct: product,\n//                 variant: representativeVariant,\n//                 uniqueId: `${product.id}_${representativeVariant.id}`,\n//                 displayPrice: representativeVariant.price ||\n//                     product.priceRange?.minVariantPrice || {\n//                         amount: \"0\",\n//                         currencyCode: \"USD\",\n//                     },\n//                 displayCompareAtPrice:\n//                     representativeVariant.compareAtPrice ||\n//                     product.compareAtPriceRange?.minVariantPrice,\n//                 selectedOptions: representativeVariant.selectedOptions,\n//             })\n//         })\n//     })\n//     console.log(\n//         `🎯 Total duplicated products created: ${duplicatedProducts.length}`\n//     )\n//     return duplicatedProducts\n// }\n/**\n * @framerDisableUnlink\n */export default function FC_CatalogDisplay(props){// State declarations at the top of the component\nconst[isLoading,setIsLoading]=React.useState(true);const[sortedChildren,setSortedChildren]=React.useState(null);const[products,setProducts]=React.useState([]);// [DUPLICATE_VARIANTS_LOGIC_DISABLED] State for duplicated products\n// const [duplicatedProducts, setDuplicatedProducts] = React.useState<\n//     DuplicatedProduct[]\n// >([])\nconst[duplicatedProducts,setDuplicatedProducts]=React.useState([]);const[favorites,setFavorites]=React.useState([]);const[isTransitioning,setIsTransitioning]=React.useState(false);const[isSettling,setIsSettling]=React.useState(false);// console.log(\"🚨🚨🚨 COMPONENT MOUNTED 🚨🚨🚨\", {\n//     hasCollection: !!props.Collection,\n//     hasProducts:\n//         typeof window !== \"undefined\" && !!window.shopXtools?.products,\n//     url: typeof window !== \"undefined\" ? window.location.href : null,\n// })\n// Keep a log of component initialization\nlogDebug(\"ProductSort\",\"Component initializing\",{props:Object.keys(props)});const{Collection,pageType,Metafields}=props;const includeMetafields=Metafields?.include||false;const transitionTimeoutRef=React.useRef(null);const settlingTimeoutRef=React.useRef(null);const lastUpdateRef=React.useRef(null);const urlParams=typeof window!==\"undefined\"?new URLSearchParams(window.location.search):new URLSearchParams;// Add pagination state\nconst[currentPage,setCurrentPage]=React.useState(()=>{if(typeof window!==\"undefined\"){const pageParam=urlParams.get(\"page\");return pageParam?parseInt(pageParam):1;}return 1;});const[hasMore,setHasMore]=React.useState(false);const observerRef=React.useRef(null);const loadMoreRef=React.useRef(null);// Calculate itemsPerPage from props (will update when prop changes)\nconst itemsPerPage=React.useMemo(()=>props.Pagination?.items||8,[props.Pagination?.items]);// Add state to maintain full product list\nconst[allProducts,setAllProducts]=React.useState([]);const[displayedProducts,setDisplayedProducts]=React.useState([]);// Track total filtered count (before pagination) for result counter\nconst[totalFilteredCount,setTotalFilteredCount]=React.useState(0);// Add search state\nconst[searchConfig,setSearchConfig]=React.useState(()=>{// Initialize from URL parameter if it exists\nif(typeof window!==\"undefined\"){const urlParams=new URLSearchParams(window.location.search);const searchParam=urlParams.get(\"search\");// console.log(\"🔍 Initializing search from URL:\", {\n//     url: window.location.href,\n//     searchParam,\n//     allParams: Object.fromEntries(urlParams.entries()),\n// })\nif(searchParam){return{term:searchParam,fields:getActiveSearchFields(props.Search?.Scope),active:true};}}return{term:\"\",fields:getActiveSearchFields(props.Search?.Scope),active:false};});// Add effect to update search fields when scope changes\nReact.useEffect(()=>{setSearchConfig(prev=>({...prev,fields:getActiveSearchFields(props.Search?.Scope)}));},[props.Search?.Scope]);// Adjust initial state based on search settings\nReact.useEffect(()=>{if(props.Search.initialSearchState===\"none\"&&props.Search.enableSearch&&!searchConfig.term){// console.log(\"Applying initial 'none' state\")\nsetSortedChildren([])// Start with no products displayed\n;// Disable pagination buttons for both load more and next/prev types because there are no products to display\nsetTimeout(()=>{if(props.Pagination?.type===\"load_more\"){const hasMoreItemsEvent=new CustomEvent(\"hide-loadmore-button\",{detail:{hasMoreItems:false}});document.dispatchEvent(hasMoreItemsEvent);//console.log(\"hide-loadmore-button dispatched (delayed)\", hasMoreItemsEvent);\n}else if(props.Pagination?.type===\"next_prev\"){const updateNextPrevButtonsEvent=new CustomEvent(\"update_next_prev_buttons\",{detail:{hasMoreItems:false,type:props.Pagination?.type,currentPage:1}});document.dispatchEvent(updateNextPrevButtonsEvent);//console.log(\"update_next_prev_buttons dispatched (delayed)\", updateNextPrevButtonsEvent);\n}},100)// 100ms delay to ensure listeners are attached\n;}},[props.Search.initialSearchState,props.Search.enableSearch,searchConfig.term]);// Function to get paginated products\nconst getPaginatedProducts=React.useCallback(products=>{if(!props.Pagination?.enable||!Array.isArray(products))return products;let startIndex,endIndex,paginatedProducts;switch(props.Pagination.type){case\"load_more\":// For Load More, show all items up to current page\nstartIndex=0;endIndex=currentPage*itemsPerPage;paginatedProducts=products.slice(startIndex,endIndex);const hasMoreLoadMore=endIndex<products.length;setHasMore(hasMoreLoadMore);// console.log(\"hasMoreLoadMore\", hasMoreLoadMore)\n// console.log(\"products.length\", products?.length)\n// console.log(\"currentPage\", currentPage)\n// console.log(\"itemsPerPage\", itemsPerPage)\n// console.log(\"endIndex\", endIndex)\n// console.log(\"searchConfig.active\", searchConfig.active)\nif(!hasMoreLoadMore){const hasMoreItemsEvent=new CustomEvent(\"hide-loadmore-button\",{detail:{hasMoreItems:hasMoreLoadMore}});document.dispatchEvent(hasMoreItemsEvent);//console.log(\"hide-loadmore-button dispatched\", hasMoreItemsEvent)\n}break;case\"next_prev\":// For Next/Previous, show only current page items\nstartIndex=(currentPage-1)*itemsPerPage;endIndex=startIndex+itemsPerPage;paginatedProducts=products.slice(startIndex,endIndex);const hasMoreNextPrev=endIndex<products.length;setHasMore(hasMoreNextPrev);const updateNextPrevButtonsEvent=new CustomEvent(\"update_next_prev_buttons\",{detail:{hasMoreItems:hasMoreNextPrev,type:props.Pagination?.type,currentPage}});document.dispatchEvent(updateNextPrevButtonsEvent);console.log(\"[CMS Pagination] Next/Previous:\",{itemsPerPage,currentPage,startIndex,endIndex,paginatedProducts,hasMoreNextPrev});break;case\"infinite\":// For Infinite Scroll, show all items up to current page\nstartIndex=0;endIndex=currentPage*itemsPerPage;paginatedProducts=products.slice(startIndex,endIndex);const hasMoreInfinite=endIndex<products.length;setHasMore(hasMoreInfinite);break;default:return products;}return paginatedProducts;},[currentPage,itemsPerPage,props.Pagination?.enable,props.Pagination?.type]);// Add effect to handle URL pagination parameters\nReact.useEffect(()=>{if(typeof window===\"undefined\"||!props.Pagination?.enable)return;const url=new URL(window.location.href);const urlParams=new URLSearchParams(url.search);// // Update page parameter\n// if (props.Pagination?.enable) {\n//     if (currentPage > 1) {\n//         urlParams.set(\"page\", currentPage.toString())\n//     } else {\n//         urlParams.delete(\"page\")\n//     }\n// } else {\n//     urlParams.delete(\"page\")\n// }\n// // Update URL without triggering a page reload\n// window.history.pushState(\n//     { page: currentPage },\n//     \"\",\n//     url.toString()\n// )\nif(currentPage>1){urlParams.set(\"page\",currentPage.toString());}else{urlParams.delete(\"page\");}const newUrl=`${url.pathname}?${urlParams.toString()}`;if(newUrl!==window.location.pathname+window.location.search){//console.log(\"📌 Pushing new page URL:\", newUrl)\nwindow.history.pushState({page:currentPage},\"\",newUrl);}},[currentPage,props.Pagination?.enable]);// Update the infinite scroll effect\nReact.useEffect(()=>{if(!props.Pagination?.enable||props.Pagination?.type!==\"infinite\"||typeof window===\"undefined\")return;/*\n    console.log(\"[CMS] Setting up infinite scroll observer\", {\n      hasMore,\n      isLoading,\n      currentPage,\n      loadMoreRefExists: !!loadMoreRef.current,\n    });\n    */const observer=new IntersectionObserver(entries=>{const target=entries[0];/* console.log(\"[CMS] Intersection observed:\", {\n          isIntersecting: target.isIntersecting,\n          hasMore,\n          isLoading,\n          currentPage,\n        }); */if(target.isIntersecting&&hasMore&&!isLoading){// console.log(\"[CMS] Loading more items, incrementing page\");\nsetCurrentPage(prev=>prev+1);}},{root:null,rootMargin:\"100px\",threshold:.1});if(loadMoreRef.current){// console.log(\"[CMS] Observing load more trigger element\");\nobserver.observe(loadMoreRef.current);}return()=>{if(observer){// console.log(\"[CMS] Cleaning up observer\");\nobserver.disconnect();}};},[hasMore,props.Pagination?.enable,props.Pagination?.type,isLoading,currentPage]);// Update the sorted children wrapper to include the infinite scroll trigger\nconst updateSortedChildrenWithTransition=newChildren=>{if(!newChildren){console.warn(\"[CMS] Received null/undefined children\");return;}// console.log(\"[CMS] Starting transition update:\", {\n//     totalChildren: newChildren.length,\n//     currentPage,\n//     paginationType: props.Pagination?.type,\n//     hasMore,\n// })\n// Store the full list\nsetAllProducts(newChildren);// Get paginated subset for display\nconst paginatedChildren=getPaginatedProducts(newChildren);//console.log(\"[CMS] hasMore:\", hasMore)\n// Add infinite scroll trigger if needed\nif(props.Pagination?.enable&&props.Pagination?.type===\"infinite\"&&hasMore&&paginatedChildren.length>0){// console.log(\"[CMS] Adding infinite scroll trigger\");\npaginatedChildren.push(/*#__PURE__*/_jsx(\"div\",{ref:loadMoreRef,style:{width:\"100%\",height:\"50px\",gridColumn:\"1 / -1\",opacity:0,pointerEvents:\"none\"}},\"infinite-scroll-trigger\"));}logDebug(\"ProductSort\",\"Updating sorted children with transition\",{totalChildren:newChildren.length,paginatedChildren:paginatedChildren.length,currentPage,isSettling,hasMore});const now=Date.now();if(lastUpdateRef.current&&now-lastUpdateRef.current<100){setIsSettling(true);if(settlingTimeoutRef.current){clearTimeout(settlingTimeoutRef.current);}//console.log(\"[CMS] Delaying transition\")\nsettlingTimeoutRef.current=setTimeout(()=>{setIsSettling(false);setDisplayedProducts(paginatedChildren);performTransition(paginatedChildren);},150);}else{//console.log(\"[CMS] Immediate transition\")\nsetDisplayedProducts(paginatedChildren);performTransition(paginatedChildren);}lastUpdateRef.current=now;};// Add logging for URL parameters\nif(typeof window!==\"undefined\"){// logDebug(\"ProductSort\", \"URL parameters on init\", {\n//   url: window.location.href,\n//   params: Object.fromEntries(urlParams.entries()),\n// });\n}const[sortConfig,setSortConfig]=React.useState(()=>{// First try to get sort from URL parameter\nif(typeof window!==\"undefined\"){const urlParams=new URLSearchParams(window.location.search);const sortParam=urlParams.get(\"sort\");logDebug(\"ProductSort\",\"Sort parameter from URL\",{sortParam});if(sortParam){// Map URL sort parameter to internal sort configuration\nswitch(sortParam){case\"relevance\":return{type:\"relevancy\",sortBy:\"relevancy\",sortDirection:null};case\"title_asc\":return{type:\"name\",sortBy:\"name\",sortDirection:\"aToZ\"};case\"title_desc\":return{type:\"name\",sortBy:\"name\",sortDirection:\"zToA\"};case\"price_asc\":return{type:\"price\",sortBy:\"price\",sortDirection:\"lowToHigh\"};case\"price_desc\":return{type:\"price\",sortBy:\"price\",sortDirection:\"highToLow\"};case\"newest\":return{type:\"created\",sortBy:\"created\",sortDirection:\"newest\"};case\"best_selling\":return{type:\"best-selling\",sortBy:\"best-selling\",sortDirection:null};}}// Then check session storage\nconst storedSort=sessionStorage.getItem(\"sortBy\");if(storedSort){switch(storedSort){case\"relevance\":return{type:\"relevancy\",sortBy:\"relevancy\",sortDirection:null};case\"title_asc\":return{type:\"name\",sortBy:\"name\",sortDirection:\"aToZ\"};case\"title_desc\":return{type:\"name\",sortBy:\"name\",sortDirection:\"zToA\"};case\"price_asc\":return{type:\"price\",sortBy:\"price\",sortDirection:\"lowToHigh\"};case\"price_desc\":return{type:\"price\",sortBy:\"price\",sortDirection:\"highToLow\"};case\"newest\":return{type:\"created\",sortBy:\"created\",sortDirection:\"newest\"};case\"best_selling\":return{type:\"best-selling\",sortBy:\"best-selling\",sortDirection:null};}}}// If no URL parameter or session storage, use the default sort from props\nswitch(props.defaultSort){case\"relevance\":return{type:\"relevancy\",sortBy:\"relevancy\",sortDirection:null};case\"title_asc\":return{type:\"name\",sortBy:\"name\",sortDirection:\"aToZ\"};case\"title_desc\":return{type:\"name\",sortBy:\"name\",sortDirection:\"zToA\"};case\"price_asc\":return{type:\"price\",sortBy:\"price\",sortDirection:\"lowToHigh\"};case\"price_desc\":return{type:\"price\",sortBy:\"price\",sortDirection:\"highToLow\"};case\"newest\":return{type:\"created\",sortBy:\"created\",sortDirection:\"newest\"};case\"best_selling\":return{type:\"best-selling\",sortBy:\"best-selling\",sortDirection:null};default:return{type:\"relevancy\",sortBy:\"relevancy\",sortDirection:null};}});const[filters,setFilters]=React.useState(()=>{//console.log(\"props.display for scopes\", props.display)\n// Create the initial filter state based on props\nconst initialFilters={collection:{active:props.display===\"Collection\"&&props.value?true:false,values:props.display===\"Collection\"&&props.value?[props.value]:[]},product_type:{active:props.display===\"Product Type\"&&props.value?true:false,values:props.display===\"Product Type\"&&props.value?[props.value]:[]},product_tag:{active:props.display===\"Product Tag\"&&props.value?true:false,values:props.display===\"Product Tag\"&&props.value?[props.value]:[]},on_sale:{active:false,value:true},in_stock:{active:false,value:true},bundle:{active:false,value:true},subscription:{active:false,value:true},price:{active:false,values:[]},discount_amount:{active:false,values:[]},discount_percent:{active:false,values:[]},variant:{active:false,values:[]}};// Log the initial filter state\nlogDebug(\"ProductSort\",\"Initial filter state created\",{display:props.display,value:props.value,filters:initialFilters,activeFilters:Object.entries(initialFilters).filter(([key,filter])=>filter.active).reduce((acc,[key,filter])=>({...acc,[key]:filter}),{})});// First try to parse filters directly from URL\nif(typeof window!==\"undefined\"){const url=new URL(window.location.href);logDebug(\"ProductSort\",\"Attempting to parse filters from URL for scopes\",{url:url.toString(),search:url.search});try{const urlFilters=parseUrlFilters(url.searchParams);logDebug(\"ProductSort\",\"Filters parsed from URL for scopes\",urlFilters);if(urlFilters&&Object.keys(urlFilters).length>0){const activeFilters=Object.entries(urlFilters).filter(([key,filter])=>filter.active).reduce((acc,[key,filter])=>({...acc,[key]:filter}),{});logDebug(\"ProductSort\",\"Active filters from URL for scopes\",activeFilters);if(Object.keys(activeFilters).length>0){// Merge URL filters with initial scope instead of replacing them\nconst mergedFilters={...initialFilters};logDebug(\"ProductSort\",\"Merged filters from URL for scopes\",mergedFilters);// For each filter type that has an initial scope, ensure it's preserved\nif(props.display===\"Collection\"&&props.value){mergedFilters.collection={active:true,values:[props.value]};}else if(props.display===\"Product Type\"&&props.value){mergedFilters.product_type={active:true,values:[props.value]};}else if(props.display===\"Product Tag\"&&props.value){mergedFilters.product_tag={active:true,values:[props.value]};}// console.log(\"Props - Tag:\", {\n//     active:\n//         props.display === \"Product Tag\" && props.value\n//             ? true\n//             : false,\n//     values:\n//         props.display === \"Product Tag\" && props.value\n//             ? [props.value]\n//             : [],\n// })\n// console.log(\"Props:\", props.display)\n// Then apply URL filters for other filter types\nObject.entries(urlFilters).forEach(([key,filter])=>{if(key===\"collection\"&&props.display===\"Collection\"&&props.value||key===\"product_type\"&&props.display===\"Product Type\"&&props.value||key===\"product_tag\"&&props.display===\"Product Tag\"&&props.value){// Merge values for the scoped filter\nmergedFilters[key]={active:true,values:[...new Set([...mergedFilters[key].values,...filter.values||[]])]};}else{// For non-scoped filters, use the URL filter\nmergedFilters[key]=filter;}});logDebug(\"ProductSort\",\"Merged filters\",mergedFilters);return mergedFilters;}}}catch(error){console.error(\"❌ Error parsing URL filters:\",error);}}// If no URL filters or error, return the initial filters\nreturn initialFilters;});// Memoize event handlers\nconst handleProductsReady=React.useCallback(e=>{logDebug(\"ProductSort\",\"Products ready event received\",{eventType:e.type,shopXToolsAvailable:typeof window!==\"undefined\"&&!!window.shopXtools,shopXProductsCount:typeof window!==\"undefined\"?window.shopXtools?.products?.length:0});// First try to get products from shopXtools\nif(typeof window!==\"undefined\"&&window.shopXtools?.products){// console.log(\"🚨 Setting products from shopXtools 🚨\", {\n//     count: window.shopXtools.products.length,\n//     sample: window.shopXtools.products[0]?.node,\n//     sampleTitle:\n//         window.shopXtools.products[0]?.node?.title ||\n//         \"No title\",\n//     hasNode: !!window.shopXtools.products[0]?.node,\n//     searchConfig: searchConfig,\n//     searchActive: searchConfig.active,\n//     searchTerm: searchConfig.term,\n// })\n// Important: shopXtools.products is already in the correct format with node structure\nsetProducts(window.shopXtools.products);// Process duplicated products if feature is enabled\n/* console.log(\"🔧 Checking duplicate variants settings:\", {\n          enable: props.DuplicateVariants?.enable,\n          variantTitles: props.DuplicateVariants?.variantTitles,\n          hasProducts: !!window.shopXtools.products,\n    }); */// [DUPLICATE_VARIANTS_LOGIC_DISABLED] Variant duplication logic commented out\n// if (\n//     props.DuplicateVariants?.enable &&\n//     props.DuplicateVariants?.variantTitles?.length > 0\n// ) {\n//     console.log(\"🚀 Starting variant duplication process...\")\n//     const duplicated = processProductsForVariantDuplication(\n//         window.shopXtools.products,\n//         props.DuplicateVariants.variantTitles\n//     )\n//     setDuplicatedProducts(duplicated)\n//     logDebug(\"ProductSort\", \"Processed duplicated products\", {\n//         originalCount: window.shopXtools.products.length,\n//         duplicatedCount: duplicated.length,\n//         variantTitles: props.DuplicateVariants.variantTitles,\n//     })\n// } else {\n//     console.log(\n//         \"❌ Duplicate variants not enabled or no variant titles\"\n//     )\n//     setDuplicatedProducts([])\n// }\nsetDuplicatedProducts([])// Always set empty array when logic is disabled\n;// After setting products, force a re-filter if search is active\nif(searchConfig.active&&searchConfig.term){// console.log(\n//     \"🔍 Active search detected during product load, forcing re-filter\"\n// )\nsetSortedChildren(null);}}else if(Array.isArray(e.detail.products)){// console.log(\"🚨 Setting products from event 🚨\", {\n//     count: e.detail.products.length,\n//     sample: e.detail.products[0],\n//     sampleTitle:\n//         e.detail.products[0]?.node?.title || \"No title\",\n//     hasNode: !!e.detail.products[0]?.node,\n//     searchConfig: searchConfig,\n//     searchActive: searchConfig.active,\n//     searchTerm: searchConfig.term,\n// })\nsetProducts(e.detail.products);// [DUPLICATE_VARIANTS_LOGIC_DISABLED] Process duplicated products if feature is enabled\n// if (\n//     props.DuplicateVariants?.enable &&\n//     props.DuplicateVariants?.variantTitles?.length > 0\n// ) {\n//     const duplicated = processProductsForVariantDuplication(\n//         e.detail.products,\n//         props.DuplicateVariants.variantTitles\n//     )\n//     setDuplicatedProducts(duplicated)\n//     logDebug(\"ProductSort\", \"Processed duplicated products\", {\n//         originalCount: e.detail.products.length,\n//         duplicatedCount: duplicated.length,\n//         variantTitles: props.DuplicateVariants.variantTitles,\n//     })\n// } else {\n//     setDuplicatedProducts([])\n// }\nsetDuplicatedProducts([])// Always set empty array when logic is disabled\n;// After setting products, force a re-filter if search is active\nif(searchConfig.active&&searchConfig.term){// console.log(\n//     \"🔍 Active search detected during product load, forcing re-filter\"\n// )\nsetSortedChildren(null);}}},[searchConfig]);const handleSortChange=React.useCallback(e=>{setSortConfig(e.detail);setSortedChildren(null)// Reset sorted children to trigger resort\n;},[]);const handleFilterReset=React.useCallback(e=>{// console.log(\"Resetting filters\", e)\n// Check if we should reset to initial scope\nconst shouldResetToInitialScope=e?.detail?.resetToInitialScope===true;// console.log(\n//     \"Should reset to initial scope:\",\n//     shouldResetToInitialScope\n// )\nif(shouldResetToInitialScope){// Create a reset state that respects the initial filter scope\nconst resetFilters={collection:{active:props.display===\"Collection\"&&props.value?true:false,values:props.display===\"Collection\"&&props.value?[props.value]:[]},product_type:{active:props.display===\"Product Type\"&&props.value?true:false,values:props.display===\"Product Type\"&&props.value?[props.value]:[]},product_tag:{active:props.display===\"Product Tag\"&&props.value?true:false,values:props.display===\"Product Tag\"&&props.value?[props.value]:[]},on_sale:{active:false,value:true},in_stock:{active:false,value:true},bundle:{active:false,value:true},subscription:{active:false,value:true},price:{active:false,values:[]},discount_amount:{active:false,values:[]},discount_percent:{active:false,values:[]},variant:{active:false,values:[]}};// console.log(\"Resetting to initial filter scope:\", resetFilters)\nsetFilters(resetFilters);}else{// Reset all filters to inactive\nsetFilters({collection:{active:false,values:[]},product_type:{active:false,values:[]},product_tag:{active:false,values:[]},on_sale:{active:false,value:true},in_stock:{active:false,value:true},bundle:{active:false,value:true},subscription:{active:false,value:true},price:{active:false,values:[]},discount_amount:{active:false,values:[]},discount_percent:{active:false,values:[]},variant:{active:false,values:[]}});}setSortedChildren(null)// Reset sorted children to trigger filter reset\n;},[props.display,props.value]);const handleFilter=React.useCallback(e=>{const{type,value,active}=e.detail;// console.log(\n//     \"Received filter event:\",\n//     e?.detail || \"Reset filter event is not receieved\"\n// )\nlogDebug(\"ProductSort\",\"Processing filter event\",{type:e.detail.type,group:e.detail.group,active:e.detail.active,value:e.detail.value,filterType:e.detail.filterType,componentId:e.detail.componentId});// Check if this filter matches the initial filter scope\nconst isInitialFilter=type===\"collection\"&&props.display===\"Collection\"&&props.value===value||type===\"product_type\"&&props.display===\"Product Type\"&&props.value===value||type===\"product_tag\"&&props.display===\"Product Tag\"&&props.value===value;// If this is the initial filter and we're trying to deactivate it, ignore the event\nif(isInitialFilter&&!active){// console.log(\"Ignoring deactivation of initial filter scope\")\nreturn;}// Continue with normal filter handling\nsetFilters(prev=>{const newFilters={...prev};const{type,group,active,value,filterType,variantStockFilter}=e.detail;// console.log(\"Processing filter:\", {\n//     type,\n//     group,\n//     active,\n//     value,\n//     filterType,\n//     variantStockFilter,\n// })\n// Log previous state of this filter\nlogDebug(\"ProductSort\",\"Filter state before update\",{filterType:type,previousState:prev[type]||\"not set\",newActive:active,newValue:value});// Use filterMappings to handle the filter\nif(type.startsWith(\"variant_\")){// Handle dynamic variant filters\nconst variantName=type.replace(\"variant_\",\"\");// Add more comprehensive debugging for variant filters\n// console.log(\"🚨 Processing variant filter:\", {\n//     type,\n//     variantName,\n//     active,\n//     variantStockFilter,\n//     value,\n//     isMultiValue:\n//         typeof value === \"string\" && value.includes(\",\"),\n//     multipleValues:\n//         typeof value === \"string\" && value.includes(\",\")\n//             ? value.split(\",\").filter(Boolean)\n//             : null,\n//     currentVariantValues:\n//         newFilters.variant?.values?.filter(\n//             (v) => v.name === variantName\n//         ) || [],\n//     rawValue: value,\n//     decodedValue:\n//         typeof value === \"string\"\n//             ? decodeURIComponent(value)\n//             : value,\n// })\nif(active){if(!newFilters.variant){newFilters.variant={active:true,values:[],variantStockFilter:variantStockFilter||undefined};}else if(variantStockFilter){newFilters.variant.variantStockFilter=variantStockFilter;}// Check if value is a comma-separated list - support both encoded and decoded commas\n// Both %2C and , should be treated as delimiters\nlet valueToProcess=value;if(typeof value===\"string\"){// First decode the value to handle any URL encoding\nvalueToProcess=decodeURIComponent(value);}if(typeof valueToProcess===\"string\"&&valueToProcess.includes(\",\")){// Handle multiple comma-separated values (OR condition)\nconst variantValues=valueToProcess.split(\",\").filter(Boolean);// console.log(\"Processing multiple variant values:\", {\n//     variantName,\n//     variantValues,\n//     original: valueToProcess,\n// })\n// Add each value as a separate entry\nvariantValues.forEach(val=>{// Check if this value already exists to avoid duplicates\nconst exists=newFilters.variant.values.some(v=>v.name.toLowerCase()===variantName.toLowerCase()&&v.value.toLowerCase()===val.trim().toLowerCase());if(!exists){newFilters.variant.values.push({name:variantName,value:val.trim()});}});}else{// Handle single value\n// Check if this value already exists\nconst exists=newFilters.variant.values.some(v=>v.name.toLowerCase()===variantName.toLowerCase()&&v.value.toLowerCase()===String(valueToProcess).toLowerCase());if(!exists){newFilters.variant.values.push({name:variantName,value:valueToProcess});}}newFilters.variant.active=true;}else{if(newFilters.variant&&newFilters.variant.values){// console.log(\n//     \"[Variant Removal] Initial variant values:\",\n//     newFilters.variant.values\n// )\n// Check if we're removing a comma-separated list - support both encoded and decoded commas\nlet valueToProcess=value;// console.log(\n//     \"[Variant Removal] Value to process\",\n//     valueToProcess\n// )\nif(typeof value===\"string\"){// First decode the value to handle any URL encoding\nvalueToProcess=decodeURIComponent(value);// console.log(\n//     \"[Variant Removal] Value to process (decoded)\",\n//     valueToProcess\n// )\n}if(typeof valueToProcess===\"string\"&&valueToProcess.includes(\",\")){const variantValues=valueToProcess.split(\",\").filter(Boolean);// console.log(\n//     \"[Variant Removal] Comma-separated variant values:\",\n//     variantValues\n// )\n// Remove each value individually (case-insensitive)\nnewFilters.variant.values=newFilters.variant.values.filter(v=>{const nameMatches=v.name.toLowerCase()===variantName.toLowerCase();const valueMatches=v.value.toLowerCase()===String(valueToProcess).toLowerCase();const shouldRemove=nameMatches&&valueMatches;// console.log(\n//     \"[Variant Removal] Checking variant:\",\n//     {\n//         variant: v,\n//         nameMatches,\n//         valueMatches,\n//         shouldRemove,\n//     }\n// )\nreturn!shouldRemove;});}else{// Remove single value (case-insensitive)\nnewFilters.variant.values=newFilters.variant.values.filter(v=>{const nameMatches=v.name.toLowerCase()===variantName.toLowerCase();const valueMatches=v.value.toLowerCase()===String(valueToProcess).toLowerCase();const shouldRemove=nameMatches&&valueMatches;// console.log(\n//     \"[Variant Removal] Checking variant:\",\n//     {\n//         variant: v,\n//         nameMatches,\n//         valueMatches,\n//         shouldRemove,\n//     }\n// )\nreturn!shouldRemove;});}// console.log(\n//     \"[Variant Removal] Updated variant values:\",\n//     newFilters.variant.values\n// )\nnewFilters.variant.active=newFilters.variant.values.length>0;// console.log(\n//     \"[Variant Removal] Variant active state:\",\n//     newFilters.variant.active\n// )\n}}}else{// Handle other filter types\nswitch(type){case\"product_type\":case\"product_tag\":case\"collection\":logDebug(\"ProductSort\",`Processing ${type} filter`,{active,value,currentValues:newFilters[type].values});if(active){newFilters[type].values=[...newFilters[type].values||[],value];}else{newFilters[type].values=newFilters[type].values.filter(v=>v!==value);}newFilters[type].active=newFilters[type].values.length>0;logDebug(\"ProductSort\",`${type} filter updated`,{newActive:newFilters[type].active,newValues:newFilters[type].values});break;case\"price\":if(active){// console.log(\n//     \"🏷️ Processing ACTIVE price filter:\",\n//     {\n//         currentPriceFilter:\n//             newFilters.price.values,\n//         incomingValue: value,\n//     }\n// )\nif(!newFilters.price){newFilters.price={active:active,values:[]};}// Always ensure active state is set when adding ranges\nnewFilters.price.active=active;const newRange=value?.values?.[0];if(newRange){// console.log(\n//     \"🎯 Processing new price range:\",\n//     {\n//         newRange,\n//         priceType: newRange.priceType,\n//         currentRanges:\n//             newFilters.price.values,\n//     }\n// )\n// Format the range based on priceType\nconst formattedRange={priceType:newRange.priceType,min:newRange.priceType===\"Under\"?null:newRange.min,max:newRange.priceType===\"Over\"?null:newRange.max};const rangeExists=newFilters.price.values.some(range=>range.priceType===formattedRange.priceType&&range.min===formattedRange.min&&range.max===formattedRange.max);if(!rangeExists){newFilters.price.values.push(formattedRange);// console.log(\n//     \"✅ Added new price range. Updated ranges:\",\n//     newFilters.price.values\n// )\n}}}else{// console.log(\n//     \"🏷️ Processing INACTIVE price filter:\",\n//     {\n//         currentPriceFilter: newFilters.price,\n//         incomingValue: value,\n//     }\n// )\nif(newFilters.price.active&&newFilters.price.values){// Loop through incoming values and remove them from current filters\nvalue.values?.forEach(valueRange=>{newFilters.price.values=newFilters.price.values.filter(currentRange=>{// Check if the current range matches the incoming range\nconst isMatchingRange=currentRange.priceType===valueRange.priceType&&currentRange.min===valueRange.min&&currentRange.max===valueRange.max;return!isMatchingRange// Remove only the matching range\n;});});}// Update the active state based on remaining ranges\nnewFilters.price.active=newFilters.price.values.length>0;}break;case\"discount_amount\":case\"discount_percent\":const discountType=type;if(!newFilters[discountType]){newFilters[discountType]={active:false,values:[]};}if(active){// Add new discount range\nnewFilters[discountType].values.push(...value.values);}else{// Remove discount range\nnewFilters[discountType].values=newFilters[discountType].values.filter(range=>!value.values.some(v=>v.min===range.min&&v.max===range.max));}// Update active state\nnewFilters[discountType].active=newFilters[discountType].values.length>0;break;case\"on_sale\":case\"in_stock\":case\"bundle\":case\"subscription\":newFilters[type]={active:active,value:true};break;default:console.warn(\"Unhandled filter type:\",type);}}logDebug(\"ProductSort\",\"Updated filters\",{filterType:type,newFilterState:newFilters[type],allActiveFilters:Object.entries(newFilters).filter(([key,filter])=>filter.active).reduce((acc,[key,filter])=>({...acc,[key]:filter}),{})});return newFilters;});// Force reset sorted children to trigger re-filter and re-sort\nlogDebug(\"ProductSort\",\"Resetting sorted children to trigger re-filtering\",null);setSortedChildren(null);},[props.display,props.value]);// Add a new handler for search events\nconst handleSearch=React.useCallback(e=>{// Only process search if it's enabled\nif(!props.Search?.enableSearch){return;}setSearchConfig({term:e.detail.term,fields:getActiveSearchFields(props.Search?.Scope),active:!!e.detail.term});setSortedChildren(null);},[props.Search?.enableSearch,props.Search?.Scope]);// Load favorites from localStorage\nReact.useEffect(()=>{if(typeof window===\"undefined\")return;const loadFavorites=()=>{const storedFavorites=JSON.parse(localStorage.getItem(\"favorites\")||\"[]\");// console.log(\"Loaded favorites:\", storedFavorites)\nsetFavorites(storedFavorites);};loadFavorites();const handleFavoritesUpdate=e=>{// console.log(\"favorites_updated event\", e.detail)\nconst{favorites:newFavorites,action,productId}=e.detail||{};// Set isTransitioning early to prevent flash\nif(pageType===\"favorites\"&&action===\"remove\"){setIsTransitioning(true);}if(action===\"remove\"&&productId){// console.log(\"Removing from favorites:\", productId)\nsetFavorites(prev=>{const updatedFavorites=prev.filter(id=>id!==productId);// Only retrigger UI if we're in favorites display mode\nif(pageType===\"favorites\"){// If we have sorted children already, prepare for a smoother transition\nif(sortedChildren&&sortedChildren.length>0){// Filter out the removed product from current view without setting to null\nconst updatedChildren=sortedChildren.filter(child=>{const key=child.key||\"\";return key!==productId;});if(updatedChildren.length>0){performTransition(updatedChildren);}else{// If all items removed, then do a full reset\nsetSortedChildren(null);}}else{setSortedChildren(null);}}return updatedFavorites;});}else if(action===\"add\"&&productId){// console.log(\"Adding to favorites:\", productId)\nsetFavorites(prev=>{const updatedFavorites=[...prev,productId];// Only retrigger UI if we're in favorites display mode\nif(pageType===\"favorites\"){setSortedChildren(null);}return updatedFavorites;});}else{//(\"Loading favorites with loadFavorites\")\nloadFavorites();// Only retrigger UI if we're in favorites display mode\nif(pageType===\"favorites\"){setSortedChildren(null);}}};document.addEventListener(\"favorites-updated\",handleFavoritesUpdate);return()=>{document.removeEventListener(\"favorites-updated\",handleFavoritesUpdate);};},[pageType,sortedChildren]);// Use global state management for event listeners\nReact.useEffect(()=>{// console.log(\"🚨 Setting up event listeners 🚨\", {\n//     hasShopXTools: typeof window !== \"undefined\" && !!window.shopXtools,\n//     hasProducts:\n//         typeof window !== \"undefined\" && !!window.shopXtools?.products,\n//     productsCount:\n//         typeof window !== \"undefined\"\n//             ? window.shopXtools?.products?.length\n//             : 0,\n// })\n// Use global state management\nglobalSortState.instances.add(\"FC_CatalogDisplay\");// Add event listeners with proper typing\nconst handleProductsReadyEvent=e=>{// console.log(\"🚨 Received data__products-ready event 🚨\", {\n//     hasEventDetail: !!e,\n//     hasProducts: !!(e as any).detail?.products,\n//     productsCount: (e as any).detail?.products?.length || 0,\n// })\nconst customEvent=e;logDebug(\"ProductSort\",\"data__products-ready event received\",{hasProducts:!!customEvent.detail?.products,count:customEvent.detail?.products?.length||0});handleProductsReady(customEvent);};const handleSortChangeEvent=e=>{const customEvent=e;logDebug(\"ProductSort\",\"product-sort-change event received\",customEvent.detail);handleSortChange(customEvent);};const handleFilterResetEvent=e=>{const customEvent=e;logDebug(\"ProductSort\",\"filter-reset for reset event received\",customEvent.detail);handleFilterReset(customEvent);};const handleFilterChangeEvent=e=>{const customEvent=e;logDebug(\"ProductSort\",\"product-filter-change event received\",customEvent.detail);handleFilter(customEvent);};const handleSearchChangeEvent=e=>{const customEvent=e;logDebug(\"ProductSort\",\"product-search-change event received\",customEvent.detail);handleSearch(customEvent);};document.addEventListener(\"filter-reset\",handleFilterResetEvent);document.addEventListener(\"data__products-ready\",handleProductsReadyEvent);document.addEventListener(\"product-sort-change\",handleSortChangeEvent);document.addEventListener(\"product-filter-change\",handleFilterChangeEvent);document.addEventListener(\"product-search-change\",handleSearchChangeEvent);// Cleanup\nreturn()=>{globalSortState.instances.delete(\"FC_CatalogDisplay\");document.removeEventListener(\"data__products-ready\",handleProductsReadyEvent);document.removeEventListener(\"product-sort-change\",handleSortChangeEvent);document.removeEventListener(\"product-filter-change\",handleFilterChangeEvent);document.removeEventListener(\"product-search-change\",handleSearchChangeEvent);document.removeEventListener(\"filter-reset\",handleFilterResetEvent);logDebug(\"ProductSort\",\"Event listeners cleaned up\",null);};},[handleProductsReady,handleSortChange,handleFilter,handleSearch,handleFilterReset]);// At the top of your component, add this debug log\nReact.useEffect(()=>{if(products.length>0){// console.log(\"Products data structure:\", {\n//     totalProducts: products.length,\n//     sampleProduct: products[0]?.node,\n//     allFields: products[0]?.node\n//         ? Object.keys(products[0].node)\n//         : [],\n//     allProductTypes: products\n//         .slice(0, 10)\n//         .map((p) => p.node?.productType), // Log first 10 product types\n//     activeFilters: Object.entries(filters)\n//         .filter(([key, filter]: [string, any]) => filter.active)\n//         .reduce(\n//             (acc, [key, filter]: [string, any]) => ({\n//                 ...acc,\n//                 [key]: filter,\n//             }),\n//             {}\n//         ),\n// })\n// Log a specific check for the filter value\nif(filters.product_type?.active){const filterValues=filters.product_type.values;const matchingProducts=products.filter(p=>{const productType=p.node?.productType;if(!productType)return false;return filterValues.some(filterValue=>productType.toLowerCase().includes(filterValue.toLowerCase()));});// console.log(\"Filter match check:\", {\n//     filterValues: filterValues,\n//     totalProducts: products.length,\n//     matchingProductsCount: matchingProducts.length,\n//     sampleMatches: matchingProducts.slice(0, 3).map((p) => ({\n//         title: p.node?.title,\n//         productType: p.node?.productType,\n//     })),\n// })\n}}},[products]);// At the top of your component, add this debug log\n// React.useEffect(() => {\n//     if (products.length > 0) {\n//         console.log(\"🔍 Debugging Product Structure:\", {\n//             firstProduct: products[0]?.node,\n//             hasSellingPlanGroups:\n//                 products[0]?.node?.sellingPlanGroups?.edges?.length > 0,\n//             variants: products[0]?.node?.variants?.edges?.map((edge) => ({\n//                 title: edge.node.title,\n//                 hasSellingPlans:\n//                     edge.node.sellingPlanAllocations?.edges?.length > 0,\n//                 sellingPlans: edge.node.sellingPlanAllocations?.edges,\n//             })),\n//         })\n//     }\n// }, [products])\n// Helper to get product details\nconst getProductDetails=React.useCallback(productId=>{logDebug(\"ProductSort\",\"Looking up product details\",{searchingForId:productId,fullId:`gid://shopify/Product/${productId}`,productsCount:products.length,usingShopXTools:typeof window!==\"undefined\"&&!!window.shopXtools});const fullId=`gid://shopify/Product/${productId}`;let product;// First try to find product in shopXtools\nif(typeof window!==\"undefined\"&&window.shopXtools?.products){product=window.shopXtools.products.find(({node})=>node.id===fullId)?.node;if(product){logDebug(\"ProductSort\",\"Found product in shopXtools\",{id:product.id,title:product.title});}}// Fall back to products state if not found in shopXtools\nif(!product){product=products.find(({node})=>node.id===fullId)?.node;}if(product){logDebug(\"ProductSort\",\"Raw product data found\",{id:product.id,title:product.title,rawProductType:product.productType,rawTags:product.tags,rawCollections:product.collections,fromShopXTools:!!window.shopXtools});return{id:product.id,title:product.title||\"\",price:product.priceRange?.minVariantPrice?.amount?parseFloat(product.priceRange.minVariantPrice.amount):0,productType:product.productType||\"\",tags:product.tags||[],compareAtPrice:product.compareAtPriceRange?.minVariantPrice?.amount?parseFloat(product.compareAtPriceRange.minVariantPrice.amount):0,isOnSale:product.compareAtPriceRange?.minVariantPrice?.amount?parseFloat(product.compareAtPriceRange.minVariantPrice.amount)>parseFloat(product.priceRange?.minVariantPrice?.amount||\"0\"):false,collections:Array.isArray(product.collections)?product.collections.map(c=>c.title):[],options:product.options||[],variants:product.variants?.edges||[],sellingPlanGroups:product.sellingPlanGroups?.edges||[],hasProductLevelPlans:product.sellingPlanGroups?.edges?.length>0,hasVariantLevelPlans:product.variants?.edges?.some(edge=>edge.node.sellingPlanAllocations?.edges?.length>0)};}logDebug(\"ProductSort\",\"Product not found in any source\",{searchId:productId});return{id:\"\",title:\"\",price:0,productType:\"\",tags:[],compareAtPrice:0,isOnSale:false,collections:[],options:[],variants:[],sellingPlanGroups:[],hasProductLevelPlans:false,hasVariantLevelPlans:false};},[products]);// Helper function to perform the actual transition\nconst performTransition=newChildren=>{logDebug(\"ProductSort\",\"Performing transition\",{childrenCount:newChildren?newChildren.length:0});if(transitionTimeoutRef.current){clearTimeout(transitionTimeoutRef.current);}setIsTransitioning(true);// Directly set sorted children without fade out\nsetSortedChildren(newChildren);setTimeout(()=>{setIsTransitioning(false);setIsSettling(false);},200)// Fade in duration\n;};// Cleanup timeouts\nReact.useEffect(()=>{return()=>{if(transitionTimeoutRef.current){clearTimeout(transitionTimeoutRef.current);}if(settlingTimeoutRef.current){clearTimeout(settlingTimeoutRef.current);}};},[]);// Add a debug log to show which filters are active when filtering products\n// After the getProductDetails function, add this useEffect for debugging\n// React.useEffect(() => {\n//     console.log(\n//         \"Active filters:\",\n//         Object.entries(filters)\n//             .filter(([key, filter]: [string, any]) => filter.active)\n//             .reduce(\n//                 (acc, [key, filter]: [string, any]) => ({\n//                     ...acc,\n//                     [key]: filter,\n//                 }),\n//                 {}\n//             )\n//     )\n// }, [filters])\n// Add this function to check if a product matches the filters\nconst productMatchesFilters=React.useCallback(product=>{/**\n             * Determines if a product matches all active filters\n             * Returns details about which filters matched or failed\n             */const filterResults={};// [DUPLICATE_VARIANTS_LOGIC_DISABLED] Check if this is a duplicated product with variant-specific data\n// const isDuplicatedProduct =\n//     product._variantData && product._variantData.selectedVariant\n// const variantData = product._variantData\nconst isDuplicatedProduct=false;const variantData=null;// Log active filters at the beginning\nconst activeFilters={search:searchConfig.active?{term:searchConfig.term,fields:searchConfig.fields}:null,collection:filters.collection?.active?{values:filters.collection.values}:null,product_type:filters.product_type?.active?{values:filters.product_type.values}:null,product_tag:filters.product_tag?.active?{values:filters.product_tag.values}:null,price:filters.price?.active?{values:filters.price.values}:null,on_sale:filters.on_sale?.active||null,in_stock:filters.in_stock?.active||null,bundle:filters.bundle?.active||null,subscription:filters.subscription?.active||null,variant:filters.variant?.active?{values:filters.variant.values}:null,discount_amount:filters.discount_amount?.active?{values:filters.discount_amount.values}:null,discount_percent:filters.discount_percent?.active?{values:filters.discount_percent.values}:null};// console.log(\"Active filters (line 1128):\", activeFilters)\n// Only log if we have any active filters\nif(Object.values(activeFilters).some(v=>v!==null)){// console.log(\n//     `🔍 FILTERING PRODUCT \"${product.title}\" with active filters:`,\n//     Object.fromEntries(\n//         Object.entries(activeFilters).filter(\n//             ([_, v]) => v !== null\n//         )\n//     )\n// )\n}// ---- SEARCH TERM FILTER ----\nif(searchConfig.active&&searchConfig.term&&props.Search?.enableSearch){const searchTerm=searchConfig.term.toLowerCase();let matches=false;// Add debug log for search filtering\n// console.log(\"🔍 FILTERING PRODUCT by search term\", {\n//     productTitle: product.title,\n//     searchTerm: searchTerm,\n//     searchFields: searchConfig.fields,\n//     searchConfig: searchConfig\n// })\n// Map search fields to shopX product structure\nfor(const field of searchConfig.fields){// console.log(`🔍 Checking search field:`, {\n//     field,\n//     searchTerm,\n//     productTitle: product.title\n// });\nswitch(field){case\"variants\":// Search through variant values with proper null checks\nif(product?.variants?.edges&&Array.isArray(product.variants.edges))try{// First check variant colors\nconst variantMatches=product.variants.edges.some(edge=>{if(!edge?.node?.selectedOptions||!Array.isArray(edge.node.selectedOptions)){return false;}return edge.node.selectedOptions.some(option=>{return option?.value&&typeof option.value===\"string\"&&option.value.toLowerCase().includes(searchTerm);});});// Search all custom.fc_* metafields for the search term\nlet metafieldMatches=false;if(includeMetafields&&product?.metafields&&Array.isArray(product.metafields)){metafieldMatches=product.metafields.some(mf=>{if(mf&&mf.namespace===\"custom\"&&mf.key.startsWith(\"fc_\")&&typeof mf.value===\"string\"){let values=[];try{const parsed=JSON.parse(mf.value);if(Array.isArray(parsed)){values=parsed?.map(v=>v.toLowerCase())||[];}else if(typeof parsed===\"string\"){values=[parsed.toLowerCase()];}}catch{values=[mf.value.toLowerCase()];}return values.some(val=>val.includes(searchTerm));}return false;});}matches=matches||variantMatches||metafieldMatches;if(matches){// console.log(`🎯 Final match found for \"${product.title}\"`, {\n//     variantMatches,\n//     metafieldMatches\n// })\n}}catch(error){console.error(\"Error searching variants and custom color:\",error);return false;}break;case\"title\":// Product title is directly accessible on the product object\nif(product.title){const titleMatches=product.title.toLowerCase().includes(searchTerm);if(titleMatches){// Only log matches to reduce console noise\n// console.log(\n//     `🎯 Title match: \"${product.title}\" includes \"${searchTerm}\"`\n// )\n}matches=matches||titleMatches;}else{// console.log(\n//     `⚠️ Product has no title property:`,\n//     product\n// )\n}break;case\"productType\":// Product type is under productType\nif(product.productType){const typeMatches=product.productType.toLowerCase().includes(searchTerm);if(typeMatches){// console.log(\n//     `🎯 Product Type match: \"${product.productType}\" includes \"${searchTerm}\"`\n// )\n}matches=matches||typeMatches;}break;case\"tags\":// Tags are in an array\nif(Array.isArray(product.tags)){const tagMatches=product.tags.some(tag=>tag&&tag.toLowerCase().includes(searchTerm));if(tagMatches){// console.log(\n//     `🎯 Tag match: \"${product.tags.join(\", \")}\" includes \"${searchTerm}\"`\n// )\n}matches=matches||tagMatches;}break;case\"collections\":// Collections are in an array\nif(Array.isArray(product.collections)){const collectionMatches=product.collections.some(collection=>{const collectionTitle=collection?.title||collection;return typeof collectionTitle===\"string\"&&collectionTitle.toLowerCase().includes(searchTerm);});if(collectionMatches){// console.log(\n//     `🎯 Collection match: \"${product.collections\n//         .map((c) => c?.title || c)\n//         .filter(Boolean)\n//         .join(\n//             \", \"\n//         )}\" includes \"${searchTerm}\"`\n// )\n}matches=matches||collectionMatches;}break;case\"vendor\":// Vendor is under product.vendor\nif(product.vendor){const vendorMatches=product.vendor.toLowerCase().includes(searchTerm);if(vendorMatches){// console.log(\n//     `🎯 Vendor match: \"${product.vendor}\" includes \"${searchTerm}\"`\n// )\n}matches=matches||vendorMatches;}break;}// If we found a match, no need to check other fields\nif(matches)break;}filterResults.search={active:true,term:searchConfig.term,matches};// If search is active but we don't match, return early\nif(!matches){return{matches:false,filterResults};}}// ----- COLLECTION FILTER -----\nif(filters.collection?.active&&filters.collection.values?.length>0){const collectionValues=filters.collection.values;let matches=false;// Get the collection titles from the new nested structure\nconst productCollections=Array.isArray(product?.collections)?product.collections.map(collection=>collection?.node?.title||collection?.node?.handle||collection).filter(Boolean):[];// Use OR logic (some) for collections if not scoped to collections\n// Use AND logic (every) only if scoped to collections\nif(props.display===\"Collection\"){matches=collectionValues.every(collectionValue=>productCollections.some(col=>col?.toLowerCase()===collectionValue?.toLowerCase()));}else{matches=collectionValues.some(collectionValue=>productCollections.some(col=>col?.toLowerCase()===collectionValue?.toLowerCase()));}filterResults.collection={active:true,values:collectionValues,matches};if(!matches){return{matches:false,filterResults};}}// ----- PRODUCT TYPE FILTER -----\nif(filters.product_type?.active&&filters.product_type.values?.length>0){const productTypeValues=filters.product_type.values;let matches=false;// Safely check product type\nconst productType=product?.productType||\"\";if(productType){// Use OR logic (some) for product types if not scoped to product types\n// Use AND logic (every) only if scoped to product types\nif(props.display===\"Product Type\"){matches=productTypeValues.every(type=>productType.toLowerCase()===type.toLowerCase());}else{matches=productTypeValues.some(type=>productType.toLowerCase()===type.toLowerCase());}}filterResults.product_type={active:true,values:productTypeValues,matches};if(!matches){return{matches:false,filterResults};}}// ----- PRODUCT TAG FILTER -----\nif(filters.product_tag?.active&&filters.product_tag.values?.length>0){const tagValues=filters.product_tag.values;let matches=false;// Safely check tags\nconst productTags=Array.isArray(product?.tags)?product.tags.map(tag=>tag?.toLowerCase()).filter(Boolean):[];if(productTags.length>0){// Use OR logic (some) for tags if not scoped to tags\n// Use AND logic (every) only if scoped to tags\nif(props.display===\"Product Tag\"){matches=tagValues.every(tag=>productTags.some(productTag=>productTag===tag.toLowerCase()));}else{matches=tagValues.some(tag=>productTags.some(productTag=>productTag===tag.toLowerCase()));}}filterResults.product_tag={active:true,values:tagValues,matches};if(!matches){return{matches:false,filterResults};}}// ----- PRICE FILTER -----\nif(filters.price?.active&&filters.price.values?.length>0){const productPrice=parseFloat(product.priceRange?.minVariantPrice?.amount||\"0\");let matches=false;// Check if product matches any of the active price ranges\nmatches=filters.price.values.some(range=>{if(range.min===null){// Handle \"Under\" price range\nreturn productPrice<=range.max;}else if(range.max===null){// Handle \"Over\" price range\nreturn productPrice>=range.min;}else{// Handle regular price range\nreturn productPrice>=range.min&&productPrice<=range.max;}});filterResults.price={active:true,values:filters.price.values,productPrice,matches};if(!matches){return{matches:false,filterResults};}}// ----- DISCOUNT FILTER -----\nif(filters.discount_amount?.active&&filters.discount_amount.values?.length>0){const productPrice=parseFloat(product.priceRange?.minVariantPrice?.amount||\"0\");const compareAtPrice=parseFloat(product.compareAtPriceRange?.minVariantPrice?.amount||\"0\");const discountAmount=compareAtPrice>productPrice?compareAtPrice-productPrice:0;let matches=false;// console.log(\"🔍 Checking discount amount:\", {\n//     productPrice,\n//     compareAtPrice,\n//     discountAmount,\n//     ranges: filters.discount_amount.values,\n// })\n// Check if product matches any of the active discount ranges\nmatches=filters.discount_amount.values.some(range=>{if(range.min===null){// Handle \"Under\" discount range\nreturn discountAmount<=range.max;}else if(range.max===null){// Handle \"Over\" discount range\nreturn discountAmount>=range.min;}else{// Handle regular discount range\nreturn discountAmount>=range.min&&discountAmount<=range.max;}});filterResults.discount_amount={active:true,values:filters.discount_amount.values,discountAmount,matches};if(!matches){return{matches:false,filterResults};}}if(filters.discount_percent?.active&&filters.discount_percent.values?.length>0){const productPrice=parseFloat(product.priceRange?.minVariantPrice?.amount||\"0\");const compareAtPrice=parseFloat(product.compareAtPriceRange?.minVariantPrice?.amount||\"0\");const discountPercent=compareAtPrice>productPrice?(compareAtPrice-productPrice)/compareAtPrice*100:0;let matches=false;// console.log(\"🔍 Checking discount percent:\", {\n//     productPrice,\n//     compareAtPrice,\n//     discountPercent,\n//     ranges: filters.discount_percent.values,\n// })\n// Check if product matches any of the active discount percentage ranges\nmatches=filters.discount_percent.values.some(range=>{if(range.min===null){// Handle \"Under\" discount percentage range\nreturn discountPercent<=range.max;}else if(range.max===null){// Handle \"Over\" discount percentage range\nreturn discountPercent>=range.min;}else{// Handle regular discount percentage range\nreturn discountPercent>=range.min&&discountPercent<=range.max;}});filterResults.discount_percent={active:true,values:filters.discount_percent.values,discountPercent,matches};if(!matches){return{matches:false,filterResults};}}// ----- DISCOUNT FILTER -----\nif(filters.discount_amount?.active&&filters.discount_amount.values?.length>0){const productPrice=parseFloat(product.priceRange?.minVariantPrice?.amount||\"0\");const compareAtPrice=parseFloat(product.compareAtPriceRange?.minVariantPrice?.amount||\"0\");const discountAmount=compareAtPrice>productPrice?compareAtPrice-productPrice:0;let matches=false;// console.log(\"🔍 Checking discount amount:\", {\n//     productPrice,\n//     compareAtPrice,\n//     discountAmount,\n//     ranges: filters.discount_amount.values,\n// })\n// Check if product matches any of the active discount ranges\nmatches=filters.discount_amount.values.some(range=>{if(range.min===null){// Handle \"Under\" discount range\nreturn discountAmount<=range.max;}else if(range.max===null){// Handle \"Over\" discount range\nreturn discountAmount>=range.min;}else{// Handle regular discount range\nreturn discountAmount>=range.min&&discountAmount<=range.max;}});filterResults.discount_amount={active:true,values:filters.discount_amount.values,discountAmount,matches};if(!matches){return{matches:false,filterResults};}}if(filters.discount_percent?.active&&filters.discount_percent.values?.length>0){const productPrice=parseFloat(product.priceRange?.minVariantPrice?.amount||\"0\");const compareAtPrice=parseFloat(product.compareAtPriceRange?.minVariantPrice?.amount||\"0\");const discountPercent=compareAtPrice>productPrice?(compareAtPrice-productPrice)/compareAtPrice*100:0;let matches=false;// console.log(\"🔍 Checking discount percent:\", {\n//     productPrice,\n//     compareAtPrice,\n//     discountPercent,\n//     ranges: filters.discount_percent.values,\n// })\n// Check if product matches any of the active discount percentage ranges\nmatches=filters.discount_percent.values.some(range=>{if(range.min===null){// Handle \"Under\" discount percentage range\nreturn discountPercent<=range.max;}else if(range.max===null){// Handle \"Over\" discount percentage range\nreturn discountPercent>=range.min;}else{// Handle regular discount percentage range\nreturn discountPercent>=range.min&&discountPercent<=range.max;}});filterResults.discount_percent={active:true,values:filters.discount_percent.values,discountPercent,matches};if(!matches){return{matches:false,filterResults};}}// ----- DISCOUNT FILTER -----\nif(filters.discount_amount?.active&&filters.discount_amount.values?.length>0){const productPrice=parseFloat(product.priceRange?.minVariantPrice?.amount||\"0\");const compareAtPrice=parseFloat(product.compareAtPriceRange?.minVariantPrice?.amount||\"0\");const discountAmount=compareAtPrice>productPrice?compareAtPrice-productPrice:0;let matches=false;// console.log(\"🔍 Checking discount amount:\", {\n//     productPrice,\n//     compareAtPrice,\n//     discountAmount,\n//     ranges: filters.discount_amount.values,\n// })\n// Check if product matches any of the active discount ranges\nmatches=filters.discount_amount.values.some(range=>{if(range.min===null){// Handle \"Under\" discount range\nreturn discountAmount<=range.max;}else if(range.max===null){// Handle \"Over\" discount range\nreturn discountAmount>=range.min;}else{// Handle regular discount range\nreturn discountAmount>=range.min&&discountAmount<=range.max;}});filterResults.discount_amount={active:true,values:filters.discount_amount.values,discountAmount,matches};if(!matches){return{matches:false,filterResults};}}if(filters.discount_percent?.active&&filters.discount_percent.values?.length>0){const productPrice=parseFloat(product.priceRange?.minVariantPrice?.amount||\"0\");const compareAtPrice=parseFloat(product.compareAtPriceRange?.minVariantPrice?.amount||\"0\");const discountPercent=compareAtPrice>productPrice?(compareAtPrice-productPrice)/compareAtPrice*100:0;let matches=false;// console.log(\"🔍 Checking discount percent:\", {\n//     productPrice,\n//     compareAtPrice,\n//     discountPercent,\n//     ranges: filters.discount_percent.values,\n// })\n// Check if product matches any of the active discount percentage ranges\nmatches=filters.discount_percent.values.some(range=>{if(range.min===null){// Handle \"Under\" discount percentage range\nreturn discountPercent<=range.max;}else if(range.max===null){// Handle \"Over\" discount percentage range\nreturn discountPercent>=range.min;}else{// Handle regular discount percentage range\nreturn discountPercent>=range.min&&discountPercent<=range.max;}});filterResults.discount_percent={active:true,values:filters.discount_percent.values,discountPercent,matches};if(!matches){return{matches:false,filterResults};}}// ----- ON SALE FILTER -----\nif(filters.on_sale?.active){let matches=false;if(product.compareAtPriceRange?.minVariantPrice?.amount&&product.priceRange?.minVariantPrice?.amount){const comparePrice=parseFloat(product.compareAtPriceRange.minVariantPrice.amount);const price=parseFloat(product.priceRange.minVariantPrice.amount);matches=comparePrice>price;}filterResults.on_sale={active:true,matches};if(!matches){return{matches:false,filterResults};}}// ----- IN STOCK FILTER -----\nif(filters.in_stock?.active){let matches=false;// Check if any variant is available for sale\nif(product.variants?.edges?.some(edge=>edge.node.availableForSale)){matches=true;}filterResults.in_stock={active:true,matches};if(!matches){return{matches:false,filterResults};}}// ----- SUBSCRIPTION FILTER -----\nif(filters.subscription?.active){let matches=false;const sellingPlanGroups=product.sellingPlanGroups?.edges||[];// Check if the product has subscription plans\nif(sellingPlanGroups&&product.sellingPlanGroups?.edges?.length>0){matches=true;}// Check for variant-level subscription plans\nif(product.variants?.edges?.some(edge=>edge.node.sellingPlanAllocations?.edges?.length>0)){matches=true;}filterResults.subscription={active:true,matches};// console.log(\n//     \"filterResults.subscription\",\n//     filterResults.subscription\n// )\nif(!matches){return{matches:false,filterResults};}}// ----- VARIANT FILTER -----\nif(filters.variant?.active&&filters.variant.values?.length>0){const variantFilters=filters.variant.values;let matches=false;// [DUPLICATE_VARIANTS_LOGIC_DISABLED] For duplicated products, check against the specific variant\n// if (isDuplicatedProduct && variantData.selectedVariant) {\n//     const variant = variantData.selectedVariant\n//     // Optional stock filter for variant match\n//     const shouldCheckStock =\n//         filters.variant?.variantStockFilter === \"in_stock\"\n//     const isAvailable = variant.availableForSale\n//     if (shouldCheckStock && !isAvailable) {\n//         return { matches: false, filterResults }\n//     }\n//     // Group filters by variant name (e.g., Color, Size)\n//     const variantFiltersByName: Record<string, string[]> = {}\n//     variantFilters.forEach((filter) => {\n//         if (!variantFiltersByName[filter.name]) {\n//             variantFiltersByName[filter.name] = []\n//         }\n//         variantFiltersByName[filter.name].push(filter.value)\n//     })\n//     // A variant matches if it satisfies at least one value from each variant type\n//     const matchesByType = Object.entries(\n//         variantFiltersByName\n//     ).map(([name, values]) => {\n//         // Find the option that matches the filter name\n//         const matchingOption = variant.selectedOptions.find(\n//             (option) =>\n//             option.name.toLowerCase() === name.toLowerCase()\n//         )\n//         if (!matchingOption) {\n//             return false\n//         }\n//         // Check if the option value matches any of the filter values (case-insensitive)\n//         const valueMatches = values.some(\n//             (value) =>\n//             matchingOption.value.toLowerCase() ===\n//             value.toLowerCase()\n//         )\n//         return valueMatches\n//     })\n//     // All variant types must match (AND logic)\n//     const allTypesMatch = matchesByType.every((match) => match)\n//     matches = allTypesMatch\n// }\n// For regular products, check against all variants\nif(product.variants?.edges){matches=product.variants.edges.some(edge=>{const variant=edge.node;if(!variant.selectedOptions){return false;}// Optional stock filter for variant match\nconst shouldCheckStock=filters.variant?.variantStockFilter===\"in_stock\";const isAvailable=variant.availableForSale;if(shouldCheckStock&&!isAvailable){return false;}// Group filters by variant name\nconst variantFiltersByName={};variantFilters.forEach(filter=>{if(!variantFiltersByName[filter.name]){variantFiltersByName[filter.name]=[];}variantFiltersByName[filter.name].push(filter.value);});// A variant matches if it satisfies at least one value from each variant type\nconst matchesByType=Object.entries(variantFiltersByName).map(([name,values])=>{const matchingOption=variant.selectedOptions.find(option=>option.name.toLowerCase()===name.toLowerCase());if(!matchingOption){return false;}const valueMatches=values.some(value=>matchingOption.value.toLowerCase()===value.toLowerCase());return valueMatches;});const allTypesMatch=matchesByType.every(match=>match);return allTypesMatch;});// If no variant matches and we're looking for a color, check custom metadata\nif(includeMetafields&&product.metafields&&Array.isArray(product.metafields)){variantFilters.forEach(filter=>{const metafieldKey=`fc_${filter.name.toLowerCase()}`;const metafield=product.metafields.find(mf=>mf&&mf.namespace===\"custom\"&&mf.key===metafieldKey&&typeof mf.value===\"string\");if(metafield){let values=[];try{// Try to parse as JSON array\nconst parsed=JSON.parse(metafield.value);if(Array.isArray(parsed)){values=parsed.map(v=>v.toLowerCase());}else if(typeof parsed===\"string\"){values=[parsed.toLowerCase()];}}catch{// If not JSON, treat as a single string value\nvalues=[metafield.value.toLowerCase()];}if(values.length>0&&filter.value){if(values.includes(filter.value.toLowerCase())){matches=true;}}}});}}filterResults.variant={active:true,values:variantFilters,matches};if(!matches){return{matches:false,filterResults};}}// Log final result\n// console.log(\n//     `🔍 FILTER RESULT for \"${product.title}\": ${JSON.stringify({ matches: true, filterResults })}`\n// )\n// All tests passed\nreturn{matches:true,filterResults};},[filters,searchConfig]);// Add this after the handleFilter useCallback\nReact.useEffect(()=>{// console.log(\"🚨 Search state 🚨\", {\n//   sortedChildren: sortedChildren,\n//   sortedChildrenCount: sortedChildren ? sortedChildren.length : 0,\n//   searchConfig: searchConfig,\n//   paginationType: props.Pagination.type,\n//   enableSearch: props.Search.enableSearch,\n//   initialSearchState: props.Search.initialSearchState,\n// });\n// Dispatch product-search-results event when filtered products change\nif(sortedChildren&&searchConfig.active||!searchConfig.active){const shouldShowCustomInitial=props.Search?.enableSearch&&props.Search?.initialSearchState===\"custom\"&&!searchConfig.term;// Determine the effective count - always use total filtered count (before pagination)\n// - In search mode with a custom initial state, force 0\n// - Use totalFilteredCount (total filtered results before pagination)\n// - Fall back to products.length if totalFilteredCount not available yet\n// - Absolute fallback to 0 if all else fails (prevents undefined/null errors)\nlet effectiveCount=0;if(shouldShowCustomInitial){effectiveCount=0;}else if(totalFilteredCount>0){// Use total filtered count (before pagination) - this is what we want to show\neffectiveCount=totalFilteredCount;}else if(Array.isArray(products)&&products.length>0){// Fallback to total products if filtered count not available yet\neffectiveCount=products.length;}else{effectiveCount=0// Safe fallback\n;}const searchResultsEvent=new CustomEvent(\"product-search-results\",{detail:{count:effectiveCount,term:searchConfig.term||\"\"}});document.dispatchEvent(searchResultsEvent);//console.log(\"product-search-results dispatched\", searchResultsEvent);\n// if (sortedChildren && searchConfig.active) {\n//     if (props.Pagination.type === \"load_more\") {\n//         const hasMoreLoadMore = sortedChildren?.length > 0\n//         console.log(\"sortedChildren\", sortedChildren)\n//         console.log(\"hasMoreLoadMore\", hasMoreLoadMore)\n//         setHasMore(hasMoreLoadMore)\n//         const hasMoreItemsEvent = new CustomEvent(\"hide-loadmore-button\", {\n//             detail: { hasMoreItems: hasMoreLoadMore },\n//         })\n//         document.dispatchEvent(hasMoreItemsEvent)\n//         // console.log(\"hide-loadmore-button dispatched\", hasMoreItemsEvent)\n//     }\n//     if (props.Pagination.type === \"next_prev\") {\n//         const startIndex = (currentPage - 1) * itemsPerPage\n//         const endIndex = startIndex + itemsPerPage\n//         const paginatedProducts = products.slice(startIndex, endIndex)\n//         const hasMoreNextPrev = endIndex < products.length\n//         setHasMore(hasMoreNextPrev)\n//         const updateNextPrevButtonsEvent = new CustomEvent(\"update_next_prev_buttons\", {\n//             detail: {\n//                 hasMoreItems: hasMoreNextPrev,\n//                 type: props.Pagination?.type,\n//                 currentPage,\n//                 paginatedProducts\n//             },\n//         })\n//         document.dispatchEvent(updateNextPrevButtonsEvent)\n//         console.log(\"[CMS Pagination] Search pagination:\", {\n//             itemsPerPage,\n//             currentPage,\n//             startIndex,\n//             endIndex,\n//             paginatedProducts,\n//             hasMoreNextPrev,\n//         })\n//         console.log(\"update_next_prev_buttons dispatched: search\", updateNextPrevButtonsEvent)\n//     }\n// }\n}},[products,sortedChildren,searchConfig.active,totalFilteredCount]);// React.useEffect(() => {\n//     const hasMoreLoadMore = sortedChildren?.length > 0\n//         setHasMore(hasMoreLoadMore)\n//         if (props.Pagination.type === \"load_more\" && searchConfig.active && !sortedChildren) {\n//             const hasMoreItemsEvent = new CustomEvent(\"hide-loadmore-button\", {\n//                 detail: { hasMoreItems: hasMoreLoadMore },\n//             })\n//             document.dispatchEvent(hasMoreItemsEvent)\n//             //console.log(\"hide-loadmore-button dispatched\", hasMoreItemsEvent)\n//         }\n//         if (props.Pagination.type === \"next_prev\" && searchConfig.active && !sortedChildren) {\n//             const startIndex = (currentPage - 1) * itemsPerPage\n//             const endIndex = startIndex + itemsPerPage\n//             const paginatedProducts = Array.isArray(\n//                 sortedChildren) ? sortedChildren.slice(startIndex, endIndex) : []\n//             console.log(\"products\", products)\n//             const hasMoreNextPrev = endIndex < paginatedProducts\n//             setHasMore(hasMoreNextPrev)\n//             const updateNextPrevButtonsEvent = new CustomEvent(\"update_next_prev_buttons\", {\n//                 detail: {\n//                 hasMoreItems: hasMoreNextPrev,\n//                 type: props.Pagination?.type,\n//                 currentPage,\n//                 paginatedProducts\n//             },\n//             })\n//             console.log(\"[CMS Pagination] Search pagination:\", {\n//                 itemsPerPage,\n//                 currentPage,\n//                 startIndex,\n//                 endIndex,\n//                 paginatedProducts,\n//                 hasMoreNextPrev,\n//             })\n//             document.dispatchEvent(updateNextPrevButtonsEvent)\n//             console.log(\"update_next_prev_buttons dispatched: no search results\", updateNextPrevButtonsEvent)\n//         }\n// }, [products, sortedChildren, searchConfig.active, props.Pagination.type])\n// Add this after the URL parameters useEffect\nReact.useEffect(()=>{// Check if we're in a browser environment\nif(typeof window===\"undefined\")return;// Check for shopXtools and products\nconst hasShopXTools=!!window.shopXtools;const products=window.shopXtools?.products;// Log initial state\n// console.log(\"🚨 Checking for initial shopXtools products 🚨\", {\n//     hasShopXTools,\n//     hasProducts: !!products,\n//     productsCount: products?.length || 0,\n// })\n// Set products if available\nif(products){// console.log(\"🚨 Setting initial products from shopXtools 🚨\", {\n//     count: products.length,\n//     sample: products[0]?.node,\n// })\nsetProducts(products);}},[])// Only run on mount\n;// Get the appropriate component instance based on display mode\nconst selectedInstance=props.displayMode===\"Desktop\"?props.Collection:props.phoneInstance;const collectionInstance=selectedInstance?.[0];const emptyStateInstance=props.displayMode===\"Desktop\"?props.EmptyState?.[0]:props.EmptyStatePhone?.[0];if(!collectionInstance){logDebug(\"ProductSort\",\"No collection instance found\",null);return /*#__PURE__*/_jsxs(\"div\",{style:{height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:\"#666\",fontSize:\"14px\"},children:[\"Connect \",props.displayMode,\" instance\"]});}const sizedInstance=/*#__PURE__*/React.cloneElement(collectionInstance,{style:{...collectionInstance.props?.style||{},width:\"100%\",height:\"100%\"}});// Update the layout styling logic\nlet layoutStyle={};if(props.layout){const layout=props.layout;// Add background and radius to all layout types\nif(layout.background){layoutStyle.backgroundColor=layout.background;}if(layout.radius){if(layout.radiusPerSide){layoutStyle.borderRadius=`${layout.radiusTopLeft}px ${layout.radiusTopRight}px ${layout.radiusBottomRight}px ${layout.radiusBottomLeft}px`;}else{layoutStyle.borderRadius=`${layout.radius}px`;}}switch(layout.type){case\"stack\":const isVertical=layout.direction===\"vertical\";layoutStyle={...layoutStyle,display:\"flex\",flexDirection:isVertical?\"column\":\"row\",flexWrap:layout.wrap?\"wrap\":\"nowrap\",alignItems:isVertical?layout.align:layout.alignH,justifyContent:layout.distribute,gap:layout.gap,padding:layout.paddingPerSide?`${layout.paddingTop}px ${layout.paddingRight}px ${layout.paddingBottom}px ${layout.paddingLeft}px`:`${layout.padding}px`,width:\"100%\",\"& > *\":{minWidth:layout.stackMinWidth,flexGrow:1,flexShrink:1,flexBasis:0}};break;case\"grid\":let gridTemplateColumns=\"\";if(layout.columns===\"auto\"){// Combine auto-fit with a calculated minmax to respect both gridWidth and maxColumns.\n// The min value ensures columns are at least gridWidth, but also effectively caps\n// the column count at maxColumns by calculating the width required for that many columns.\ngridTemplateColumns=`repeat(auto-fit, minmax(max(${layout.gridWidth}px, calc((100% - ${layout.gap*(layout.maxColumns-1)}px) / ${layout.maxColumns})), 1fr))`;}else{gridTemplateColumns=`repeat(${layout.columnCount}, 1fr)`;}layoutStyle={...layoutStyle,display:\"grid\",gridTemplateColumns,justifyItems:layout.gridAlign,gap:layout.gapY&&layout.gapY>0?`${layout.gapY}px ${layout.gap}px`:`${layout.gap}px`,padding:layout.paddingPerSide?`${layout.paddingTop}px ${layout.paddingRight}px ${layout.paddingBottom}px ${layout.paddingLeft}px`:`${layout.padding}px`,width:\"100%\"};break;}}// Create the styled instance with layout\nconst styledInstance=/*#__PURE__*/React.cloneElement(sizedInstance,{style:{...sizedInstance.props.style,...layoutStyle}});if(RenderTarget.current()===RenderTarget.canvas){return styledInstance;}React.useEffect(()=>{if(typeof window===\"undefined\")return;const handleUrlChange=event=>{// console.log(\"popstate\", event)\nconst url=new URL(window.location.href);const urlParams=new URLSearchParams(url.search);// Handle page parameter\nconst pageParam=urlParams.get(\"page\");const newPage=pageParam?parseInt(pageParam,10):1;//console.log(\"[CMS] Checking page change:\", { currentPage, newPage })\nif(newPage!==currentPage){//console.log(\"[CMS] Updating to page:\", newPage)\nsetCurrentPage(newPage);setSortedChildren(null)// Reset sorted children to trigger re-render\n;}setIsLoading(true);// console.log('ProductSort', 'URL changed', {\n//   url: url.toString(),\n//   search: url.search,\n//   eventType: event?.type || 'direct',\n//   currentPage: currentPage,\n//   newPage: newPage,\n// });\nif(event.type===\"popstate\"){// console.log('Reloading the page');\nevent.stopImmediatePropagation();window.location.reload();}// Set loading to false after a short delay to prevent flash\nsetTimeout(()=>{setIsLoading(false);},150);};// Run initial check\nhandleUrlChange({});// Listen for both popstate and pagination events\nwindow.addEventListener(\"popstate\",handleUrlChange);document.addEventListener(\"product-pagination-change\",handleUrlChange);return()=>{window.removeEventListener(\"popstate\",handleUrlChange);document.removeEventListener(\"product-pagination-change\",handleUrlChange);};},[currentPage]);try{// logDebug(\"ProductSort\", \"Rendering collection\", {\n//   hasCollection: !!collectionInstance,\n//   productsCount: products.length,\n//   sortedChildrenCount: sortedChildren ? sortedChildren.length : 0,\n//   isBackNavigation,\n//   isLoading,\n// });\n// Inject a children function wherever QueryData expects it, robust to Suspense wrappers\nconst replaceChildrenFunction=(element,wrapper)=>{let replaced=false;const visit=el=>{if(!/*#__PURE__*/React.isValidElement(el))return el;const child=el.props?.children;if(typeof child===\"function\"&&!replaced){replaced=true;return /*#__PURE__*/React.cloneElement(el,{...el.props,children:wrapper(child)});}if(Array.isArray(child)&&child.length){const newChildren=child.map(c=>replaced?c:visit(c));if(replaced){return /*#__PURE__*/React.cloneElement(el,{...el.props,children:newChildren});}return el;}if(/*#__PURE__*/React.isValidElement(child)&&!replaced){const newChild=visit(child);if(newChild!==child){return /*#__PURE__*/React.cloneElement(el,{...el.props,children:newChild});}}return el;};return{node:visit(element),replaced};};const childrenWrapper=originalChildrenFn=>collection=>{// logDebug(\"ProductSort\", \"Collection render function called\", {\n    //   collectionSize: collection?.length || 0,\n    // });\n    const originalRender=originalChildrenFn(collection);if(!originalRender?.props?.children){logDebug(\"ProductSort\",\"No children in original render\",null);return /*#__PURE__*/React.isValidElement(originalRender)?/*#__PURE__*/React.cloneElement(originalRender,{style:{...originalRender.props?.style||{},...layoutStyle}}):originalRender;}if(props.Search?.enableSearch&&props.Search?.initialSearchState===\"custom\"&&!searchConfig.term&&props.CustomInitialState?.[0]){// console.log(\n    //     \"Rendering custom initial state:\",\n    //     {\n    //         enableSearch: props.Search?.enableSearch,\n    //         initialSearchState: props.Search?.initialSearchState,\n    //         searchConfig: searchConfig,\n    //     }\n    // )\n    const styledCustomInitial=/*#__PURE__*/React.cloneElement(props.CustomInitialState[0],{style:{...props.CustomInitialState[0].props?.style||{},width:\"100%\",height:\"100%\",maxWidth:\"100%\",transform:\"none\"}});// Create a wrapper that completely overrides any grid styles\n    const CustomInitialWrapper=()=>/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",justifyContent:\"center\",alignItems:\"center\",padding:props.layout?.padding?`${props.layout.padding}px`:\"0px\",// Override any grid properties\n        gridColumn:\"1 / -1\",gridRow:\"1 / -1\",// Ensure it spans the full container\n        position:\"relative\",minWidth:\"100%\",maxWidth:\"100%\"},children:styledCustomInitial});return{...originalRender,props:{...originalRender.props,style:{...originalRender.props?.style||{},...layoutStyle},children:/*#__PURE__*/_jsx(CustomInitialWrapper,{})}};}if(!sortedChildren&&products.length>0){// console.log(\n    //     \"🚨🚨🚨 STARTING FILTERING PROCESS 🚨🚨🚨\",\n    //     {\n    //         productsLength: products.length,\n    //         hasShopXTools:\n    //             typeof window !== \"undefined\" &&\n    //             !!window.shopXtools,\n    //         activeFilters: Object.entries(filters)\n    //             .filter(\n    //                 ([key, filter]: [\n    //                     string,\n    //                     any,\n    //                 ]) => filter.active\n    //             )\n    //             .reduce(\n    //                 (\n    //                     acc,\n    //                     [key, filter]: [string, any]\n    //                 ) => ({\n    //                     ...acc,\n    //                     [key]: filter,\n    //                 }),\n    //                 {}\n    //             ),\n    //         firstProduct: products[0]?.node,\n    //     }\n    // )\n    // [DUPLICATE_VARIANTS_LOGIC_DISABLED] Determine which products to filter based on duplicate variants setting\n    // console.log(\"🔍 Filtering logic check:\", {\n    //     duplicateEnabled:\n    //         props.DuplicateVariants?.enable,\n    //     duplicatedProductsCount:\n    //         duplicatedProducts.length,\n    //     originalProductsCount: products.length,\n    //     willUseDuplicates:\n    //         props.DuplicateVariants?.enable &&\n    //         duplicatedProducts.length > 0,\n    //     sampleDuplicated: duplicatedProducts[0]\n    //         ? {\n    //               title: duplicatedProducts[0]\n    //                   .originalProduct.title,\n    //               variant:\n    //                   duplicatedProducts[0].selectedOptions\n    //                       .map(\n    //                           (opt) =>\n    //                               `${opt.name}: ${opt.value}`\n    //                       )\n    //                       .join(\", \"),\n    //               uniqueId:\n    //                   duplicatedProducts[0]\n    //                       .uniqueId,\n    //           }\n    //         : null,\n    // })\n    // Process duplicated products inline to avoid timing issues\n    let productsToFilter=products;// [DUPLICATE_VARIANTS_LOGIC_DISABLED] Inline duplication logic commented out\n    // if (\n    //     props.DuplicateVariants?.enable &&\n    //     props.DuplicateVariants?.variantTitles\n    //         ?.length > 0\n    // ) {\n    // ) {\n    //     console.log(\n    //         \"🚀 Processing duplicates inline for filtering...\"\n    //     )\n    //     const duplicated =\n    //         processProductsForVariantDuplication(\n    //             products,\n    //             props.DuplicateVariants\n    //                 .variantTitles\n    //         )\n    //     if (duplicated.length > 0) {\n    //         productsToFilter = duplicated.map(\n    //             (dp) => {\n    //                 const mappedProduct = {\n    //                     node: {\n    //                         ...dp.originalProduct,\n    //                         id: dp.uniqueId, // Use unique ID for duplicated products\n    //                         priceRange: {\n    //                             minVariantPrice:\n    //                                 dp.displayPrice,\n    //                         },\n    //                         compareAtPriceRange:\n    //                             dp.displayCompareAtPrice\n    //                                 ? {\n    //                                       minVariantPrice:\n    //                                           dp.displayCompareAtPrice,\n    //                                   }\n    //                                 : null,\n    //                         _variantData: {\n    //                             selectedVariant:\n    //                             dp.variant,\n    //                             selectedOptions:\n    //                             dp.selectedOptions,\n    //                         },\n    //                     },\n    //                 }\n    //                 console.log(\n    //                     \"🔄 Mapped duplicated product:\",\n    //                     {\n    //                         originalTitle:\n    //                             dp.originalProduct\n    //                                 .title,\n    //                         newId: dp.uniqueId,\n    //                         variant:\n    //                             dp.selectedOptions\n    //                                 .map(\n    //                                     (opt) =>\n    //                                         `${opt.name}: ${opt.value}`\n    //                                 )\n    //                                 .join(\", \"),\n    //                         price: dp.displayPrice\n    //                             .amount,\n    //                     }\n    //                 )\n    //                 return mappedProduct\n    //             }\n    //         )\n    //         console.log(\n    //             \"✅ Using duplicated products for filtering:\",\n    //             productsToFilter.length\n    //         )\n    //     } else {\n    //         console.log(\n    //             \"⚠️ No duplicated products created, using original products\"\n    //         )\n    //     }\n    // } else {\n    //     console.log(\n    //         \"ℹ️ Using original products (duplication not enabled)\"\n    //     )\n    // }\n    // console.log(\n    //   \"ℹ️ Using original products (duplication logic disabled)\"\n    // );\n    // console.log(\"📊 Products to filter:\", {\n    //   totalProducts: productsToFilter.length,\n    //   isUsingDuplicates: false,\n    //   sampleProduct: productsToFilter[0]?.node?.title,\n    // });\n    // First filter all products (either original or duplicated)\n    const filteredShopXProducts=productsToFilter.filter(({node})=>{// Ensure node exists\n    if(!node){return false;}const matches=productMatchesFilters(node);return matches.matches;});// console.log(\"🎯 After filtering:\", {\n    //   beforeFilter: productsToFilter.length,\n    //   afterFilter: filteredShopXProducts.length,\n    //   sampleFiltered: filteredShopXProducts[0]?.node?.title,\n    // });\n    // console.log(\n    //     \"🔍 Filtered shopX products results:\",\n    //     {\n    //         totalBefore: products.length,\n    //         totalAfter:\n    //             filteredShopXProducts.length,\n    //         firstProduct: filteredShopXProducts[0]\n    //             ?.node\n    //             ? {\n    //                   title: filteredShopXProducts[0]\n    //                       .node.title,\n    //                   productType:\n    //                       filteredShopXProducts[0]\n    //                           .node.productType,\n    //               }\n    //             : null,\n    //         activeFilters: Object.entries(filters)\n    //             .filter(\n    //                 ([key, filter]: [\n    //                     string,\n    //                     any,\n    //                 ]) => filter.active\n    //             )\n    //             .reduce(\n    //                 (\n    //                     acc,\n    //                     [key, filter]: [string, any]\n    //                 ) => ({\n    //                     ...acc,\n    //                     [key]: filter,\n    //                 }),\n    //                 {}\n    //             ),\n    //         searchActive: searchConfig.active,\n    //         searchTerm: searchConfig.term,\n    //     }\n    // )\n    // Add additional debugging if no products match\n    // if (\n    //     filteredShopXProducts.length === 0 &&\n    //     products.length > 0\n    // ) {\n    //     console.log(\n    //         \"⚠️ NO PRODUCTS MATCHED FILTERS! Active filters:\",\n    //         {\n    //             searchConfig: searchConfig.active\n    //                 ? searchConfig\n    //                 : null,\n    //             otherFilters: Object.entries(\n    //                 filters\n    //             )\n    //                 .filter(\n    //                     ([key, filter]: [\n    //                         string,\n    //                         any,\n    //                     ]) => filter.active\n    //                 )\n    //                 .reduce(\n    //                     (\n    //                         acc,\n    //                         [key, filter]: [\n    //                             string,\n    //                             any,\n    //                         ]\n    //                     ) => ({\n    //                         ...acc,\n    //                         [key]: filter,\n    //                     }),\n    //                     {}\n    //                 ),\n    //         }\n    //     )\n    //     // Log some sample products to help diagnose\n    //     console.log(\n    //         \"Sample products that didn't match:\",\n    //         products.slice(0, 3).map((p) => ({\n    //             title: p.node?.title,\n    //             productType: p.node?.productType,\n    //             tags: p.node?.tags?.slice(0, 3),\n    //             collections: p.node?.collections\n    //                 ?.map((c) => c.node.title || c)\n    //                 .slice(0, 3),\n    //         }))\n    //     )\n    // }\n    const filteredForPage=pageType===\"favorites\"?filteredShopXProducts.filter(({node})=>{const productId=findDeep13DigitNumber(node);return productId&&favorites.includes(productId);}):filteredShopXProducts;// Store total filtered count (before pagination) for result counter\n    setTotalFilteredCount(filteredForPage.length);// console.log(\"📄 Page filtering:\", {\n    //   pageType,\n    //   beforePageFilter: filteredShopXProducts.length,\n    //   afterPageFilter: filteredForPage.length,\n    //   isFavorites: pageType === \"favorites\",\n    //   favoritesCount: favorites.length,\n    // });\n    // If no items match, render the empty state directly\n    if(filteredForPage.length===0){// Store zero count for result counter\n    setTotalFilteredCount(0);// Ensure result counters and other listeners see a zero state\n    // even when we short-circuit to the Empty state UI.\n    if(typeof document!==\"undefined\"){const emptyResultsEvent=new CustomEvent(\"product-search-results\",{detail:{count:0,term:searchConfig.term||\"\"}});document.dispatchEvent(emptyResultsEvent);}if(emptyStateInstance){const styledEmptyState=/*#__PURE__*/React.cloneElement(emptyStateInstance,{style:{...emptyStateInstance.props?.style||{},width:\"100%\",height:\"100%\",maxWidth:\"100%\",transform:\"none\"}});// Create a wrapper that completely overrides any grid styles\n    const EmptyStateWrapper=()=>/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",justifyContent:\"center\",alignItems:\"center\",padding:props.layout?.padding?`${props.layout.padding}px`:\"0px\",// Override any grid properties\n        gridColumn:\"1 / -1\",gridRow:\"1 / -1\",// Ensure it spans the full container\n        position:\"relative\",minWidth:\"100%\",maxWidth:\"100%\"},children:styledEmptyState});// Return the wrapper component directly\n    return{...originalRender,props:{...originalRender.props,style:{...layoutStyle,...originalRender.props.style,// Override grid properties at the container level\n    display:\"flex\",gridTemplateColumns:\"none\",gridAutoColumns:\"none\",gridTemplateRows:\"none\",gap:0},children:/*#__PURE__*/_jsx(EmptyStateWrapper,{})}};}return null;}// Then map the filtered products to collection items\n    // console.log(\"🔧 Creating items from children:\", {\n    //   originalChildrenCount: originalRender.props.children.length,\n    //   filteredForPageCount: filteredForPage.length,\n    //   isUsingDuplicates:\n    //     props.DuplicateVariants?.enable &&\n    //     props.DuplicateVariants?.variantTitles?.length > 0,\n    // });\n    let items=[];if(props.DuplicateVariants?.enable&&props.DuplicateVariants?.variantTitles?.length>0){// For duplicated products, we need to match each product with its original child\n    items=filteredForPage.map(({node:product},index)=>{// Find the original child that corresponds to this product\n    // For duplicated products, we need to match based on the original product ID\n    const originalChild=originalRender.props.children.find(child=>{const item=collection.find(collectionItem=>collectionItem.id===child.key);const productId=item?findDeep13DigitNumber(item):null;const originalFullId=`gid://shopify/Product/${productId}`;// For duplicated products, the product.id is the uniqueId (product.id + variant.id)\n    // We need to extract the original product ID from the duplicated product\n    const duplicatedProductId=product.id;// The uniqueId format is: product.id_variant.id\n    // So we need to extract just the product.id part\n    const originalProductId=duplicatedProductId.split(\"_\")[0]// Get the part before the underscore\n    ;console.log(\"🔍 Matching child:\",{originalFullId,duplicatedProductId,originalProductId,matches:originalFullId===originalProductId});return originalFullId===originalProductId;});if(!originalChild){// console.log(\n    //   \"⚠️ No original child found for product:\",\n    //   product.title\n    // );\n    return null;}/* console.log(\"✅ Creating item for duplicated product:\", {\n                        id: product.id,\n                        title: product.title,\n                        variant: product._variantData?.selectedOptions\n                          ?.map((opt) => `${opt.name}: ${opt.value}`)\n                          .join(\", \"),\n                        originalChildKey: originalChild.key,\n                }); */return{child:/*#__PURE__*/React.cloneElement(originalChild,{key:product.id,...product._variantData}),productId:product.id,price:product.priceRange?.minVariantPrice?.amount?parseFloat(product.priceRange.minVariantPrice.amount):0,title:product.title||\"\",originalIndex:index,details:{id:product.id,title:product.title||\"\",price:product.priceRange?.minVariantPrice?.amount?parseFloat(product.priceRange.minVariantPrice.amount):0,productType:product.productType||\"\",tags:product.tags||[],compareAtPrice:product.compareAtPriceRange?.minVariantPrice?.amount?parseFloat(product.compareAtPriceRange.minVariantPrice.amount):0,collections:Array.isArray(product.collections)?product.collections.map(c=>c.node.title):[]}};}).filter(Boolean)// Remove null items\n    ;}else{// Original logic for non-duplicated products\n    items=originalRender.props.children.map(child=>{const item=collection.find(collectionItem=>collectionItem.id===child.key);const productId=item?findDeep13DigitNumber(item):null;// Find the product in our filtered shopX products\n    const fullId=`gid://shopify/Product/${productId}`;const matchingProduct=filteredForPage.find(({node})=>node.id===fullId);// Only include items that exist in our filtered products\n    if(!matchingProduct){logDebug(\"ProductSort\",\"Product filtered out\",{id:fullId,productId});return null;}const details={id:matchingProduct.node.id,title:matchingProduct.node.title||\"\",price:matchingProduct.node.priceRange?.minVariantPrice?.amount?parseFloat(matchingProduct.node.priceRange.minVariantPrice.amount):0,productType:matchingProduct.node.productType||\"\",tags:matchingProduct.node.tags||[],compareAtPrice:matchingProduct.node.compareAtPriceRange?.minVariantPrice?.amount?parseFloat(matchingProduct.node.compareAtPriceRange.minVariantPrice.amount):0,collections:Array.isArray(matchingProduct.node.collections)?matchingProduct.node.collections.map(c=>c.node.title):[]};return{child,productId:productId||\"0\",price:details.price,title:details.title,originalIndex:originalRender.props.children.indexOf(child),details};}).filter(Boolean)// Remove null items\n    ;}logDebug(\"ProductSort\",\"Final filtered items\",{totalProducts:products.length,filteredForPage:filteredForPage.length,finalItems:items.length,finalItemsList:items,sample:items[0]?{title:items[0].title,productType:items[0].details.productType}:null});// Use React.memo for components that do not change\n    const OptimizedChild=/*#__PURE__*/React.memo(({child,...props})=>{return /*#__PURE__*/React.cloneElement(child,props);});// Ensure debouncing is applied effectively\n    const debouncedUpdateSort=React.useCallback(debounce(newSortConfig=>{setSortConfig(newSortConfig);},150),[]);const debouncedUpdateFilter=React.useCallback(debounce(newFilters=>{setFilters(newFilters);},150),[]);// Add detailed logging around transition logic\n    // console.log(\n    //     \"🔍 Transition state before rendering\",\n    //     {\n    //         isTransitioning,\n    //         isSettling,\n    //         itemsLength: items.length,\n    //         emptyStateInstanceExists:\n    //             !!emptyStateInstance,\n    //     }\n    // )\n    // Modify the child wrapper styles to include settling state\n    const getTransitionStyles=baseStyles=>({...baseStyles,opacity:isTransitioning||isSettling?0:1,transition:`opacity ${isSettling?\"0.5s\":\"0.3s\"} ease-in-out`,pointerEvents:isTransitioning||isSettling?\"none\":\"auto\"});// Render sorted items\n    // console.log(\"🔍 Rendering sorted items\", {\n    //     sortedItemsCount: items.length,\n    //     sortedItems: items,\n    //     isTransitioning,\n    //     isSettling,\n    // })\n    // Sort the filtered items\n    const sorted=[...items].sort((a,b)=>{if(sortConfig.type===\"relevancy\"){return a.originalIndex-b.originalIndex;}if(sortConfig.type===\"price\"){const result=sortConfig.sortDirection===\"highToLow\"?b.price-a.price:a.price-b.price;return result||a.originalIndex-b.originalIndex;}else if(sortConfig.type===\"name\"){// sort by name\n    const result=sortConfig.sortDirection===\"aToZ\"?a.title.localeCompare(b.title):b.title.localeCompare(a.title);return result||a.originalIndex-b.originalIndex;}else if(sortConfig.type===\"created\"){// For \"newest\", we try to use the product ID as a proxy\n    // since Shopify IDs are sequential\n    // Higher ID = newer product\n    const aId=parseInt(a.productId);const bId=parseInt(b.productId);if(!isNaN(aId)&&!isNaN(bId)){return bId-aId// Newest first\n    ;}// Fall back to original order if we can't parse IDs\n    return a.originalIndex-b.originalIndex;}else if(sortConfig.type===\"best-selling\"){// For best-selling, maintain the original order\n    // as we assume Shopify has already sorted by best-selling\n    return a.originalIndex-b.originalIndex;}else{// Default to original order for unknown types\n    return a.originalIndex-b.originalIndex;}});// Apply pagination if enabled\n    let paginatedItems=sorted;// console.log(\"🔍 Paginated items\", {\n    //     paginatedItemsCount: sorted.length,\n    //     paginatedItems: sorted,\n    // })\n    // Update the product items wrapper with a standard list instead of virtualized one\n    // console.log(\"🎨 Processing children:\", {\n    //   paginatedItemsCount: paginatedItems.length,\n    //   sampleItem: paginatedItems[0]\n    //     ? {\n    //         productId: paginatedItems[0].productId,\n    //         originalIndex: paginatedItems[0].originalIndex,\n    //         childType: typeof paginatedItems[0].child,\n    //       }\n    //     : null,\n    // });\n    const wrappedChildren=paginatedItems.map(item=>/*#__PURE__*/React.cloneElement(item.child,{style:getTransitionStyles(item.child.props.style),key:item.productId||item.originalIndex}));// console.log(\"🎨 Wrapped children created:\", {\n    //   wrappedChildrenCount: wrappedChildren.length,\n    // });\n    // console.log(\"🔍 Rendering wrapped children\", {\n    //     wrappedChildrenCount: wrappedChildren.length,\n    //     wrappedChildren: wrappedChildren,\n    // })\n    // Update sorted children state which triggers re-render\n    updateSortedChildrenWithTransition(wrappedChildren);// Return the placeholder structure expected by the outer cloneElement\n    // The actual content will be replaced by sortedChildren on re-render\n    return{...originalRender,props:{...originalRender.props,style:{...originalRender.props?.style||{},...layoutStyle},// Use the original children length initially\n    children:originalRender.props.children}};}// Initial render or while loading/filtering\n    return{...originalRender,props:{...originalRender.props,style:{...originalRender.props?.style||{},...layoutStyle},children:sortedChildren||originalRender.props.children}};};const ensureFunctionChildren=el=>{if(!/*#__PURE__*/React.isValidElement(el))return el;const child=el.props?.children;// If this element has a query prop (likely QueryData parent), ensure its children is a function\nconst hasQuery=!!el.props?.query;if(hasQuery&&typeof child!==\"function\"){return /*#__PURE__*/React.cloneElement(el,{...el.props,children:()=>child});}if(Array.isArray(child)){const newChildren=child.map(c=>ensureFunctionChildren(c));return /*#__PURE__*/React.cloneElement(el,{...el.props,children:newChildren});}if(/*#__PURE__*/React.isValidElement(child)){const newChild=ensureFunctionChildren(child);if(newChild!==child){return /*#__PURE__*/React.cloneElement(el,{...el.props,children:newChild});}}return el;};const safeChildrenTree=ensureFunctionChildren(styledInstance.props.children);const injected=replaceChildrenFunction(safeChildrenTree,childrenWrapper);return /*#__PURE__*/React.cloneElement(styledInstance,{...styledInstance.props,style:{...styledInstance.props.style,opacity:isLoading?0:1,transition:\"opacity 0.2s ease-in-out\",visibility:isLoading?\"hidden\":\"visible\"},children:injected.node});}catch(error){console.error(\"Error in ProductSort:\",error);logDebug(\"ProductSort\",\"Render error\",{error:error.message});return styledInstance;}}addPropertyControls(FC_CatalogDisplay,{Collection:{type:ControlType.ComponentInstance,title:\"CMS (L)\"},phoneInstance:{type:ControlType.ComponentInstance,title:\"CMS (S)\",description:\"Connect to CMS collection off-page with no filters. Inside, use a single component with Product ID set.  \\n\\n (S optional)\"},EmptyState:{type:ControlType.ComponentInstance,title:\"Empty (L)\"},EmptyStatePhone:{type:ControlType.ComponentInstance,title:\"Empty (S)\",description:\"Connect to empty state design off-page. \\n\\n (S optional)\"},CustomInitialState:{type:ControlType.ComponentInstance,title:\"Initial State\",description:\"Initial state for Search. Connect to design off-page.\",hidden:props=>!props.Search?.enableSearch||props.Search?.initialSearchState!==\"custom\"},displayMode:{type:ControlType.Enum,title:\"Responsive\",defaultValue:\"Desktop\",options:[\"Desktop\",\"Phone\"],optionTitles:[\"L\",\"S\"],displaySegmentedControl:true,description:\"Display the Large (L) or Small (S) designs connected above.\"},pageType:{type:ControlType.Enum,title:\"Display\",options:[\"default\",\"favorites\"],optionTitles:[\"All\",\"Favorites\"],defaultValue:\"default\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},display:{type:ControlType.Enum,title:\"Filter Type\",options:[\"All\",\"Collection\",\"Product Tag\",\"Product Type\"],defaultValue:\"All\"},value:{type:ControlType.String,title:\"Filter Value\",placeholder:\"New Arrivals\"},defaultSort:{type:ControlType.Enum,title:\"Default Sort\",options:[\"relevance\",\"title_asc\",\"title_desc\",\"price_asc\",\"price_desc\",\"newest\",\"best_selling\"],optionTitles:[\"Relevance\",\"Title A-Z\",\"Title Z-A\",\"Price Low-High\",\"Price High-Low\",\"Newest\",\"Best Selling\"],defaultValue:\"relevance\"},Search:{type:ControlType.Object,title:\"Search\",controls:{enableSearch:{type:ControlType.Boolean,title:\"Allow\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},initialSearchState:{type:ControlType.Enum,title:\"Initial State\",options:[\"all\",\"none\",\"custom\"],optionTitles:[\"Full\",\"Empty\",\"Custom\"],defaultValue:\"all\",description:\"Use custom to display product or search suggestions. Connect your component on the main panel.\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>!props.enableSearch},Scope:{type:ControlType.Object,title:\"Scope\",hidden:props=>!props.enableSearch,controls:{title:{type:ControlType.Boolean,title:\"Title\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},productType:{type:ControlType.Boolean,title:\"Product Type\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},productTag:{type:ControlType.Boolean,title:\"Tags\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},collection:{type:ControlType.Boolean,title:\"Collections\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},vendor:{type:ControlType.Boolean,title:\"Vendor\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},variants:{type:ControlType.Boolean,title:\"Variants\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"}}}}},Metafields:{type:ControlType.Object,title:\"Metafields\",controls:{include:{type:ControlType.Boolean,title:\"Include\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\",description:\"Searching or filtering by Variant: Color will also check custom metafields using custom.fc_color. \\n [Learn more](https://framercommerce.com/resources/docs/components/catalog#catalog-display)\"}}},/*  DuplicateVariants: {\n        type: ControlType.Object,\n        title: \"Duplicate Variants (NEW)\",\n        controls: {\n            enable: {\n                type: ControlType.Boolean,\n                title: \"Enable\",\n                defaultValue: false,\n                enabledTitle: \"Yes\",\n                disabledTitle: \"No\",\n                description:\n                    \"Create separate product instances for each variant. Max 3 variants per product for testing.\",\n            },\n            variantTitles: {\n                type: ControlType.Array,\n                title: \"Variant Titles\",\n                control: {\n                    type: ControlType.String,\n                    placeholder: \"e.g., Color, Size\",\n                },\n                defaultValue: [],\n                description:\n                    'Show all variants or filter by title (e.g., \"Color\", \"Size\") using multiple components.',\n                maxCount: 3,\n            },\n        },\n    }, */Pagination:{type:ControlType.Object,title:\"Pagination\",controls:{enable:{type:ControlType.Boolean,title:\"Enable\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\"},type:{type:ControlType.Enum,title:\"Type\",options:[\"load_more\",\"next_prev\"/* \"infinite\"*/],optionTitles:[\"Load More\",\"Next/Prev\"/*\"Infinite Scroll\"*/],defaultValue:\"load_more\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:({enable})=>!enable},items:{type:ControlType.Number,title:\"Items\",defaultValue:12,min:1,step:1,displayStepper:true,hidden:({enable})=>!enable,description:\"Insert our Pagination button from the plugin.\"}}},layout:{type:ControlType.Object,optional:true,controls:{type:{type:ControlType.Enum,defaultValue:\"grid\",options:[\"stack\",\"grid\"],optionTitles:[\"Stack\",\"Grid\"],displaySegmentedControl:true},// Stack specific controls\ndirection:{type:ControlType.Enum,defaultValue:\"vertical\",options:[\"horizontal\",\"vertical\"],optionTitles:[\"Horizontal\",\"Vertical\"],optionIcons:[\"direction-horizontal\",\"direction-vertical\"],displaySegmentedControl:true,hidden:props=>props.type!==\"stack\"},wrap:{type:ControlType.Boolean,defaultValue:false,title:\"Wrap\",hidden:props=>props.type!==\"stack\"},stackMinWidth:{type:ControlType.Number,defaultValue:200,min:1,max:1e3,step:1,title:\"Min Width\",hidden:props=>props.type!==\"stack\"||!props.wrap},distribute:{type:ControlType.Enum,defaultValue:\"start\",options:[\"start\",\"center\",\"end\",\"space-between\",\"space-around\",\"space-evenly\"],optionTitles:[\"Start\",\"Center\",\"End\",\"Space Between\",\"Space Around\",\"Space Evenly\"],hidden:props=>props.type!==\"stack\"},align:{type:ControlType.Enum,defaultValue:\"start\",options:[\"start\",\"center\",\"end\"],optionTitles:[\"Start\",\"Center\",\"End\"],optionIcons:[\"align-left\",\"align-center\",\"align-right\"],displaySegmentedControl:true,hidden:props=>props.type!==\"stack\"||props.direction!==\"vertical\"},alignH:{type:ControlType.Enum,defaultValue:\"start\",options:[\"start\",\"center\",\"end\"],optionTitles:[\"Top\",\"Center\",\"Bottom\"],optionIcons:[\"align-top\",\"align-middle\",\"align-bottom\"],displaySegmentedControl:true,title:\"Align\",hidden:props=>props.type!==\"stack\"||props.direction!==\"horizontal\"},// Grid specific controls\ncolumns:{type:ControlType.Enum,defaultValue:\"fixed\",options:[\"auto\",\"fixed\"],optionTitles:[\"Auto\",\"Fixed\"],displaySegmentedControl:true,hidden:props=>props.type!==\"grid\"},columnCount:{type:ControlType.Number,defaultValue:3,min:1,step:1,displayStepper:true,title:\"Columns\",hidden:props=>props.type!==\"grid\"||props.columns===\"auto\"},gridWidth:{type:ControlType.Number,defaultValue:300,min:1,max:1e3,step:1,title:\"Min Width\",hidden:props=>props.type!==\"grid\"||props.columns===\"fixed\"},maxColumns:{type:ControlType.Number,defaultValue:4,min:1,step:1,title:\"Max Col\",displayStepper:true,hidden:props=>props.type!==\"grid\"||props.columns===\"fixed\"},gridAlign:{type:ControlType.Enum,defaultValue:\"center\",options:[\"start\",\"center\",\"end\"],optionTitles:[\"Left\",\"Center\",\"Right\"],displaySegmentedControl:true,title:\"Align\",hidden:props=>props.type!==\"grid\"},// Common controls\ngap:{type:ControlType.Number,defaultValue:24,min:0,step:1,title:\"Gap\"},gapY:{type:ControlType.Number,defaultValue:24,min:0,step:1,title:\"Gap Y\",hidden:props=>props.type!==\"grid\"},padding:{type:ControlType.FusedNumber,title:\"Padding\",defaultValue:0,min:0,toggleKey:\"paddingPerSide\",toggleTitles:[\"All\",\"Sides\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"]},radius:{type:ControlType.FusedNumber,title:\"Radius\",defaultValue:0,min:0,toggleKey:\"radiusPerSide\",toggleTitles:[\"All\",\"Sides\"],valueKeys:[\"radiusTopLeft\",\"radiusTopRight\",\"radiusBottomRight\",\"radiusBottomLeft\"],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"]},background:{type:ControlType.Color,title:\"Background\",defaultValue:\"#FFFFFF00\"}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_CatalogDisplay\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_CatalogDisplay.map","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useEffect,useState,useCallback,useRef}from\"react\";import{RenderTarget}from\"framer\";/**\n * @framerIntrinsicWidth 100%\n * @framerIntrinsicHeight auto\n * @framerSupportedLayoutWidth fixed | fill\n * @framerSupportedLayoutHeight fixed | auto\n */// Helper function for consistent logging\nconst logDebug=(component,action,data)=>{//console.log(`🔍 [${component}] ${action}:`, data)\n};/**\n * @framerDisableUnlink\n */export default function FC_CatalogSearch(props){const{// Text props\ntext:{placeholder,font,color,placeholderColor},// Styles props\nstyles:{gap,padding,paddingPerSide,paddingTop,paddingRight,paddingBottom,paddingLeft,background:{color:backgroundColor,border,hoverBackground,hoverBorder,focusBackground,focusBorder},borderRadius,radiusPerCorner,radiusTopLeft,radiusTopRight,radiusBottomRight,radiusBottomLeft},// Search Icon props\nsearchIcon:{show:showSearchIcon,isCustom:searchIconIsCustom,custom:customSearchIcon,color:searchIconColor,weight:searchIconWeight,size:searchIconSize,background:{color:searchIconBgColor,padding:searchIconPadding,paddingPerSide:searchIconPaddingPerSide,paddingTop:searchIconPaddingTop,paddingRight:searchIconPaddingRight,paddingBottom:searchIconPaddingBottom,paddingLeft:searchIconPaddingLeft,radius:searchIconRadius,radiusPerCorner:searchIconRadiusPerCorner,radiusTopLeft:searchIconRadiusTopLeft,radiusTopRight:searchIconRadiusTopRight,radiusBottomRight:searchIconRadiusBottomRight,radiusBottomLeft:searchIconRadiusBottomLeft}},// Clear props\nclear:{show:showClear,isText:clearIsText,content:clearText,font:clearFont,color:clearColor,transform:clearTextTransform,// Icon properties for clear\niconIsCustom,iconCustom,iconColor,iconWeight,iconSize,// Background properties for clear\nbackground:clearBackground,padding:clearPadding,paddingPerSide:clearPaddingPerSide,paddingTop:clearPaddingTop,paddingRight:clearPaddingRight,paddingBottom:clearPaddingBottom,paddingLeft:clearPaddingLeft,radius:clearRadius,radiusPerCorner:clearRadiusPerCorner,radiusTopLeft:clearRadiusTopLeft,radiusTopRight:clearRadiusTopRight,radiusBottomRight:clearRadiusBottomRight,radiusBottomLeft:clearRadiusBottomLeft,border:{color:clearBorderColor,width:clearBorderWidth,style:clearBorderStyle}},// Functionality props\nbehavior:{realTime:realTime,debounceDelay,page:page,slug:slug}}=props;// Fixed accessibility values\nconst searchLabel=\"Search products\";const ariaLabel=\"Search products\";// State for input value and UI states\nconst[searchValue,setSearchValue]=useState(\"\");const[isHovered,setIsHovered]=useState(false);const[isFocused,setIsFocused]=useState(false);const[showClearButton,setShowClearButton]=useState(false);const inputRef=useRef(null);const searchTimeoutRef=useRef(null);const mountedRef=useRef(false);// Generate a unique component ID\nconst uniqueComponentId=useRef(`search-${Math.random().toString(36).substring(2,9)}`).current;// Detect if we're in canvas vs browser\nconst isCanvas=()=>{// In canvas mode, window is defined but certain browser features are limited\nif(typeof window===\"undefined\")return false;try{// Check for Framer-specific environment indicators\nreturn window.document?.location?.href.includes(\"framer\")||window.document?.location?.pathname.includes(\"preview\")||!window.document?.location?.host||window.parent!==window;}catch(e){// If we can't access these properties, we're likely in a restricted environment like Canvas\nreturn true;}};// Helper function to generate border style\nconst getBorderStyle=borderConfig=>{if(borderConfig.isMixed){return{borderTop:`${borderConfig.top}px ${borderConfig.style} ${borderConfig.color}`,borderRight:`${borderConfig.right}px ${borderConfig.style} ${borderConfig.color}`,borderBottom:`${borderConfig.bottom}px ${borderConfig.style} ${borderConfig.color}`,borderLeft:`${borderConfig.left}px ${borderConfig.style} ${borderConfig.color}`};}return{border:`${borderConfig.width}px ${borderConfig.style} ${borderConfig.color}`};};// Helper function to generate hover border style\nconst getHoverBorderStyle=borderConfig=>{if(borderConfig.isMixed){return{borderTop:`${borderConfig.top}px ${borderConfig.style} ${borderConfig.color}`,borderRight:`${borderConfig.right}px ${borderConfig.style} ${borderConfig.color}`,borderBottom:`${borderConfig.bottom}px ${borderConfig.style} ${borderConfig.color}`,borderLeft:`${borderConfig.left}px ${borderConfig.style} ${borderConfig.color}`};}return{border:`${borderConfig.width}px ${borderConfig.style} ${borderConfig.color}`};};// Helper function to generate focus border style\nconst getFocusBorderStyle=borderConfig=>{if(borderConfig.isMixed){return{borderTop:`${borderConfig.top}px ${borderConfig.style} ${borderConfig.color}`,borderRight:`${borderConfig.right}px ${borderConfig.style} ${borderConfig.color}`,borderBottom:`${borderConfig.bottom}px ${borderConfig.style} ${borderConfig.color}`,borderLeft:`${borderConfig.left}px ${borderConfig.style} ${borderConfig.color}`};}return{border:`${borderConfig.width}px ${borderConfig.style} ${borderConfig.color}`};};// Generate border radius values\nconst getBorderRadius=()=>{if(radiusPerCorner){return{borderTopLeftRadius:`${radiusTopLeft}px`,borderTopRightRadius:`${radiusTopRight}px`,borderBottomRightRadius:`${radiusBottomRight}px`,borderBottomLeftRadius:`${radiusBottomLeft}px`};}return{borderRadius:`${borderRadius}px`};};// Generate padding values\nconst getPadding=()=>{if(paddingPerSide){return{paddingTop:`${paddingTop}px`,paddingRight:`${paddingRight}px`,paddingBottom:`${paddingBottom}px`,paddingLeft:`${paddingLeft}px`};}return{padding:`${padding}px`};};// Apply text transform\nconst getTransformedText=(text,transform)=>{switch(transform){case\"Uppercase\":return text.toUpperCase();case\"Lowercase\":return text.toLowerCase();case\"Capitalize\":return text.split(\" \").map(word=>word.charAt(0).toUpperCase()+word.slice(1).toLowerCase()).join(\" \");default:return text;}};// Create a unique class name for the input\nconst className=`fc-search-input-${uniqueComponentId}`;// Create a style element for pseudo-classes\nuseEffect(()=>{const styleEl=document.createElement(\"style\");styleEl.innerHTML=`\n            .${className}::placeholder {\n                color: ${placeholderColor};\n            }\n            .${className}-container:hover .${className}:not(:focus) {\n                background-color: ${hoverBackground} !important;\n                ${Object.entries(getHoverBorderStyle(hoverBorder)).map(([key,value])=>`${key}: ${value} !important;`).join(\" \")}\n            }\n            .${className}:focus {\n                background-color: ${focusBackground} !important;\n                ${Object.entries(getFocusBorderStyle(focusBorder)).map(([key,value])=>`${key}: ${value} !important;`).join(\" \")}\n            }\n            /* Hide the default browser search cancel button */\n            .${className}::-webkit-search-cancel-button,\n            .${className}::-webkit-search-decoration,\n            .${className}::-ms-clear {\n                -webkit-appearance: none;\n                appearance: none;\n                display: none;\n            }\n        `;document.head.appendChild(styleEl);return()=>styleEl.remove();},[className,placeholderColor,hoverBackground,hoverBorder,focusBackground,focusBorder]);// Calculate padding for icons\nconst getIconPadding=side=>{if(paddingPerSide){return side===\"left\"?paddingLeft:paddingRight;}return padding;};// Search container style\nconst containerStyle={position:\"relative\",width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\"};// Input style with space for icons\nconst inputStyle={width:\"100%\",height:\"100%\",...getPadding(),...getBorderRadius(),...font,color:color,backgroundColor:backgroundColor,...getBorderStyle(border),outline:\"none\",transition:\"all 0.2s ease-in-out\",...showSearchIcon?{paddingLeft:`${getIconPadding(\"left\")+searchIconSize+gap}px`}:{},...showClear?{paddingRight:`${getIconPadding(\"right\")+(clearIsText?40:iconSize)+gap}px`}:{}};// Generate search icon border radius values\nconst getSearchIconBorderRadius=()=>{if(searchIconRadiusPerCorner){return{borderTopLeftRadius:`${searchIconRadiusTopLeft}px`,borderTopRightRadius:`${searchIconRadiusTopRight}px`,borderBottomRightRadius:`${searchIconRadiusBottomRight}px`,borderBottomLeftRadius:`${searchIconRadiusBottomLeft}px`};}return{borderRadius:`${searchIconRadius}px`};};// Generate search icon padding values\nconst getSearchIconPadding=()=>{if(searchIconPaddingPerSide){return{paddingTop:`${searchIconPaddingTop}px`,paddingRight:`${searchIconPaddingRight}px`,paddingBottom:`${searchIconPaddingBottom}px`,paddingLeft:`${searchIconPaddingLeft}px`};}return{padding:`${searchIconPadding}px`};};// Generate clear button border radius values\nconst getClearBorderRadius=()=>{if(clearRadiusPerCorner){return{borderTopLeftRadius:`${clearRadiusTopLeft}px`,borderTopRightRadius:`${clearRadiusTopRight}px`,borderBottomRightRadius:`${clearRadiusBottomRight}px`,borderBottomLeftRadius:`${clearRadiusBottomLeft}px`};}return{borderRadius:`${clearRadius}px`};};// Generate clear button padding values\nconst getClearPadding=()=>{if(clearPaddingPerSide){return{paddingTop:`${clearPaddingTop}px`,paddingRight:`${clearPaddingRight}px`,paddingBottom:`${clearPaddingBottom}px`,paddingLeft:`${clearPaddingLeft}px`};}return{padding:`${clearPadding}px`};};// Search icon style\nconst searchIconStyle={position:\"absolute\",left:`${getIconPadding(\"left\")}px`,top:\"50%\",transform:\"translateY(-50%)\",color:searchIconColor,pointerEvents:\"none\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",backgroundColor:searchIconBgColor,...getSearchIconPadding(),...getSearchIconBorderRadius()};// Clear button style\nconst clearButtonStyle={position:\"absolute\",right:`${getIconPadding(\"right\")}px`,top:\"50%\",transform:\"translateY(-50%)\",backgroundColor:clearBackground,border:`${clearBorderWidth}px ${clearBorderStyle} ${clearBorderColor}`,cursor:\"pointer\",alignItems:\"center\",justifyContent:\"center\",...getClearPadding(),...getClearBorderRadius(),...clearIsText?{...clearFont,color:clearColor||\"#999999\"}:{color:iconColor||\"#999999\"},textTransform:clearIsText&&clearTextTransform?clearTextTransform.toLowerCase():undefined,// Only show when there's text in the field or in canvas\ndisplay:searchValue||RenderTarget.current()===\"CANVAS\"?\"flex\":\"none\",// Accessibility\ntabIndex:0,outline:\"none\"};// Function to dispatch search event\nconst dispatchSearchEvent=useCallback(searchTerm=>{try{logDebug(\"Search\",\"Dispatching search event\",{searchTerm,componentId:uniqueComponentId});// Update URL with search parameter\nif(typeof window!==\"undefined\"){const url=new URL(window.location.href);if(searchTerm){url.searchParams.set(\"search\",searchTerm);}else{url.searchParams.delete(\"search\");}// Update URL without reloading the page\nwindow.history.pushState({},\"\",url.toString());}// Dispatch custom event for search - this will be caught by the GlobalCMS component\nconst searchEvent=new CustomEvent(\"product-search-change\",{detail:{term:searchTerm,componentId:uniqueComponentId}});document.dispatchEvent(searchEvent);// Also dispatch the standard filter-navigation event\nconst navigationEvent=new CustomEvent(\"filter-navigation\",{detail:{search:searchTerm,sourceComponentId:uniqueComponentId}});document.dispatchEvent(navigationEvent);}catch(error){console.error(\"Error dispatching search event:\",error);}},[uniqueComponentId]);// Debounced search handler\nconst handleSearch=useCallback(value=>{if(!realTime)return;if(searchTimeoutRef.current){clearTimeout(searchTimeoutRef.current);}searchTimeoutRef.current=setTimeout(()=>{dispatchSearchEvent(value);},debounceDelay);},[dispatchSearchEvent,debounceDelay,realTime]);// Input change handler\nconst handleInputChange=useCallback(e=>{const value=e.target.value;setSearchValue(value);// Only show clear button when there's text AND clear feature is enabled\nsetShowClearButton(!!value&&showClear);handleSearch(value);},[handleSearch,showClear]);// Key down handler for Enter key\nconst handleKeyDown=useCallback(e=>{if(e.key===\"Enter\"){e.preventDefault();// Clear any pending debounce and search immediately\nif(searchTimeoutRef.current){clearTimeout(searchTimeoutRef.current);}if(page){// Navigate to search page\nconst searchTerm=searchValue.trim();if(searchTerm){window.location.href=`/${slug}?search=${encodeURIComponent(searchTerm)}`;}else{window.location.href=`/${slug}`;}}else{dispatchSearchEvent(searchValue);}}else if(e.key===\"Escape\"){setSearchValue(\"\");setShowClearButton(false);dispatchSearchEvent(\"\");inputRef.current?.blur();}},[searchValue,dispatchSearchEvent,page,slug]);// Clear search handler\nconst handleClearSearch=useCallback(()=>{setSearchValue(\"\");setShowClearButton(false);dispatchSearchEvent(\"\");inputRef.current?.focus();},[dispatchSearchEvent]);// Initialize component\nuseEffect(()=>{mountedRef.current=true;// Check URL for existing search parameter\nif(typeof window!==\"undefined\"){const urlParams=new URLSearchParams(window.location.search);const searchParam=urlParams.get(\"search\");if(searchParam){setSearchValue(searchParam);setShowClearButton(!isCanvas()?true:showClearButton);}}// Set initial state for the clear button based on environment and text\nif(isCanvas()&&showClear){setShowClearButton(true);}else{setShowClearButton(!!searchValue&&showClear);}// Listen for external search events\nconst handleExternalSearchChange=e=>{if(e.detail.componentId!==uniqueComponentId){logDebug(\"Search\",\"Received external search event\",{term:e.detail.term,fromComponentId:e.detail.componentId});setSearchValue(e.detail.term||\"\");setShowClearButton(!!e.detail.term);}};document.addEventListener(\"product-search-change\",handleExternalSearchChange);return()=>{mountedRef.current=false;document.removeEventListener(\"product-search-change\",handleExternalSearchChange);if(searchTimeoutRef.current){clearTimeout(searchTimeoutRef.current);}};},[uniqueComponentId]);// For Framer canvas - ensure clear button is always visible\nuseEffect(()=>{if(isCanvas()&&showClear){// In canvas, always show the clear button for styling purposes\nsetShowClearButton(true);}else{// In browser, only show clear button when there's text\nsetShowClearButton(!!searchValue&&showClear);}},[searchValue,showClear,isCanvas]);// Render search icon based on type\nconst renderSearchIcon=()=>{if(!showSearchIcon)return null;// When custom image is provided AND isCustom is false, show the custom image\n// Otherwise show the default SVG icon\nif(!searchIconIsCustom&&customSearchIcon){return /*#__PURE__*/_jsx(\"img\",{src:customSearchIcon,alt:\"Search\",width:searchIconSize,height:searchIconSize,style:{width:`${searchIconSize}px`,height:`${searchIconSize}px`,strokeWidth:`${searchIconWeight}px`}});}// Default Phosphor magnifying glass icon\nreturn /*#__PURE__*/_jsxs(\"svg\",{width:searchIconSize,height:searchIconSize,viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[/*#__PURE__*/_jsx(\"circle\",{cx:\"11\",cy:\"11\",r:\"8\",stroke:searchIconColor,strokeWidth:searchIconWeight,strokeLinecap:\"round\",strokeLinejoin:\"round\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M21 21L16.65 16.65\",stroke:searchIconColor,strokeWidth:searchIconWeight,strokeLinecap:\"round\",strokeLinejoin:\"round\"})]});};// Render the clear button content based on type and style\nconst renderClearContent=()=>{// Always show in canvas, only hide in browser when not enabled\nif(!showClear&&RenderTarget.current()!==\"CANVAS\")return null;// Text mode\nif(clearIsText){// Make sure there's always text content for the clear button\nconst displayText=clearText||\"Clear\";return getTransformedText(displayText,clearTextTransform);}// Custom icon mode\nif(!iconIsCustom&&iconCustom){return /*#__PURE__*/_jsx(\"img\",{src:iconCustom,alt:\"Clear search\",width:iconSize,height:iconSize,style:{width:`${iconSize}px`,height:`${iconSize}px`,strokeWidth:`${iconWeight}px`}});}// Default X icon\nreturn /*#__PURE__*/_jsx(\"svg\",{width:iconSize,height:iconSize,viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",\"aria-hidden\":\"true\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M18 6L6 18M6 6l12 12\",stroke:iconColor||\"#999999\",strokeWidth:iconWeight,strokeLinecap:\"round\",strokeLinejoin:\"round\"})});};// Render search component\nreturn /*#__PURE__*/_jsxs(\"div\",{className:`${className}-container`,style:containerStyle,role:\"search\",\"aria-label\":searchLabel,children:[showSearchIcon&&/*#__PURE__*/_jsx(\"div\",{style:searchIconStyle,children:renderSearchIcon()}),/*#__PURE__*/_jsx(\"input\",{ref:inputRef,className:className,type:\"text\",placeholder:placeholder,value:searchValue,onChange:handleInputChange,onKeyDown:handleKeyDown,onFocus:()=>setIsFocused(true),onBlur:()=>setIsFocused(false),onMouseEnter:()=>setIsHovered(true),onMouseLeave:()=>setIsHovered(false),style:inputStyle,\"aria-label\":ariaLabel,autoComplete:\"off\"}),showClear&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",style:clearButtonStyle,onClick:handleClearSearch,\"aria-label\":\"Clear search\",tabIndex:0,children:renderClearContent()})]});}FC_CatalogSearch.defaultProps={// Text defaults\ntext:{placeholder:\"Search...\",font:{family:\"Inter\",fontSize:16,weight:400},color:\"#000000\",placeholderColor:\"#999999\"},// Styles defaults\nstyles:{gap:12,padding:12,paddingPerSide:false,paddingTop:12,paddingRight:12,paddingBottom:12,paddingLeft:12,background:{color:\"#ffffff\",border:{width:1,color:\"#EBEBEB\",style:\"solid\"},hoverBackground:\"#f8f8f8\",hoverBorder:{width:1,color:\"#D1D1D1\",style:\"solid\"},focusBackground:\"#ffffff\",focusBorder:{width:1,color:\"#0099ff\",style:\"solid\"}},borderRadius:4,radiusPerCorner:false,radiusTopLeft:4,radiusTopRight:4,radiusBottomRight:4,radiusBottomLeft:4},// Search Icon defaults\nsearchIcon:{show:true,isCustom:false,custom:\"\",color:\"#999999\",weight:1.5,size:16,background:{color:\"transparent\",padding:4,paddingPerSide:false,paddingTop:4,paddingRight:4,paddingBottom:4,paddingLeft:4,radius:4,radiusPerCorner:false,radiusTopLeft:4,radiusTopRight:4,radiusBottomRight:4,radiusBottomLeft:4}},// Clear defaults\nclear:{show:true,isText:false,content:\"Clear\",font:{family:\"Inter\",fontSize:14,weight:400},transform:\"None\",color:\"#999999\",// Icon properties for clear\niconIsCustom:false,iconCustom:\"\",iconColor:\"#999999\",iconWeight:1.5,iconSize:12,// Background properties for clear\nbackground:\"#F7F7F7\",padding:4,paddingPerSide:false,paddingTop:4,paddingRight:4,paddingBottom:4,paddingLeft:4,radius:24,radiusPerCorner:false,radiusTopLeft:24,radiusTopRight:24,radiusBottomRight:24,radiusBottomLeft:24,border:{color:\"#000000\",width:0,style:\"solid\"}},// Behavior defaults\nbehavior:{realTime:true,debounceDelay:300,page:false,slug:\"search\"}};addPropertyControls(FC_CatalogSearch,{// Text Group\ntext:{type:ControlType.Object,title:\"Text\",controls:{placeholder:{type:ControlType.String,title:\"Placeholder\",defaultValue:\"Search...\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\"},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"},placeholderColor:{type:ControlType.Color,title:\"Placeholder\",defaultValue:\"#999999\"}}},// Styles controls (renamed from \"Spacing\")\nstyles:{type:ControlType.Object,title:\"Styles\",controls:{gap:{type:ControlType.Number,title:\"Gap\",defaultValue:12,min:0,step:1,unit:\"px\"},padding:{type:ControlType.FusedNumber,title:\"Padding\",defaultValue:12,toggleKey:\"paddingPerSide\",toggleTitles:[\"All\",\"Sides\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},borderRadius:{type:ControlType.FusedNumber,title:\"Radius\",defaultValue:4,toggleKey:\"radiusPerCorner\",toggleTitles:[\"All\",\"Corners\"],valueKeys:[\"radiusTopLeft\",\"radiusTopRight\",\"radiusBottomRight\",\"radiusBottomLeft\"],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"],min:0},// Background nested within Styles\nbackground:{type:ControlType.Object,title:\"BG\",controls:{color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#ffffff\"},border:{type:ControlType.Object,title:\"Border\",controls:{color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#EBEBEB\"},width:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},style:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"}}},hoverBackground:{type:ControlType.Color,title:\"Hover\",defaultValue:\"#f8f8f8\"},hoverBorder:{type:ControlType.Object,title:\"Hover Border\",controls:{color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"},width:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},style:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"}}},focusBackground:{type:ControlType.Color,title:\"Focus\",defaultValue:\"#ffffff\"},focusBorder:{type:ControlType.Object,title:\"Focus Border\",controls:{color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"},width:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},style:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"}}}}}}},// Search Icon Group\nsearchIcon:{type:ControlType.Object,title:\"Search Icon\",controls:{show:{type:ControlType.Boolean,title:\"Show\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},isCustom:{type:ControlType.Boolean,title:\"Icon\",defaultValue:false,enabledTitle:\"Default\",disabledTitle:\"Custom\",hidden:props=>!props.show},weight:{type:ControlType.Number,title:\"Weight\",defaultValue:1.5,min:.5,max:5,step:.5,unit:\"px\",hidden:props=>!props.show||!props.isCustom},size:{type:ControlType.Number,title:\"Size\",defaultValue:16,min:8,max:48,step:4,unit:\"px\",hidden:props=>!props.show},custom:{type:ControlType.Image,title:\"Image\",hidden:props=>!props.show||props.isCustom},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#999999\",hidden:props=>!props.show||props.isCustom},// Background nested within Search Icon\nbackground:{type:ControlType.Object,title:\"BG\",controls:{color:{type:ControlType.Color,title:\"Color\",defaultValue:\"transparent\"},padding:{type:ControlType.FusedNumber,title:\"Padding\",defaultValue:4,toggleKey:\"paddingPerSide\",toggleTitles:[\"All\",\"Sides\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},radius:{type:ControlType.FusedNumber,title:\"Radius\",defaultValue:4,toggleKey:\"radiusPerCorner\",toggleTitles:[\"All\",\"Corners\"],valueKeys:[\"radiusTopLeft\",\"radiusTopRight\",\"radiusBottomRight\",\"radiusBottomLeft\"],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"],min:0},border:{type:ControlType.Object,title:\"Border\",controls:{color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#EBEBEB\"},width:{type:ControlType.FusedNumber,title:\"Width\",toggleKey:\"isMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"top\",\"right\",\"bottom\",\"left\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,defaultValue:1},style:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"}}}},hidden:props=>!props.show}}},// Clear Button Group\nclear:{type:ControlType.Object,title:\"Clear\",controls:{show:{type:ControlType.Boolean,title:\"Show\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},isText:{type:ControlType.Boolean,title:\"Type\",defaultValue:false,enabledTitle:\"Text\",disabledTitle:\"Icon\",hidden:props=>!props.show},// Text properties\ncontent:{type:ControlType.String,title:\"Text\",defaultValue:\"Clear\",hidden:props=>!props.show||!props.isText},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",hidden:props=>!props.show||!props.isText},transform:{type:ControlType.Enum,title:\"Transform\",options:[\"None\",\"Uppercase\",\"Lowercase\",\"Capitalize\"],defaultValue:\"None\",hidden:props=>!props.show||!props.isText},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#999999\",hidden:props=>!props.show||!props.isText},// Icon properties for clear\niconIsCustom:{type:ControlType.Boolean,title:\"Icon\",defaultValue:false,enabledTitle:\"Default\",disabledTitle:\"Custom\",hidden:props=>!props.show||props.isText},iconWeight:{type:ControlType.Number,title:\"Weight\",defaultValue:1.5,min:.5,max:5,step:.5,unit:\"px\",hidden:props=>!props.show||props.isText||!props.iconIsCustom},iconSize:{type:ControlType.Number,title:\"Size\",defaultValue:12,min:8,max:48,step:4,unit:\"px\",hidden:props=>!props.show||props.isText},iconCustom:{type:ControlType.Image,title:\"Image\",hidden:props=>!props.show||props.isText||props.clear.iconIsCustom},iconColor:{type:ControlType.Color,title:\"Color\",defaultValue:\"#999999\",hidden:props=>!props.show||props.isText||props.clear.iconIsCustom},// Background properties\nbackground:{type:ControlType.Color,title:\"Background\",defaultValue:\"#F7F7F7\",hidden:props=>!props.show},padding:{type:ControlType.FusedNumber,title:\"Padding\",defaultValue:4,toggleKey:\"paddingPerSide\",toggleTitles:[\"All\",\"Sides\"],valueKeys:[\"paddingTop\",\"paddingRight\",\"paddingBottom\",\"paddingLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0,hidden:props=>!props.show},radius:{type:ControlType.FusedNumber,title:\"Radius\",defaultValue:24,toggleKey:\"radiusPerCorner\",toggleTitles:[\"All\",\"Corners\"],valueKeys:[\"radiusTopLeft\",\"radiusTopRight\",\"radiusBottomRight\",\"radiusBottomLeft\"],valueLabels:[\"TL\",\"TR\",\"BR\",\"BL\"],min:0,hidden:props=>!props.show},border:{type:ControlType.Object,title:\"Border\",controls:{color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"},width:{type:ControlType.Number,title:\"Width\",defaultValue:0,min:0,step:1,unit:\"px\"},style:{type:ControlType.Enum,title:\"Style\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"],defaultValue:\"solid\"}},hidden:props=>!props.show}}},// Behavior Group\nbehavior:{type:ControlType.Object,title:\"Behavior\",controls:{realTime:{type:ControlType.Boolean,title:\"Real Time\",description:\"Update results in real time\",defaultValue:true,enabledTitle:\"Yes\",disabledTitle:\"No\"},debounceDelay:{type:ControlType.Number,title:\"Delay\",description:\"Milliseconds before search is triggered after typing\",defaultValue:300,min:0,max:2e3,step:50,hidden:props=>!props.realTime},page:{type:ControlType.Boolean,title:\"Page\",description:\"Pressing Enter will navigate to a dedicated Search page with results\",defaultValue:false,enabledTitle:\"Yes\",disabledTitle:\"No\"},slug:{type:ControlType.String,title:\"Slug\",description:\"The slug of your dedicated Search page\",defaultValue:\"search\",placeholder:\"search\",hidden:props=>!props.page}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_CatalogSearch\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_CatalogSearch.map","// Generated by Framer (fdc01c0)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;Karla-regular\",\"GF;Karla-700\",\"GF;Karla-700italic\",\"GF;Karla-italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Karla\",source:\"google\",style:\"normal\",uiFamilyName:\"Karla\",url:\"https://fonts.gstatic.com/s/karla/v33/qkBIXvYC6trAT55ZBi1ueQVIjQTD-JqqEUNLR7fHGw.woff2\",weight:\"400\"},{cssFamilyName:\"Karla\",source:\"google\",style:\"normal\",uiFamilyName:\"Karla\",url:\"https://fonts.gstatic.com/s/karla/v33/qkBIXvYC6trAT55ZBi1ueQVIjQTDH52qEUNLR7fHGw.woff2\",weight:\"700\"},{cssFamilyName:\"Karla\",source:\"google\",style:\"italic\",uiFamilyName:\"Karla\",url:\"https://fonts.gstatic.com/s/karla/v33/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNmlUElKZbLXGxGR.woff2\",weight:\"700\"},{cssFamilyName:\"Karla\",source:\"google\",style:\"italic\",uiFamilyName:\"Karla\",url:\"https://fonts.gstatic.com/s/karla/v33/qkBKXvYC6trAT7RQNNK2EG7SIwPWMNlCV0lKZbLXGxGR.woff2\",weight:\"400\"}]}];export const css=['.framer-nvYWe .framer-styles-preset-17rcbkq:not(.rich-text-wrapper), .framer-nvYWe .framer-styles-preset-17rcbkq.rich-text-wrapper p { --framer-font-family: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-bold: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-italic: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 16px; --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: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0.05em; --framer-line-height: 100%; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #fefef3; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: uppercase; }','@media (max-width: 1199px) and (min-width: 0px) { .framer-nvYWe .framer-styles-preset-17rcbkq:not(.rich-text-wrapper), .framer-nvYWe .framer-styles-preset-17rcbkq.rich-text-wrapper p { --framer-font-family: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-bold: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-family-italic: \"Karla\", \"Karla Placeholder\", sans-serif; --framer-font-open-type-features: normal; --framer-font-size: 14px; --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: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0.05em; --framer-line-height: 100%; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: #fefef3; --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: uppercase; } }'];export const className=\"framer-nvYWe\";\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 (c9c30df)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,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*as sharedStyle from\"https://framerusercontent.com/modules/CHazPZammUoDvAHO8YqN/BJOLBDJgTB1Xevxjlcvr/NVKW3NQdR.js\";const enabledGestures={BiKWAFiYX:{hover:true},bPjoePkTM:{hover:true}};const cycleOrder=[\"BiKWAFiYX\",\"bPjoePkTM\"];const serializationHash=\"framer-ZX3SR\";const variantClassNames={BiKWAFiYX:\"framer-v-zdkank\",bPjoePkTM:\"framer-v-qwps2a\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const oclFJpe7X=undefined;const godEKIzzu=undefined;const xzIv8B1mZ=undefined;const X3qkNh6j9=undefined;const Hb7UEe0wJ=undefined;const G1RqyPPl_=undefined;const transition1={delay:0,duration:.4,ease:[.4,0,.2,1],type:\"tween\"};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={Black:\"BiKWAFiYX\",White:\"bPjoePkTM\"};const Variants=motion.create(React.Fragment);const getProps=({buttonText,click,height,hover,id,link,newTab,smoothScroll,width,...props})=>{return{...props,G1RqyPPl_:buttonText??props.G1RqyPPl_??\"Label\",godEKIzzu:hover??props.godEKIzzu,Hb7UEe0wJ:smoothScroll??props.Hb7UEe0wJ??true,oclFJpe7X:click??props.oclFJpe7X,variant:humanReadableVariantMap[props.variant]??props.variant??\"BiKWAFiYX\",X3qkNh6j9:newTab??props.X3qkNh6j9??true,xzIv8B1mZ:link??props.xzIv8B1mZ};};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,G1RqyPPl_,X3qkNh6j9,Hb7UEe0wJ,xzIv8B1mZ,godEKIzzu,oclFJpe7X,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"BiKWAFiYX\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTaprlaoy1=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(oclFJpe7X){const res=await oclFJpe7X(...args);if(res===false)return false;}});const onMouseEnter1hgdxuv=activeVariantCallback(async(...args)=>{setGestureState({isHovered:true});if(godEKIzzu){const res=await godEKIzzu(...args);if(res===false)return false;}});const sharedStyleClassNames=[sharedStyle.className];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(Link,{href:xzIv8B1mZ,motionChild:true,nodeId:\"BiKWAFiYX\",openInNewTab:X3qkNh6j9,scopeId:\"nO4xU874z\",smoothScroll:Hb7UEe0wJ,children:/*#__PURE__*/_jsx(motion.a,{...restProps,...gestureHandlers,className:`${cx(scopingClassNames,\"framer-zdkank\",className,classNames)} framer-rj65uh`,\"data-framer-name\":\"Black\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"BiKWAFiYX\",onMouseEnter:onMouseEnter1hgdxuv,onTap:onTaprlaoy1,ref:refBinding,style:{...style},...addPropertyOverrides({\"BiKWAFiYX-hover\":{\"data-framer-name\":undefined},\"bPjoePkTM-hover\":{\"data-framer-name\":undefined},bPjoePkTM:{\"data-framer-name\":\"White\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-14jbkfh\",\"data-styles-preset\":\"NVKW3NQdR\",dir:\"auto\",children:\"Label\"})}),className:\"framer-1hc8yrl\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"vUFUlIy28\",style:{\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},text:G1RqyPPl_,variants:{\"BiKWAFiYX-hover\":{\"--extracted-r6o4lv\":\"var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.6))\"},\"bPjoePkTM-hover\":{\"--extracted-r6o4lv\":\"var(--token-b7251b6b-256b-4df0-bef3-bccb77d204fd, rgba(255, 255, 255, 0.6))\"},bPjoePkTM:{\"--extracted-r6o4lv\":\"var(--token-5d7827db-2504-44e9-9d0e-b4057d91463b, rgb(255, 255, 255))\"}},verticalAlignment:\"top\",withExternalLayout:true,...addPropertyOverrides({\"BiKWAFiYX-hover\":{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-14jbkfh\",\"data-styles-preset\":\"NVKW3NQdR\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.6)))\"},children:\"Label\"})})},\"bPjoePkTM-hover\":{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-14jbkfh\",\"data-styles-preset\":\"NVKW3NQdR\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-b7251b6b-256b-4df0-bef3-bccb77d204fd, rgba(255, 255, 255, 0.6)))\"},children:\"Label\"})})},bPjoePkTM:{children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-14jbkfh\",\"data-styles-preset\":\"NVKW3NQdR\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-5d7827db-2504-44e9-9d0e-b4057d91463b, rgb(255, 255, 255)))\"},children:\"Label\"})})}},baseVariant,gestureVariant)})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-ZX3SR.framer-rj65uh, .framer-ZX3SR .framer-rj65uh { display: block; }\",\".framer-ZX3SR.framer-zdkank { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 6px; height: min-content; justify-content: center; padding: 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-ZX3SR .framer-1hc8yrl { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 28\n * @framerIntrinsicWidth 44\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]},\"bPjoePkTM\":{\"layout\":[\"auto\",\"auto\"]},\"M0MdLTWb1\":{\"layout\":[\"auto\",\"auto\"]},\"reMia4oQ2\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"G1RqyPPl_\":\"buttonText\",\"X3qkNh6j9\":\"newTab\",\"Hb7UEe0wJ\":\"smoothScroll\",\"xzIv8B1mZ\":\"link\",\"godEKIzzu\":\"hover\",\"oclFJpe7X\":\"click\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramernO4xU874z=withCSS(Component,css,\"framer-ZX3SR\");export default FramernO4xU874z;FramernO4xU874z.displayName=\"Link\";FramernO4xU874z.defaultProps={height:28,width:44};addPropertyControls(FramernO4xU874z,{variant:{options:[\"BiKWAFiYX\",\"bPjoePkTM\"],optionTitles:[\"Black\",\"White\"],title:\"Variant\",type:ControlType.Enum},G1RqyPPl_:{defaultValue:\"Label\",displayTextArea:false,title:\"Button Text\",type:ControlType.String},onG1RqyPPl_Change:{changes:\"G1RqyPPl_\",type:ControlType.ChangeHandler},X3qkNh6j9:{defaultValue:true,title:\"New Tab\",type:ControlType.Boolean},onX3qkNh6j9Change:{changes:\"X3qkNh6j9\",type:ControlType.ChangeHandler},Hb7UEe0wJ:{defaultValue:true,title:\"Smooth Scroll\",type:ControlType.Boolean},onHb7UEe0wJChange:{changes:\"Hb7UEe0wJ\",type:ControlType.ChangeHandler},xzIv8B1mZ:{title:\"Link\",type:ControlType.Link},godEKIzzu:{title:\"Hover\",type:ControlType.EventHandler},oclFJpe7X:{title:\"Click\",type:ControlType.EventHandler}});addFonts(FramernO4xU874z,[{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\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramernO4xU874z\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerVariables\":\"{\\\"G1RqyPPl_\\\":\\\"buttonText\\\",\\\"X3qkNh6j9\\\":\\\"newTab\\\",\\\"Hb7UEe0wJ\\\":\\\"smoothScroll\\\",\\\"xzIv8B1mZ\\\":\\\"link\\\",\\\"godEKIzzu\\\":\\\"hover\\\",\\\"oclFJpe7X\\\":\\\"click\\\"}\",\"framerColorSyntax\":\"true\",\"framerIntrinsicWidth\":\"44\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"bPjoePkTM\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"M0MdLTWb1\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]},\\\"reMia4oQ2\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicHeight\":\"28\",\"framerImmutableVariables\":\"true\",\"framerDisplayContentsDiv\":\"false\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./nO4xU874z.map","// Generated by Framer (c9c30df)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ChildrenCanSuspend,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,getFontsFromSharedStyle,Image as Image1,Link as Link1,PathVariablesContext,queryCache,RichText,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useQueryData,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import FC_CatalogDisplay from\"https://framerusercontent.com/modules/Hk0F8C2ru2KtdcLr7KmL/Jzt46Dzat7FCQw1EB5SS/FC_CatalogDisplay.js\";import FC_CatalogSearch from\"https://framerusercontent.com/modules/tlSE71XX3CzjVeSC2JLA/kOlsgfY0y3dukSLwtLP4/FC_CatalogSearch.js\";import DetailProduct from\"https://framerusercontent.com/modules/UcPLsekSa4gBbx71LAU1/eCgoQOHi2U9ENUPPCFWt/h2LsD5Qf9.js\";import*as sharedStyle from\"https://framerusercontent.com/modules/tNT43S1SABfHrInLMOAz/JiHkSv3tZwdwj6v3NAmV/MN9bfryWr.js\";import Link from\"https://framerusercontent.com/modules/DyneXjU4nJPu7RafnfKF/kugejanue9HQ3seHCzm9/nO4xU874z.js\";const FC_CatalogSearchFonts=getFonts(FC_CatalogSearch);const LinkFonts=getFonts(Link);const FC_CatalogDisplayFonts=getFonts(FC_CatalogDisplay);const serializationHash=\"framer-Ovmbp\";const variantClassNames={J2U2EzP9L:\"framer-v-9l6h1m\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const aKMI4kVK7=undefined;const gPjUPZE7P=undefined;const d3bLhuaeSDcMacieeX=undefined;const M9qOk4i1kDcMacieeX=undefined;const Su3wgsAieDcMacieeX=undefined;const idDcMacieeX=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const toResponsiveImage=value=>{if(typeof value===\"object\"&&value!==null&&typeof value.src===\"string\"){return value;}return typeof value===\"string\"?{src:value}:undefined;};const query=prequery=>prequery({from:{alias:\"DcMacieeX\",data:DetailProduct,type:\"Collection\"},limit:{type:\"LiteralValue\",value:10},select:[{collection:\"DcMacieeX\",name:\"d3bLhuaeS\",type:\"Identifier\"},{collection:\"DcMacieeX\",name:\"M9qOk4i1k\",type:\"Identifier\"},{collection:\"DcMacieeX\",name:\"Su3wgsAie\",type:\"Identifier\"},{collection:\"DcMacieeX\",name:\"id\",type:\"Identifier\"}]});const query1=()=>({from:{alias:\"DcMacieeX\",data:DetailProduct,type:\"Collection\"},limit:{type:\"LiteralValue\",value:10},select:[{collection:\"DcMacieeX\",name:\"d3bLhuaeS\",type:\"Identifier\"},{collection:\"DcMacieeX\",name:\"M9qOk4i1k\",type:\"Identifier\"},{collection:\"DcMacieeX\",name:\"Su3wgsAie\",type:\"Identifier\"},{collection:\"DcMacieeX\",name:\"id\",type:\"Identifier\"}]});const QueryData=({query,pageSize,children})=>{const data=useQueryData(query);return children(data);};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 getProps=({click,closeSearch,height,id,width,...props})=>{return{...props,aKMI4kVK7:click??props.aKMI4kVK7,gPjUPZE7P:closeSearch??props.gPjUPZE7P};};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,aKMI4kVK7,gPjUPZE7P,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"J2U2EzP9L\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap75aez4=activeVariantCallback(async(...args)=>{setGestureState({isPressed:false});if(aKMI4kVK7){const res=await aKMI4kVK7(...args);if(res===false)return false;}});const oclFJpe7X1stkaij=activeVariantCallback(async(...args)=>{if(gPjUPZE7P){const res=await gPjUPZE7P(...args);if(res===false)return false;}});const onTap1stkaij=activeVariantCallback(async(...args)=>{if(gPjUPZE7P){const res=await gPjUPZE7P(...args);if(res===false)return false;}});const sharedStyleClassNames=[sharedStyle.className];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-9l6h1m\",className,classNames),\"data-framer-name\":\"Variant 1\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"J2U2EzP9L\",onTap:onTap75aez4,ref:refBinding,style:{...style},children:/*#__PURE__*/_jsxs(motion.div,{className:\"framer-7y8zee\",\"data-framer-name\":\"Wrapper\",layoutDependency:layoutDependency,layoutId:\"LNsLvaNBS\",style:{backgroundColor:\"var(--token-5d7827db-2504-44e9-9d0e-b4057d91463b, rgb(255, 255, 255))\"},children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-avv1qw\",\"data-framer-name\":\"Top\",layoutDependency:layoutDependency,layoutId:\"gRff9nBI1\",style:{backgroundColor:\"var(--token-5d7827db-2504-44e9-9d0e-b4057d91463b, rgb(255, 255, 255))\"},children:[/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-xkygi9-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"LdYAV6glf-container\",nodeId:\"LdYAV6glf\",rendersWithMotion:true,scopeId:\"mmRk1aCFk\",children:/*#__PURE__*/_jsx(FC_CatalogSearch,{behavior:{debounceDelay:300,page:false,realTime:true,slug:\"search\"},clear:{background:\"var(--token-08c0a1b2-6453-4e0b-b1db-f0593e85b925, rgb(245, 245, 245))\",border:{color:\"rgb(0, 0, 0)\",style:\"solid\",width:0},color:\"rgb(153, 153, 153)\",content:\"Clear\",font:{},iconColor:\"var(--token-f87ea788-5cdc-4aac-9d76-b9ca5ca31f6c, rgb(3, 6, 7))\",iconIsCustom:true,iconSize:16,iconWeight:2,isText:false,padding:6,paddingBottom:6,paddingLeft:6,paddingPerSide:false,paddingRight:6,paddingTop:6,radius:80,radiusBottomLeft:80,radiusBottomRight:80,radiusPerCorner:false,radiusTopLeft:80,radiusTopRight:80,show:true,transform:\"None\"},height:\"100%\",id:\"LdYAV6glf\",layoutId:\"LdYAV6glf\",searchIcon:{background:{border:{bottom:1,color:\"var(--token-f87ea788-5cdc-4aac-9d76-b9ca5ca31f6c, rgb(3, 6, 7))\",isMixed:false,left:1,right:1,style:\"solid\",top:1,width:1},color:\"rgba(0, 0, 0, 0)\",padding:0,paddingBottom:2,paddingLeft:0,paddingPerSide:true,paddingRight:0,paddingTop:0,radius:0,radiusBottomLeft:0,radiusBottomRight:0,radiusPerCorner:false,radiusTopLeft:0,radiusTopRight:0},color:\"var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.6))\",isCustom:false,show:true,size:20,weight:1.5},style:{width:\"100%\"},styles:{background:{border:{bottom:1,color:\"rgba(33, 26, 26, 0.06)\",isMixed:true,left:0,right:0,style:\"solid\",top:0,width:1},color:\"rgb(255, 255, 255)\",focusBackground:\"rgb(255, 255, 255)\",focusBorder:{bottom:1,color:\"rgb(0, 0, 0)\",isMixed:true,left:0,right:0,style:\"solid\",top:0,width:1},hoverBackground:\"rgb(255, 255, 255)\",hoverBorder:{bottom:1,color:\"rgb(140, 140, 140)\",isMixed:true,left:0,right:0,style:\"solid\",top:0,width:1}},borderRadius:0,gap:8,padding:16,paddingBottom:16,paddingLeft:0,paddingPerSide:true,paddingRight:0,paddingTop:16,radiusBottomLeft:0,radiusBottomRight:0,radiusPerCorner:false,radiusTopLeft:0,radiusTopRight:0},text:{color:\"var(--token-f87ea788-5cdc-4aac-9d76-b9ca5ca31f6c, rgb(3, 6, 7))\",font:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontSize:\"18px\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"-0.03em\",lineHeight:\"110%\"},placeholder:\"Search...\",placeholderColor:\"var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.6))\"},width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:28,y:(componentViewport?.y||0)+0+(((componentViewport?.height||880)-0-(Math.max(0,((componentViewport?.height||880)-0-0)/1)*1+0))/2+0+0)+0+0+90,children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1on9yyl-container\",layoutDependency:layoutDependency,layoutId:\"ey5Y7hUhx-container\",nodeId:\"ey5Y7hUhx\",rendersWithMotion:true,scopeId:\"mmRk1aCFk\",children:/*#__PURE__*/_jsx(Link,{G1RqyPPl_:\"Close\",Hb7UEe0wJ:true,height:\"100%\",id:\"ey5Y7hUhx\",layoutId:\"ey5Y7hUhx\",oclFJpe7X:oclFJpe7X1stkaij,variant:matchVariant(\"BiKWAFiYX\"),width:\"100%\",X3qkNh6j9:true})})})]}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1n2au9z\",\"data-framer-name\":\"Items\",layoutDependency:layoutDependency,layoutId:\"h0_MrNydQ\",children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-j88wup-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"XQ7WremQT-container\",nodeId:\"XQ7WremQT\",rendersWithMotion:true,scopeId:\"mmRk1aCFk\",children:/*#__PURE__*/_jsx(FC_CatalogDisplay,{Collection:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-2m801k\",layoutDependency:layoutDependency,layoutId:\"DcMacieeX\",children:/*#__PURE__*/_jsx(ChildrenCanSuspend,{children:/*#__PURE__*/_jsx(QueryData,{query:query1(),children:(collection,paginationInfo,loadMore)=>{return /*#__PURE__*/_jsx(_Fragment,{children:collection?.map(({d3bLhuaeS:d3bLhuaeSDcMacieeX,id:idDcMacieeX,M9qOk4i1k:M9qOk4i1kDcMacieeX,Su3wgsAie:Su3wgsAieDcMacieeX},index)=>{d3bLhuaeSDcMacieeX??=\"\";Su3wgsAieDcMacieeX??=\"\";return /*#__PURE__*/_jsx(LayoutGroup,{id:`DcMacieeX-${idDcMacieeX}`,children:/*#__PURE__*/_jsx(PathVariablesContext.Provider,{value:{d3bLhuaeS:d3bLhuaeSDcMacieeX},children:/*#__PURE__*/_jsx(Link1,{href:{pathVariables:{d3bLhuaeS:d3bLhuaeSDcMacieeX},webPageId:\"NcekhhZjB\"},motionChild:true,nodeId:\"iJpSI1Ewd\",scopeId:\"mmRk1aCFk\",children:/*#__PURE__*/_jsxs(motion.a,{className:\"framer-6bm031 framer-5mk8fl\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"iJpSI1Ewd\",onTap:onTap1stkaij,children:[/*#__PURE__*/_jsx(Image1,{background:{alt:\"\",fit:\"fill\",sizes:\"40px\",...toResponsiveImage(M9qOk4i1kDcMacieeX)},className:\"framer-fvfv0e\",layoutDependency:layoutDependency,layoutId:\"zO_wXif9V\"}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{className:\"framer-styles-preset-17rcbkq\",\"data-styles-preset\":\"MN9bfryWr\",dir:\"auto\",style:{\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-3db24570-ef16-40e3-8d94-de55aa37b6f2, rgb(92, 92, 78)))\"},children:\"Seraphine Twist Ring\"})}),className:\"framer-ysuknn\",\"data-framer-name\":\"Title\",fonts:[\"Inter\"],layoutDependency:layoutDependency,layoutId:\"P5Ve0PZuh\",style:{\"--extracted-r6o4lv\":\"var(--token-3db24570-ef16-40e3-8d94-de55aa37b6f2, rgb(92, 92, 78))\"},text:Su3wgsAieDcMacieeX,verticalAlignment:\"top\",withExternalLayout:true})]})})})},idDcMacieeX);})});}})})})],CustomInitialState:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1g5762s\",\"data-framer-name\":\"None\",layoutDependency:layoutDependency,layoutId:\"nezwz2juP\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"R0Y7SW5zdHJ1bWVudCBTYW5zLXJlZ3VsYXI=\",\"--framer-font-family\":'\"Instrument Sans\", \"Instrument Sans Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'ss01' on, 'ss02' on, 'ss03' on, 'ss04' on\",\"--framer-font-size\":\"14px\",\"--framer-line-height\":\"110%\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.59)))\"},children:\"There is no results\"})}),className:\"framer-16ocium\",fonts:[\"GF;Instrument Sans-regular\"],layoutDependency:layoutDependency,layoutId:\"LEb1wTN1U\",style:{\"--extracted-r6o4lv\":\"var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.59))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})})],defaultSort:\"relevance\",display:\"All\",displayMode:\"Desktop\",EmptyState:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1g5762s\",\"data-framer-name\":\"None\",layoutDependency:layoutDependency,layoutId:\"nezwz2juP\",children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"R0Y7SW5zdHJ1bWVudCBTYW5zLXJlZ3VsYXI=\",\"--framer-font-family\":'\"Instrument Sans\", \"Instrument Sans Placeholder\", sans-serif',\"--framer-font-open-type-features\":\"'ss01' on, 'ss02' on, 'ss03' on, 'ss04' on\",\"--framer-font-size\":\"14px\",\"--framer-line-height\":\"110%\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.59)))\"},children:\"There is no results\"})}),className:\"framer-16ocium\",fonts:[\"GF;Instrument Sans-regular\"],layoutDependency:layoutDependency,layoutId:\"LEb1wTN1U\",style:{\"--extracted-r6o4lv\":\"var(--token-c48d383f-9060-4848-866e-a44cd05720a2, rgba(3, 6, 7, 0.59))\",\"--framer-link-text-color\":\"rgb(0, 153, 255)\",\"--framer-link-text-decoration\":\"underline\"},verticalAlignment:\"top\",withExternalLayout:true})})],EmptyStatePhone:[],height:\"100%\",id:\"XQ7WremQT\",layoutId:\"XQ7WremQT\",Metafields:{include:false},pageType:\"default\",Pagination:{enable:false,items:12,type:\"load_more\"},phoneInstance:[],Search:{enableSearch:true,initialSearchState:\"none\",Scope:{collection:true,productTag:true,productType:true,title:true,variants:true,vendor:true}},style:{width:\"100%\"},value:\"\",width:\"100%\"})})})})]})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-Ovmbp.framer-5mk8fl, .framer-Ovmbp .framer-5mk8fl { display: block; }\",\".framer-Ovmbp.framer-9l6h1m { align-content: flex-end; align-items: flex-end; cursor: pointer; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 28px; height: 880px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 800px; }\",\".framer-Ovmbp .framer-7y8zee { align-content: center; align-items: center; display: flex; flex: 1 0 0px; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: 1px; justify-content: flex-start; overflow: hidden; padding: 0px; position: relative; width: 100%; }\",\".framer-Ovmbp .framer-avv1qw { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: visible; padding: 4px 20px 0px 20px; position: relative; width: 100%; }\",\".framer-Ovmbp .framer-xkygi9-container, .framer-Ovmbp .framer-j88wup-container { flex: 1 0 0px; height: auto; position: relative; width: 1px; }\",\".framer-Ovmbp .framer-1on9yyl-container { flex: none; height: auto; position: relative; width: auto; }\",\".framer-Ovmbp .framer-1n2au9z { align-content: flex-start; align-items: flex-start; display: flex; flex: 1 0 0px; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: 1px; justify-content: flex-start; overflow: auto; padding: 40px 20px 0px 20px; position: relative; width: 100%; }\",\".framer-Ovmbp .framer-2m801k { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 20px; height: min-content; justify-content: center; padding: 0px; position: relative; width: min-content; }\",\".framer-Ovmbp .framer-6bm031 { align-content: center; align-items: center; cursor: pointer; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: flex-start; padding: 0px; position: relative; text-decoration: none; width: min-content; }\",\".framer-Ovmbp .framer-fvfv0e { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 30px); position: relative; width: 40px; }\",\".framer-Ovmbp .framer-ysuknn, .framer-Ovmbp .framer-16ocium { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-Ovmbp .framer-1g5762s { align-content: flex-start; align-items: flex-start; display: flex; flex-direction: column; flex-wrap: nowrap; gap: 12px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: min-content; }\",...sharedStyle.css];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 880\n * @framerIntrinsicWidth 800\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"aKMI4kVK7\":\"click\",\"gPjUPZE7P\":\"closeSearch\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramermmRk1aCFk=withCSS(Component,css,\"framer-Ovmbp\");export default FramermmRk1aCFk;FramermmRk1aCFk.displayName=\"Search\";FramermmRk1aCFk.defaultProps={height:880,width:800};addPropertyControls(FramermmRk1aCFk,{aKMI4kVK7:{title:\"Click\",type:ControlType.EventHandler},gPjUPZE7P:{title:\"Close Search\",type:ControlType.EventHandler}});addFonts(FramermmRk1aCFk,[{explicitInter:true,fonts:[{cssFamilyName:\"Karla\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Karla\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/WYQR63HYLSFXANVDXEVDIUCR5ZA4BMBT/BHK7NVIOUFBRSAWSZITEB3JNGWKZPMNF/GQPINB4H2DFPHIUPYCAOCNG2YFF6OWN5.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/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:\"Instrument Sans\",openType:true,source:\"google\",style:\"normal\",uiFamilyName:\"Instrument Sans\",url:\"https://fonts.gstatic.com/s/instrumentsans/v4/pximypc9vsFDm051Uf6KVwgkfoSxQ0GsQv8ToedPibnr-yp2JGEJOH9npSTF-QfwmS0v3_7Y.woff2\",weight:\"400\"}]},...FC_CatalogSearchFonts,...LinkFonts,...FC_CatalogDisplayFonts,...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});FramermmRk1aCFk.loader={load:(props,context)=>{const locale=context.locale;const queryCacheEntry=queryCache.get(query1(),locale);return Promise.allSettled([queryCacheEntry.preload(),forwardLoader(Link,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramermmRk1aCFk\",\"slots\":[],\"annotations\":{\"framerImmutableVariables\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerContractVersion\":\"1\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerColorSyntax\":\"true\",\"framerVariables\":\"{\\\"aKMI4kVK7\\\":\\\"click\\\",\\\"gPjUPZE7P\\\":\\\"closeSearch\\\"}\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicHeight\":\"880\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicWidth\":\"800\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./mmRk1aCFk.map","// Generated by Framer (6ca5d98)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0 7.5 C 0 3.358 3.358 0 7.5 0 C 11.642 0 15 3.358 15 7.5 C 15 11.642 11.642 15 7.5 15 C 3.358 15 0 11.642 0 7.5 Z\" fill-opacity=\"var(--1m6trwb, 0)\" fill=\"var(--21h8s6, rgb(0, 0, 0))\" height=\"15px\" id=\"i5oDhfGPs\" transform=\"translate(3 3)\" width=\"15px\"/><path d=\"M 0 7.5 C 0 3.358 3.358 0 7.5 0 C 11.642 0 15 3.358 15 7.5 C 15 11.642 11.642 15 7.5 15 C 3.358 15 0 11.642 0 7.5 Z\" fill=\"transparent\" height=\"15px\" id=\"g08Nvj3MZ\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(3 3)\" width=\"15px\"/><path d=\"M 0 0 L 5.197 5.197\" fill=\"transparent\" height=\"5.196562499999999px\" id=\"NQvjzSBYl\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(15.803 15.803)\" width=\"5.196562499999999px\"/></svg>';const getProps=({alpha,color,height,id,width,width1,...props})=>{return{...props,ezTt3ayMo:color??props.ezTt3ayMo??\"rgb(0, 0, 0)\",lschgej4H:width1??props.lschgej4H??1.5,qxTvv_EBh:alpha??props.qxTvv_EBh};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,ezTt3ayMo,lschgej4H,qxTvv_EBh,...restProps}=getProps(props);const href=useSVGTemplate(\"3899066744\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-In32S\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1m6trwb\":qxTvv_EBh,\"--21h8s6\":ezTt3ayMo,\"--pgex8v\":lschgej4H,...style},viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-In32S { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"ezTt3ayMo\":\"color\",\"lschgej4H\":\"width1\",\"qxTvv_EBh\":\"alpha\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Magnifying Glass\",\"color\":{\"type\":\"variable\",\"value\":\"21h8s6\"},\"set\":{\"localId\":\"vectorSet/NGVKdicsm\",\"id\":\"NGVKdicsm\",\"moduleId\":\"omX0gWFPqDwhaiWwf6ab\"}}\n * @framerDisableUnlink true\n */const Icon=withCSS(Component,css,\"framer-In32S\");Icon.displayName=\"Magnifying Glass\";export default Icon;addPropertyControls(Icon,{ezTt3ayMo:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Color\",type:ControlType.Color},lschgej4H:{defaultValue:1.5,displayStepper:true,hidden:false,max:6,min:0,step:.5,title:\"Width\",type:ControlType.Number},qxTvv_EBh:{defaultValue:0,displayStepper:true,hidden:false,max:1,min:0,step:.1,title:\"Alpha\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"24\",\"framerVariables\":\"{\\\"ezTt3ayMo\\\":\\\"color\\\",\\\"lschgej4H\\\":\\\"width1\\\",\\\"qxTvv_EBh\\\":\\\"alpha\\\"}\",\"framerImmutableVariables\":\"true\",\"framerDisableUnlink\":\"true\",\"framerIntrinsicHeight\":\"24\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerVector\":\"{\\\"name\\\":\\\"Magnifying Glass\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"21h8s6\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/NGVKdicsm\\\",\\\"id\\\":\\\"NGVKdicsm\\\",\\\"moduleId\\\":\\\"omX0gWFPqDwhaiWwf6ab\\\"}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (6ca5d98)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0 0 L 19.5 0 L 18.087 10.599 C 18.037 10.972 17.72 11.25 17.344 11.25 L 2.156 11.25 C 1.78 11.25 1.463 10.972 1.413 10.599 Z\" fill-opacity=\"var(--1m6trwb, 0)\" fill=\"var(--21h8s6, rgb(0, 0, 0))\" height=\"11.250000001709282px\" id=\"IfYMh8suP\" transform=\"translate(2.25 8.25)\" width=\"19.5px\"/><path d=\"M 0 0 L 0 5.25\" fill=\"transparent\" height=\"5.25px\" id=\"KqyRRitC_\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(12 11.25)\" width=\"1px\"/><path d=\"M 10.5 6 L 5.25 0 L 0 6\" fill=\"transparent\" height=\"6px\" id=\"t6GnWTUnN\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(6.75 2.25)\" width=\"10.5px\"/><path d=\"M 0.525 0 L 0 5.25\" fill=\"transparent\" height=\"5.25px\" id=\"FXeQ3aroo\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(16.425 11.25)\" width=\"1px\"/><path d=\"M 0 0 L 0.525 5.25\" fill=\"transparent\" height=\"5.25px\" id=\"rWzQnXGxP\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(7.05 11.25)\" width=\"1px\"/><path d=\"M 0 0 L 19.5 0 L 18.087 10.599 C 18.037 10.972 17.72 11.25 17.344 11.25 L 2.156 11.25 C 1.78 11.25 1.463 10.972 1.413 10.599 Z\" fill=\"transparent\" height=\"11.250000001709282px\" id=\"gfZWy625K\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--pgex8v, 1.5)\" stroke=\"var(--21h8s6, rgb(0, 0, 0))\" transform=\"translate(2.25 8.25)\" width=\"19.5px\"/></svg>';const getProps=({alpha,color,height,id,width,width1,...props})=>{return{...props,ezTt3ayMo:color??props.ezTt3ayMo??\"rgb(0, 0, 0)\",lschgej4H:width1??props.lschgej4H??1.5,qxTvv_EBh:alpha??props.qxTvv_EBh};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,ezTt3ayMo,lschgej4H,qxTvv_EBh,...restProps}=getProps(props);const href=useSVGTemplate(\"3154016545\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-u5zx7\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1m6trwb\":qxTvv_EBh,\"--21h8s6\":ezTt3ayMo,\"--pgex8v\":lschgej4H,...style},viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-u5zx7 { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"ezTt3ayMo\":\"color\",\"lschgej4H\":\"width1\",\"qxTvv_EBh\":\"alpha\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Basket\",\"color\":{\"type\":\"variable\",\"value\":\"21h8s6\"},\"set\":{\"localId\":\"vectorSet/NGVKdicsm\",\"id\":\"NGVKdicsm\",\"moduleId\":\"omX0gWFPqDwhaiWwf6ab\"}}\n * @framerDisableUnlink true\n */const Icon=withCSS(Component,css,\"framer-u5zx7\");Icon.displayName=\"Basket\";export default Icon;addPropertyControls(Icon,{ezTt3ayMo:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Color\",type:ControlType.Color},lschgej4H:{defaultValue:1.5,displayStepper:true,hidden:false,max:6,min:0,step:.5,title:\"Width\",type:ControlType.Number},qxTvv_EBh:{defaultValue:0,displayStepper:true,hidden:false,max:1,min:0,step:.1,title:\"Alpha\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"24\",\"framerVariables\":\"{\\\"ezTt3ayMo\\\":\\\"color\\\",\\\"lschgej4H\\\":\\\"width1\\\",\\\"qxTvv_EBh\\\":\\\"alpha\\\"}\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"24\",\"framerDisableUnlink\":\"true\",\"framerImmutableVariables\":\"true\",\"framerVector\":\"{\\\"name\\\":\\\"Basket\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"21h8s6\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/NGVKdicsm\\\",\\\"id\\\":\\\"NGVKdicsm\\\",\\\"moduleId\\\":\\\"omX0gWFPqDwhaiWwf6ab\\\"}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","/*\n * Framer Commerce\n * Confidential and Proprietary - All Rights Reserved\n * Unauthorized use, reproduction, distribution, or disclosure of this\n * source code or any related information is strictly prohibited.\n *\n * This software is the exclusive property of Framer Commerce (\"Company\").\n * It is considered highly confidential and proprietary information.\n *\n * Any use, copying, modification, distribution, or sharing of this software,\n * in whole or in part, without the express written permission of the Company\n * is strictly prohibited and may result in legal action.\n *\n * DISCLAIMER: This software does not provide any express or\n * implied warranties, including, but not limited to, the implied warranties\n * of merchantability and fitness for a particular purpose. In no event shall\n * Framer Commerce be liable for any direct, indirect, incidental, special,\n * exemplary, or consequential damages (including, but not limited to, procurement\n * of substitute goods or services; loss of use, data, or profits; or business\n * interruption) however caused and on any theory of liability, whether in\n * contract, strict liability, or tort (including negligence or otherwise)\n * arising in any way out of the use of this software, even if advised of\n * the possibility of such damage.\n *\n * Any unauthorized possession, use, copying, distribution, or dissemination\n * of this software will be considered a breach of confidentiality and may\n * result in legal action.\n *\n * For inquiries, contact:\n * Framer Commerce\n * Email: hello@framercommerce.com\n *\n * © 2025 Butter Supply Inc. All Rights Reserved.\n */import{jsx as _jsx}from\"react/jsx-runtime\";import{useCallback,useRef,useEffect,useState,cloneElement}from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{get}from\"lodash-es\";import{useIsBrowser}from\"https://framerusercontent.com/modules/ncBs5KPMI9I5GEta13fn/zGXDjuZapa1SGy6D8P5e/IsBrowser.js\";/**\n * @framerDisableUnlink\n *//**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicHeight Auto\n */export default function FC_CartTrigger(props){const{Component,EmptyComponent,emptyBehavior,triggerShopifyCartModal}=props;const isBrowser=useIsBrowser();const[cartItems,setCartItems]=useState([]);const isFetching=useRef(false);// Debug log in canvas\nif(RenderTarget.current()===RenderTarget.canvas){// console.log('FC_CartTrigger - Canvas Render', { Component, EmptyComponent })\n}// Fetch cart from Shopify\nconst fetchCartFromShopify=useCallback(async cartId=>{if(isFetching.current||!isBrowser)return;isFetching.current=true;try{// @ts-ignore - Shopify cart API\nconst cartData=await window?.shopXtools?.fetchCart?.(cartId);if(cartData){setCartItems(cartData.lines?.edges||[]);}else{setCartItems([]);}}catch(error){// Error handling: Failed to fetch cart\nsetCartItems([]);}finally{isFetching.current=false;}},[isBrowser]);// Handle cart updates\nconst handleCartUpdate=useCallback(async()=>{if(!isBrowser)return;let cartId;try{cartId=window?.shopXtools?.cart?.id;if(!cartId){cartId=localStorage.getItem(\"shopX_cart_id\");}}catch(error){// Error handling: Unable to access cart ID\nreturn;}if(cartId){await fetchCartFromShopify(cartId);}else{setCartItems([]);}},[fetchCartFromShopify,isBrowser]);// Add event listeners for cart updates\nuseEffect(()=>{if(!isBrowser)return;handleCartUpdate();window.addEventListener(\"shopXtools-cart-update\",handleCartUpdate);// Checkout event handler (from FC_CartOverlayTrigger)\nfunction handleCheckoutChange(e){if(e.detail&&get(e,\"detail.__triggerCartModal\")!==false&&typeof triggerShopifyCartModal===\"function\"){triggerShopifyCartModal();}}document.addEventListener(\"checkout__changed\",handleCheckoutChange);return()=>{window.removeEventListener(\"shopXtools-cart-update\",handleCartUpdate);document.removeEventListener(\"checkout__changed\",handleCheckoutChange);};},[handleCartUpdate,isBrowser,triggerShopifyCartModal]);// Handle click to trigger cart modal\nconst handleClick=()=>{if(isBrowser&&typeof triggerShopifyCartModal===\"function\"){// Fire view_cart analytics event\nif(typeof window.fcTrackGAEvent===\"function\"&&cartItems.length>0){const items=cartItems.map(({node})=>{const variant=node.merchandise;const product=variant.product||{};return{item_id:variant.id?.split(\"/\").pop()||\"\",item_name:product.title||\"\",item_variant:variant.title||\"\",price:parseFloat(variant.price?.amount||\"0\"),quantity:node.quantity,item_brand:product.vendor||null,item_category:product.productType||null,SKU:variant.id?.split(\"/\").pop()||\"\",\"Item Name\":product.title||\"\"};});// Calculate total value and get currency\nconst totalValue=items.reduce((sum,item)=>sum+item.price*item.quantity,0);const currency=cartItems[0]?.node?.merchandise?.price?.currencyCode||\"USD\";const payload={currency,value:totalValue,items};// console.log('[FC_CartTrigger ANALYTICS] About to fire view_cart with payload:', payload);\nwindow.fcTrackGAEvent(\"view_cart\",payload);}triggerShopifyCartModal();}};// Helper to create Connect Instance UI\nconst connectInstanceUI=(labelText=\"Connect Instance\")=>/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",color:\"#666\",fontSize:\"14px\"},children:labelText});// Determine what to render based on cart state and control props\nconst isEmpty=cartItems.length===0;let content=null;if(RenderTarget.current()===RenderTarget.canvas){// In canvas, always show the main component\ncontent=Component?.[0]||null;}else{// On client-side, determine what to show based on cart state and emptyBehavior\nif(isEmpty){switch(emptyBehavior){case\"None\":content=Component?.[0]||null;break;case\"Component\":content=EmptyComponent?.[0]||null;// If Empty Component is selected but not provided, show the connect instance message\nif(!content&&RenderTarget.current()===RenderTarget.canvas){return connectInstanceUI(\"Connect Empty State\");}break;case\"Hide\":return null;default:content=Component?.[0]||null;}}else{content=Component?.[0]||null;}}// Simple fallback if no content\nif(!content){return connectInstanceUI();}// In CartOverlayTrigger, we have a direct wrapper with onClick\n// We'll use the same approach here for consistency\nreturn /*#__PURE__*/_jsx(\"div\",{onClick:handleClick,style:{cursor:\"pointer\",display:\"block\",width:\"fit-content\",height:\"fit-content\"},children:/*#__PURE__*/cloneElement(content,{style:{// @ts-ignore - Safe access to props without TypeScript errors\n...content.props?.style||{}}})});}FC_CartTrigger.defaultProps={Component:null,EmptyComponent:null,emptyBehavior:\"None\",triggerShopifyCartModal:()=>{}};addPropertyControls(FC_CartTrigger,{Component:{type:ControlType.ComponentInstance,title:\"Default\",description:\"Design to render when there are items in the cart.\"},emptyBehavior:{type:ControlType.Enum,title:\"When Empty\",options:[\"None\",\"Component\",\"Hide\"],optionTitles:[\"Use Default\",\"Empty State\",\"Hide\"],displaySegmentedControl:true,segmentedControlDirection:\"vertical\",defaultValue:\"None\"},EmptyComponent:{type:ControlType.ComponentInstance,title:\"Empty State\",description:\"Design to render when cart is empty.\",hidden:props=>props.emptyBehavior!==\"Component\"},triggerShopifyCartModal:{type:ControlType.EventHandler,title:\"CartModal\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FC_CartTrigger\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerSupportedLayoutWidth\":\"any\",\"framerIntrinsicHeight\":\"Auto\",\"framerSupportedLayoutHeight\":\"any\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./FC_CartTrigger.map","// Generated by Framer (ca8ceca)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,getFonts,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import FC_CartCounter from\"https://framerusercontent.com/modules/4gxKhYDXhQYsHYSbypZW/CwQMBB6veGtRJ77hGsnc/FC_CartCounter.js\";import FC_CartTrigger from\"https://framerusercontent.com/modules/y6yUEEb8umnvGdCfPGqf/6lmsDvbDLBc9bRI2UZJD/FC_CartTrigger.js\";const FC_CartCounterFonts=getFonts(FC_CartCounter);const FC_CartTriggerFonts=getFonts(FC_CartTrigger);const serializationHash=\"framer-uSoz8\";const variantClassNames={YjQgsHma4:\"framer-v-8klcry\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const xyG0fDCYV=undefined;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 getProps=({cartEvent,height,id,width,...props})=>{return{...props,xyG0fDCYV:cartEvent??props.xyG0fDCYV};};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,xyG0fDCYV,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"YjQgsHma4\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const triggerShopifyCartModal111tscg=activeVariantCallback(async(...args)=>{if(xyG0fDCYV){const res=await xyG0fDCYV(...args);if(res===false)return false;}});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-8klcry\",className,classNames),\"data-framer-name\":\"Variant 1\",layoutDependency:layoutDependency,layoutId:\"YjQgsHma4\",ref:refBinding,style:{...style},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-lx47x5-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"FVTGqrwVh-container\",nodeId:\"FVTGqrwVh\",rendersWithMotion:true,scopeId:\"KBqsoYAH1\",children:/*#__PURE__*/_jsx(FC_CartTrigger,{Component:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-hg2sa8\",\"data-border\":true,\"data-framer-name\":\"Design\",layoutDependency:layoutDependency,layoutId:\"Q4na5BAuq\",style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"rgb(0, 0, 0)\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",borderBottomLeftRadius:80,borderBottomRightRadius:80,borderTopLeftRadius:80,borderTopRightRadius:80},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1cjev31-container\",inComponentSlot:true,isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"E0DFnHTSa-container\",nodeId:\"E0DFnHTSa\",rendersWithMotion:true,scopeId:\"KBqsoYAH1\",children:/*#__PURE__*/_jsx(FC_CartCounter,{backgroundColor:\"rgba(255, 255, 255, 0)\",border:{borderBottomWidth:0,borderColor:\"rgba(0, 0, 0, 0.5)\",borderLeftWidth:0,borderRightWidth:0,borderStyle:\"solid\",borderTopWidth:0},bottomLeft:0,bottomRight:0,color:\"rgb(0, 0, 0)\",font:{fontFamily:'\"Inter\", \"Inter Placeholder\", sans-serif',fontSize:\"16px\",fontStyle:\"normal\",fontWeight:400,letterSpacing:\"0em\",lineHeight:\"1em\"},height:\"100%\",hideIf0:false,id:\"E0DFnHTSa\",layoutId:\"E0DFnHTSa\",padding:0,paddingBottom:0,paddingLeft:0,paddingPerSide:false,paddingRight:0,paddingTop:0,radius:0,radiusPerCorner:false,topLeft:0,topRight:0,width:\"100%\"})})})})],emptyBehavior:\"None\",EmptyComponent:[],height:\"100%\",id:\"FVTGqrwVh\",layoutId:\"FVTGqrwVh\",style:{height:\"100%\",width:\"100%\"},triggerShopifyCartModal:triggerShopifyCartModal111tscg,width:\"100%\"})})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-uSoz8.framer-yik51b, .framer-uSoz8 .framer-yik51b { display: block; }\",\".framer-uSoz8.framer-8klcry { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; overflow: hidden; padding: 0px; position: relative; width: min-content; }\",\".framer-uSoz8 .framer-lx47x5-container { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 32px); position: relative; width: 32px; }\",\".framer-uSoz8 .framer-hg2sa8 { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 4px; height: 32px; justify-content: center; overflow: hidden; padding: 4px; position: relative; width: 32px; will-change: var(--framer-will-change-override, transform); }\",\".framer-uSoz8 .framer-1cjev31-container { flex: none; height: auto; position: relative; width: auto; }\",'.framer-uSoz8[data-border=\"true\"]::after, .framer-uSoz8 [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; corner-shape: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 32\n * @framerIntrinsicWidth 32\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"auto\",\"auto\"]}}}\n * @framerVariables {\"xyG0fDCYV\":\"cartEvent\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerKBqsoYAH1=withCSS(Component,css,\"framer-uSoz8\");export default FramerKBqsoYAH1;FramerKBqsoYAH1.displayName=\"FC Cart Trigger\";FramerKBqsoYAH1.defaultProps={height:32,width:32};addPropertyControls(FramerKBqsoYAH1,{xyG0fDCYV:{title:\"CartEvent\",type:ControlType.EventHandler}});addFonts(FramerKBqsoYAH1,[{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\"}]},...FC_CartCounterFonts,...FC_CartTriggerFonts],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerKBqsoYAH1\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisplayContentsDiv\":\"false\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"auto\\\",\\\"auto\\\"]}}}\",\"framerIntrinsicHeight\":\"32\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"32\",\"framerAutoSizeImages\":\"true\",\"framerVariables\":\"{\\\"xyG0fDCYV\\\":\\\"cartEvent\\\"}\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./KBqsoYAH1.map","// Generated by Framer (c9c30df)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ComponentViewportProvider,ControlType,cx,forwardLoader,getFonts,Link,ResolveLinks,RichText,SmartComponentScopedContainer,useActiveVariantCallback,useComponentViewport,useLocaleInfo,useRouter,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import FC_CartCounter from\"https://framerusercontent.com/modules/4gxKhYDXhQYsHYSbypZW/CwQMBB6veGtRJ77hGsnc/FC_CartCounter.js\";import MagnifyingGlass from\"https://framerusercontent.com/modules/78wJr0q4vFZTRbgiA8bC/Y2EfGRGz13i3kdwNCKGk/gU109MUNe.js\";import Basket from\"https://framerusercontent.com/modules/zlQedlx75OSE58IxDEdP/1582OQ5guWePVbagR1aF/r7WsnqDc4.js\";import NavigationNavLink from\"https://framerusercontent.com/modules/b76zwKp1zfjQPDMc2F7h/Qd6IlKB4vwFxNqcwnnGO/joZsQScIP.js\";import FCCartTrigger from\"https://framerusercontent.com/modules/LhXUeH2TWIzfYc6tjZSq/eRtPPfsDnngt2IbNEgk8/KBqsoYAH1.js\";const NavigationNavLinkFonts=getFonts(NavigationNavLink);const MagnifyingGlassFonts=getFonts(MagnifyingGlass);const BasketFonts=getFonts(Basket);const FC_CartCounterFonts=getFonts(FC_CartCounter);const FCCartTriggerFonts=getFonts(FCCartTrigger);const cycleOrder=[\"UWnxhUvjr\",\"hBb71rDOH\",\"MViXiqku5\"];const serializationHash=\"framer-gjaZv\";const variantClassNames={hBb71rDOH:\"framer-v-1nzokw3\",MViXiqku5:\"framer-v-4ky890\",UWnxhUvjr:\"framer-v-1e8p4hk\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const pL9L121Nh=undefined;const BI0IUcXjn=undefined;const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const transformTemplate1=(_,t)=>`translate(-50%, -50%) ${t}`;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:\"UWnxhUvjr\",Mobile:\"hBb71rDOH\",Tablet:\"MViXiqku5\"};const Variants=motion.create(React.Fragment);const getProps=({cart,height,id,search,width,...props})=>{return{...props,BI0IUcXjn:cart??props.BI0IUcXjn,pL9L121Nh:search??props.pL9L121Nh,variant:humanReadableVariantMap[props.variant]??props.variant??\"UWnxhUvjr\"};};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,pL9L121Nh,BI0IUcXjn,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"UWnxhUvjr\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const{activeVariantCallback,delay}=useActiveVariantCallback(baseVariant);const onTap1krdopd=activeVariantCallback(async(...args)=>{if(pL9L121Nh){const res=await pL9L121Nh(...args);if(res===false)return false;}});const xyG0fDCYVi2n9vo=activeVariantCallback(async(...args)=>{if(BI0IUcXjn){const res=await BI0IUcXjn(...args);if(res===false)return false;}});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);const router=useRouter();const isDisplayed=()=>{if(baseVariant===\"hBb71rDOH\")return true;return false;};const isDisplayed1=()=>{if(baseVariant===\"hBb71rDOH\")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__*/_jsxs(motion.header,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1e8p4hk\",className,classNames),\"data-framer-name\":\"Desktop\",layoutDependency:layoutDependency,layoutId:\"UWnxhUvjr\",ref:refBinding,style:{...style},...addPropertyOverrides({hBb71rDOH:{\"data-framer-name\":\"Mobile\"},MViXiqku5:{\"data-framer-name\":\"Tablet\"}},baseVariant,gestureVariant),children:[/*#__PURE__*/_jsxs(motion.nav,{className:\"framer-1e5u6xu\",\"data-framer-name\":\"Left\",layoutDependency:layoutDependency,layoutId:\"AGN66dt_N\",children:[/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"SYRUO0vTS\"},implicitPathVariables:undefined},{href:{webPageId:\"SYRUO0vTS\"},implicitPathVariables:undefined},{href:{webPageId:\"SYRUO0vTS\"},implicitPathVariables:undefined}],children:resolvedLinks=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:28,y:(componentViewport?.y||0)+(20+((componentViewport?.height||72)-40-28)/2)+0,...addPropertyOverrides({hBb71rDOH:{y:(componentViewport?.y||0)+(20+((componentViewport?.height||200)-40-28)/2)+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-102f6cc-container\",layoutDependency:layoutDependency,layoutId:\"bMMwJCj9O-container\",nodeId:\"bMMwJCj9O\",rendersWithMotion:true,scopeId:\"uKy5Wbkbg\",children:/*#__PURE__*/_jsx(NavigationNavLink,{height:\"100%\",id:\"bMMwJCj9O\",JHaOVdQop:\"SHOP\",layoutId:\"bMMwJCj9O\",n1_RZIWXD:\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",style:{height:\"100%\"},uG9vxht3j:resolvedLinks[0],width:\"100%\",...addPropertyOverrides({hBb71rDOH:{JHaOVdQop:\"HOME\",uG9vxht3j:resolvedLinks[1]},MViXiqku5:{uG9vxht3j:resolvedLinks[2]}},baseVariant,gestureVariant)})})})}),isDisplayed()&&/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"SYRUO0vTS\"},implicitPathVariables:undefined},{href:{webPageId:\"SYRUO0vTS\"},implicitPathVariables:undefined}],children:resolvedLinks1=>/*#__PURE__*/_jsx(ComponentViewportProvider,{...addPropertyOverrides({hBb71rDOH:{height:28,y:(componentViewport?.y||0)+(20+((componentViewport?.height||200)-40-28)/2)+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1eqogev-container\",layoutDependency:layoutDependency,layoutId:\"m_4ElPdgw-container\",nodeId:\"m_4ElPdgw\",rendersWithMotion:true,scopeId:\"uKy5Wbkbg\",children:/*#__PURE__*/_jsx(NavigationNavLink,{height:\"100%\",id:\"m_4ElPdgw\",JHaOVdQop:\"SHOP\",layoutId:\"m_4ElPdgw\",n1_RZIWXD:\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",style:{height:\"100%\"},uG9vxht3j:resolvedLinks1[0],width:\"100%\",...addPropertyOverrides({hBb71rDOH:{uG9vxht3j:resolvedLinks1[1]}},baseVariant,gestureVariant)})})})}),/*#__PURE__*/_jsx(ResolveLinks,{links:[{href:{webPageId:\"mZyk9sKOS\"},implicitPathVariables:undefined},{href:{webPageId:\"mZyk9sKOS\"},implicitPathVariables:undefined},{href:{webPageId:\"mZyk9sKOS\"},implicitPathVariables:undefined}],children:resolvedLinks2=>/*#__PURE__*/_jsx(ComponentViewportProvider,{height:28,y:(componentViewport?.y||0)+(20+((componentViewport?.height||72)-40-28)/2)+0,...addPropertyOverrides({hBb71rDOH:{y:(componentViewport?.y||0)+(20+((componentViewport?.height||200)-40-28)/2)+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1xoevd3-container\",layoutDependency:layoutDependency,layoutId:\"bu2peNtz4-container\",nodeId:\"bu2peNtz4\",rendersWithMotion:true,scopeId:\"uKy5Wbkbg\",children:/*#__PURE__*/_jsx(NavigationNavLink,{height:\"100%\",id:\"bu2peNtz4\",JHaOVdQop:\"OUR STORY\",layoutId:\"bu2peNtz4\",n1_RZIWXD:\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",style:{height:\"100%\"},uG9vxht3j:resolvedLinks2[0],width:\"100%\",...addPropertyOverrides({hBb71rDOH:{uG9vxht3j:resolvedLinks2[1]},MViXiqku5:{uG9vxht3j:resolvedLinks2[2]}},baseVariant,gestureVariant)})})})})]}),isDisplayed1()&&/*#__PURE__*/_jsx(Link,{href:{webPageId:\"augiA20Il\"},motionChild:true,nodeId:\"dnS44pXbg\",openInNewTab:false,scopeId:\"uKy5Wbkbg\",children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-1alyjs1 framer-10fr3zl\",\"data-framer-name\":\"Brand Logo\",layoutDependency:layoutDependency,layoutId:\"dnS44pXbg\",transformTemplate:transformTemplate1,children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(motion.p,{dir:\"auto\",style:{\"--font-selector\":\"R0Y7R2lsZGEgRGlzcGxheS1yZWd1bGFy\",\"--framer-font-family\":'\"Gilda Display\", \"Gilda Display Placeholder\", serif',\"--framer-font-size\":\"28.2px\",\"--framer-letter-spacing\":\"0.3em\",\"--framer-line-height\":\"32.9px\",\"--framer-text-color\":\"var(--extracted-r6o4lv, var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255)))\"},children:\"AMOURA\"})}),className:\"framer-1xz4h21\",\"data-framer-name\":\"Brand Logo\",fonts:[\"GF;Gilda Display-regular\"],layoutDependency:layoutDependency,layoutId:\"ORaNgVXSc\",style:{\"--extracted-r6o4lv\":\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",\"--framer-paragraph-spacing\":\"0px\"},verticalAlignment:\"center\",withExternalLayout:true})})}),/*#__PURE__*/_jsxs(motion.nav,{className:\"framer-89qadt\",\"data-framer-name\":\"Right\",layoutDependency:layoutDependency,layoutId:\"tTsBhn0tS\",children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-6z5zov\",\"data-framer-name\":\"Magnifying Glass Icon\",\"data-highlight\":true,layoutDependency:layoutDependency,layoutId:\"J57Y5d2I3\",onTap:onTap1krdopd,children:/*#__PURE__*/_jsx(MagnifyingGlass,{animated:true,className:\"framer-1ww2wd4\",layoutDependency:layoutDependency,layoutId:\"xNxwDopVy\",style:{\"--1m6trwb\":0,\"--21h8s6\":\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",\"--pgex8v\":1}})}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-dlnu08\",\"data-framer-name\":\"Basket\",layoutDependency:layoutDependency,layoutId:\"vxB7DWbIR\",children:[/*#__PURE__*/_jsxs(motion.div,{className:\"framer-7rbvmo\",\"data-framer-name\":\"Basket Icon\",layoutDependency:layoutDependency,layoutId:\"BamjYwYhl\",transformTemplate:transformTemplate1,children:[/*#__PURE__*/_jsx(Basket,{animated:true,className:\"framer-ubv181\",layoutDependency:layoutDependency,layoutId:\"XXU6IpAvs\",style:{\"--1m6trwb\":0,\"--21h8s6\":\"var(--token-fb9a3de1-74ab-40a1-a812-83fbd85fad18, rgb(255, 255, 255))\",\"--pgex8v\":1}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1173ukg\",layoutDependency:layoutDependency,layoutId:\"TfEYITJdE\",style:{backgroundColor:\"var(--token-cf194fe0-c1c4-46e5-8325-265fb837a66d, rgb(245, 245, 245))\",borderBottomLeftRadius:12,borderBottomRightRadius:12,borderTopLeftRadius:12,borderTopRightRadius:12},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-rem3xk-container\",isAuthoredByUser:true,isModuleExternal:true,layoutDependency:layoutDependency,layoutId:\"OjPDf4GD5-container\",nodeId:\"OjPDf4GD5\",rendersWithMotion:true,scopeId:\"uKy5Wbkbg\",children:/*#__PURE__*/_jsx(FC_CartCounter,{backgroundColor:\"rgba(255, 255, 255, 0)\",border:{borderBottomWidth:0,borderColor:\"rgba(19, 20, 21, 0.5)\",borderLeftWidth:0,borderRightWidth:0,borderStyle:\"solid\",borderTopWidth:0},bottomLeft:0,bottomRight:0,color:\"var(--token-d0cdad69-1ce8-4ac5-b960-724c9c4f19cd, rgb(19, 20, 21))\",font:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontSize:\"16px\",fontStyle:\"normal\",fontWeight:300,letterSpacing:\"0em\",lineHeight:\"1em\"},height:\"100%\",hideIf0:false,id:\"OjPDf4GD5\",layoutId:\"OjPDf4GD5\",padding:0,paddingBottom:0,paddingLeft:0,paddingPerSide:false,paddingRight:0,paddingTop:0,radius:0,radiusPerCorner:false,topLeft:0,topRight:0,width:\"100%\",...addPropertyOverrides({hBb71rDOH:{font:{fontFamily:'\"Karla\", \"Karla Placeholder\", sans-serif',fontSize:\"14px\",fontStyle:\"normal\",fontWeight:300,letterSpacing:\"0em\",lineHeight:\"1em\"}}},baseVariant,gestureVariant)})})})})]}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:32,width:\"32px\",y:(componentViewport?.y||0)+(20+((componentViewport?.height||72)-40-32)/2)+0+0,...addPropertyOverrides({hBb71rDOH:{height:24,width:\"24px\",y:(componentViewport?.y||0)+(20+((componentViewport?.height||200)-40-32)/2)+4+0}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SmartComponentScopedContainer,{className:\"framer-1mi5nds-container\",layoutDependency:layoutDependency,layoutId:\"Hke1UREPZ-container\",nodeId:\"Hke1UREPZ\",rendersWithMotion:true,scopeId:\"uKy5Wbkbg\",style:{opacity:0},children:/*#__PURE__*/_jsx(FCCartTrigger,{height:\"100%\",id:\"Hke1UREPZ\",layoutId:\"Hke1UREPZ\",style:{height:\"100%\",width:\"100%\"},width:\"100%\",xyG0fDCYV:xyG0fDCYVi2n9vo})})})]})]})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-gjaZv.framer-10fr3zl, .framer-gjaZv .framer-10fr3zl { display: block; }\",\".framer-gjaZv.framer-1e8p4hk { align-content: center; align-items: center; display: flex; flex-direction: row; flex-wrap: nowrap; height: min-content; justify-content: space-between; overflow: var(--overflow-clip-fallback, clip); padding: 20px 48px 20px 48px; position: relative; width: 1200px; }\",\".framer-gjaZv .framer-1e5u6xu { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: 1016px; }\",\".framer-gjaZv .framer-102f6cc-container, .framer-gjaZv .framer-1eqogev-container, .framer-gjaZv .framer-1xoevd3-container { flex: none; height: 28px; position: relative; width: auto; }\",\".framer-gjaZv .framer-1alyjs1 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: center; left: 50%; overflow: visible; padding: 0px; position: absolute; text-decoration: none; top: 49%; width: min-content; z-index: 1; }\",\".framer-gjaZv .framer-1xz4h21 { flex: none; height: auto; position: relative; white-space: pre; width: auto; z-index: 1; }\",\".framer-gjaZv .framer-89qadt { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: 32px; justify-content: flex-start; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-gjaZv .framer-6z5zov { align-content: center; align-items: center; cursor: pointer; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; overflow: visible; padding: 0px; position: relative; width: min-content; }\",\".framer-gjaZv .framer-1ww2wd4, .framer-gjaZv .framer-ubv181 { aspect-ratio: 1 / 1; flex: none; height: var(--framer-aspect-ratio-supported, 32px); position: relative; width: 32px; }\",\".framer-gjaZv .framer-dlnu08 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 32px; justify-content: center; overflow: visible; padding: 0px; position: relative; width: 32px; }\",\".framer-gjaZv .framer-7rbvmo { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 24px; height: min-content; justify-content: center; left: 50%; overflow: visible; padding: 0px; position: absolute; top: 50%; width: min-content; z-index: 0; }\",\".framer-gjaZv .framer-1173ukg { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 0px; height: 21px; justify-content: center; overflow: visible; padding: 4px 6px 4px 6px; position: absolute; right: -10px; top: -5px; width: min-content; }\",\".framer-gjaZv .framer-rem3xk-container { flex: none; height: auto; position: relative; width: auto; z-index: 1; }\",\".framer-gjaZv .framer-1mi5nds-container { bottom: 0px; flex: none; left: 0px; position: absolute; right: 0px; top: 0px; z-index: 2; }\",\".framer-gjaZv.framer-v-1nzokw3.framer-1e8p4hk { padding: 20px 24px 20px 24px; width: 390px; }\",\".framer-gjaZv.framer-v-1nzokw3 .framer-1e5u6xu { gap: 16px; width: min-content; z-index: 1; }\",\".framer-gjaZv.framer-v-1nzokw3 .framer-89qadt { gap: 8px; height: min-content; }\",\".framer-gjaZv.framer-v-1nzokw3 .framer-1ww2wd4, .framer-gjaZv.framer-v-1nzokw3 .framer-ubv181 { width: 24px; }\",\".framer-gjaZv.framer-v-1nzokw3 .framer-dlnu08 { height: 24px; width: 24px; }\",\".framer-gjaZv.framer-v-1nzokw3 .framer-1173ukg { height: 16px; right: -7px; top: -4px; width: 16px; }\",\".framer-gjaZv.framer-v-1nzokw3 .framer-1mi5nds-container { bottom: unset; height: 24px; left: calc(50.00000000000002% - 24px / 2); right: unset; top: calc(50.00000000000002% - 24px / 2); width: 24px; }\",\".framer-gjaZv.framer-v-4ky890.framer-1e8p4hk { padding: 20px 24px 20px 24px; width: 810px; }\",\".framer-gjaZv.framer-v-4ky890 .framer-1e5u6xu { width: min-content; }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 72\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"auto\"]},\"hBb71rDOH\":{\"layout\":[\"fixed\",\"auto\"]},\"MViXiqku5\":{\"layout\":[\"fixed\",\"auto\"]}}}\n * @framerVariables {\"pL9L121Nh\":\"search\",\"BI0IUcXjn\":\"cart\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FrameruKy5Wbkbg=withCSS(Component,css,\"framer-gjaZv\");export default FrameruKy5Wbkbg;FrameruKy5Wbkbg.displayName=\"Navbar\";FrameruKy5Wbkbg.defaultProps={height:72,width:1200};addPropertyControls(FrameruKy5Wbkbg,{variant:{options:[\"UWnxhUvjr\",\"hBb71rDOH\",\"MViXiqku5\"],optionTitles:[\"Desktop\",\"Mobile\",\"Tablet\"],title:\"Variant\",type:ControlType.Enum},pL9L121Nh:{title:\"Search\",type:ControlType.EventHandler},BI0IUcXjn:{title:\"Cart\",type:ControlType.EventHandler}});addFonts(FrameruKy5Wbkbg,[{explicitInter:true,fonts:[{cssFamilyName:\"Gilda Display\",source:\"google\",style:\"normal\",uiFamilyName:\"Gilda Display\",url:\"https://fonts.gstatic.com/s/gildadisplay/v20/t5tmIRoYMoaYG0WEOh7HwMeR7TzFrpOHYh4.woff2\",weight:\"400\"},{cssFamilyName:\"Karla\",source:\"fontshare\",style:\"normal\",uiFamilyName:\"Karla\",url:\"https://framerusercontent.com/third-party-assets/fontshare/wf/QHWPH76XNDLVANFZSQLE5PE2RFQNT5MO/ULBH7EH7QWYAOOAZ6464WXLMJG4IHVHV/B7KR3ZKVFW4ZAG27WVGXSFR2Z2ECBA7Q.woff2\",weight:\"300\"}]},...NavigationNavLinkFonts,...MagnifyingGlassFonts,...BasketFonts,...FC_CartCounterFonts,...FCCartTriggerFonts],{supportsExplicitInterCodegen:true});FrameruKy5Wbkbg.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(NavigationNavLink,{},context),forwardLoader(FCCartTrigger,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameruKy5Wbkbg\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"hBb71rDOH\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]},\\\"MViXiqku5\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"auto\\\"]}}}\",\"framerVariables\":\"{\\\"pL9L121Nh\\\":\\\"search\\\",\\\"BI0IUcXjn\\\":\\\"cart\\\"}\",\"framerAutoSizeImages\":\"true\",\"framerComponentViewportWidth\":\"true\",\"framerIntrinsicWidth\":\"1200\",\"framerDisplayContentsDiv\":\"false\",\"framerColorSyntax\":\"true\",\"framerIntrinsicHeight\":\"72\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (c9c30df)\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addFonts,ComponentViewportProvider,Container,cx,forwardLoader,GeneratedComponentContext,getFonts,InjectSelectionStyle,PropertyOverrides,RenderTarget,ResetOuterLinkContext,useActiveVariantCallback,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,useOverlayState,withCSS}from\"framer\";import{AnimatePresence,LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as ReactDOM from\"react-dom\";import Lenis from\"https://framerusercontent.com/modules/bSeEZJm22jsjERCOGQvq/YmzNUbQh4V7UMGbeal0O/Lenis.js\";import Footer from\"#framer/local/canvasComponent/eVkNOnl6N/eVkNOnl6N.js\";import Default from\"#framer/local/canvasComponent/kQ_xyFkUJ/kQ_xyFkUJ.js\";import Search from\"#framer/local/canvasComponent/mmRk1aCFk/mmRk1aCFk.js\";import Navbar from\"#framer/local/canvasComponent/uKy5Wbkbg/uKy5Wbkbg.js\";const NavbarFonts=getFonts(Navbar);const SearchFonts=getFonts(Search);const DefaultFonts=getFonts(Default);const LenisFonts=getFonts(Lenis);const FooterFonts=getFonts(Footer);const breakpoints={dm1JK0G0U:\"(min-width: 810px) and (max-width: 1199.98px)\",GKWBZ4VZr:\"(max-width: 809.98px)\",m1vJdZ6we:\"(min-width: 1200px)\"};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-PqxDO\";const variantClassNames={dm1JK0G0U:\"framer-v-ciiw8z\",GKWBZ4VZr:\"framer-v-upeucm\",m1vJdZ6we:\"framer-v-13qqtcl\"};const transformTemplate1=(_,t)=>`translateX(-50%) ${t}`;const matchVariant=(...args)=>{for(const arg of args){if(arg&&typeof arg===\"string\")return arg;}return undefined;};const transition1={delay:0,duration:.8,ease:[.8,0,.24,1],type:\"tween\"};const animation={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:400,y:0};const animation1={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,transition:transition1,x:0,y:0};const animation2={opacity:1,rotate:0,rotateX:0,rotateY:0,scale:1,skewX:0,skewY:0,x:400,y:0};const getContainer=()=>{return document.querySelector(\"#template-overlay\")??document.querySelector(\"#overlay\")??document.body;};const Overlay=({children,blockDocumentScrolling,dismissWithEsc,enabled=true})=>{const[visible,setVisible]=useOverlayState({blockDocumentScrolling,dismissWithEsc:enabled&&dismissWithEsc});return children({hide:()=>setVisible(false),show:()=>setVisible(true),toggle:()=>setVisible(!visible),visible:enabled&&visible});};const breakpointRules={GKWBZ4VZr:[\".framer-PqxDO .framer-1fc7sxv { flex-direction: column; }\",\".framer-PqxDO .framer-1e9m3aq-container { flex: none; width: 100%; }\",\".framer-PqxDO.framer-1t8fj7x-container { width: 390px; }\"]};const breakpointKeys=Object.keys(breakpointRules);const selectors={GKWBZ4VZr:\".framer-upeucm-override\"};const rules=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-PqxDO.framer-1s0p2h8, .framer-PqxDO .framer-1s0p2h8 { display: block; }\",\".framer-PqxDO.framer-13qqtcl { align-content: center; align-items: center; 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-PqxDO .framer-1rlzmzw { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-PqxDO .framer-1fc7sxv { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: min-content; justify-content: center; left: 50%; order: 1001; overflow: visible; padding: 0px; position: var(--framer-canvas-fixed-position, fixed); top: 0px; width: 100%; z-index: 10; }\",\".framer-PqxDO .framer-1e9m3aq-container { flex: 1 0 0px; height: auto; position: relative; width: 1px; }\",\".framer-PqxDO.framer-1lzrp3z, .framer-PqxDO.framer-1k0vawv { background-color: rgba(3, 6, 7, 0.48); inset: 0px; position: fixed; user-select: none; z-index: 10; }\",\".framer-PqxDO.framer-1sj5da5-container, .framer-PqxDO.framer-1t8fj7x-container { bottom: 0px; flex: none; position: fixed; right: 0px; top: 0px; width: 400px; will-change: var(--framer-will-change-effect-override, transform); z-index: 10; }\",\".framer-PqxDO .framer-hfmlqi { --border-bottom-width: 0.2px; --border-color: rgba(255, 255, 255, 0.2); --border-left-width: 0px; --border-right-width: 0px; --border-style: solid; --border-top-width: 0px; -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); background: linear-gradient(180deg, var(--token-3db24570-ef16-40e3-8d94-de55aa37b6f2, #5c5c4e) -71%, rgba(238, 238, 238, 0) 100%); flex: none; height: 72px; left: calc(50.00000000000002% - 100% / 2); order: 1002; overflow: visible; position: var(--framer-canvas-fixed-position, fixed); top: 0px; width: 100%; z-index: 6; }\",\".framer-PqxDO .framer-1v4u92k-container { flex: none; height: auto; order: 1003; position: relative; width: auto; }\",\".framer-PqxDO .framer-1sc23pl-container { flex: none; height: auto; order: 1004; position: relative; width: 100%; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }','.framer-PqxDO[data-border=\"true\"]::after, .framer-PqxDO [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; corner-shape: inherit; pointer-events: none; }'];const mediaQueries={dm1JK0G0U:\"(min-width: 810px) and (max-width: 1199.98px)\",GKWBZ4VZr:\"(max-width: 809.98px)\",m1vJdZ6we:\"(min-width: 1200px)\"};const humanReadableVariantMap={Desktop:\"m1vJdZ6we\",Phone:\"GKWBZ4VZr\",Tablet:\"dm1JK0G0U\"};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??\"m1vJdZ6we\"};};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{activeVariantCallback,delay}=useActiveVariantCallback(undefined);const pL9L121Nhko9la1=({overlay})=>activeVariantCallback(async(...args)=>{overlay.toggle();});const BI0IUcXjnko9la1=({overlay})=>activeVariantCallback(async(...args)=>{overlay.toggle();});const gPjUPZE7P1q29jei=({overlay})=>activeVariantCallback(async(...args)=>{overlay.hide();});const xv6C14M0G1q29jei=({overlay})=>activeVariantCallback(async(...args)=>{overlay.hide();});const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,humanReadableVariantMap,isLayoutTemplate:true,primaryVariantId:\"m1vJdZ6we\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: none; }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-13qqtcl\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-1rlzmzw\"}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-1fc7sxv\",\"data-framer-layout-hint-center-x\":true,\"data-framer-name\":\"Wrapper\",transformTemplate:transformTemplate1,children:/*#__PURE__*/_jsx(Overlay,{dismissWithEsc:true,children:overlay1=>/*#__PURE__*/_jsx(Overlay,{blockDocumentScrolling:true,dismissWithEsc:true,children:overlay=>/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{GKWBZ4VZr:{width:\"100vw\"}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{height:72,width:\"max(100vw, 1px)\",y:0,children:/*#__PURE__*/_jsxs(Container,{className:\"framer-1e9m3aq-container\",nodeId:\"Q5zYUcpkS\",scopeId:\"poEdX2qML\",children:[/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{dm1JK0G0U:{variant:matchVariant(\"MViXiqku5\")},GKWBZ4VZr:{variant:matchVariant(\"hBb71rDOH\")}},children:/*#__PURE__*/_jsx(Navbar,{BI0IUcXjn:BI0IUcXjnko9la1({overlay:overlay1}),height:\"100%\",id:\"Q5zYUcpkS\",layoutId:\"Q5zYUcpkS\",pL9L121Nh:pL9L121Nhko9la1({overlay}),style:{width:\"100%\"},variant:matchVariant(\"UWnxhUvjr\"),width:\"100%\"})}),/*#__PURE__*/_jsx(AnimatePresence,{children:overlay.visible&&/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/ReactDOM.createPortal(/*#__PURE__*/_jsx(InjectSelectionStyle,{children:/*#__PURE__*/_jsxs(ResetOuterLinkContext,{children:[/*#__PURE__*/_jsx(motion.div,{animate:{opacity:1},className:cx(scopingClassNames,\"framer-1lzrp3z\"),\"data-framer-name\":\"Search\",exit:{opacity:0},initial:{opacity:0},onTap:()=>overlay.hide(),transition:{damping:30,delay:.4,mass:1,stiffness:400,type:\"spring\"}},\"E_adgkl4x\"),/*#__PURE__*/_jsx(ComponentViewportProvider,{width:\"400px\",children:/*#__PURE__*/_jsx(Container,{animate:animation1,className:cx(scopingClassNames,\"framer-1sj5da5-container\"),exit:animation,inComponentSlot:true,initial:animation2,nodeId:\"aFKNjZQBp\",rendersWithMotion:true,scopeId:\"poEdX2qML\",children:/*#__PURE__*/_jsx(Search,{gPjUPZE7P:gPjUPZE7P1q29jei({overlay}),height:\"100%\",id:\"aFKNjZQBp\",layoutId:\"aFKNjZQBp\",style:{height:\"100%\",width:\"100%\"},width:\"100%\"})})})]})}),getContainer())})}),/*#__PURE__*/_jsx(AnimatePresence,{children:overlay1.visible&&/*#__PURE__*/_jsx(_Fragment,{children:/*#__PURE__*/ReactDOM.createPortal(/*#__PURE__*/_jsx(InjectSelectionStyle,{children:/*#__PURE__*/_jsxs(ResetOuterLinkContext,{children:[/*#__PURE__*/_jsx(motion.div,{animate:{opacity:1},className:cx(scopingClassNames,\"framer-1k0vawv\"),\"data-framer-name\":\"Cart\",exit:{opacity:0},initial:{opacity:0},onTap:()=>overlay1.hide(),transition:{damping:30,delay:.4,mass:1,stiffness:400,type:\"spring\"}},\"npDBe0Qtm\"),/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{GKWBZ4VZr:{width:\"390px\"}},children:/*#__PURE__*/_jsx(ComponentViewportProvider,{width:\"400px\",children:/*#__PURE__*/_jsx(Container,{animate:animation1,className:cx(scopingClassNames,\"framer-1t8fj7x-container\"),\"data-framer-name\":\"Cart\",exit:animation,inComponentSlot:true,initial:animation2,name:\"Cart\",nodeId:\"O5nQo8so7\",rendersWithMotion:true,scopeId:\"poEdX2qML\",children:/*#__PURE__*/_jsx(Default,{height:\"100%\",id:\"O5nQo8so7\",layoutId:\"O5nQo8so7\",name:\"Cart\",style:{height:\"100%\",width:\"100%\"},width:\"100%\",xv6C14M0G:xv6C14M0G1q29jei({overlay:overlay1})})})})})]})}),getContainer())})})]})})})})})})}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-hfmlqi\",\"data-border\":true,\"data-framer-name\":\"Blur BG\"}),/*#__PURE__*/_jsx(ComponentViewportProvider,{children:/*#__PURE__*/_jsx(Container,{className:\"framer-1v4u92k-container\",isAuthoredByUser:true,isModuleExternal:true,nodeId:\"bmSITSRZr\",scopeId:\"poEdX2qML\",children:/*#__PURE__*/_jsx(Lenis,{height:\"100%\",id:\"bmSITSRZr\",infinite:false,intensity:15,layoutId:\"bmSITSRZr\",orientation:\"vertical\",smooth:true,width:\"100%\"})})}),/*#__PURE__*/_jsx(ComponentViewportProvider,{height:983,width:\"100vw\",y:1200,children:/*#__PURE__*/_jsx(Container,{className:\"framer-1sc23pl-container\",nodeId:\"d1ZYNT7Tc\",scopeId:\"poEdX2qML\",children:/*#__PURE__*/_jsx(PropertyOverrides,{breakpoint:baseVariant,overrides:{dm1JK0G0U:{variant:matchVariant(\"oelTs5cnA\")},GKWBZ4VZr:{variant:matchVariant(\"Pt7vPjPfY\")}},children:/*#__PURE__*/_jsx(Footer,{height:\"100%\",id:\"d1ZYNT7Tc\",layoutId:\"d1ZYNT7Tc\",style:{width:\"100%\"},variant:matchVariant(\"VqA8ehCWK\"),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 1864\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"dm1JK0G0U\":{\"layout\":[\"fixed\",\"fixed\"]},\"GKWBZ4VZr\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"m1vJdZ6we\":[\".framer-1fc7sxv\",\".framer-hfmlqi\",\".framer-1v4u92k-container\",\".framer-1sc23pl-container\"],\"dm1JK0G0U\":[\".framer-1fc7sxv\",\".framer-hfmlqi\",\".framer-1v4u92k-container\",\".framer-1sc23pl-container\"],\"GKWBZ4VZr\":[\".framer-1fc7sxv\",\".framer-hfmlqi\",\".framer-1v4u92k-container\",\".framer-1sc23pl-container\"]}\n * @framerBreakpoints {\"m1vJdZ6we\":{\"min\":1200,\"canvasClassName\":\"framer-13qqtcl-override\",\"minHeight\":1864,\"name\":\"Desktop\",\"width\":1200,\"rootFontSize\":16},\"dm1JK0G0U\":{\"min\":810,\"max\":1199,\"canvasClassName\":\"framer-ciiw8z-override\",\"minHeight\":1864,\"viewportHeight\":1080,\"name\":\"Tablet\",\"width\":810,\"rootFontSize\":16},\"GKWBZ4VZr\":{\"max\":809,\"canvasClassName\":\"framer-upeucm-override\",\"minHeight\":1864,\"viewportHeight\":844,\"name\":\"Phone\",\"width\":390,\"rootFontSize\":16}}\n * @framerDefaultVariant m1vJdZ6we\n * @framerLayoutTemplate true\n */const FramerpoEdX2qML=withCSS(Component,css,\"framer-PqxDO\");export default FramerpoEdX2qML;FramerpoEdX2qML.displayName=\"Navbar + Footer\";FramerpoEdX2qML.defaultProps={height:1864,width:1200};addFonts(FramerpoEdX2qML,[{explicitInter:true,fonts:[]},...NavbarFonts,...SearchFonts,...DefaultFonts,...LenisFonts,...FooterFonts],{supportsExplicitInterCodegen:true});FramerpoEdX2qML.loader={load:(props,context)=>{const locale=context.locale;return Promise.allSettled([forwardLoader(Navbar,{},context),forwardLoader(Search,{},context),forwardLoader(Default,{},context),forwardLoader(Footer,{},context)]);}};\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerpoEdX2qML\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerComponentViewportWidth\":\"true\",\"framerDefaultVariant\":\"m1vJdZ6we\",\"framerIntrinsicHeight\":\"1864\",\"framerBreakpoints\":\"{\\\"m1vJdZ6we\\\":{\\\"min\\\":1200,\\\"canvasClassName\\\":\\\"framer-13qqtcl-override\\\",\\\"minHeight\\\":1864,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1200,\\\"rootFontSize\\\":16},\\\"dm1JK0G0U\\\":{\\\"min\\\":810,\\\"max\\\":1199,\\\"canvasClassName\\\":\\\"framer-ciiw8z-override\\\",\\\"minHeight\\\":1864,\\\"viewportHeight\\\":1080,\\\"name\\\":\\\"Tablet\\\",\\\"width\\\":810,\\\"rootFontSize\\\":16},\\\"GKWBZ4VZr\\\":{\\\"max\\\":809,\\\"canvasClassName\\\":\\\"framer-upeucm-override\\\",\\\"minHeight\\\":1864,\\\"viewportHeight\\\":844,\\\"name\\\":\\\"Phone\\\",\\\"width\\\":390,\\\"rootFontSize\\\":16}}\",\"framerDisplayContentsDiv\":\"false\",\"framerHitTargets\":\"{\\\"m1vJdZ6we\\\":[\\\".framer-1fc7sxv\\\",\\\".framer-hfmlqi\\\",\\\".framer-1v4u92k-container\\\",\\\".framer-1sc23pl-container\\\"],\\\"dm1JK0G0U\\\":[\\\".framer-1fc7sxv\\\",\\\".framer-hfmlqi\\\",\\\".framer-1v4u92k-container\\\",\\\".framer-1sc23pl-container\\\"],\\\"GKWBZ4VZr\\\":[\\\".framer-1fc7sxv\\\",\\\".framer-hfmlqi\\\",\\\".framer-1v4u92k-container\\\",\\\".framer-1sc23pl-container\\\"]}\",\"framerImmutableVariables\":\"true\",\"framerColorSyntax\":\"true\",\"framerLayoutTemplate\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"dm1JK0G0U\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"GKWBZ4VZr\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerAutoSizeImages\":\"true\",\"framerIntrinsicWidth\":\"1200\"}},\"__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 NavbarFooter from \"https://framerusercontent.com/modules/ENk6q5O2d8CNyW2XCK6g/KeMfnpFEib8DM0SXjosm/poEdX2qML.js\";\r\n\r\n\t\tconst routes = {augiA20Il: {elements: {IoP5RoIQs: \"newarrival\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/bWRCa0CDmAHRd1dinFjy/iWPxQtguoTsipeYzXTBU/augiA20Il.js\")), path: \"/\"}, SYRUO0vTS: {elements: {om7Z0RPMP: \"popular-items-1\", SZ4r3ClHj: \"popular-items\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/jqkROql64mDiMAmnFGyR/0nAdx8mdR63E1srKecDO/SYRUO0vTS.js\")), path: \"/shop\"}, mZyk9sKOS: {elements: {llPcnbsYM: \"step-spacing-1\", MNAc0CgK5: \"the-beginning\", PVMNMoRvx: \"step-spacing-2\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/WNLUe4698K9ZgRoH30ol/oX3qf9Qpg7My84h3Jcpo/mZyk9sKOS.js\")), path: \"/our-story\"}, f57zvndrd: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/qzkmBIuolLYuxNdT1Nvy/8B9t83AwB7l87D2ROkOv/f57zvndrd.js\")), path: \"/404\"}, NcekhhZjB: {collectionId: \"h2LsD5Qf9\", elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/dh8904ttWX45ORKS3K6x/usVSnteWrnVrNxS2l5J0/NcekhhZjB.js\")), path: \"/shop/:d3bLhuaeS\"}, mp3HjglbL: {collectionId: \"GRKcC83Kh\", elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/NZ6xoQxdTb0ArSC6u3MF/XWRPIV20RR48igmeszb0/mp3HjglbL.js\")), path: \"/privacy-policy/:ZeppHvedt\"}}\r\n\r\n\t\tconst locales = [{code: \"en-US\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n\t\tconst collectionUtils = {GRKcC83Kh: async () => (await import(\"https://framerusercontent.com/modules/IwwTkUm2U41izt3N88JC/RDFQiMBdNae6HnB39VtB/GRKcC83Kh.js\"))?.[\"utils\"], h2LsD5Qf9: async () => (await import(\"https://framerusercontent.com/modules/UcPLsekSa4gBbx71LAU1/eCgoQOHi2U9ENUPPCFWt/h2LsD5Qf9.js\"))?.[\"utils\"]}\r\n\t\tconst framerSiteId = \"290a8d4c9e541abdec06435914bc007f916369318c2265dc482fd8648a4aecfa\"\r\n\t\tfunction Template({webPageId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"augiA20Il\":\r\ncase \"SYRUO0vTS\":\r\ncase \"mZyk9sKOS\":\r\ncase \"f57zvndrd\":\r\ncase \"NcekhhZjB\":\r\ncase \"mp3HjglbL\":\r\nreturn React.createElement(NavbarFooter, {...props, key: \"NavbarFooter\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"augiA20Il\":\r\ncase \"SYRUO0vTS\":\r\ncase \"mZyk9sKOS\":\r\ncase \"f57zvndrd\":\r\ncase \"NcekhhZjB\":\r\ncase \"mp3HjglbL\":\r\nreturn [{hash: \"13qqtcl\", mediaQuery: \"(min-width: 1200px)\"}, {hash: \"ciiw8z\", mediaQuery: \"(min-width: 810px) and (max-width: 1199.98px)\"}, {hash: \"upeucm\", mediaQuery: \"(max-width: 809.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(\"https://framerusercontent.com/modules/qzkmBIuolLYuxNdT1Nvy/8B9t83AwB7l87D2ROkOv/f57zvndrd.js\")),\r\n\t\t\t\t\tisReducedMotion: undefined,\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://same-report-209274.framer.app\",\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: true,\r\n\t\t\t\t\tLayoutTemplate: Template,\r\n\t\t\t\t\tloadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/tzsUiW5zFzjcWvelRVLf/wj2VwFeCF4h60rfIFKI5/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: {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\t;(function () {\r\n\t\t\tif (!isBrowser) return\r\n\r\n\t\t\tReact.startTransition(() => {\r\n\t\t\t\tReactDOM.hydrateRoot(\r\n\t\t\t\t\tdocument.getElementById(\"__framer-badge-container\"),\r\n\t\t\t\t\tReact.createElement(React.Suspense, {}, React.createElement(React.lazy(() => import(\"__framer-badge\"))))\r\n\t\t\t\t)\r\n\t\t\t})\r\n\t\t})()\r\n\t"],"mappings":"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"}